UNPKG

react-bkoi-gl

Version:

React components for Barikoi GL JS

42 lines 1.09 kB
const refProps = ["type", "source", "source-layer", "minzoom", "maxzoom", "filter", "layout"]; export function normalizeStyle(style) { if (!style) { return null; } if (typeof style === "string") { return style; } if ("toJS" in style) { style = style.toJS(); } if (!style.layers) { return style; } const layerIndex = {}; for (const layer of style.layers) { layerIndex[layer.id] = layer; } const layers = style.layers.map(layer => { let normalizedLayer = null; if ("interactive" in layer) { normalizedLayer = Object.assign({}, layer); delete normalizedLayer.interactive; } const layerRef = layerIndex[layer.ref]; if (layerRef) { normalizedLayer = normalizedLayer || Object.assign({}, layer); delete normalizedLayer.ref; for (const propName of refProps) { if (propName in layerRef) { normalizedLayer[propName] = layerRef[propName]; } } } return normalizedLayer || layer; }); return { ...style, layers }; } //# sourceMappingURL=style-utils.js.map