FarmMapsLib/projects/ng-openlayers/src/lib/sources/source.component.ts

29 lines
679 B
TypeScript

import { Input, OnDestroy, Directive } from '@angular/core';
import Source from 'ol/source/Source';
import { LayerComponent } from '../layers/layer.component';
@Directive()
// eslint-disable-next-line @angular-eslint/directive-class-suffix
export abstract class SourceComponent implements OnDestroy {
@Input()
attributions: any;
public instance: Source;
public componentType = 'source';
protected constructor(protected host: LayerComponent) {}
ngOnDestroy() {
if (this.host && this.host.instance) {
this.host.instance.setSource(null);
}
}
protected register(s: Source) {
if (this.host) {
this.host.instance.setSource(s);
}
}
}