{"version":3,"file":"ngx-ol-library-layer-core.mjs","sources":["../../../src/layer/core/layer-host.ts","../../../src/layer/core/ngx-ol-library-layer-core.ts"],"sourcesContent":["import { InjectOptions } from '@angular/core';\nimport { useOverviewMapControl } from 'ngx-ol-library/control/overview-map';\nimport { injectLayerGroup } from 'ngx-ol-library/layer/group';\nimport { injectMap } from 'ngx-ol-library/map';\nimport BaseLayer from 'ol/layer/Base';\n\nexport function injectLayerHost(selector: string) {\n  const options: InjectOptions = { optional: true, host: true };\n  const map = injectMap(options);\n  const overviewMap = useOverviewMapControl(options);\n  const layerGroup = injectLayerGroup(options);\n\n  let getInstance, addLayer, removeLayer;\n\n  if (layerGroup) {\n    getInstance = () => layerGroup.getInstance();\n    addLayer = (layer: BaseLayer) => {\n      const layers = layerGroup.getInstance().getLayers();\n      return layers.push(layer);\n    }\n    removeLayer = (layer: BaseLayer) => {\n      const layers = layerGroup.getInstance().getLayers();\n      return layers.remove(layer);\n    };\n  } else if (overviewMap) {\n    getInstance = () => overviewMap.getInstance();\n    addLayer = (layer: BaseLayer) =>{\n      return overviewMap.getInstance().getOverviewMap().addLayer(layer);\n    }\n    removeLayer = (layer: BaseLayer) => {\n      return overviewMap.getInstance().getOverviewMap().removeLayer(layer);\n    }\n  } else if (map) {\n    getInstance = () => map.getInstance();\n    addLayer = (layer: BaseLayer) => map.getInstance().addLayer(layer);\n    removeLayer = (layer: BaseLayer) => map.getInstance().removeLayer(layer);\n  } else {\n    throw new Error(\n      '`' + selector + '` component must be nested within `nol-map`' +\n      ', `nol-overview-map-control` or `nol-layer-group` component.'\n    );\n  }\n\n  return { getInstance, addLayer, removeLayer };\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAMM,SAAU,eAAe,CAAC,QAAgB,EAAA;IAC9C,MAAM,OAAO,GAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC9D,IAAA,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;AAC/B,IAAA,MAAM,WAAW,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;AACnD,IAAA,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAE7C,IAAA,IAAI,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC;IAEvC,IAAI,UAAU,EAAE;QACd,WAAW,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,CAAC;AAC7C,QAAA,QAAQ,GAAG,CAAC,KAAgB,KAAI;YAC9B,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,CAAC;AACpD,YAAA,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC5B,SAAC,CAAA;AACD,QAAA,WAAW,GAAG,CAAC,KAAgB,KAAI;YACjC,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,CAAC;AACpD,YAAA,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9B,SAAC,CAAC;KACH;SAAM,IAAI,WAAW,EAAE;QACtB,WAAW,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,CAAC;AAC9C,QAAA,QAAQ,GAAG,CAAC,KAAgB,KAAI;AAC9B,YAAA,OAAO,WAAW,CAAC,WAAW,EAAE,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACpE,SAAC,CAAA;AACD,QAAA,WAAW,GAAG,CAAC,KAAgB,KAAI;AACjC,YAAA,OAAO,WAAW,CAAC,WAAW,EAAE,CAAC,cAAc,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AACvE,SAAC,CAAA;KACF;SAAM,IAAI,GAAG,EAAE;QACd,WAAW,GAAG,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;AACtC,QAAA,QAAQ,GAAG,CAAC,KAAgB,KAAK,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACnE,QAAA,WAAW,GAAG,CAAC,KAAgB,KAAK,GAAG,CAAC,WAAW,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KAC1E;SAAM;AACL,QAAA,MAAM,IAAI,KAAK,CACb,GAAG,GAAG,QAAQ,GAAG,6CAA6C;AAC9D,YAAA,8DAA8D,CAC/D,CAAC;KACH;AAED,IAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;AAChD;;AC5CA;;AAEG;;;;"}