layer__layer.mjs

/**
## /layer

The layer module imports the Mapp layer decorator method and utility methods to render Mapp layer in an Openlayers mapview.Map object.

@requires /layer/decorate
@requires /layer/fade
@requires /layer/featureFields
@requires /layer/featureFormats
@requires /layer/featureHover
@requires /layer/featureStyle
@requires /layer/styleParser

@module /layer
*/

/**
@global
@typedef {Object} layer
A mapp-layer object is a decorated JSON layer object which has been added to a mapview.
@property {string} layer.srid='3857' Feature layer require a spatial reference identifier (SRID).
@property {Object} L Openlayers [layer class]{@link https://openlayers.org/en/latest/apidoc/module-ol_layer_Layer-Layer.html} object.
@property {boolean} layer.display Whether the layer should be displayed.
@property {layer-style} layer.style The mapp-layer style configuration.
@property {string} layer.format The format of the layer data.
@property {layer-cluster} [layer.cluster] Point layer cluster configuration.
@property {string} [layer.table] Table name for layer features.
@property {Array} [layer.tables] An array of tables for different zoom level.
@property {number} [layer.zIndex] The zIndex for the layer canvas element.
@property {Object} layer.mapview mapview typedef object.
*/

import decorate from './decorate.mjs';
import fade from './fade.mjs';
import * as featureFields from './featureFields.mjs';
import * as featureFormats from './featureFormats.mjs';
import featureHover from './featureHover.mjs';
import featureStyle from './featureStyle.mjs';
import formats from './format/_format.mjs';
import styleParser from './styleParser.mjs';
import basic from './themes/basic.mjs';
import categorized from './themes/categorized.mjs';
import distributed from './themes/distributed.mjs';
import graduated from './themes/graduated.mjs';

export default {
  decorate,
  fade,
  featureFields,
  featureFormats,
  featureHover,
  featureStyle,
  formats,
  // The featureStyle method supersedes the deprecated Style method.
  Style: featureStyle,
  styleParser,
  themes: {
    basic,
    categorized,
    distributed,
    graduated,
  },
};