forked from MapComplete/MapComplete
Refactoring: add generics to some featureSources
This commit is contained in:
parent
e038394331
commit
dec4296204
3 changed files with 21 additions and 38 deletions
|
@ -1,14 +1,15 @@
|
|||
import { FeatureSource, FeatureSourceForLayer } from "../FeatureSource"
|
||||
import {FeatureSource, FeatureSourceForLayer} from "../FeatureSource"
|
||||
import StaticFeatureSource from "./StaticFeatureSource"
|
||||
import { BBox } from "../../BBox"
|
||||
import {BBox} from "../../BBox"
|
||||
import FilteredLayer from "../../../Models/FilteredLayer"
|
||||
import { Store } from "../../UIEventSource"
|
||||
import {Store} from "../../UIEventSource"
|
||||
import {Feature} from "geojson";
|
||||
|
||||
/**
|
||||
* Results in a feature source which has all the elements that touch the given features
|
||||
*/
|
||||
export default class BBoxFeatureSource extends StaticFeatureSource {
|
||||
constructor(features: FeatureSource, mustTouch: Store<BBox>) {
|
||||
export default class BBoxFeatureSource<T extends Feature = Feature> extends StaticFeatureSource<T> {
|
||||
constructor(features: FeatureSource<T>, mustTouch: Store<BBox>) {
|
||||
super(
|
||||
features.features.mapD(
|
||||
(features) => {
|
||||
|
@ -29,10 +30,10 @@ export default class BBoxFeatureSource extends StaticFeatureSource {
|
|||
}
|
||||
}
|
||||
|
||||
export class BBoxFeatureSourceForLayer extends BBoxFeatureSource implements FeatureSourceForLayer {
|
||||
export class BBoxFeatureSourceForLayer<T extends Feature = Feature> extends BBoxFeatureSource<T> implements FeatureSourceForLayer {
|
||||
readonly layer: FilteredLayer
|
||||
|
||||
constructor(features: FeatureSourceForLayer, mustTouch: Store<BBox>) {
|
||||
constructor(features: FeatureSourceForLayer<T>, mustTouch: Store<BBox>) {
|
||||
super(features, mustTouch)
|
||||
this.layer = features.layer
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue