@artstesh/maps 5.0.4 → 5.0.5
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/dist/esm2022/map/map-plate/layers/feature-layer/feature-layer.component.mjs +2 -2
- package/dist/esm2022/map/map-plate/tooltips/index.mjs +3 -0
- package/dist/esm2022/map/map-plate/tooltips/tooltip/tooltip.component.mjs +81 -0
- package/dist/esm2022/map/map-plate/tooltips/tooltip/tooltip.settings.mjs +31 -0
- package/dist/esm2022/map/map.module.mjs +6 -3
- package/dist/esm2022/map/messages/commands/close-tooltip.command.mjs +13 -0
- package/dist/esm2022/map/messages/index.mjs +2 -1
- package/dist/esm2022/map/public-api.mjs +2 -1
- package/dist/esm2022/map/services/map-click.service.mjs +2 -2
- package/dist/esm2022/map/services/message-registrator.service.mjs +3 -1
- package/dist/esm2022/src/map/map-plate/layers/feature-layer/feature-layer.component.mjs +2 -2
- package/dist/esm2022/src/map/map-plate/tooltips/index.mjs +3 -0
- package/dist/esm2022/src/map/map-plate/tooltips/tooltip/tooltip.component.mjs +81 -0
- package/dist/esm2022/src/map/map-plate/tooltips/tooltip/tooltip.settings.mjs +31 -0
- package/dist/esm2022/src/map/map.module.mjs +6 -3
- package/dist/esm2022/src/map/messages/commands/close-tooltip.command.mjs +13 -0
- package/dist/esm2022/src/map/messages/index.mjs +2 -1
- package/dist/esm2022/src/map/public-api.mjs +2 -1
- package/dist/esm2022/src/map/services/map-click.service.mjs +2 -2
- package/dist/esm2022/src/map/services/message-registrator.service.mjs +3 -1
- package/dist/fesm2022/maps-components-src-map.mjs +124 -6
- package/dist/fesm2022/maps-components-src-map.mjs.map +1 -1
- package/dist/fesm2022/maps-components.mjs +124 -6
- package/dist/fesm2022/maps-components.mjs.map +1 -1
- package/dist/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +1 -1
- package/dist/map/map-plate/tooltips/index.d.ts +2 -0
- package/dist/map/map-plate/tooltips/tooltip/tooltip.component.d.ts +26 -0
- package/dist/map/map-plate/tooltips/tooltip/tooltip.settings.d.ts +11 -0
- package/dist/map/map.module.d.ts +3 -2
- package/dist/map/messages/commands/close-tooltip.command.d.ts +7 -0
- package/dist/map/messages/index.d.ts +1 -0
- package/dist/map/public-api.d.ts +1 -0
- package/dist/src/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +1 -1
- package/dist/src/map/map-plate/tooltips/index.d.ts +2 -0
- package/dist/src/map/map-plate/tooltips/tooltip/tooltip.component.d.ts +26 -0
- package/dist/src/map/map-plate/tooltips/tooltip/tooltip.settings.d.ts +11 -0
- package/dist/src/map/map.module.d.ts +3 -2
- package/dist/src/map/messages/commands/close-tooltip.command.d.ts +7 -0
- package/dist/src/map/messages/index.d.ts +1 -0
- package/dist/src/map/public-api.d.ts +1 -0
- package/package.json +1 -1
|
@@ -24,7 +24,7 @@ export class MapClickService {
|
|
|
24
24
|
const model = new MapClickEvent(ev.coordinate, {});
|
|
25
25
|
this.map?.forEachFeatureAtPixel(ev.pixel, (f, l) => {
|
|
26
26
|
this.getFeatureCollectionWithInner([f])
|
|
27
|
-
.filter((f) =>
|
|
27
|
+
.filter((f) => f.getId() != null)
|
|
28
28
|
.forEach((fs) => {
|
|
29
29
|
let layerName = l.get('name');
|
|
30
30
|
if (!model.entities[layerName])
|
|
@@ -48,4 +48,4 @@ export class MapClickService {
|
|
|
48
48
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapClickService, decorators: [{
|
|
49
49
|
type: Injectable
|
|
50
50
|
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }]; } });
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLWNsaWNrLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9zZXJ2aWNlcy9tYXAtY2xpY2suc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7OztBQUluRSxNQUFNLE9BQU8sZUFBZTtJQUdOO0lBRlosR0FBRyxDQUFPO0lBRWxCLFlBQW9CLE9BQTBCO1FBQTFCLFlBQU8sR0FBUCxPQUFPLENBQW1CO0lBQUcsQ0FBQztJQUVsRCxFQUFFO1FBQ0EsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBbUIsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDNUUsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQ2pCLElBQUksQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNoQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDckMsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxPQUFPLENBQUMsRUFBNEI7UUFDbEMsTUFBTSxLQUFLLEdBQWtCLElBQUksYUFBYSxDQUFDLEVBQUUsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLEdBQUcsRUFBRSxxQkFBcUIsQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ2pELElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDLENBQXNCLENBQUMsQ0FBQztpQkFDekQsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLElBQUksSUFBSSxDQUFDO2lCQUNoQyxPQUFPLENBQUMsQ0FBQyxFQUFxQixFQUFFLEVBQUU7Z0JBQ2pDLElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQztvQkFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztnQkFDL0QsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRyxDQUFDLENBQUM7WUFDN0MsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLDZCQUE2QixDQUFDLFFBQTZCO1FBQ2pFLE1BQU0sTUFBTSxHQUF3QixFQUFFLENBQUM7UUFDdkMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3RCLE1BQU0sYUFBYSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUF3QixDQUFDO1lBQy9ELGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN6RSxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7d0dBdkNVLGVBQWU7NEdBQWYsZUFBZTs7NEZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElQb3N0Ym95RGVwZW5kaW5nU2VydmljZSB9IGZyb20gJ0BhcnRzdGVzaC9wb3N0Ym95JztcbmltcG9ydCB7IEZlYXR1cmUsIE1hcCwgTWFwQnJvd3NlckV2ZW50IH0gZnJvbSAnb2wnO1xuaW1wb3J0IHsgTWFwUG9zdGJveVNlcnZpY2UgfSBmcm9tICcuL21hcC1wb3N0Ym95LnNlcnZpY2UnO1xuaW1wb3J0IHsgTWFwUmVuZGVyZWRFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzJztcbmltcG9ydCB7IE1hcENsaWNrRXZlbnQgfSBmcm9tICcuLi9tZXNzYWdlcy9ldmVudHMvbWFwLWNsaWNrLmV2ZW50JztcbmltcG9ydCB7IEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNYXBDbGlja1NlcnZpY2UgaW1wbGVtZW50cyBJUG9zdGJveURlcGVuZGluZ1NlcnZpY2Uge1xuICBwcml2YXRlIG1hcD86IE1hcDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBvc3Rib3k6IE1hcFBvc3Rib3lTZXJ2aWNlKSB7fVxuXG4gIHVwKCk6IHZvaWQge1xuICAgIHRoaXMub2JzZXJ2ZU1hcFJlbmRlcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBvYnNlcnZlTWFwUmVuZGVyKCkge1xuICAgIHRoaXMucG9zdGJveS5zdWJzY3JpYmU8TWFwUmVuZGVyZWRFdmVudD4oTWFwUmVuZGVyZWRFdmVudC5JRCkuc3Vic2NyaWJlKChtKSA9PiB7XG4gICAgICB0aGlzLm1hcCA9IG0ubWFwO1xuICAgICAgdGhpcy5tYXA/Lm9uKCdzaW5nbGVjbGljaycsIChlKSA9PiB7XG4gICAgICAgIHRoaXMucG9zdGJveS5maXJlKHRoaXMub25DbGljayhlKSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uQ2xpY2soZXY6IE1hcEJyb3dzZXJFdmVudDxVSUV2ZW50Pik6IE1hcENsaWNrRXZlbnQge1xuICAgIGNvbnN0IG1vZGVsOiBNYXBDbGlja0V2ZW50ID0gbmV3IE1hcENsaWNrRXZlbnQoZXYuY29vcmRpbmF0ZSwge30pO1xuICAgIHRoaXMubWFwPy5mb3JFYWNoRmVhdHVyZUF0UGl4ZWwoZXYucGl4ZWwsIChmLCBsKSA9PiB7XG4gICAgICB0aGlzLmdldEZlYXR1cmVDb2xsZWN0aW9uV2l0aElubmVyKFtmIGFzIEZlYXR1cmU8R2VvbWV0cnk+XSlcbiAgICAgICAgLmZpbHRlcigoZikgPT4gZi5nZXRJZCgpICE9IG51bGwpXG4gICAgICAgIC5mb3JFYWNoKChmczogRmVhdHVyZTxHZW9tZXRyeT4pID0+IHtcbiAgICAgICAgICBsZXQgbGF5ZXJOYW1lID0gbC5nZXQoJ25hbWUnKTtcbiAgICAgICAgICBpZiAoIW1vZGVsLmVudGl0aWVzW2xheWVyTmFtZV0pIG1vZGVsLmVudGl0aWVzW2xheWVyTmFtZV0gPSBbXTtcbiAgICAgICAgICBtb2RlbC5lbnRpdGllc1tsYXllck5hbWVdLnB1c2goZi5nZXRJZCgpISk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xuICAgIHJldHVybiBtb2RlbDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmVhdHVyZUNvbGxlY3Rpb25XaXRoSW5uZXIoZmVhdHVyZXM6IEZlYXR1cmU8R2VvbWV0cnk+W10pOiBGZWF0dXJlPEdlb21ldHJ5PltdIHtcbiAgICBjb25zdCByZXN1bHQ6IEZlYXR1cmU8R2VvbWV0cnk+W10gPSBbXTtcbiAgICBmZWF0dXJlcz8uZm9yRWFjaCgoZikgPT4ge1xuICAgICAgY29uc3QgaW5uZXJGZWF0dXJlcyA9IGYuZ2V0KCdmZWF0dXJlcycpIGFzIEZlYXR1cmU8R2VvbWV0cnk+W107XG4gICAgICBpbm5lckZlYXR1cmVzPy5sZW5ndGggPyByZXN1bHQucHVzaCguLi5pbm5lckZlYXR1cmVzKSA6IHJlc3VsdC5wdXNoKGYpO1xuICAgIH0pO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -7,6 +7,7 @@ import { AddTileCommand } from '../messages/commands/add-tile.command';
|
|
|
7
7
|
import { RemoveTileCommand } from '../messages/commands/remove-tile.command';
|
|
8
8
|
import { PostboyAbstractRegistrator } from '@artstesh/postboy';
|
|
9
9
|
import { MapClickEvent } from '../messages/events/map-click.event';
|
|
10
|
+
import { CloseTooltipCommand } from '../messages/commands/close-tooltip.command';
|
|
10
11
|
import * as i0 from "@angular/core";
|
|
11
12
|
import * as i1 from "./map-postboy.service";
|
|
12
13
|
import * as i2 from "./map-management.service";
|
|
@@ -25,6 +26,7 @@ export class MessageRegistratorService extends PostboyAbstractRegistrator {
|
|
|
25
26
|
this.registerSubject(AddTileCommand.ID);
|
|
26
27
|
this.registerSubject(RemoveTileCommand.ID);
|
|
27
28
|
this.registerSubject(MapClickEvent.ID);
|
|
29
|
+
this.registerSubject(CloseTooltipCommand.ID);
|
|
28
30
|
}
|
|
29
31
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MessageRegistratorService, deps: [{ token: i1.MapPostboyService }, { token: i2.MapManagementService }, { token: i3.MapStateService }, { token: i4.MapClickService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
30
32
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MessageRegistratorService });
|
|
@@ -32,4 +34,4 @@ export class MessageRegistratorService extends PostboyAbstractRegistrator {
|
|
|
32
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MessageRegistratorService, decorators: [{
|
|
33
35
|
type: Injectable
|
|
34
36
|
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }, { type: i2.MapManagementService }, { type: i3.MapStateService }, { type: i4.MapClickService }]; } });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS1yZWdpc3RyYXRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvc2VydmljZXMvbWVzc2FnZS1yZWdpc3RyYXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM5RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFJL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDOzs7Ozs7QUFHakYsTUFBTSxPQUFPLHlCQUEwQixTQUFRLDBCQUEwQjtJQUN2RSxZQUNFLE9BQTBCLEVBQzFCLFVBQWdDLEVBQ2hDLEtBQXNCLEVBQ3RCLFdBQTRCO1FBRTVCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBQ1MsR0FBRztRQUNYLElBQUksQ0FBQyxjQUFjLENBQW1CLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxjQUFjLENBQTRCLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzdFLElBQUksQ0FBQyxlQUFlLENBQWtCLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsZUFBZSxDQUFxQixrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNoRSxJQUFJLENBQUMsZUFBZSxDQUFpQixjQUFjLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLGVBQWUsQ0FBb0IsaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLGVBQWUsQ0FBZ0IsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxlQUFlLENBQXNCLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7d0dBbkJVLHlCQUF5Qjs0R0FBekIseUJBQXlCOzs0RkFBekIseUJBQXlCO2tCQURyQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWFwUG9zdGJveVNlcnZpY2UgfSBmcm9tICcuL21hcC1wb3N0Ym95LnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVwbGF5U3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTWFwUmVuZGVyZWRFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzJztcbmltcG9ydCB7IEFkZExheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IFBsYWNlTGF5ZXJGZWF0dXJlc0NvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9wbGFjZS1sYXllci1mZWF0dXJlcy5jb21tYW5kJztcbmltcG9ydCB7IFJlbW92ZUxheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3JlbW92ZS1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IEFkZFRpbGVDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvYWRkLXRpbGUuY29tbWFuZCc7XG5pbXBvcnQgeyBSZW1vdmVUaWxlQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3JlbW92ZS10aWxlLmNvbW1hbmQnO1xuaW1wb3J0IHsgUG9zdGJveUFic3RyYWN0UmVnaXN0cmF0b3IgfSBmcm9tICdAYXJ0c3Rlc2gvcG9zdGJveSc7XG5pbXBvcnQgeyBNYXBNYW5hZ2VtZW50U2VydmljZSB9IGZyb20gJy4vbWFwLW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBNYXBTdGF0ZVNlcnZpY2UgfSBmcm9tICcuL21hcC1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1hcENsaWNrU2VydmljZSB9IGZyb20gJy4vbWFwLWNsaWNrLnNlcnZpY2UnO1xuaW1wb3J0IHsgTWFwQ2xpY2tFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzL2V2ZW50cy9tYXAtY2xpY2suZXZlbnQnO1xuaW1wb3J0IHsgQ2xvc2VUb29sdGlwQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2Nsb3NlLXRvb2x0aXAuY29tbWFuZCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNZXNzYWdlUmVnaXN0cmF0b3JTZXJ2aWNlIGV4dGVuZHMgUG9zdGJveUFic3RyYWN0UmVnaXN0cmF0b3Ige1xuICBjb25zdHJ1Y3RvcihcbiAgICBzZXJ2aWNlOiBNYXBQb3N0Ym95U2VydmljZSxcbiAgICBtYW5hZ2VtZW50OiBNYXBNYW5hZ2VtZW50U2VydmljZSxcbiAgICBzdGF0ZTogTWFwU3RhdGVTZXJ2aWNlLFxuICAgIGludGVyYWN0aW9uOiBNYXBDbGlja1NlcnZpY2UsXG4gICkge1xuICAgIHN1cGVyKHNlcnZpY2UpO1xuICAgIHRoaXMucmVnaXN0ZXJTZXJ2aWNlcyhbbWFuYWdlbWVudCwgc3RhdGUsIGludGVyYWN0aW9uXSk7XG4gIH1cbiAgcHJvdGVjdGVkIF91cCgpOiB2b2lkIHtcbiAgICB0aGlzLnJlZ2lzdGVyUmVwbGF5PE1hcFJlbmRlcmVkRXZlbnQ+KE1hcFJlbmRlcmVkRXZlbnQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJSZXBsYXk8UGxhY2VMYXllckZlYXR1cmVzQ29tbWFuZD4oUGxhY2VMYXllckZlYXR1cmVzQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3Q8QWRkTGF5ZXJDb21tYW5kPihBZGRMYXllckNvbW1hbmQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0PFJlbW92ZUxheWVyQ29tbWFuZD4oUmVtb3ZlTGF5ZXJDb21tYW5kLklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdDxBZGRUaWxlQ29tbWFuZD4oQWRkVGlsZUNvbW1hbmQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0PFJlbW92ZVRpbGVDb21tYW5kPihSZW1vdmVUaWxlQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3Q8TWFwQ2xpY2tFdmVudD4oTWFwQ2xpY2tFdmVudC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3Q8Q2xvc2VUb29sdGlwQ29tbWFuZD4oQ2xvc2VUb29sdGlwQ29tbWFuZC5JRCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, Injectable, ChangeDetectionStrategy, Input, NgModule } from '@angular/core';
|
|
2
|
+
import { Component, Injectable, ChangeDetectionStrategy, Input, ViewChild, NgModule } from '@angular/core';
|
|
3
3
|
import * as i4 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import { Feature } from 'ol';
|
|
@@ -14,6 +14,7 @@ import OSM from 'ol/source/OSM';
|
|
|
14
14
|
import { filter, first } from 'rxjs/operators';
|
|
15
15
|
import { XYZ, Vector } from 'ol/source';
|
|
16
16
|
import { Vector as Vector$1 } from 'ol/layer';
|
|
17
|
+
import Overlay from 'ol/Overlay';
|
|
17
18
|
import Style from 'ol/style/Style';
|
|
18
19
|
import { Icon, Circle, Fill, Stroke } from 'ol/style';
|
|
19
20
|
|
|
@@ -178,6 +179,18 @@ class MapClickEvent extends GenericMessage {
|
|
|
178
179
|
}
|
|
179
180
|
}
|
|
180
181
|
|
|
182
|
+
class CloseTooltipCommand extends GenericMessage {
|
|
183
|
+
tooltipId;
|
|
184
|
+
static ID = '4896d52c-e34f-4994-bcfd-32832d12dbe4';
|
|
185
|
+
constructor(tooltipId) {
|
|
186
|
+
super();
|
|
187
|
+
this.tooltipId = tooltipId;
|
|
188
|
+
}
|
|
189
|
+
get id() {
|
|
190
|
+
return CloseTooltipCommand.ID;
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
|
|
181
194
|
class AddLayerCommand extends GenericMessage {
|
|
182
195
|
layer;
|
|
183
196
|
static ID = 'd93e250f-92bc-43ac-9c6a-46c521a1aaa5';
|
|
@@ -351,7 +364,7 @@ class MapClickService {
|
|
|
351
364
|
const model = new MapClickEvent(ev.coordinate, {});
|
|
352
365
|
this.map?.forEachFeatureAtPixel(ev.pixel, (f, l) => {
|
|
353
366
|
this.getFeatureCollectionWithInner([f])
|
|
354
|
-
.filter((f) =>
|
|
367
|
+
.filter((f) => f.getId() != null)
|
|
355
368
|
.forEach((fs) => {
|
|
356
369
|
let layerName = l.get('name');
|
|
357
370
|
if (!model.entities[layerName])
|
|
@@ -389,6 +402,7 @@ class MessageRegistratorService extends PostboyAbstractRegistrator {
|
|
|
389
402
|
this.registerSubject(AddTileCommand.ID);
|
|
390
403
|
this.registerSubject(RemoveTileCommand.ID);
|
|
391
404
|
this.registerSubject(MapClickEvent.ID);
|
|
405
|
+
this.registerSubject(CloseTooltipCommand.ID);
|
|
392
406
|
}
|
|
393
407
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MessageRegistratorService, deps: [{ token: MapPostboyService }, { token: MapManagementService }, { token: MapStateService }, { token: MapClickService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
394
408
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MessageRegistratorService });
|
|
@@ -732,6 +746,7 @@ class FeatureLayerComponent extends DestructibleComponent {
|
|
|
732
746
|
postboy;
|
|
733
747
|
factory;
|
|
734
748
|
layer = null;
|
|
749
|
+
_settings = new FeatureLayerSettings();
|
|
735
750
|
constructor(postboy, factory) {
|
|
736
751
|
super();
|
|
737
752
|
this.postboy = postboy;
|
|
@@ -743,7 +758,6 @@ class FeatureLayerComponent extends DestructibleComponent {
|
|
|
743
758
|
.pipe(filter((m) => !!m), first())
|
|
744
759
|
.subscribe((m) => this.initLayer());
|
|
745
760
|
}
|
|
746
|
-
_settings = new FeatureLayerSettings();
|
|
747
761
|
set settings(value) {
|
|
748
762
|
if (!value || this._settings.isSame(value))
|
|
749
763
|
return;
|
|
@@ -805,6 +819,108 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
805
819
|
type: Input
|
|
806
820
|
}] } });
|
|
807
821
|
|
|
822
|
+
class TooltipSettings {
|
|
823
|
+
id;
|
|
824
|
+
containerClass = 'custom-tooltip-class';
|
|
825
|
+
show = (e) => true;
|
|
826
|
+
constructor(id) {
|
|
827
|
+
this.id = id ?? IdGenerator.get();
|
|
828
|
+
}
|
|
829
|
+
static copy(model) {
|
|
830
|
+
const result = new TooltipSettings(model.id);
|
|
831
|
+
result.show = model.show;
|
|
832
|
+
result.containerClass = model.containerClass;
|
|
833
|
+
return result;
|
|
834
|
+
}
|
|
835
|
+
setShow(show) {
|
|
836
|
+
return TooltipSettings.copy({ ...this, show });
|
|
837
|
+
}
|
|
838
|
+
setClass(containerClass) {
|
|
839
|
+
return TooltipSettings.copy({ ...this, containerClass });
|
|
840
|
+
}
|
|
841
|
+
isSame(model) {
|
|
842
|
+
if (this.show !== model.show)
|
|
843
|
+
return false;
|
|
844
|
+
if (this.containerClass !== model.containerClass)
|
|
845
|
+
return false;
|
|
846
|
+
if (this.id !== model.id)
|
|
847
|
+
return false;
|
|
848
|
+
return true;
|
|
849
|
+
}
|
|
850
|
+
}
|
|
851
|
+
|
|
852
|
+
class TooltipComponent extends DestructibleComponent {
|
|
853
|
+
postboy;
|
|
854
|
+
detector;
|
|
855
|
+
container;
|
|
856
|
+
_settings = new TooltipSettings();
|
|
857
|
+
map;
|
|
858
|
+
overlay;
|
|
859
|
+
show = false;
|
|
860
|
+
set settings(value) {
|
|
861
|
+
if (!value || this._settings.isSame(value))
|
|
862
|
+
return;
|
|
863
|
+
this._settings = value;
|
|
864
|
+
this.detector.detectChanges();
|
|
865
|
+
}
|
|
866
|
+
constructor(postboy, detector) {
|
|
867
|
+
super();
|
|
868
|
+
this.postboy = postboy;
|
|
869
|
+
this.detector = detector;
|
|
870
|
+
}
|
|
871
|
+
ngOnInit() {
|
|
872
|
+
this.subs.push(this.observeMapRender());
|
|
873
|
+
this.subs.push(this.observeMapClick());
|
|
874
|
+
this.subs.push(this.observeClose());
|
|
875
|
+
}
|
|
876
|
+
observeMapClick() {
|
|
877
|
+
return this.postboy.subscribe(MapClickEvent.ID).subscribe((ev) => {
|
|
878
|
+
this._settings.show(ev) ? this.addOverlay(ev.coordinates) : this.removeOverlay();
|
|
879
|
+
});
|
|
880
|
+
}
|
|
881
|
+
observeClose() {
|
|
882
|
+
return this.postboy
|
|
883
|
+
.subscribe(CloseTooltipCommand.ID)
|
|
884
|
+
.pipe(filter((ev) => ev.tooltipId === this._settings.id))
|
|
885
|
+
.subscribe(() => this.removeOverlay());
|
|
886
|
+
}
|
|
887
|
+
observeMapRender() {
|
|
888
|
+
return this.postboy.subscribe(MapRenderedEvent.ID).subscribe((m) => {
|
|
889
|
+
this.map = m.map;
|
|
890
|
+
});
|
|
891
|
+
}
|
|
892
|
+
removeOverlay = () => {
|
|
893
|
+
!!this.overlay && this.map?.removeOverlay(this.overlay);
|
|
894
|
+
this.show = false;
|
|
895
|
+
};
|
|
896
|
+
addOverlay(coordinates) {
|
|
897
|
+
this.removeOverlay();
|
|
898
|
+
this.overlay = new Overlay(this.options(coordinates));
|
|
899
|
+
this.map?.addOverlay(this.overlay);
|
|
900
|
+
this.show = true;
|
|
901
|
+
this.detector.detectChanges();
|
|
902
|
+
}
|
|
903
|
+
options = (coordinates) => {
|
|
904
|
+
return {
|
|
905
|
+
element: this.container?.nativeElement,
|
|
906
|
+
autoPan: false,
|
|
907
|
+
autoPanAnimation: { duration: 0 },
|
|
908
|
+
position: coordinates,
|
|
909
|
+
};
|
|
910
|
+
};
|
|
911
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipComponent, deps: [{ token: MapPostboyService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
912
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TooltipComponent, selector: "lib-tooltip", inputs: { settings: "settings" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["tip"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div #tip [class]=\"['tooltip-wrapper', _settings.containerClass]\" [hidden]=\"!show\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".tooltip-wrapper{position:absolute}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
913
|
+
}
|
|
914
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipComponent, decorators: [{
|
|
915
|
+
type: Component,
|
|
916
|
+
args: [{ selector: 'lib-tooltip', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #tip [class]=\"['tooltip-wrapper', _settings.containerClass]\" [hidden]=\"!show\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".tooltip-wrapper{position:absolute}\n"] }]
|
|
917
|
+
}], ctorParameters: function () { return [{ type: MapPostboyService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { container: [{
|
|
918
|
+
type: ViewChild,
|
|
919
|
+
args: ['tip']
|
|
920
|
+
}], settings: [{
|
|
921
|
+
type: Input
|
|
922
|
+
}] } });
|
|
923
|
+
|
|
808
924
|
class MapModule {
|
|
809
925
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
810
926
|
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: MapModule, declarations: [DestructibleComponent,
|
|
@@ -812,7 +928,8 @@ class MapModule {
|
|
|
812
928
|
TileLayerComponent,
|
|
813
929
|
OsmTileLayerComponent,
|
|
814
930
|
FeatureLayerComponent,
|
|
815
|
-
MarkersComponent
|
|
931
|
+
MarkersComponent,
|
|
932
|
+
TooltipComponent], imports: [CommonModule], exports: [MapPlateComponent, FeatureLayerComponent, MarkersComponent, TileLayerComponent, TooltipComponent] });
|
|
816
933
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapModule, imports: [CommonModule] });
|
|
817
934
|
}
|
|
818
935
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapModule, decorators: [{
|
|
@@ -826,8 +943,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
826
943
|
OsmTileLayerComponent,
|
|
827
944
|
FeatureLayerComponent,
|
|
828
945
|
MarkersComponent,
|
|
946
|
+
TooltipComponent,
|
|
829
947
|
],
|
|
830
|
-
exports: [MapPlateComponent, FeatureLayerComponent, MarkersComponent, TileLayerComponent],
|
|
948
|
+
exports: [MapPlateComponent, FeatureLayerComponent, MarkersComponent, TileLayerComponent, TooltipComponent],
|
|
831
949
|
}]
|
|
832
950
|
}] });
|
|
833
951
|
|
|
@@ -862,5 +980,5 @@ class MarkerStyleHelper {
|
|
|
862
980
|
* Generated bundle index. Do not edit.
|
|
863
981
|
*/
|
|
864
982
|
|
|
865
|
-
export { CallbackMessage, FeatureLayerComponent, FeatureLayerSettings, GenericMessage, MapClickEvent, MapLyrs, MapLyrsLabel, MapModule, MapPlateComponent, MapPostboyService, MapRenderedEvent, MapSettings, MarkerModel, MarkerStyleHelper, MarkersComponent, MessageRegistratorService, OsmTileLayerComponent, TileLayerComponent, TileLayerSettings };
|
|
983
|
+
export { CallbackMessage, CloseTooltipCommand, FeatureLayerComponent, FeatureLayerSettings, GenericMessage, MapClickEvent, MapLyrs, MapLyrsLabel, MapModule, MapPlateComponent, MapPostboyService, MapRenderedEvent, MapSettings, MarkerModel, MarkerStyleHelper, MarkersComponent, MessageRegistratorService, OsmTileLayerComponent, TileLayerComponent, TileLayerSettings, TooltipComponent, TooltipSettings };
|
|
866
984
|
//# sourceMappingURL=maps-components-src-map.mjs.map
|