hslayers-ng
Version:
HSLayers-NG mapping library
593 lines (587 loc) • 18.5 kB
JavaScript
import { isSignal, signal } from '@angular/core';
const TITLE$1 = 'title';
const HIGHLIGHTED = 'highlighted';
const LABEL = 'label';
const NAME$1 = 'name';
const FEATURES = 'features';
const UNIT_ID = 'unitId';
function setFeatureTitle(feature, title) {
feature.set(TITLE$1, title);
}
function getFeatureTitle(feature) {
return feature.get(TITLE$1);
}
function setHighlighted(feature, highlighted) {
feature.set(HIGHLIGHTED, highlighted);
}
function getHighlighted(feature) {
return feature.get(HIGHLIGHTED);
}
function setFeatureLabel(feature, label) {
feature.set(LABEL, label);
}
function getFeatureLabel(feature) {
return feature.get(LABEL);
}
function setFeatureName(feature, name) {
feature.set(NAME$1, name);
}
function getFeatureName(feature) {
return feature.get(NAME$1);
}
function setFeatures(feature, features) {
feature.set(FEATURES, features);
}
function getFeatures(feature) {
return feature.get(FEATURES);
}
function setUnitId(feature, unitId) {
feature.set(UNIT_ID, unitId);
}
function getUnitId(feature) {
return feature.get(UNIT_ID);
}
const HsFeatureExt = {
setFeatureTitle,
getFeatureTitle,
setHighlighted,
getHighlighted,
setFeatureLabel,
getFeatureLabel,
setFeatureName,
getFeatureName,
setFeatures,
getFeatures,
setUnitId,
getUnitId,
};
const ABSTRACT = 'abstract';
const ACCESS_RIGHTS = 'access_rights';
const ACTIVE = 'active';
const ATTRIBUTION = 'attribution';
const AUTO_LEGEND = 'autoLegend';
const BASE = 'base';
const CAPABILITIES = 'capabilities';
const CLUSTER = 'cluster';
const DEFINITION = 'definition';
const DIMENSIONS = 'dimensions';
const EDITOR = 'editor';
const ENABLE_PROXY = 'enableProxy';
const EVENTS_SUSPENDED = 'eventsSuspended';
const EXCLUSIVE = 'exclusive';
const FEATURE_INFO_LANG = 'featureInfoLang';
const FROM_COMPOSITION = 'fromComposition';
const FROM_BASE_COMPOSITION = 'fromBaseComposition';
const GET_FEATURE_INFO_TARGET = 'getFeatureInfoTarget';
const GREYSCALE = 'greyscale';
const HS_LAYMAN_SYNCHRONIZING = 'hsLaymanSynchronizing';
const HS_QML = 'qml';
const HS_SLD = 'sld';
const IGNORE_PATH_ZINDEX = 'ignorePathZIndex';
const INFO_FORMAT = 'info_format';
const INLINE_LEGEND = 'inlineLegend';
const LAYMAN_LAYER_DESCRIPTOR = 'laymanLayerDescriptor';
const LEGENDS = 'legends';
const MAX_RESOLUTION_DENOMINATOR = 'maxResolutionDenominator';
const METADATA = 'metadata';
const MINIMUM_TERRAIN_LEVEL = 'minimumTerrainLevel';
const NAME = 'name';
const ON_FEATURE_SELECTED = 'onFeatureSelected';
const ORIG_LAYERS = 'origLayers';
const PATH = 'path';
const POPUP = 'popUp';
const POPUP_CLASS = 'popupClass';
const QUERY_CAPABILITIES = 'queryCapabilities';
const QUERY_FILTER = 'queryFilter';
const QUERYABLE = 'queryable';
const REMOVABLE = 'removable';
const SHOW_IN_LAYER_MANAGER = 'showInLayerManager';
const SUB_LAYERS = ['subLayers', 'sublayers'];
const SWIPE_SIDE = 'swipeSide';
const THUMBNAIL = 'thumbnail';
const TITLE = 'title';
const VIRTUAL_ATTRIBUTES = 'virtualAttributes';
const WFS_URL = 'wfsUrl';
const WORKSPACE = 'workspace';
const DOM_FEATURE_LINKS = 'domFeatureLinks';
const WMS_ORIGINAL_EXTENT = 'wmsOriginalExtent';
const WFS_ATTRIBUTES = 'wfsAttributes';
function getAccessRights(layer) {
return layer.get(ACCESS_RIGHTS);
}
function setAccessRights(layer, access_rights) {
layer.set(ACCESS_RIGHTS, access_rights);
}
function setTitle(layer, title) {
layer.set(TITLE, title);
}
function getTitle(layer) {
return layer.get(TITLE);
}
function setName(layer, name) {
layer.set(NAME, name);
}
function getName(layer) {
return layer.get(NAME);
}
function setAbstract(layer, abstract) {
layer.set(ABSTRACT, abstract);
}
function getAbstract(layer) {
return layer.get(ABSTRACT);
}
function setActive(group, active) {
group.set(ACTIVE, active);
}
function getActive(group) {
return group.get(ACTIVE);
}
function setAttribution(layer, attribution) {
layer.set(ATTRIBUTION, attribution);
}
function getAttribution(layer) {
return layer.get(ATTRIBUTION);
}
function setAutoLegend(layer, value) {
layer.set(AUTO_LEGEND, value);
}
function getAutoLegend(layer) {
return layer.get(AUTO_LEGEND);
}
function getCachedCapabilities(layer) {
return layer.get(CAPABILITIES);
}
function setCacheCapabilities(layer, capabilities) {
layer.set(CAPABILITIES, capabilities);
}
function setBase(layer, base) {
layer.set(BASE, base);
}
function getBase(layer) {
return layer.get(BASE);
}
function setCluster(layer, clusterActive) {
layer.set(CLUSTER, clusterActive);
}
function getCluster(layer) {
return layer.get(CLUSTER);
}
function setDefinition(layer, definition) {
layer.set(DEFINITION, definition);
}
function getDefinition(layer) {
return layer.get(DEFINITION);
}
/**
* Set the dimensions definition. TODO: Extend description
* @param layer - OL layer
* @example
* dimensions: \{
time: \{ label: 'Local time', default: '2020-02-25T01:00' \},
level: \{
label: 'Level hPa',
value: 'surface',
values: ['surface', '950mb - 500m', '900mb - 1km'],
availability: function(layer) \{
return layer.get('title') != 'Temperature observations'
\}
\}
\}
*/
function setDimensions(layer, dimensions) {
layer.set(DIMENSIONS, dimensions);
}
function getDimensions(layer) {
return layer.get(DIMENSIONS);
}
/**
* If no dimensions are defined then creates a new dimension object,
* if dimensions exist but the type is not present yet, it appends that dimension,
* if dimensions exist and the type is present already, it replaces that dimension
* @param layer - OL layer object
* @param dimension - a dimension definition object
* @param type - dimension type, e.g. 'time', 'height', etc.
*/
function setDimension(layer, dimension, type) {
if (layer.get(DIMENSIONS)) {
const dims = layer.get(DIMENSIONS);
dims[type] = dimension;
layer.set(DIMENSIONS, dims);
}
else {
layer.set(DIMENSIONS, { [type]: dimension });
}
}
/**
* @param layer - OL layer object
* @param type - dimension type, e.g. 'time', 'height', etc.
* @returns Single dimension object definition
*/
function getDimension(layer, type) {
return layer.get(DIMENSIONS) ? layer.get(DIMENSIONS)[type] : undefined;
}
function setDomFeatureLinks(layer, domFeatureLinks) {
layer.set(DOM_FEATURE_LINKS, domFeatureLinks);
}
function getDomFeatureLinks(layer) {
return layer.get(DOM_FEATURE_LINKS);
}
function setEditor(layer, editor) {
layer.set(EDITOR, editor);
}
function getEditor(layer) {
return layer.get(EDITOR);
}
function setEnableProxy(layer, enableProxy) {
layer.set(ENABLE_PROXY, enableProxy);
}
function getEnableProxy(layer) {
return layer.get(ENABLE_PROXY);
}
function setEventsSuspended(layer, eventsSuspended) {
layer.set(EVENTS_SUSPENDED, eventsSuspended);
}
function getEventsSuspended(layer) {
return layer.get(EVENTS_SUSPENDED);
}
function setExclusive(layer, exclusive) {
layer.set(EXCLUSIVE, exclusive);
}
function getExclusive(layer) {
return layer.get(EXCLUSIVE);
}
function setWmsOriginalExtent(layer, extent) {
layer.set(WMS_ORIGINAL_EXTENT, extent);
}
function getWmsOriginalExtent(layer) {
return layer.get(WMS_ORIGINAL_EXTENT);
}
function setFeatureInfoLang(layer, featureInfoLang) {
layer.set(FEATURE_INFO_LANG, featureInfoLang);
}
function getFeatureInfoLang(layer) {
return layer.get(FEATURE_INFO_LANG);
}
function setFromComposition(layer, fromComposition) {
layer.set(FROM_COMPOSITION, fromComposition);
}
function getFromComposition(layer) {
return layer.get(FROM_COMPOSITION);
}
function setFromBaseComposition(layer, fromComposition) {
layer.set(FROM_BASE_COMPOSITION, fromComposition);
}
function getFromBaseComposition(layer) {
return layer.get(FROM_BASE_COMPOSITION);
}
function setFeatureInfoTarget(layer, featureInfoTarget) {
layer.set(GET_FEATURE_INFO_TARGET, featureInfoTarget);
}
function getFeatureInfoTarget(layer) {
return layer.get(GET_FEATURE_INFO_TARGET);
}
function getGreyscale(layer) {
return layer.get(GREYSCALE);
}
function setGreyscale(layer, greyscale) {
layer.set(GREYSCALE, greyscale);
}
function getSld(layer) {
return layer.get(HS_SLD);
}
function getQml(layer) {
return layer.get(HS_QML);
}
function setSld(layer, sld) {
layer.set(HS_SLD, sld);
}
function setQml(layer, qml) {
layer.set(HS_QML, qml);
}
function setHsLaymanSynchronizing(layer, hsLaymanSynchronizing) {
const currentSignal = layer.get(HS_LAYMAN_SYNCHRONIZING);
if (isSignal(currentSignal)) {
currentSignal.set(hsLaymanSynchronizing);
}
else {
layer.set(HS_LAYMAN_SYNCHRONIZING, signal(hsLaymanSynchronizing));
}
}
function getHsLaymanSynchronizing(layer) {
const ls = layer.get(HS_LAYMAN_SYNCHRONIZING);
return isSignal(ls) ? ls() : false;
}
function getHsLaymanSynchronizingSignal(layer) {
return layer.get(HS_LAYMAN_SYNCHRONIZING);
}
function setInfoFormat(layer, infoFormat) {
layer.set(INFO_FORMAT, infoFormat);
}
function getInfoFormat(layer) {
return layer.get(INFO_FORMAT);
}
function setInlineLegend(layer, inlineLegend) {
layer.set(INLINE_LEGEND, inlineLegend);
}
function getInlineLegend(layer) {
return layer.get(INLINE_LEGEND);
}
function setLaymanLayerDescriptor(layer, hsLaymanLayerDescriptor) {
layer.set(LAYMAN_LAYER_DESCRIPTOR, hsLaymanLayerDescriptor);
}
function getLaymanLayerDescriptor(layer) {
return layer.get(LAYMAN_LAYER_DESCRIPTOR);
}
function setLegends(layer, path) {
layer.set(LEGENDS, path);
}
function getLegends(layer) {
if (layer.get(LEGENDS) == undefined &&
layer.get('legendImage') !== undefined) {
console.warn('"legendImage" layer property is deprecated in favor of "legends"');
return layer.get('legendImage');
}
return layer.get(LEGENDS);
}
function setMaxResolutionDenominator(layer, maxResolutionDenominator) {
layer.set(MAX_RESOLUTION_DENOMINATOR, maxResolutionDenominator);
}
function getMaxResolutionDenominator(layer) {
return layer.get(MAX_RESOLUTION_DENOMINATOR);
}
/**
* Store metadata which were parsed from layer definition in composition json.
*/
function setMetadata(layer, metadata) {
layer.set(METADATA, metadata);
}
function getMetadata(layer) {
return layer.get(METADATA);
}
function setMinimumTerrainLevel(layer, minimumTerrainLevel) {
layer.set(MINIMUM_TERRAIN_LEVEL, minimumTerrainLevel);
}
function getMinimumTerrainLevel(layer) {
return layer.get(MINIMUM_TERRAIN_LEVEL);
}
function setOnFeatureSelected(layer, onFeatureSelected) {
layer.set(ON_FEATURE_SELECTED, onFeatureSelected);
}
function getOnFeatureSelected(layer) {
return layer.get(ON_FEATURE_SELECTED);
}
/**
* Used internally by hslayers. Store the original LAYERS param
* when overriding LAYERS by subLayers property. This is needed for metadata
* parsing after page has refreshed and LAYERS are read from cookie or map compositions.
* @param layer - OL layer
* @param origLayers - Comma separated list of layer names OR 1 container layer name
*/
function setOrigLayers(layer, origLayers) {
layer.set(ORIG_LAYERS, origLayers);
}
function getOrigLayers(layer) {
return layer.get(ORIG_LAYERS);
}
function setPath(layer, path) {
layer.set(PATH, path);
}
function getPath(layer) {
return layer.get(PATH);
}
function setPopUp(layer, popUp) {
layer.set(POPUP, popUp);
}
function getPopUp(layer) {
return layer.get(POPUP);
}
function setPopupClass(layer, popupClass) {
layer.set(POPUP_CLASS, popupClass);
}
function getPopupClass(layer) {
return layer.get(POPUP_CLASS);
}
function setQueryable(layer, queryable) {
layer.set(QUERYABLE, queryable);
}
function getQueryable(layer) {
return layer.get(QUERYABLE);
}
function setQueryCapabilities(layer, queryCapabilities) {
layer.set(QUERY_CAPABILITIES, queryCapabilities);
}
function getQueryCapabilities(layer) {
return layer.get(QUERY_CAPABILITIES);
}
function setQueryFilter(layer, queryFilter) {
layer.set(QUERY_FILTER, queryFilter);
}
function getQueryFilter(layer) {
return layer.get(QUERY_FILTER);
}
function setRemovable(layer, removable) {
layer.set(REMOVABLE, removable);
}
function getRemovable(layer) {
return layer.get(REMOVABLE);
}
function setShowInLayerManager(layer, showInLayerManager) {
layer.set(SHOW_IN_LAYER_MANAGER, showInLayerManager);
}
function getShowInLayerManager(layer) {
return layer.get(SHOW_IN_LAYER_MANAGER);
}
/**
* Set list of all possible sub-layers for WMS.
* This is used to limit the displayed sub-layers on the map.
* If sublayers property is set, the sub-layer tree in layer manager is
* hidden, otherwise all sub-layers are shown.
* @param subLayers - String of all possible WMS layers sub-layer names separated by comma
*/
function setSubLayers(layer, subLayers) {
layer.set(SUB_LAYERS[0], subLayers);
}
/**
* Get list of all possible sub-layers for WMS.
* This is used to limit the displayed sub-layers on the map.
* If sub-layers property is set, the sub-layer tree in layer manager is
* hidden, otherwise all sub-layers are shown.
*/
function getSubLayers(layer) {
return layer.get(SUB_LAYERS[0]) ?? layer.get(SUB_LAYERS[1]);
}
function setThumbnail(layer, thumbnail) {
layer.set(THUMBNAIL, thumbnail);
}
function getThumbnail(layer) {
return layer.get(THUMBNAIL);
}
function setVirtualAttributes(layer, virtualAttributes) {
layer.set(VIRTUAL_ATTRIBUTES, virtualAttributes);
}
function getVirtualAttributes(layer) {
return layer.get(VIRTUAL_ATTRIBUTES);
}
function getWorkspace(layer) {
return layer.get(WORKSPACE);
}
function setWorkspace(layer, workspace) {
layer.set(WORKSPACE, workspace);
}
function getWfsUrl(layer) {
return layer.get(WFS_URL);
}
function setWfsUrl(layer, url) {
layer.set(WFS_URL, url);
}
function getSwipeSide(layer) {
return layer.get(SWIPE_SIDE);
}
function setSwipeSide(layer, side) {
layer.set(SWIPE_SIDE, side);
}
/**
* When set to true, prevents z-index to be set based on highest value of layer in
* the same layer (which is default). Used for layers from compositions (basic, permalink)
*/
function setIgnorePathZIndex(layer, ignorePathZIndex) {
layer.set(IGNORE_PATH_ZINDEX, ignorePathZIndex);
}
function getIgnorePathZIndex(layer) {
return layer.get(IGNORE_PATH_ZINDEX);
}
function setWfsAttributes(layer, attributes) {
layer.set(WFS_ATTRIBUTES, attributes);
}
function getWfsAttributes(layer) {
return layer.get(WFS_ATTRIBUTES);
}
const HsLayerExt = {
getAccessRights,
setAccessRights,
setTitle,
getTitle,
setName,
getName,
setAbstract,
getAbstract,
setActive,
getActive,
setAttribution,
getAttribution,
setCacheCapabilities,
getCachedCapabilities,
setBase,
getBase,
setCluster,
getCluster,
setDefinition,
getDefinition,
setDimensions,
getDimensions,
getDomFeatureLinks,
setDomFeatureLinks,
setEditor,
getEditor,
setEnableProxy,
getEnableProxy,
setEventsSuspended,
getEventsSuspended,
setExclusive,
getExclusive,
setFeatureInfoLang,
getFeatureInfoLang,
setFromComposition,
getFromComposition,
setFeatureInfoTarget,
getFeatureInfoTarget,
setHsLaymanSynchronizing,
getHsLaymanSynchronizing,
setInfoFormat,
getInfoFormat,
setInlineLegend,
getInlineLegend,
setLaymanLayerDescriptor,
getLaymanLayerDescriptor,
setMaxResolutionDenominator,
getMaxResolutionDenominator,
setMetadata,
getMetadata,
setMinimumTerrainLevel,
getMinimumTerrainLevel,
setOnFeatureSelected,
getOnFeatureSelected,
setPath,
getPath,
setPopUp,
getPopUp,
setPopupClass,
getPopupClass,
setQueryable,
getQueryable,
setQueryCapabilities,
getQueryCapabilities,
setQueryFilter,
getQueryFilter,
setRemovable,
getRemovable,
setShowInLayerManager,
getShowInLayerManager,
setThumbnail,
getThumbnail,
setVirtualAttributes,
getVirtualAttributes,
setWorkspace,
getWorkspace,
getWfsUrl,
setWfsUrl,
getSwipeSide,
setSwipeSide,
setWfsAttributes,
getWfsAttributes,
};
/**
* Generated bundle index. Do not edit.
*/
export { DOM_FEATURE_LINKS, HsFeatureExt, HsLayerExt, SHOW_IN_LAYER_MANAGER, getAbstract, getAccessRights, getActive, getAttribution, getAutoLegend, getBase, getCachedCapabilities, getCluster, getDefinition, getDimension, getDimensions, getDomFeatureLinks, getEditor, getEnableProxy, getEventsSuspended, getExclusive, getFeatureInfoLang, getFeatureInfoTarget, getFeatureLabel, getFeatureName, getFeatureTitle, getFeatures, getFromBaseComposition, getFromComposition, getGreyscale, getHighlighted, getHsLaymanSynchronizing, getHsLaymanSynchronizingSignal, getIgnorePathZIndex, getInfoFormat, getInlineLegend, getLaymanLayerDescriptor, getLegends, getMaxResolutionDenominator, getMetadata, getMinimumTerrainLevel, getName, getOnFeatureSelected, getOrigLayers, getPath, getPopUp, getPopupClass, getQml, getQueryCapabilities, getQueryFilter, getQueryable, getRemovable, getShowInLayerManager, getSld, getSubLayers, getSwipeSide, getThumbnail, getTitle, getUnitId, getVirtualAttributes, getWfsAttributes, getWfsUrl, getWmsOriginalExtent, getWorkspace, setAbstract, setAccessRights, setActive, setAttribution, setAutoLegend, setBase, setCacheCapabilities, setCluster, setDefinition, setDimension, setDimensions, setDomFeatureLinks, setEditor, setEnableProxy, setEventsSuspended, setExclusive, setFeatureInfoLang, setFeatureInfoTarget, setFeatureLabel, setFeatureName, setFeatureTitle, setFeatures, setFromBaseComposition, setFromComposition, setGreyscale, setHighlighted, setHsLaymanSynchronizing, setIgnorePathZIndex, setInfoFormat, setInlineLegend, setLaymanLayerDescriptor, setLegends, setMaxResolutionDenominator, setMetadata, setMinimumTerrainLevel, setName, setOnFeatureSelected, setOrigLayers, setPath, setPopUp, setPopupClass, setQml, setQueryCapabilities, setQueryFilter, setQueryable, setRemovable, setShowInLayerManager, setSld, setSubLayers, setSwipeSide, setThumbnail, setTitle, setUnitId, setVirtualAttributes, setWfsAttributes, setWfsUrl, setWmsOriginalExtent, setWorkspace };
//# sourceMappingURL=hslayers-ng-common-extensions.mjs.map