@angular-helpers/openlayers 0.8.0 → 22.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/angular-helpers-openlayers-controls.mjs +102 -66
- package/fesm2022/angular-helpers-openlayers-core.mjs +39 -27
- package/fesm2022/angular-helpers-openlayers-interactions.mjs +75 -51
- package/fesm2022/angular-helpers-openlayers-layers.mjs +212 -101
- package/fesm2022/angular-helpers-openlayers-military.mjs +6 -6
- package/fesm2022/angular-helpers-openlayers-overlays.mjs +23 -16
- package/package.json +5 -5
- package/types/angular-helpers-openlayers-layers.d.ts +2 -0
|
@@ -351,12 +351,17 @@ class OlLayerService {
|
|
|
351
351
|
mapService = inject(OlMapService);
|
|
352
352
|
layerCache = new Map();
|
|
353
353
|
pendingConfigs = [];
|
|
354
|
-
layerState = signal([],
|
|
354
|
+
layerState = signal([], /* @ts-ignore */
|
|
355
|
+
...(ngDevMode ? [{ debugName: "layerState" }] : /* istanbul ignore next */ []));
|
|
355
356
|
spiderManager = new SpiderficationManager(this.layerCache);
|
|
356
|
-
layers = computed(() => this.layerState(),
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
357
|
+
layers = computed(() => this.layerState(), /* @ts-ignore */
|
|
358
|
+
...(ngDevMode ? [{ debugName: "layers" }] : /* istanbul ignore next */ []));
|
|
359
|
+
visibleLayers = computed(() => this.layerState().filter((l) => l.visible), /* @ts-ignore */
|
|
360
|
+
...(ngDevMode ? [{ debugName: "visibleLayers" }] : /* istanbul ignore next */ []));
|
|
361
|
+
tileLayers = computed(() => this.layerState().filter((l) => l.type === 'tile'), /* @ts-ignore */
|
|
362
|
+
...(ngDevMode ? [{ debugName: "tileLayers" }] : /* istanbul ignore next */ []));
|
|
363
|
+
vectorLayers = computed(() => this.layerState().filter((l) => l.type === 'vector'), /* @ts-ignore */
|
|
364
|
+
...(ngDevMode ? [{ debugName: "vectorLayers" }] : /* istanbul ignore next */ []));
|
|
360
365
|
addLayer(config) {
|
|
361
366
|
if (this.layerCache.has(config.id)) {
|
|
362
367
|
return { id: config.id };
|
|
@@ -377,22 +382,25 @@ class OlLayerService {
|
|
|
377
382
|
}
|
|
378
383
|
}
|
|
379
384
|
}
|
|
385
|
+
createVectorSource(config, map) {
|
|
386
|
+
const sourceOptions = {};
|
|
387
|
+
if (config.url && config.format) {
|
|
388
|
+
sourceOptions.url = config.url;
|
|
389
|
+
if (config.format === 'geojson')
|
|
390
|
+
sourceOptions.format = new GeoJSON();
|
|
391
|
+
else if (config.format === 'topojson')
|
|
392
|
+
sourceOptions.format = new TopoJSON();
|
|
393
|
+
else if (config.format === 'kml')
|
|
394
|
+
sourceOptions.format = new KML();
|
|
395
|
+
}
|
|
396
|
+
return new VectorSource(sourceOptions);
|
|
397
|
+
}
|
|
380
398
|
createLayer(config, map) {
|
|
381
399
|
let layer;
|
|
382
400
|
switch (config.type) {
|
|
383
401
|
case 'vector': {
|
|
384
402
|
const vConfig = config;
|
|
385
|
-
const
|
|
386
|
-
if (vConfig.url && vConfig.format) {
|
|
387
|
-
sourceOptions.url = vConfig.url;
|
|
388
|
-
if (vConfig.format === 'geojson')
|
|
389
|
-
sourceOptions.format = new GeoJSON();
|
|
390
|
-
else if (vConfig.format === 'topojson')
|
|
391
|
-
sourceOptions.format = new TopoJSON();
|
|
392
|
-
else if (vConfig.format === 'kml')
|
|
393
|
-
sourceOptions.format = new KML();
|
|
394
|
-
}
|
|
395
|
-
const vectorSource = new VectorSource(sourceOptions);
|
|
403
|
+
const vectorSource = this.createVectorSource(vConfig, map);
|
|
396
404
|
const targetProj = (typeof map.getView === 'function'
|
|
397
405
|
? map.getView()?.getProjection()?.getCode()
|
|
398
406
|
: undefined) ?? 'EPSG:3857';
|
|
@@ -497,6 +505,41 @@ class OlLayerService {
|
|
|
497
505
|
this.updateLayerState();
|
|
498
506
|
}
|
|
499
507
|
}
|
|
508
|
+
updateVectorLayerConfig(id, config) {
|
|
509
|
+
const layer = this.layerCache.get(id);
|
|
510
|
+
if (!(layer instanceof VectorLayer))
|
|
511
|
+
return;
|
|
512
|
+
const map = this.mapService.getMap();
|
|
513
|
+
const nextConfig = {
|
|
514
|
+
...(layer.get('cluster-config') ? { cluster: layer.get('cluster-config') } : {}),
|
|
515
|
+
...(layer.get('style-fn') !== undefined ? { style: layer.get('style-fn') } : {}),
|
|
516
|
+
...config,
|
|
517
|
+
};
|
|
518
|
+
const nextSource = this.createVectorSource(nextConfig, map ?? {});
|
|
519
|
+
const clusterCfg = nextConfig.cluster;
|
|
520
|
+
if (clusterCfg?.enabled) {
|
|
521
|
+
const clusterSource = new ClusterSource({
|
|
522
|
+
source: nextSource,
|
|
523
|
+
distance: clusterCfg.distance ?? 40,
|
|
524
|
+
minDistance: clusterCfg.minDistance ?? 20,
|
|
525
|
+
geometryFunction: (feature) => {
|
|
526
|
+
const geometry = feature.getGeometry();
|
|
527
|
+
if (!geometry)
|
|
528
|
+
return null;
|
|
529
|
+
if (geometry.getType() === 'Point')
|
|
530
|
+
return geometry;
|
|
531
|
+
return new Point(getCenter(geometry.getExtent()));
|
|
532
|
+
},
|
|
533
|
+
});
|
|
534
|
+
layer.setSource(clusterSource);
|
|
535
|
+
}
|
|
536
|
+
else {
|
|
537
|
+
layer.setSource(nextSource);
|
|
538
|
+
}
|
|
539
|
+
layer.set('coordinate-projection', nextConfig.coordinateProjection ?? 'EPSG:4326');
|
|
540
|
+
this.updateFeatures(id, nextConfig.features ?? []);
|
|
541
|
+
this.updateLayerState();
|
|
542
|
+
}
|
|
500
543
|
setVisibility(id, visible) {
|
|
501
544
|
const layer = this.layerCache.get(id);
|
|
502
545
|
if (layer) {
|
|
@@ -672,24 +715,29 @@ class OlLayerService {
|
|
|
672
715
|
});
|
|
673
716
|
this.layerState.set(layers.sort((a, b) => a.zIndex - b.zIndex));
|
|
674
717
|
}
|
|
675
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
676
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
718
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlLayerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
719
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlLayerService });
|
|
677
720
|
}
|
|
678
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
721
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlLayerService, decorators: [{
|
|
679
722
|
type: Injectable
|
|
680
723
|
}] });
|
|
681
724
|
|
|
682
725
|
class OlClusterComponent {
|
|
683
|
-
distance = input(40,
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
726
|
+
distance = input(40, /* @ts-ignore */
|
|
727
|
+
...(ngDevMode ? [{ debugName: "distance" }] : /* istanbul ignore next */ []));
|
|
728
|
+
minDistance = input(20, /* @ts-ignore */
|
|
729
|
+
...(ngDevMode ? [{ debugName: "minDistance" }] : /* istanbul ignore next */ []));
|
|
730
|
+
showCount = input(true, /* @ts-ignore */
|
|
731
|
+
...(ngDevMode ? [{ debugName: "showCount" }] : /* istanbul ignore next */ []));
|
|
732
|
+
featureStyle = input(/* @ts-ignore */
|
|
733
|
+
...(ngDevMode ? [undefined, { debugName: "featureStyle" }] : /* istanbul ignore next */ []));
|
|
734
|
+
spiderfyOnSelect = input(false, /* @ts-ignore */
|
|
735
|
+
...(ngDevMode ? [{ debugName: "spiderfyOnSelect" }] : /* istanbul ignore next */ []));
|
|
688
736
|
spiderfyClick = output();
|
|
689
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
690
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
737
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlClusterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
738
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.0", type: OlClusterComponent, isStandalone: true, selector: "ol-cluster", inputs: { distance: { classPropertyName: "distance", publicName: "distance", isSignal: true, isRequired: false, transformFunction: null }, minDistance: { classPropertyName: "minDistance", publicName: "minDistance", isSignal: true, isRequired: false, transformFunction: null }, showCount: { classPropertyName: "showCount", publicName: "showCount", isSignal: true, isRequired: false, transformFunction: null }, featureStyle: { classPropertyName: "featureStyle", publicName: "featureStyle", isSignal: true, isRequired: false, transformFunction: null }, spiderfyOnSelect: { classPropertyName: "spiderfyOnSelect", publicName: "spiderfyOnSelect", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { spiderfyClick: "spiderfyClick" }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
691
739
|
}
|
|
692
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
740
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlClusterComponent, decorators: [{
|
|
693
741
|
type: Component,
|
|
694
742
|
args: [{
|
|
695
743
|
selector: 'ol-cluster',
|
|
@@ -702,17 +750,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImpo
|
|
|
702
750
|
class OlVectorLayerComponent {
|
|
703
751
|
layerService = inject(OlLayerService);
|
|
704
752
|
destroyRef = inject(DestroyRef);
|
|
705
|
-
id = input.required(
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
753
|
+
id = input.required(/* @ts-ignore */
|
|
754
|
+
...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
|
|
755
|
+
features = input([], /* @ts-ignore */
|
|
756
|
+
...(ngDevMode ? [{ debugName: "features" }] : /* istanbul ignore next */ []));
|
|
757
|
+
url = input(/* @ts-ignore */
|
|
758
|
+
...(ngDevMode ? [undefined, { debugName: "url" }] : /* istanbul ignore next */ []));
|
|
759
|
+
format = input(/* @ts-ignore */
|
|
760
|
+
...(ngDevMode ? [undefined, { debugName: "format" }] : /* istanbul ignore next */ []));
|
|
761
|
+
zIndex = input(0, /* @ts-ignore */
|
|
762
|
+
...(ngDevMode ? [{ debugName: "zIndex" }] : /* istanbul ignore next */ []));
|
|
763
|
+
opacity = input(1, /* @ts-ignore */
|
|
764
|
+
...(ngDevMode ? [{ debugName: "opacity" }] : /* istanbul ignore next */ []));
|
|
765
|
+
visible = input(true, /* @ts-ignore */
|
|
766
|
+
...(ngDevMode ? [{ debugName: "visible" }] : /* istanbul ignore next */ []));
|
|
767
|
+
style = input(/* @ts-ignore */
|
|
768
|
+
...(ngDevMode ? [undefined, { debugName: "style" }] : /* istanbul ignore next */ []));
|
|
769
|
+
cluster = input(/* @ts-ignore */
|
|
770
|
+
...(ngDevMode ? [undefined, { debugName: "cluster" }] : /* istanbul ignore next */ []));
|
|
771
|
+
clusterComponent = contentChild(OlClusterComponent, /* @ts-ignore */
|
|
772
|
+
...(ngDevMode ? [{ debugName: "clusterComponent" }] : /* istanbul ignore next */ []));
|
|
773
|
+
coordinateProjection = input('EPSG:4326', /* @ts-ignore */
|
|
774
|
+
...(ngDevMode ? [{ debugName: "coordinateProjection" }] : /* istanbul ignore next */ []));
|
|
716
775
|
constructor() {
|
|
717
776
|
// Initialize layer after DOM is ready
|
|
718
777
|
afterNextRender(() => {
|
|
@@ -746,11 +805,19 @@ class OlVectorLayerComponent {
|
|
|
746
805
|
// Effect to sync features when input changes
|
|
747
806
|
effect(() => {
|
|
748
807
|
const currentFeatures = this.features();
|
|
749
|
-
// Only update if layer already exists (afterNextRender already created it)
|
|
750
808
|
if (this.layerService.getLayer(this.id())) {
|
|
751
809
|
this.layerService.updateFeatures(this.id(), currentFeatures);
|
|
752
810
|
}
|
|
753
811
|
});
|
|
812
|
+
effect(() => {
|
|
813
|
+
if (this.layerService.getLayer(this.id())) {
|
|
814
|
+
this.layerService.updateVectorLayerConfig(this.id(), {
|
|
815
|
+
url: this.url(),
|
|
816
|
+
format: this.format(),
|
|
817
|
+
coordinateProjection: this.coordinateProjection(),
|
|
818
|
+
});
|
|
819
|
+
}
|
|
820
|
+
});
|
|
754
821
|
effect(() => {
|
|
755
822
|
this.layerService.setOpacity(this.id(), this.opacity());
|
|
756
823
|
});
|
|
@@ -776,10 +843,10 @@ class OlVectorLayerComponent {
|
|
|
776
843
|
this.layerService.removeLayer(this.id());
|
|
777
844
|
});
|
|
778
845
|
}
|
|
779
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
780
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "
|
|
846
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlVectorLayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
847
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.0", type: OlVectorLayerComponent, isStandalone: true, selector: "ol-vector-layer", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: true, transformFunction: null }, features: { classPropertyName: "features", publicName: "features", isSignal: true, isRequired: false, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null }, format: { classPropertyName: "format", publicName: "format", isSignal: true, isRequired: false, transformFunction: null }, zIndex: { classPropertyName: "zIndex", publicName: "zIndex", isSignal: true, isRequired: false, transformFunction: null }, opacity: { classPropertyName: "opacity", publicName: "opacity", isSignal: true, isRequired: false, transformFunction: null }, visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, cluster: { classPropertyName: "cluster", publicName: "cluster", isSignal: true, isRequired: false, transformFunction: null }, coordinateProjection: { classPropertyName: "coordinateProjection", publicName: "coordinateProjection", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "clusterComponent", first: true, predicate: OlClusterComponent, descendants: true, isSignal: true }], ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
781
848
|
}
|
|
782
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
849
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlVectorLayerComponent, decorators: [{
|
|
783
850
|
type: Component,
|
|
784
851
|
args: [{
|
|
785
852
|
selector: 'ol-vector-layer',
|
|
@@ -792,14 +859,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImpo
|
|
|
792
859
|
class OlTileLayerComponent {
|
|
793
860
|
layerService = inject(OlLayerService);
|
|
794
861
|
destroyRef = inject(DestroyRef);
|
|
795
|
-
id = input.required(
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
862
|
+
id = input.required(/* @ts-ignore */
|
|
863
|
+
...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
|
|
864
|
+
source = input.required(/* @ts-ignore */
|
|
865
|
+
...(ngDevMode ? [{ debugName: "source" }] : /* istanbul ignore next */ []));
|
|
866
|
+
url = input(/* @ts-ignore */
|
|
867
|
+
...(ngDevMode ? [undefined, { debugName: "url" }] : /* istanbul ignore next */ []));
|
|
868
|
+
attributions = input(/* @ts-ignore */
|
|
869
|
+
...(ngDevMode ? [undefined, { debugName: "attributions" }] : /* istanbul ignore next */ []));
|
|
870
|
+
params = input(/* @ts-ignore */
|
|
871
|
+
...(ngDevMode ? [undefined, { debugName: "params" }] : /* istanbul ignore next */ []));
|
|
872
|
+
zIndex = input(0, /* @ts-ignore */
|
|
873
|
+
...(ngDevMode ? [{ debugName: "zIndex" }] : /* istanbul ignore next */ []));
|
|
874
|
+
opacity = input(1, /* @ts-ignore */
|
|
875
|
+
...(ngDevMode ? [{ debugName: "opacity" }] : /* istanbul ignore next */ []));
|
|
876
|
+
visible = input(true, /* @ts-ignore */
|
|
877
|
+
...(ngDevMode ? [{ debugName: "visible" }] : /* istanbul ignore next */ []));
|
|
803
878
|
constructor() {
|
|
804
879
|
// Initialize layer after DOM is ready
|
|
805
880
|
afterNextRender(() => {
|
|
@@ -831,10 +906,10 @@ class OlTileLayerComponent {
|
|
|
831
906
|
this.layerService.removeLayer(this.id());
|
|
832
907
|
});
|
|
833
908
|
}
|
|
834
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
835
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
909
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlTileLayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
910
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.0", type: OlTileLayerComponent, isStandalone: true, selector: "ol-tile-layer", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: true, transformFunction: null }, source: { classPropertyName: "source", publicName: "source", isSignal: true, isRequired: true, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null }, attributions: { classPropertyName: "attributions", publicName: "attributions", isSignal: true, isRequired: false, transformFunction: null }, params: { classPropertyName: "params", publicName: "params", isSignal: true, isRequired: false, transformFunction: null }, zIndex: { classPropertyName: "zIndex", publicName: "zIndex", isSignal: true, isRequired: false, transformFunction: null }, opacity: { classPropertyName: "opacity", publicName: "opacity", isSignal: true, isRequired: false, transformFunction: null }, visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
836
911
|
}
|
|
837
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
912
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlTileLayerComponent, decorators: [{
|
|
838
913
|
type: Component,
|
|
839
914
|
args: [{
|
|
840
915
|
selector: 'ol-tile-layer',
|
|
@@ -847,14 +922,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.13", ngImpo
|
|
|
847
922
|
class OlImageLayerComponent {
|
|
848
923
|
layerService = inject(OlLayerService);
|
|
849
924
|
destroyRef = inject(DestroyRef);
|
|
850
|
-
id = input.required(
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
925
|
+
id = input.required(/* @ts-ignore */
|
|
926
|
+
...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
|
|
927
|
+
sourceType = input.required(/* @ts-ignore */
|
|
928
|
+
...(ngDevMode ? [{ debugName: "sourceType" }] : /* istanbul ignore next */ []));
|
|
929
|
+
url = input.required(/* @ts-ignore */
|
|
930
|
+
...(ngDevMode ? [{ debugName: "url" }] : /* istanbul ignore next */ []));
|
|
931
|
+
params = input(/* @ts-ignore */
|
|
932
|
+
...(ngDevMode ? [undefined, { debugName: "params" }] : /* istanbul ignore next */ []));
|
|
933
|
+
imageExtent = input(/* @ts-ignore */
|
|
934
|
+
...(ngDevMode ? [undefined, { debugName: "imageExtent" }] : /* istanbul ignore next */ []));
|
|
935
|
+
zIndex = input(0, /* @ts-ignore */
|
|
936
|
+
...(ngDevMode ? [{ debugName: "zIndex" }] : /* istanbul ignore next */ []));
|
|
937
|
+
opacity = input(1, /* @ts-ignore */
|
|
938
|
+
...(ngDevMode ? [{ debugName: "opacity" }] : /* istanbul ignore next */ []));
|
|
939
|
+
visible = input(true, /* @ts-ignore */
|
|
940
|
+
...(ngDevMode ? [{ debugName: "visible" }] : /* istanbul ignore next */ []));
|
|
858
941
|
constructor() {
|
|
859
942
|
// Initialize layer after DOM is ready
|
|
860
943
|
afterNextRender(() => {
|
|
@@ -877,10 +960,10 @@ class OlImageLayerComponent {
|
|
|
877
960
|
this.layerService.removeLayer(this.id());
|
|
878
961
|
});
|
|
879
962
|
}
|
|
880
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
881
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
963
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlImageLayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
964
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.0", type: OlImageLayerComponent, isStandalone: true, selector: "ol-image-layer", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: true, transformFunction: null }, sourceType: { classPropertyName: "sourceType", publicName: "sourceType", isSignal: true, isRequired: true, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: true, transformFunction: null }, params: { classPropertyName: "params", publicName: "params", isSignal: true, isRequired: false, transformFunction: null }, imageExtent: { classPropertyName: "imageExtent", publicName: "imageExtent", isSignal: true, isRequired: false, transformFunction: null }, zIndex: { classPropertyName: "zIndex", publicName: "zIndex", isSignal: true, isRequired: false, transformFunction: null }, opacity: { classPropertyName: "opacity", publicName: "opacity", isSignal: true, isRequired: false, transformFunction: null }, visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
882
965
|
}
|
|
883
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
966
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlImageLayerComponent, decorators: [{
|
|
884
967
|
type: Component,
|
|
885
968
|
args: [{
|
|
886
969
|
selector: 'ol-image-layer',
|
|
@@ -893,30 +976,41 @@ class OlHeatmapLayerComponent {
|
|
|
893
976
|
layerService = inject(OlLayerService);
|
|
894
977
|
mapService = inject(OlMapService);
|
|
895
978
|
destroyRef = inject(DestroyRef);
|
|
896
|
-
id = input.required(
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
979
|
+
id = input.required(/* @ts-ignore */
|
|
980
|
+
...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
|
|
981
|
+
features = input([], /* @ts-ignore */
|
|
982
|
+
...(ngDevMode ? [{ debugName: "features" }] : /* istanbul ignore next */ []));
|
|
983
|
+
zIndex = input(0, /* @ts-ignore */
|
|
984
|
+
...(ngDevMode ? [{ debugName: "zIndex" }] : /* istanbul ignore next */ []));
|
|
985
|
+
opacity = input(1, /* @ts-ignore */
|
|
986
|
+
...(ngDevMode ? [{ debugName: "opacity" }] : /* istanbul ignore next */ []));
|
|
987
|
+
visible = input(true, /* @ts-ignore */
|
|
988
|
+
...(ngDevMode ? [{ debugName: "visible" }] : /* istanbul ignore next */ []));
|
|
989
|
+
blur = input(15, /* @ts-ignore */
|
|
990
|
+
...(ngDevMode ? [{ debugName: "blur" }] : /* istanbul ignore next */ []));
|
|
991
|
+
radius = input(8, /* @ts-ignore */
|
|
992
|
+
...(ngDevMode ? [{ debugName: "radius" }] : /* istanbul ignore next */ []));
|
|
903
993
|
/** Unit for radius and blur: 'pixels' (default) or 'meters' */
|
|
904
|
-
radiusUnit = input('pixels',
|
|
905
|
-
|
|
994
|
+
radiusUnit = input('pixels', /* @ts-ignore */
|
|
995
|
+
...(ngDevMode ? [{ debugName: "radiusUnit" }] : /* istanbul ignore next */ []));
|
|
996
|
+
weight = input(/* @ts-ignore */
|
|
997
|
+
...(ngDevMode ? [undefined, { debugName: "weight" }] : /* istanbul ignore next */ []));
|
|
906
998
|
/** Computed radius in pixels based on current resolution if unit is 'meters' */
|
|
907
999
|
scaledRadius = computed(() => {
|
|
908
1000
|
const r = this.radius();
|
|
909
1001
|
if (this.radiusUnit() === 'pixels')
|
|
910
1002
|
return r;
|
|
911
1003
|
return r / this.mapService.resolution();
|
|
912
|
-
},
|
|
1004
|
+
}, /* @ts-ignore */
|
|
1005
|
+
...(ngDevMode ? [{ debugName: "scaledRadius" }] : /* istanbul ignore next */ []));
|
|
913
1006
|
/** Computed blur in pixels based on current resolution if unit is 'meters' */
|
|
914
1007
|
scaledBlur = computed(() => {
|
|
915
1008
|
const b = this.blur();
|
|
916
1009
|
if (this.radiusUnit() === 'pixels')
|
|
917
1010
|
return b;
|
|
918
1011
|
return b / this.mapService.resolution();
|
|
919
|
-
},
|
|
1012
|
+
}, /* @ts-ignore */
|
|
1013
|
+
...(ngDevMode ? [{ debugName: "scaledBlur" }] : /* istanbul ignore next */ []));
|
|
920
1014
|
constructor() {
|
|
921
1015
|
afterNextRender(() => {
|
|
922
1016
|
this.layerService.addLayer({
|
|
@@ -957,10 +1051,10 @@ class OlHeatmapLayerComponent {
|
|
|
957
1051
|
this.layerService.removeLayer(this.id());
|
|
958
1052
|
});
|
|
959
1053
|
}
|
|
960
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
961
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
1054
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlHeatmapLayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1055
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.0", type: OlHeatmapLayerComponent, isStandalone: true, selector: "ol-heatmap-layer", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: true, transformFunction: null }, features: { classPropertyName: "features", publicName: "features", isSignal: true, isRequired: false, transformFunction: null }, zIndex: { classPropertyName: "zIndex", publicName: "zIndex", isSignal: true, isRequired: false, transformFunction: null }, opacity: { classPropertyName: "opacity", publicName: "opacity", isSignal: true, isRequired: false, transformFunction: null }, visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, blur: { classPropertyName: "blur", publicName: "blur", isSignal: true, isRequired: false, transformFunction: null }, radius: { classPropertyName: "radius", publicName: "radius", isSignal: true, isRequired: false, transformFunction: null }, radiusUnit: { classPropertyName: "radiusUnit", publicName: "radiusUnit", isSignal: true, isRequired: false, transformFunction: null }, weight: { classPropertyName: "weight", publicName: "weight", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
962
1056
|
}
|
|
963
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1057
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlHeatmapLayerComponent, decorators: [{
|
|
964
1058
|
type: Component,
|
|
965
1059
|
args: [{
|
|
966
1060
|
selector: 'ol-heatmap-layer',
|
|
@@ -998,21 +1092,29 @@ class OlWebGLVectorLayerComponent {
|
|
|
998
1092
|
mapService = inject(OlMapService);
|
|
999
1093
|
destroyRef = inject(DestroyRef);
|
|
1000
1094
|
/** Unique layer identifier */
|
|
1001
|
-
id = input.required(
|
|
1095
|
+
id = input.required(/* @ts-ignore */
|
|
1096
|
+
...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
|
|
1002
1097
|
/** Features to render */
|
|
1003
|
-
features = input([],
|
|
1098
|
+
features = input([], /* @ts-ignore */
|
|
1099
|
+
...(ngDevMode ? [{ debugName: "features" }] : /* istanbul ignore next */ []));
|
|
1004
1100
|
/** WebGL flat style (required — no default provided) */
|
|
1005
|
-
flatStyle = input.required(
|
|
1101
|
+
flatStyle = input.required(/* @ts-ignore */
|
|
1102
|
+
...(ngDevMode ? [{ debugName: "flatStyle" }] : /* istanbul ignore next */ []));
|
|
1006
1103
|
/** Z-index for layer ordering */
|
|
1007
|
-
zIndex = input(0,
|
|
1104
|
+
zIndex = input(0, /* @ts-ignore */
|
|
1105
|
+
...(ngDevMode ? [{ debugName: "zIndex" }] : /* istanbul ignore next */ []));
|
|
1008
1106
|
/** Opacity (0–1) */
|
|
1009
|
-
opacity = input(1,
|
|
1107
|
+
opacity = input(1, /* @ts-ignore */
|
|
1108
|
+
...(ngDevMode ? [{ debugName: "opacity" }] : /* istanbul ignore next */ []));
|
|
1010
1109
|
/** Layer visibility */
|
|
1011
|
-
visible = input(true,
|
|
1110
|
+
visible = input(true, /* @ts-ignore */
|
|
1111
|
+
...(ngDevMode ? [{ debugName: "visible" }] : /* istanbul ignore next */ []));
|
|
1012
1112
|
/** Disable hit detection for better performance (default: true) */
|
|
1013
|
-
disableHitDetection = input(true,
|
|
1113
|
+
disableHitDetection = input(true, /* @ts-ignore */
|
|
1114
|
+
...(ngDevMode ? [{ debugName: "disableHitDetection" }] : /* istanbul ignore next */ []));
|
|
1014
1115
|
/** Style variables for dynamic expressions (e.g. `['var', 'threshold']`) */
|
|
1015
|
-
variables = input(
|
|
1116
|
+
variables = input(/* @ts-ignore */
|
|
1117
|
+
...(ngDevMode ? [undefined, { debugName: "variables" }] : /* istanbul ignore next */ []));
|
|
1016
1118
|
layer = null;
|
|
1017
1119
|
vectorSource = new VectorSource();
|
|
1018
1120
|
constructor() {
|
|
@@ -1123,10 +1225,10 @@ class OlWebGLVectorLayerComponent {
|
|
|
1123
1225
|
});
|
|
1124
1226
|
this.vectorSource.addFeatures(olFeatures);
|
|
1125
1227
|
}
|
|
1126
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1127
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
1228
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlWebGLVectorLayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1229
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.0", type: OlWebGLVectorLayerComponent, isStandalone: true, selector: "ol-webgl-vector-layer", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: true, transformFunction: null }, features: { classPropertyName: "features", publicName: "features", isSignal: true, isRequired: false, transformFunction: null }, flatStyle: { classPropertyName: "flatStyle", publicName: "flatStyle", isSignal: true, isRequired: true, transformFunction: null }, zIndex: { classPropertyName: "zIndex", publicName: "zIndex", isSignal: true, isRequired: false, transformFunction: null }, opacity: { classPropertyName: "opacity", publicName: "opacity", isSignal: true, isRequired: false, transformFunction: null }, visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, disableHitDetection: { classPropertyName: "disableHitDetection", publicName: "disableHitDetection", isSignal: true, isRequired: false, transformFunction: null }, variables: { classPropertyName: "variables", publicName: "variables", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1128
1230
|
}
|
|
1129
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1231
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlWebGLVectorLayerComponent, decorators: [{
|
|
1130
1232
|
type: Component,
|
|
1131
1233
|
args: [{
|
|
1132
1234
|
selector: 'ol-webgl-vector-layer',
|
|
@@ -1157,23 +1259,32 @@ class OlWebGLTileLayerComponent {
|
|
|
1157
1259
|
mapService = inject(OlMapService);
|
|
1158
1260
|
destroyRef = inject(DestroyRef);
|
|
1159
1261
|
/** Unique layer identifier */
|
|
1160
|
-
id = input.required(
|
|
1262
|
+
id = input.required(/* @ts-ignore */
|
|
1263
|
+
...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
|
|
1161
1264
|
/** Tile source type */
|
|
1162
|
-
source = input.required(
|
|
1265
|
+
source = input.required(/* @ts-ignore */
|
|
1266
|
+
...(ngDevMode ? [{ debugName: "source" }] : /* istanbul ignore next */ []));
|
|
1163
1267
|
/** Tile URL template (required for 'xyz' and 'mvt') */
|
|
1164
|
-
url = input(
|
|
1268
|
+
url = input(/* @ts-ignore */
|
|
1269
|
+
...(ngDevMode ? [undefined, { debugName: "url" }] : /* istanbul ignore next */ []));
|
|
1165
1270
|
/** Attribution text */
|
|
1166
|
-
attributions = input(
|
|
1271
|
+
attributions = input(/* @ts-ignore */
|
|
1272
|
+
...(ngDevMode ? [undefined, { debugName: "attributions" }] : /* istanbul ignore next */ []));
|
|
1167
1273
|
/** WebGL tile style (raster expressions) or flat style (MVT) */
|
|
1168
|
-
tileStyle = input(
|
|
1274
|
+
tileStyle = input(/* @ts-ignore */
|
|
1275
|
+
...(ngDevMode ? [undefined, { debugName: "tileStyle" }] : /* istanbul ignore next */ []));
|
|
1169
1276
|
/** Z-index for layer ordering */
|
|
1170
|
-
zIndex = input(0,
|
|
1277
|
+
zIndex = input(0, /* @ts-ignore */
|
|
1278
|
+
...(ngDevMode ? [{ debugName: "zIndex" }] : /* istanbul ignore next */ []));
|
|
1171
1279
|
/** Opacity (0–1) */
|
|
1172
|
-
opacity = input(1,
|
|
1280
|
+
opacity = input(1, /* @ts-ignore */
|
|
1281
|
+
...(ngDevMode ? [{ debugName: "opacity" }] : /* istanbul ignore next */ []));
|
|
1173
1282
|
/** Layer visibility */
|
|
1174
|
-
visible = input(true,
|
|
1283
|
+
visible = input(true, /* @ts-ignore */
|
|
1284
|
+
...(ngDevMode ? [{ debugName: "visible" }] : /* istanbul ignore next */ []));
|
|
1175
1285
|
/** Preload low-res tiles up to this many zoom levels */
|
|
1176
|
-
preload = input(0,
|
|
1286
|
+
preload = input(0, /* @ts-ignore */
|
|
1287
|
+
...(ngDevMode ? [{ debugName: "preload" }] : /* istanbul ignore next */ []));
|
|
1177
1288
|
layer = null;
|
|
1178
1289
|
constructor() {
|
|
1179
1290
|
afterNextRender(() => {
|
|
@@ -1259,10 +1370,10 @@ class OlWebGLTileLayerComponent {
|
|
|
1259
1370
|
}
|
|
1260
1371
|
});
|
|
1261
1372
|
}
|
|
1262
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1263
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
1373
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlWebGLTileLayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1374
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.0", type: OlWebGLTileLayerComponent, isStandalone: true, selector: "ol-webgl-tile-layer", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: true, transformFunction: null }, source: { classPropertyName: "source", publicName: "source", isSignal: true, isRequired: true, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null }, attributions: { classPropertyName: "attributions", publicName: "attributions", isSignal: true, isRequired: false, transformFunction: null }, tileStyle: { classPropertyName: "tileStyle", publicName: "tileStyle", isSignal: true, isRequired: false, transformFunction: null }, zIndex: { classPropertyName: "zIndex", publicName: "zIndex", isSignal: true, isRequired: false, transformFunction: null }, opacity: { classPropertyName: "opacity", publicName: "opacity", isSignal: true, isRequired: false, transformFunction: null }, visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, preload: { classPropertyName: "preload", publicName: "preload", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1264
1375
|
}
|
|
1265
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1376
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlWebGLTileLayerComponent, decorators: [{
|
|
1266
1377
|
type: Component,
|
|
1267
1378
|
args: [{
|
|
1268
1379
|
selector: 'ol-webgl-tile-layer',
|
|
@@ -156,10 +156,10 @@ class OlMilitaryService {
|
|
|
156
156
|
throw new Error('createMilSymbol requires a browser environment');
|
|
157
157
|
}
|
|
158
158
|
}
|
|
159
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
160
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
159
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlMilitaryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
160
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlMilitaryService });
|
|
161
161
|
}
|
|
162
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
162
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlMilitaryService, decorators: [{
|
|
163
163
|
type: Injectable
|
|
164
164
|
}], ctorParameters: () => [] });
|
|
165
165
|
|
|
@@ -329,10 +329,10 @@ class OlTacticalGraphicsService {
|
|
|
329
329
|
const b = parseInt(hex.slice(5, 7), 16);
|
|
330
330
|
return `rgba(${r}, ${g}, ${b}, ${alpha})`;
|
|
331
331
|
}
|
|
332
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
333
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
332
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlTacticalGraphicsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
333
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlTacticalGraphicsService });
|
|
334
334
|
}
|
|
335
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
335
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: OlTacticalGraphicsService, decorators: [{
|
|
336
336
|
type: Injectable
|
|
337
337
|
}] });
|
|
338
338
|
|