Allow custom properties in the constructor using the properties option

This commit is contained in:
Andreas Hocevar
2021-05-24 23:23:51 +02:00
parent 7511d9c324
commit 432bd7f851
13 changed files with 27 additions and 0 deletions
+5
View File
@@ -27,6 +27,7 @@ import {clamp} from '../math.js';
* visible.
* @property {number} [maxZoom] The maximum view zoom level (inclusive) at which this layer will
* be visible.
* @property {Object<string, *>} [properties] Arbitrary observable properties. Can be accessed with `#get()` and `#set()`.
*/
/**
@@ -50,6 +51,10 @@ class BaseLayer extends BaseObject {
* @type {Object<string, *>}
*/
const properties = assign({}, options);
if (typeof options.properties === 'object') {
delete properties.properties;
assign(properties, options.properties);
}
properties[LayerProperty.OPACITY] =
options.opacity !== undefined ? options.opacity : 1;