UNPKG

@geogirafe/lib-geoportal

Version:

GeoGirafe is a flexible application to build online geoportals.

30 lines (29 loc) 1.19 kB
// SPDX-License-Identifier: Apache-2.0 import LayerWmts from './layerwmts.js'; /* * This class is a used in the state of the application, which will be accessed behind a javascript proxy. * This means that each modification made to its properties must come from outside, * because they have to be made through the proxy, so that the modification can be listen. * Therefore, this class must not contain any method which is updating a value directly * For example, any method doing <this.xxx = value> is forbidden here, because the modification be known from the proxy */ export default class LayerWmtsExternal extends LayerWmts { static nextAvailableLayerId = 20000000; selected = false; get isSelected() { return this.selected; } set isSelected(value) { this.selected = value; this.isDefaultChecked = value; } constructor(name, url, layer) { const id = LayerWmtsExternal.nextAvailableLayerId++; super(id, name, 0, url, layer); } clone() { const clonedLayer = new LayerWmtsExternal(this.name, this.url, this.layer); clonedLayer.isSelected = this.isSelected; return clonedLayer; } }