diff --git a/contribs/gmf/src/backgroundlayerselector/component.js b/contribs/gmf/src/backgroundlayerselector/component.js index 9807d6238483..5609aebd5387 100644 --- a/contribs/gmf/src/backgroundlayerselector/component.js +++ b/contribs/gmf/src/backgroundlayerselector/component.js @@ -61,11 +61,11 @@ function gmfBackgroundlayerselectorTemplateUrl($element, $attrs, gmfBackgroundla * * Used metadata: * - * * thumbnail: The URL used for the icon. + * * `thumbnail`: The URL used for the icon. * - * Used functionnalities: + * Used functionalities: * - * * default_basemap: Base maps to use by default. + * * `default_basemap`: Base maps to use by default. * * @htmlAttribute {import("ol/Map.js").default=} gmf-backgroundlayerselector-map The map. * @htmlAttribute {string} gmf-backgroundlayer-opacity-options The opacity slider options. diff --git a/contribs/gmf/src/controllers/AbstractAppController.js b/contribs/gmf/src/controllers/AbstractAppController.js index 448bb710cdb0..f33790217c93 100644 --- a/contribs/gmf/src/controllers/AbstractAppController.js +++ b/contribs/gmf/src/controllers/AbstractAppController.js @@ -53,12 +53,9 @@ import {ThemeEventType} from 'gmf/theme/Manager.js'; /** * Application abstract controller. * - * This file includes `goog.require` for base components/directives used - * by the HTML page and the controller to provide the configuration. + * Used functionalities: * - * Used functionnalities: - * - * * open_panel: When set, contains the name of the panel to open upon loading an application. + * * `open_panel`: When set, contains the name of the panel to open upon loading an application. * Note: although this is a list, only one can be defined. * * diff --git a/contribs/gmf/src/controllers/AbstractDesktopController.js b/contribs/gmf/src/controllers/AbstractDesktopController.js index 9ec360047eae..7b5c3ab4d185 100644 --- a/contribs/gmf/src/controllers/AbstractDesktopController.js +++ b/contribs/gmf/src/controllers/AbstractDesktopController.js @@ -228,6 +228,7 @@ export class AbstractDesktopController extends AbstractAPIController { * If, after resizing, the size of the data panel would be too big, * resize it as well. * @private + * @hidden */ setDataPanelMaxResizableWidth_() { diff --git a/contribs/gmf/src/datasource/Manager.js b/contribs/gmf/src/datasource/Manager.js index 726149e7bb38..da2805ff7181 100644 --- a/contribs/gmf/src/datasource/Manager.js +++ b/contribs/gmf/src/datasource/Manager.js @@ -44,17 +44,17 @@ import olSourceTileWMS from 'ol/source/TileWMS.js'; /** - * The GeoMapFish DataSources Manager is responsible of listenening to the + * The GeoMapFish DataSources Manager is responsible of listening to the * c2cgeoportal's themes to create instances of `ngeo.datasource.DataSource` * objects with the layer definitions found and push them in the * `DataSources` collection. The Manager must be initialized - * with the app's map using the setDatasourcseMap() method. + * with the app's map using the `setDatasourceMap()` method. * * When changing theme, these data sources are cleared then re-created. * * Used metadata: * - * * identifierAttributeField: The field used in the 'display query window' as feature title. + * * `identifierAttributeField`: The field used in the 'display query window' as feature title. * For WMS layers. */ export class DatasourceManager { @@ -218,7 +218,9 @@ export class DatasourceManager { /** * Set the map to use with your datasources. + * * @param {!import("ol/Map.js").default} map The map to use. + * @hidden */ setDatasourceMap(map) { this.ngeoDataSources_.map = map; @@ -227,6 +229,7 @@ export class DatasourceManager { /** * @param {!import('ngeo/datasource/OGC.js').Dimensions} dimensions A reference to the dimensions * object to keep a reference of in this service. + * @hidden */ setDimensions(dimensions) { if (this.dimensionsWatcherUnregister) { @@ -246,6 +249,7 @@ export class DatasourceManager { /** * Called when the dimensions change. Update all affected layer's filters. * @private + * @hidden */ handleDimensionsChange_() { @@ -280,6 +284,7 @@ export class DatasourceManager { * Called when the themes change. Remove any existing data sources first, * then create and add data sources from the loaded themes. * @private + * @hidden */ handleThemesChange_() { // (1) Clear @@ -340,6 +345,7 @@ export class DatasourceManager { * @param {Array.|undefined} value List of tree * controllers. * @private + * @hidden */ handleTreeManagerRootChildrenChange_(value) { @@ -389,6 +395,7 @@ export class DatasourceManager { * Remove the data sources from the ngeo collection that are in the cache, * i.e. those created by this service, then clear the cache. * @private + * @hidden */ clearDataSources_() { @@ -420,6 +427,7 @@ export class DatasourceManager { * may have children or not. * @param {!import('gmf/themes.js').GmfOgcServers} ogcServers OGC servers. * @private + * @hidden */ createDataSource_(firstLevelGroup, node, ogcServers) { @@ -605,6 +613,7 @@ export class DatasourceManager { * * @param {import("ngeo/layertree/Controller.js").LayertreeController} treeCtrl Layertree controller to add * @private + * @hidden */ addTreeCtrlToCache_(treeCtrl) { @@ -667,9 +676,9 @@ export class DatasourceManager { * Remove a treeCtrl cache item. Unregister event listeners and remove the * data source from the ngeo collection. * - * @param {ManagerTreeCtrlCacheItem} item Layertree - * controller cache item + * @param {ManagerTreeCtrlCacheItem} item Layertree controller cache item * @private + * @hidden */ removeTreeCtrlCacheItem_(item) { @@ -697,6 +706,7 @@ export class DatasourceManager { * * The data source gets also removed from the ngeo data sources collection. * @private + * @hidden */ clearTreeCtrlCache_() { for (const id in this.treeCtrlCache_) { @@ -715,6 +725,7 @@ export class DatasourceManager { * @param {import("ngeo/layertree/Controller.js").LayertreeController} treeCtrl The layer tree controller * @param {string|undefined} newVal New state value * @private + * @hidden */ handleTreeCtrlStateChange_(treeCtrl, newVal) { const treeDataSource = treeCtrl.getDataSource(); @@ -738,6 +749,7 @@ export class DatasourceManager { * @param {import("ngeo/layertree/Controller.js").LayertreeController} treeCtrl The layer tree controller * @return {ManagerTreeCtrlCacheItem} Cache item * @private + * @hidden */ getTreeCtrlCacheItem_(treeCtrl) { return this.treeCtrlCache_[olUtilGetUid(treeCtrl.node)] || null; @@ -748,6 +760,7 @@ export class DatasourceManager { * @param {!import("ngeo/datasource/DataSource.js").default} dataSource The data source. * @return {import("ol/layer/Base.js").default|undefined} The layer. * @private + * @hidden */ getDataSourceLayer_(dataSource) { const gmfOGCDataSource = /** @type {!import("gmf/datasource/OGC.js").default} */ (dataSource); @@ -771,6 +784,7 @@ export class DatasourceManager { * and dimensions filters. * @param {import("ol/layer/Base.js").default} layer The layer to update. * @private + * @hidden */ updateLayerFilter_(layer) { console.assert( @@ -845,6 +859,7 @@ export class DatasourceManager { * * @param {!import("gmf/datasource/OGC.js").default} dataSource Data source. * @private + * @hidden */ handleDataSourceFilterRulesChange_(dataSource) { @@ -873,6 +888,7 @@ export class DatasourceManager { * * @param {!import("gmf/datasource/OGC.js").default} dataSource Data source. * @private + * @hidden */ handleDataSourceTimeValueChange_(dataSource) { @@ -915,6 +931,7 @@ export class DatasourceManager { * * @param {!import('ngeo/map/BackgroundLayerMgr.js').BackgroundEvent} evt Event. * @private + * @hidden */ handleNgeoBackgroundLayerChange_(evt) { diff --git a/contribs/gmf/src/disclaimer/component.js b/contribs/gmf/src/disclaimer/component.js index 6593fd7e4e21..90813b728f6a 100644 --- a/contribs/gmf/src/disclaimer/component.js +++ b/contribs/gmf/src/disclaimer/component.js @@ -40,7 +40,7 @@ function forEachDisclaimer(layer, func) { /** * Used metadata: * - * * disclaimer: The disclaimer text for this element. + * * `disclaimer`: The disclaimer text for this element. * For WMS and WMTS layers, layer groups and themes. * * @param {!JQuery} $element Element. @@ -55,7 +55,7 @@ function forEachDisclaimer(layer, func) { * @ngdoc controller * @ngname GmfDisclaimerController */ -function DisclamerController( +function DisclaimerController( $element, $sce, $timeout, gettextCatalog, ngeoDisclaimer, ngeoEventHelper, ngeoLayerHelper ) { @@ -149,7 +149,7 @@ function DisclamerController( /** * Initialise the controller. */ -DisclamerController.prototype.$onInit = function() { +DisclaimerController.prototype.$onInit = function() { this.layerVisibility = this.layerVisibility !== undefined ? this.layerVisibility : true; this.dataLayerGroup_ = this.ngeoLayerHelper_.getGroupFromMap(this.map, DATALAYERGROUP_NAME); @@ -160,7 +160,7 @@ DisclamerController.prototype.$onInit = function() { * @param {import("ol/Collection.js").CollectionEvent} evt Event. * @private */ -DisclamerController.prototype.handleLayersAdd_ = function(evt) { +DisclaimerController.prototype.handleLayersAdd_ = function(evt) { this.timeout_(() => { const layer = evt.element; console.assert(layer instanceof olLayerBase); @@ -173,7 +173,7 @@ DisclamerController.prototype.handleLayersAdd_ = function(evt) { * @param {import("ol/Collection.js").CollectionEvent} evt Event. * @private */ -DisclamerController.prototype.handleLayersRemove_ = function(evt) { +DisclaimerController.prototype.handleLayersRemove_ = function(evt) { const layer = evt.element; console.assert(layer instanceof olLayerBase); this.unregisterLayer_(layer); @@ -184,7 +184,7 @@ DisclamerController.prototype.handleLayersRemove_ = function(evt) { * @param {import("ol/layer/Base.js").default} layer Layer. * @private */ -DisclamerController.prototype.registerLayer_ = function(layer) { +DisclaimerController.prototype.registerLayer_ = function(layer) { const layerUid = olUtilGetUid(layer); @@ -252,7 +252,7 @@ DisclamerController.prototype.registerLayer_ = function(layer) { * @param {import("ol/layer/Base.js").default} layer Layer. * @private */ -DisclamerController.prototype.unregisterLayer_ = function(layer) { +DisclaimerController.prototype.unregisterLayer_ = function(layer) { const layerUid = olUtilGetUid(layer); @@ -275,7 +275,7 @@ DisclamerController.prototype.unregisterLayer_ = function(layer) { }; -DisclamerController.prototype.$onDestroy = function() { +DisclaimerController.prototype.$onDestroy = function() { this.unregisterLayer_(this.dataLayerGroup_); }; @@ -284,7 +284,7 @@ DisclamerController.prototype.$onDestroy = function() { * @param {string} msg Disclaimer message. * @private */ -DisclamerController.prototype.showDisclaimerMessage_ = function(msg) { +DisclaimerController.prototype.showDisclaimerMessage_ = function(msg) { msg = this.gettextCatalog_.getString(msg); if (this.external) { if (this.msgs_.indexOf(msg) < 0) { @@ -307,7 +307,7 @@ DisclamerController.prototype.showDisclaimerMessage_ = function(msg) { * @param {string} msg Disclaimer message. * @private */ -DisclamerController.prototype.closeDisclaimerMessage_ = function(msg) { +DisclaimerController.prototype.closeDisclaimerMessage_ = function(msg) { msg = this.gettextCatalog_.getString(msg); if (this.external) { this.visibility = false; @@ -376,7 +376,7 @@ DisclamerController.prototype.closeDisclaimerMessage_ = function(msg) { * @ngname gmfDisclaimer */ const disclaimerComponent = { - controller: DisclamerController, + controller: DisclaimerController, bindings: { 'layerVisibility': ' { * * Used metadata: * - * * enumeratedAttributes: List of attribute names which have enumerated attribute + * * `enumeratedAttributes`: List of attribute names which have enumerated attribute * values (for filters purpose). For WMS layers. - * * snappingConfig: The snapping configuration for the leaf. If set, the leaf's layer is considered to be + * * `snappingConfig`: The snapping configuration for the leaf. If set, the leaf's layer is considered to be * "snappable", even if the config itself is empty. - * Example of value: {'tolerance': 50, 'edge': false} For WMS layers. + * Example value: {'tolerance': 50, 'edge': false} For WMS layers. * * Example: * diff --git a/contribs/gmf/src/filters/filterselectorComponent.js b/contribs/gmf/src/filters/filterselectorComponent.js index 12107363c586..8ae7a4355722 100644 --- a/contribs/gmf/src/filters/filterselectorComponent.js +++ b/contribs/gmf/src/filters/filterselectorComponent.js @@ -77,15 +77,15 @@ function gmfFilterselectorTemplateUrl($attrs, gmfFilterselectorTemplateUrl) { * * Used metadata: * - * * directedFilterAttributes: List of attribute names which should have rules + * * `directedFilterAttributes`: List of attribute names which should have rules * already ready when using the filter tools. For WMS layers. * - * Used functionnalities: + * Used functionalities: * - * * preset_layer_filter: Name of the layer (data source) that should be toggled in the filter tool upon + * * `preset_layer_filter`: Name of the layer (data source) that should be toggled in the filter tool upon * loading an application. * Note: although this is a list, only one can be defined. - * * filterable_layers: A list of layer names that can be filtered, if empty the component will be hidden. + * * `filterable_layers`: A list of layer names that can be filtered, if empty the component will be hidden. */ class FilterSelectorController { @@ -316,6 +316,7 @@ class FilterSelectorController { /** * @private + * @hidden */ handleGmfUserFunctionalitiesChange_() { const usrFunc = this.gmfUser_.functionalities; @@ -335,6 +336,7 @@ class FilterSelectorController { /** * @private + * @hidden */ toggleDataSourceRegistration_() { const newDataSourceRegistration = !!this.filtrableLayerNodeNames_; @@ -349,6 +351,7 @@ class FilterSelectorController { * Also, when deactivated, deselect data source. * @param {boolean} active Active. * @private + * @hidden */ handleActiveChange_(active) { if (!active) { @@ -363,6 +366,7 @@ class FilterSelectorController { /** * @param {boolean} register Whether register the data sources or not. * @private + * @hidden */ handleEnableDataSourceRegistrationChange_(register) { const keys = this.listenerKeys_; @@ -394,6 +398,7 @@ class FilterSelectorController { * * @param {import("ol/Collection.js").CollectionEvent} evt Collection event. * @private + * @hidden */ handleDataSourcesAdd_(evt) { const dataSource = evt.element; @@ -410,6 +415,7 @@ class FilterSelectorController { * * @param {import("ol/Collection.js").CollectionEvent} evt Collection event. * @private + * @hidden */ handleDataSourcesRemove_(evt) { const dataSource = evt.element; @@ -426,6 +432,7 @@ class FilterSelectorController { * * @param {import("gmf/datasource/OGC.js").default} dataSource Data source * @private + * @hidden */ registerDataSource_(dataSource) { if (dataSource.filtrable === null) { @@ -449,6 +456,7 @@ class FilterSelectorController { * that was currently selected, deselect it. * @param {import("gmf/datasource/OGC.js").default} dataSource Data source * @private + * @hidden */ unregisterDataSource_(dataSource) { if (dataSource.filtrable) { @@ -483,6 +491,7 @@ class FilterSelectorController { * @return {boolean} Whether the data source is valid to add to the list or * not. * @private + * @hidden */ isDataSourceFiltrable_(dataSource, opt_notify) { let filtrable = true; @@ -545,6 +554,7 @@ class FilterSelectorController { /** * @param {?import("gmf/datasource/OGC.js").default} dataSource Newly selected data source object. * @private + * @hidden */ handleSelectedDataSourceChange_(dataSource) { @@ -602,6 +612,7 @@ class FilterSelectorController { * @param {import("ngeo/datasource/DataSource.js").default} dataSource Data source. * @return {?RuleCacheItem} Rule cache item. * @private + * @hidden */ getRuleCacheItem_(dataSource) { return this.ruleCache_[dataSource.id] || null; @@ -611,18 +622,21 @@ class FilterSelectorController { * @param {import("ngeo/datasource/DataSource.js").default} dataSource Data source. * @param {RuleCacheItem} item Rule cache item. * @private + * @hidden */ setRuleCacheItem_(dataSource, item) { this.ruleCache_[dataSource.id] = item; } /** + * @hidden */ saveFilterShowModal() { this.saveFilterSaveModalShown = true; } /** + * @hidden */ saveFilterSave() { @@ -661,7 +675,9 @@ class FilterSelectorController { /** * Load a saved filter item, replacing the current rules. + * * @param {!import("gmf/filters/SavedFilters.js").SavedFilterItem} filterItem Filter item. + * @hidden */ saveFilterLoadItem(filterItem) { @@ -694,6 +710,7 @@ class FilterSelectorController { } /** + * @hidden */ saveFilterManage() { this.saveFilterManageModalShown = true; @@ -701,7 +718,9 @@ class FilterSelectorController { /** * Remove a saved filter item. + * * @param {!import("gmf/filters/SavedFilters.js").SavedFilterItem} item Filter item. + * @hidden */ saveFilterRemoveItem(item) { this.gmfSavedFilters.remove(item); diff --git a/contribs/gmf/src/layertree/component.js b/contribs/gmf/src/layertree/component.js index b16e368497af..294c728b9a28 100644 --- a/contribs/gmf/src/layertree/component.js +++ b/contribs/gmf/src/layertree/component.js @@ -131,28 +131,28 @@ function gmfLayertreeTemplate($element, $attrs, gmfLayertreeTemplate) { * * Used metadata: * - * * isChecked: if 'false' the layer visibility will be set to false. - * * iconUrl: layer icon full URL. - * * legendRule: WMS rule used to get a layer icon. - * * isLegendExpanded: if 'true' the legend is expanded by default. - * * metadataUrl: Display a popup with the content of the given URL if + * * `isChecked`: if 'false' the layer visibility will be set to false. + * * `iconUrl`: layer icon full URL. + * * `legendRule`: WMS rule used to get a layer icon. + * * `isLegendExpanded: if 'true' the legend is expanded by default. + * * `metadataUrl`: Display a popup with the content of the given URL if * possible also open a new window. - * * exclusiveGroup: Whether the group contain children that have to be mutually + * * `exclusiveGroup`: Whether the group contains children that have to be mutually * exclusive, meaning that only one child may be ON at any time. - * * legend: Display the legend of this layers. For WMS and WMTS layers. - * * legendImage: The URL to the image used as a legend in the layer tree. For WMS and WMTS layers. - * * maxResolution: The max resolution where the layer is visible. For WMS layers. - * On WMTS layers it will have effect on the node in the layertree but not on the layertree directly. - * * minResolution: The min resolution where the layer is visible. For WMS layers. - * On WMTS layers it will have effect on the node in the layertree but not on the layer directly. - * * ogcServer: The corresponding OGC server for a WMTS layer. For WMTS layers. - * * opacity: Layer opacity. 1.0 means fuly visible, 0 means invisible, For WMS and WMTS layers. - * * timeAttribute: The name of the time attribute. For WMS(-T) layers. - * * wmsLayers: A corresponding WMS layer for a WMTS layers. Used to query the WMTS layers and to print it. + * * `legend`: Display the legend of this layer. For WMS and WMTS layers. + * * `legendImage`: The URL to the image used as a legend in the layer tree. For WMS and WMTS layers. + * * `maxResolution`: The max resolution where the layer is visible. For WMS layers. + * On WMTS layers it will have an effect on the node in the layertree but not on the layertree directly. + * * `minResolution`: The min resolution where the layer is visible. For WMS layers. + * On WMTS layers it will have an effect on the node in the layertree but not on the layer directly. + * * `ogcServer`: The corresponding OGC server for a WMTS layer. For WMTS layers. + * * `opacity`: Layer opacity. 1.0 means fully visible, 0 means invisible, For WMS and WMTS layers. + * * `timeAttribute`: The name of the time attribute. For WMS(-T) layers. + * * `wmsLayers`: A corresponding WMS layer for WMTS layers. Used to query the WMTS layers and to print them. * (See also printLayers and queryLayers metadata for more granularity). For WMTS Layers. - * * printLayers: A WMS layer that will be used instead of the WMTS layers in the print. - * * queryLayers: The WMS layers used as references to query the WMTS layers. For WMTS layers. - * * isExpanded: Whether the layer group is expanded by default. For layer groups (only). + * * `printLayers`: A WMS layer that will be used instead of the WMTS layers in the print. + * * `queryLayers`: The WMS layers used as references to query the WMTS layers. For WMTS layers. + * * `isExpanded`: Whether the layer group is expanded by default. For layer groups (only). * * @htmlAttribute {import("ol/Map.js").default} gmf-layertree-map The map. * @htmlAttribute {Object|undefined} gmf-layertree-dimensions Global dimensions object. diff --git a/contribs/gmf/src/permalink/Permalink.js b/contribs/gmf/src/permalink/Permalink.js index 1ef92ba2049b..357020b4d176 100644 --- a/contribs/gmf/src/permalink/Permalink.js +++ b/contribs/gmf/src/permalink/Permalink.js @@ -245,9 +245,9 @@ const ParamPrefix = { * gmfThemeManager, defaultTheme, gmfTreeManager, ngeoWfsPermalink, * ngeoAutoProjection and ngeoFeatures. * - * Used functionnalities: + * Used functionalities: * - * * default_theme: Theme to use by default. + * * `default_theme`: Theme to use by default. * * @constructor * @param {!angular.IQService} $q The Angular $q service. diff --git a/contribs/gmf/src/themes.js b/contribs/gmf/src/themes.js index 876749cc7f0c..7ac479a691ce 100644 --- a/contribs/gmf/src/themes.js +++ b/contribs/gmf/src/themes.js @@ -183,7 +183,7 @@ * For WMS and WMTS layers, layer groups and themes. * @property {Array.} [enumeratedAttributes] List of attribute names which have enumerated attribute * values (for filters purpose). For WMS layers. - * @property {boolean} [exclusiveGroup=false] Whether the group contain children that have to be mutually + * @property {boolean} [exclusiveGroup=false] Whether the group contains children that have to be mutually * exclusive, meaning that only one child may be ON at any time. * @property {string} [iconUrl] The URL of the icon to display in the layer tree. For WMS and WMTS layers. * @property {string} [identifierAttributeField] The field used in the 'display query window' as feature @@ -195,7 +195,7 @@ * (only). * @property {boolean} [isLegendExpanded=false] Whether the legend is expanded by default. For WMS and * WMTS layers. - * @property {boolean} [legend=false] Display the legend of this layers. For WMS and WMTS layers. + * @property {boolean} [legend=false] Display the legend of this layer. For WMS and WMTS layers. * @property {string} [legendImage] The URL to the image used as a legend in the layer tree. For WMS and * WMTS layers. * @property {Object} [hiDPILegendImages] The URLs to the hi DPI images used as a legend @@ -203,12 +203,12 @@ * @property {string} [legendRule] The WMS 'RULE' parameter used to display the icon in the layer tree. * "Short version" of the 'iconURL' metadata for WMS layers. For WMS layers. * @property {number} [maxResolution] The max resolution where the layer is visible. For WMS layers. - * On WMTS layers it will have effect on the node in the layertree but not on the layertree directly. + * On WMTS layers it will have an effect on the node in the layertree but not on the layertree directly. * @property {string} [metadataUrl] The URL to the information on this layer. For WMS and WMTS layers. * @property {number} [minResolution] The min resolution where the layer is visible. For WMS layers. - * On WMTS layers it will have effect on the node in the layertree but not on the layer directly. + * On WMTS layers it will have an effect on the node in the layertree but not on the layer directly. * @property {string} [ogcServer] The corresponding OGC server for a WMTS layer. For WMTS layers. - * @property {number} [opacity=1.0] Layer opacity. 1.0 means fuly visible, 0 means invisible, For WMS and + * @property {number} [opacity=1.0] Layer opacity. 1.0 means fully visible, 0 means invisible, For WMS and * WMTS layers. * @property {string} [printLayers] A WMS layer that will be used instead of the WMTS layers in the print. * Used to increase quality of printed WMTS layers. For WMTS layers. @@ -218,9 +218,9 @@ * @property {string} [timeAttribute] The name of the time attribute. For WMS(-T) layers. * @property {GmfSnappingConfig} [snappingConfig] The snapping configuration for the leaf. If set, the * leaf's layer is considered to be "snappable", even if the config itself is empty. - * Example of value: {'tolerance': 50, 'edge': false} For WMS layers. - * @property {string} [wmsLayers] A corresponding WMS layer for a WMTS layers. Used to query the WMTS layers - * and to print it. (See also printLayers and queryLayers metadata for more + * Example value: {'tolerance': 50, 'edge': false} For WMS layers. + * @property {string} [wmsLayers] A corresponding WMS layer for WMTS layers. Used to query the WMTS layers + * and to print them. (See also printLayers and queryLayers metadata for more * granularity). For WMTS Layers. */