@artstesh/maps 6.1.16 → 8.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/dist/fesm2022/maps-components-src-map.mjs +433 -484
- package/dist/fesm2022/maps-components-src-map.mjs.map +1 -1
- package/dist/fesm2022/maps-components.mjs +433 -484
- package/dist/fesm2022/maps-components.mjs.map +1 -1
- package/dist/map/common/destructible.component.d.ts +1 -1
- package/dist/map/helpers/text-style.helper.d.ts +1 -1
- package/dist/map/map-plate/controls/map-control-zoom/map-control-zoom.component.d.ts +1 -1
- package/dist/map/map-plate/features/markers/markers.component.d.ts +1 -1
- package/dist/map/map-plate/features/polygons/polygons.component.d.ts +1 -1
- package/dist/map/map-plate/layers/cluster-layer/cluster-layer.component.d.ts +1 -1
- package/dist/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +1 -1
- package/dist/map/map-plate/layers/image-layer/image-layer.component.d.ts +1 -1
- package/dist/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.d.ts +1 -1
- package/dist/map/map-plate/layers/raster-tile/raster-tile-layer.component.d.ts +1 -1
- package/dist/map/map-plate/layers/tile-layer/tile-layer.component.d.ts +1 -1
- package/dist/map/map-plate/map-plate.component.d.ts +3 -2
- package/dist/map/map-plate/tooltips/tooltip/tooltip.component.d.ts +3 -2
- package/dist/map/messages/executors/generate-zoom-control.executor.d.ts +2 -2
- package/dist/map/models/map-settings.d.ts +1 -1
- package/dist/map/public-api.d.ts +0 -1
- package/dist/map/services/map-click.service.d.ts +1 -1
- package/dist/src/map/common/destructible.component.d.ts +1 -1
- package/dist/src/map/helpers/text-style.helper.d.ts +1 -1
- package/dist/src/map/map-plate/controls/map-control-zoom/map-control-zoom.component.d.ts +1 -1
- package/dist/src/map/map-plate/features/markers/markers.component.d.ts +1 -1
- package/dist/src/map/map-plate/features/polygons/polygons.component.d.ts +1 -1
- package/dist/src/map/map-plate/layers/cluster-layer/cluster-layer.component.d.ts +1 -1
- package/dist/src/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +1 -1
- package/dist/src/map/map-plate/layers/image-layer/image-layer.component.d.ts +1 -1
- package/dist/src/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.d.ts +1 -1
- package/dist/src/map/map-plate/layers/raster-tile/raster-tile-layer.component.d.ts +1 -1
- package/dist/src/map/map-plate/layers/tile-layer/tile-layer.component.d.ts +1 -1
- package/dist/src/map/map-plate/map-plate.component.d.ts +3 -2
- package/dist/src/map/map-plate/tooltips/tooltip/tooltip.component.d.ts +3 -2
- package/dist/src/map/messages/executors/generate-zoom-control.executor.d.ts +2 -2
- package/dist/src/map/models/map-settings.d.ts +1 -1
- package/dist/src/map/public-api.d.ts +0 -1
- package/dist/src/map/services/map-click.service.d.ts +1 -1
- package/package.json +26 -26
- package/dist/esm2022/map/common/destructible.component.mjs +0 -18
- package/dist/esm2022/map/common/id.generator.mjs +0 -14
- package/dist/esm2022/map/helpers/index.mjs +0 -5
- package/dist/esm2022/map/helpers/marker-style.helper.mjs +0 -55
- package/dist/esm2022/map/helpers/polygon-style.helper.mjs +0 -54
- package/dist/esm2022/map/helpers/stringify-feature.helper.mjs +0 -61
- package/dist/esm2022/map/helpers/text-style.helper.mjs +0 -33
- package/dist/esm2022/map/map-plate/controls/index.mjs +0 -3
- package/dist/esm2022/map/map-plate/controls/map-control-zoom/map-control-zoom.component.mjs +0 -69
- package/dist/esm2022/map/map-plate/controls/map-control-zoom/zoom-control.factory.mjs +0 -13
- package/dist/esm2022/map/map-plate/controls/map-control-zoom/zoom-control.settings.mjs +0 -116
- package/dist/esm2022/map/map-plate/features/index.mjs +0 -3
- package/dist/esm2022/map/map-plate/features/markers/markers.component.mjs +0 -52
- package/dist/esm2022/map/map-plate/features/polygons/polygons.component.mjs +0 -56
- package/dist/esm2022/map/map-plate/layers/cluster-layer/cluster-layer-factory.service.mjs +0 -59
- package/dist/esm2022/map/map-plate/layers/cluster-layer/cluster-layer.component.mjs +0 -60
- package/dist/esm2022/map/map-plate/layers/cluster-layer/cluster-layer.manager.mjs +0 -38
- package/dist/esm2022/map/map-plate/layers/cluster-layer/cluster-layer.settings.mjs +0 -145
- package/dist/esm2022/map/map-plate/layers/feature-layer/feature-layer.component.mjs +0 -52
- package/dist/esm2022/map/map-plate/layers/feature-layer/feature-layer.factory.mjs +0 -28
- package/dist/esm2022/map/map-plate/layers/feature-layer/feature-layer.settings.mjs +0 -139
- package/dist/esm2022/map/map-plate/layers/image-layer/image-layer-factory.mjs +0 -26
- package/dist/esm2022/map/map-plate/layers/image-layer/image-layer.component.mjs +0 -52
- package/dist/esm2022/map/map-plate/layers/image-layer/image-layer.settings.mjs +0 -134
- package/dist/esm2022/map/map-plate/layers/index.mjs +0 -12
- package/dist/esm2022/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.mjs +0 -67
- package/dist/esm2022/map/map-plate/layers/raster-tile/raster-tile-layer.component.mjs +0 -52
- package/dist/esm2022/map/map-plate/layers/raster-tile/raster-tile-layer.factory.mjs +0 -74
- package/dist/esm2022/map/map-plate/layers/raster-tile/raster-tile-layer.settings.mjs +0 -165
- package/dist/esm2022/map/map-plate/layers/tile-layer/tile-layer.component.mjs +0 -52
- package/dist/esm2022/map/map-plate/layers/tile-layer/tile-layer.factory.mjs +0 -68
- package/dist/esm2022/map/map-plate/layers/tile-layer/tile-layer.settings.mjs +0 -139
- package/dist/esm2022/map/map-plate/map-plate.component.mjs +0 -121
- package/dist/esm2022/map/map-plate/map-plate.factory.service.mjs +0 -29
- package/dist/esm2022/map/map-plate/tooltips/index.mjs +0 -3
- package/dist/esm2022/map/map-plate/tooltips/tooltip/tooltip.component.mjs +0 -81
- package/dist/esm2022/map/map-plate/tooltips/tooltip/tooltip.settings.mjs +0 -31
- package/dist/esm2022/map/map.module.mjs +0 -73
- package/dist/esm2022/map/messages/commands/add-control.command.mjs +0 -18
- package/dist/esm2022/map/messages/commands/add-image-layer.command.mjs +0 -10
- package/dist/esm2022/map/messages/commands/add-layer.command.mjs +0 -10
- package/dist/esm2022/map/messages/commands/add-raster-tile-command.mjs +0 -10
- package/dist/esm2022/map/messages/commands/add-tile.command.mjs +0 -10
- package/dist/esm2022/map/messages/commands/cancel-drawing.command.mjs +0 -8
- package/dist/esm2022/map/messages/commands/cancel-feature-modification.command.mjs +0 -8
- package/dist/esm2022/map/messages/commands/close-tooltip.command.mjs +0 -18
- package/dist/esm2022/map/messages/commands/draw-selection-area.command.mjs +0 -26
- package/dist/esm2022/map/messages/commands/fit-to-features.command.mjs +0 -12
- package/dist/esm2022/map/messages/commands/fit-to-polygons.command.mjs +0 -22
- package/dist/esm2022/map/messages/commands/modify-feature.command.mjs +0 -31
- package/dist/esm2022/map/messages/commands/place-layer-features.command.mjs +0 -12
- package/dist/esm2022/map/messages/commands/remove-control.command.mjs +0 -23
- package/dist/esm2022/map/messages/commands/remove-image-layer.command.mjs +0 -10
- package/dist/esm2022/map/messages/commands/remove-layer.command.mjs +0 -10
- package/dist/esm2022/map/messages/commands/remove-raster-tile.command.mjs +0 -10
- package/dist/esm2022/map/messages/commands/remove-tile.command.mjs +0 -10
- package/dist/esm2022/map/messages/commands/set-map-center.command.mjs +0 -23
- package/dist/esm2022/map/messages/commands/start-drawing.command.mjs +0 -25
- package/dist/esm2022/map/messages/events/drawing-finished.event.mjs +0 -5
- package/dist/esm2022/map/messages/events/map-click.event.mjs +0 -27
- package/dist/esm2022/map/messages/events/map-feature-hovered.event.mjs +0 -23
- package/dist/esm2022/map/messages/events/map-move-end.event.mjs +0 -16
- package/dist/esm2022/map/messages/events/map-pointer-move.event.mjs +0 -21
- package/dist/esm2022/map/messages/events/map-rendered.event.mjs +0 -18
- package/dist/esm2022/map/messages/executors/calculate-area.executor.mjs +0 -17
- package/dist/esm2022/map/messages/executors/filter-features-in-area.executor.mjs +0 -20
- package/dist/esm2022/map/messages/executors/filter-features-in-point.executor.mjs +0 -28
- package/dist/esm2022/map/messages/executors/generate-draw.executor.mjs +0 -14
- package/dist/esm2022/map/messages/executors/generate-zoom-control.executor.mjs +0 -10
- package/dist/esm2022/map/messages/executors/get-geometry-length.executor.mjs +0 -18
- package/dist/esm2022/map/messages/executors/get-map-position.executor.mjs +0 -13
- package/dist/esm2022/map/messages/executors/polygon-self-intersection.executor.mjs +0 -10
- package/dist/esm2022/map/messages/index.mjs +0 -25
- package/dist/esm2022/map/messages/queries/get-features-in-area.query.mjs +0 -22
- package/dist/esm2022/map/messages/queries/get-features-in-point.query.mjs +0 -25
- package/dist/esm2022/map/messages/queries/get-layer.query.mjs +0 -10
- package/dist/esm2022/map/models/drawing-type.enum.mjs +0 -22
- package/dist/esm2022/map/models/feature-format.enum.mjs +0 -15
- package/dist/esm2022/map/models/i-identified.mjs +0 -2
- package/dist/esm2022/map/models/index.mjs +0 -10
- package/dist/esm2022/map/models/map-control.mjs +0 -15
- package/dist/esm2022/map/models/map-lyrs.enum.mjs +0 -19
- package/dist/esm2022/map/models/map-position.model.mjs +0 -2
- package/dist/esm2022/map/models/map-settings.mjs +0 -124
- package/dist/esm2022/map/models/map.constants.mjs +0 -6
- package/dist/esm2022/map/models/marker-model.mjs +0 -29
- package/dist/esm2022/map/models/polygon.model.mjs +0 -40
- package/dist/esm2022/map/ol-proxy.mjs +0 -6
- package/dist/esm2022/map/public-api.mjs +0 -17
- package/dist/esm2022/map/services/controls/controls.service.mjs +0 -37
- package/dist/esm2022/map/services/drawing/drawing-generation.service.mjs +0 -25
- package/dist/esm2022/map/services/drawing/drawing.service.mjs +0 -99
- package/dist/esm2022/map/services/drawing/feature-modification.service.mjs +0 -105
- package/dist/esm2022/map/services/feature.service.mjs +0 -77
- package/dist/esm2022/map/services/map-click.service.mjs +0 -55
- package/dist/esm2022/map/services/map-feature.service.mjs +0 -75
- package/dist/esm2022/map/services/map-management.service.mjs +0 -143
- package/dist/esm2022/map/services/map-postboy.service.mjs +0 -14
- package/dist/esm2022/map/services/map-state.service.mjs +0 -48
- package/dist/esm2022/map/services/message-registrator.service.mjs +0 -105
- package/dist/esm2022/maps-components.mjs +0 -5
- package/dist/esm2022/public-api.mjs +0 -5
- package/dist/esm2022/src/map/common/destructible.component.mjs +0 -18
- package/dist/esm2022/src/map/common/id.generator.mjs +0 -14
- package/dist/esm2022/src/map/helpers/index.mjs +0 -5
- package/dist/esm2022/src/map/helpers/marker-style.helper.mjs +0 -55
- package/dist/esm2022/src/map/helpers/polygon-style.helper.mjs +0 -54
- package/dist/esm2022/src/map/helpers/stringify-feature.helper.mjs +0 -61
- package/dist/esm2022/src/map/helpers/text-style.helper.mjs +0 -33
- package/dist/esm2022/src/map/map-plate/controls/index.mjs +0 -3
- package/dist/esm2022/src/map/map-plate/controls/map-control-zoom/map-control-zoom.component.mjs +0 -69
- package/dist/esm2022/src/map/map-plate/controls/map-control-zoom/zoom-control.factory.mjs +0 -13
- package/dist/esm2022/src/map/map-plate/controls/map-control-zoom/zoom-control.settings.mjs +0 -116
- package/dist/esm2022/src/map/map-plate/features/index.mjs +0 -3
- package/dist/esm2022/src/map/map-plate/features/markers/markers.component.mjs +0 -52
- package/dist/esm2022/src/map/map-plate/features/polygons/polygons.component.mjs +0 -56
- package/dist/esm2022/src/map/map-plate/layers/cluster-layer/cluster-layer-factory.service.mjs +0 -59
- package/dist/esm2022/src/map/map-plate/layers/cluster-layer/cluster-layer.component.mjs +0 -60
- package/dist/esm2022/src/map/map-plate/layers/cluster-layer/cluster-layer.manager.mjs +0 -38
- package/dist/esm2022/src/map/map-plate/layers/cluster-layer/cluster-layer.settings.mjs +0 -145
- package/dist/esm2022/src/map/map-plate/layers/feature-layer/feature-layer.component.mjs +0 -52
- package/dist/esm2022/src/map/map-plate/layers/feature-layer/feature-layer.factory.mjs +0 -28
- package/dist/esm2022/src/map/map-plate/layers/feature-layer/feature-layer.settings.mjs +0 -139
- package/dist/esm2022/src/map/map-plate/layers/image-layer/image-layer-factory.mjs +0 -26
- package/dist/esm2022/src/map/map-plate/layers/image-layer/image-layer.component.mjs +0 -52
- package/dist/esm2022/src/map/map-plate/layers/image-layer/image-layer.settings.mjs +0 -134
- package/dist/esm2022/src/map/map-plate/layers/index.mjs +0 -12
- package/dist/esm2022/src/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.mjs +0 -67
- package/dist/esm2022/src/map/map-plate/layers/raster-tile/raster-tile-layer.component.mjs +0 -52
- package/dist/esm2022/src/map/map-plate/layers/raster-tile/raster-tile-layer.factory.mjs +0 -74
- package/dist/esm2022/src/map/map-plate/layers/raster-tile/raster-tile-layer.settings.mjs +0 -165
- package/dist/esm2022/src/map/map-plate/layers/tile-layer/tile-layer.component.mjs +0 -52
- package/dist/esm2022/src/map/map-plate/layers/tile-layer/tile-layer.factory.mjs +0 -68
- package/dist/esm2022/src/map/map-plate/layers/tile-layer/tile-layer.settings.mjs +0 -139
- package/dist/esm2022/src/map/map-plate/map-plate.component.mjs +0 -121
- package/dist/esm2022/src/map/map-plate/map-plate.factory.service.mjs +0 -29
- package/dist/esm2022/src/map/map-plate/tooltips/index.mjs +0 -3
- package/dist/esm2022/src/map/map-plate/tooltips/tooltip/tooltip.component.mjs +0 -81
- package/dist/esm2022/src/map/map-plate/tooltips/tooltip/tooltip.settings.mjs +0 -31
- package/dist/esm2022/src/map/map.module.mjs +0 -73
- package/dist/esm2022/src/map/maps-components-src-map.mjs +0 -5
- package/dist/esm2022/src/map/messages/commands/add-control.command.mjs +0 -18
- package/dist/esm2022/src/map/messages/commands/add-image-layer.command.mjs +0 -10
- package/dist/esm2022/src/map/messages/commands/add-layer.command.mjs +0 -10
- package/dist/esm2022/src/map/messages/commands/add-raster-tile-command.mjs +0 -10
- package/dist/esm2022/src/map/messages/commands/add-tile.command.mjs +0 -10
- package/dist/esm2022/src/map/messages/commands/cancel-drawing.command.mjs +0 -8
- package/dist/esm2022/src/map/messages/commands/cancel-feature-modification.command.mjs +0 -8
- package/dist/esm2022/src/map/messages/commands/close-tooltip.command.mjs +0 -18
- package/dist/esm2022/src/map/messages/commands/draw-selection-area.command.mjs +0 -26
- package/dist/esm2022/src/map/messages/commands/fit-to-features.command.mjs +0 -12
- package/dist/esm2022/src/map/messages/commands/fit-to-polygons.command.mjs +0 -22
- package/dist/esm2022/src/map/messages/commands/modify-feature.command.mjs +0 -31
- package/dist/esm2022/src/map/messages/commands/place-layer-features.command.mjs +0 -12
- package/dist/esm2022/src/map/messages/commands/remove-control.command.mjs +0 -23
- package/dist/esm2022/src/map/messages/commands/remove-image-layer.command.mjs +0 -10
- package/dist/esm2022/src/map/messages/commands/remove-layer.command.mjs +0 -10
- package/dist/esm2022/src/map/messages/commands/remove-raster-tile.command.mjs +0 -10
- package/dist/esm2022/src/map/messages/commands/remove-tile.command.mjs +0 -10
- package/dist/esm2022/src/map/messages/commands/set-map-center.command.mjs +0 -23
- package/dist/esm2022/src/map/messages/commands/start-drawing.command.mjs +0 -25
- package/dist/esm2022/src/map/messages/events/drawing-finished.event.mjs +0 -5
- package/dist/esm2022/src/map/messages/events/map-click.event.mjs +0 -27
- package/dist/esm2022/src/map/messages/events/map-feature-hovered.event.mjs +0 -23
- package/dist/esm2022/src/map/messages/events/map-move-end.event.mjs +0 -16
- package/dist/esm2022/src/map/messages/events/map-pointer-move.event.mjs +0 -21
- package/dist/esm2022/src/map/messages/events/map-rendered.event.mjs +0 -18
- package/dist/esm2022/src/map/messages/executors/calculate-area.executor.mjs +0 -17
- package/dist/esm2022/src/map/messages/executors/filter-features-in-area.executor.mjs +0 -20
- package/dist/esm2022/src/map/messages/executors/filter-features-in-point.executor.mjs +0 -28
- package/dist/esm2022/src/map/messages/executors/generate-draw.executor.mjs +0 -14
- package/dist/esm2022/src/map/messages/executors/generate-zoom-control.executor.mjs +0 -10
- package/dist/esm2022/src/map/messages/executors/get-geometry-length.executor.mjs +0 -18
- package/dist/esm2022/src/map/messages/executors/get-map-position.executor.mjs +0 -13
- package/dist/esm2022/src/map/messages/executors/polygon-self-intersection.executor.mjs +0 -10
- package/dist/esm2022/src/map/messages/index.mjs +0 -25
- package/dist/esm2022/src/map/messages/queries/get-features-in-area.query.mjs +0 -22
- package/dist/esm2022/src/map/messages/queries/get-features-in-point.query.mjs +0 -25
- package/dist/esm2022/src/map/messages/queries/get-layer.query.mjs +0 -10
- package/dist/esm2022/src/map/models/drawing-type.enum.mjs +0 -22
- package/dist/esm2022/src/map/models/feature-format.enum.mjs +0 -15
- package/dist/esm2022/src/map/models/i-identified.mjs +0 -2
- package/dist/esm2022/src/map/models/index.mjs +0 -10
- package/dist/esm2022/src/map/models/map-control.mjs +0 -15
- package/dist/esm2022/src/map/models/map-lyrs.enum.mjs +0 -19
- package/dist/esm2022/src/map/models/map-position.model.mjs +0 -2
- package/dist/esm2022/src/map/models/map-settings.mjs +0 -124
- package/dist/esm2022/src/map/models/map.constants.mjs +0 -6
- package/dist/esm2022/src/map/models/marker-model.mjs +0 -29
- package/dist/esm2022/src/map/models/polygon.model.mjs +0 -40
- package/dist/esm2022/src/map/ol-proxy.mjs +0 -6
- package/dist/esm2022/src/map/public-api.mjs +0 -17
- package/dist/esm2022/src/map/services/controls/controls.service.mjs +0 -37
- package/dist/esm2022/src/map/services/drawing/drawing-generation.service.mjs +0 -25
- package/dist/esm2022/src/map/services/drawing/drawing.service.mjs +0 -99
- package/dist/esm2022/src/map/services/drawing/feature-modification.service.mjs +0 -105
- package/dist/esm2022/src/map/services/feature.service.mjs +0 -77
- package/dist/esm2022/src/map/services/map-click.service.mjs +0 -55
- package/dist/esm2022/src/map/services/map-feature.service.mjs +0 -75
- package/dist/esm2022/src/map/services/map-management.service.mjs +0 -143
- package/dist/esm2022/src/map/services/map-postboy.service.mjs +0 -14
- package/dist/esm2022/src/map/services/map-state.service.mjs +0 -48
- package/dist/esm2022/src/map/services/message-registrator.service.mjs +0 -105
- package/dist/map/map.module.d.ts +0 -19
- package/dist/src/map/map.module.d.ts +0 -19
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, Injectable, ChangeDetectionStrategy, Input, ViewEncapsulation, ViewChild, NgModule } from '@angular/core';
|
|
3
|
-
import * as i4 from '@angular/common';
|
|
4
|
-
import { CommonModule } from '@angular/common';
|
|
5
1
|
import { Feature, Collection } from 'ol';
|
|
6
2
|
export { Feature } from 'ol';
|
|
7
3
|
import { Point, LineString } from 'ol/geom';
|
|
@@ -10,6 +6,8 @@ import { GeoJSON, WKT } from 'ol/format';
|
|
|
10
6
|
import { getCenter, createEmpty, extend } from 'ol/extent';
|
|
11
7
|
import Polygon, { circular, fromExtent } from 'ol/geom/Polygon';
|
|
12
8
|
import { Control, Zoom } from 'ol/control';
|
|
9
|
+
import * as i0 from '@angular/core';
|
|
10
|
+
import { Component, Injectable, Input, ChangeDetectionStrategy, input, ViewEncapsulation, ViewChild } from '@angular/core';
|
|
13
11
|
import { get, useGeographic, transform } from 'ol/proj';
|
|
14
12
|
import { PostboyGenericMessage, PostboyCallbackMessage, PostboyExecutor, PostboyService, PostboyAbstractRegistrator } from '@artstesh/postboy';
|
|
15
13
|
import * as Sphere from 'ol/sphere';
|
|
@@ -28,32 +26,17 @@ import Cluster from 'ol/source/Cluster';
|
|
|
28
26
|
import Static from 'ol/source/ImageStatic';
|
|
29
27
|
import ImageLayer from 'ol/layer/Image';
|
|
30
28
|
import RasterSource from 'ol/source/Raster';
|
|
29
|
+
import { NgIf, NgTemplateOutlet } from '@angular/common';
|
|
31
30
|
import Map from 'ol/Map';
|
|
32
31
|
import View from 'ol/View';
|
|
33
|
-
import Overlay from 'ol/Overlay';
|
|
34
32
|
import Style from 'ol/style/Style';
|
|
35
|
-
import { Icon, Circle as Circle$1,
|
|
33
|
+
import { Icon, Circle as Circle$1, Stroke, Fill, Text } from 'ol/style';
|
|
36
34
|
export { Fill, RegularShape, Stroke, Style, Text } from 'ol/style';
|
|
37
35
|
import { METERS_PER_UNIT } from 'ol/proj/epsg4326';
|
|
36
|
+
import Overlay from 'ol/Overlay';
|
|
38
37
|
import * as Circle from 'ol/style/Circle';
|
|
39
38
|
export { Circle as CircleStyle };
|
|
40
39
|
|
|
41
|
-
class DestructibleComponent {
|
|
42
|
-
subs = [];
|
|
43
|
-
onDestroy;
|
|
44
|
-
ngOnDestroy() {
|
|
45
|
-
this.subs.forEach((s) => s.unsubscribe());
|
|
46
|
-
if (this.onDestroy)
|
|
47
|
-
this.onDestroy();
|
|
48
|
-
}
|
|
49
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: DestructibleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
50
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: DestructibleComponent, selector: "ng-component", ngImport: i0, template: '', isInline: true });
|
|
51
|
-
}
|
|
52
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: DestructibleComponent, decorators: [{
|
|
53
|
-
type: Component,
|
|
54
|
-
args: [{ template: '' }]
|
|
55
|
-
}] });
|
|
56
|
-
|
|
57
40
|
var MapLyrs;
|
|
58
41
|
(function (MapLyrs) {
|
|
59
42
|
MapLyrs[MapLyrs["Hybrid"] = 1] = "Hybrid";
|
|
@@ -326,6 +309,22 @@ class MapControl extends Control {
|
|
|
326
309
|
}
|
|
327
310
|
}
|
|
328
311
|
|
|
312
|
+
class DestructibleComponent {
|
|
313
|
+
subs = [];
|
|
314
|
+
onDestroy;
|
|
315
|
+
ngOnDestroy() {
|
|
316
|
+
this.subs.forEach((s) => s.unsubscribe());
|
|
317
|
+
if (this.onDestroy)
|
|
318
|
+
this.onDestroy();
|
|
319
|
+
}
|
|
320
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: DestructibleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
321
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: DestructibleComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: '', isInline: true });
|
|
322
|
+
}
|
|
323
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: DestructibleComponent, decorators: [{
|
|
324
|
+
type: Component,
|
|
325
|
+
args: [{ template: '' }]
|
|
326
|
+
}] });
|
|
327
|
+
|
|
329
328
|
/**
|
|
330
329
|
* Represents a command to add a custom control to a map.
|
|
331
330
|
*/
|
|
@@ -1002,10 +1001,10 @@ class MapPostboyService extends PostboyService {
|
|
|
1002
1001
|
constructor() {
|
|
1003
1002
|
super();
|
|
1004
1003
|
}
|
|
1005
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1006
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1004
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapPostboyService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1005
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapPostboyService });
|
|
1007
1006
|
}
|
|
1008
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1007
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapPostboyService, decorators: [{
|
|
1009
1008
|
type: Injectable
|
|
1010
1009
|
}], ctorParameters: () => [] });
|
|
1011
1010
|
|
|
@@ -1127,10 +1126,10 @@ class MapManagementService {
|
|
|
1127
1126
|
action(l, source);
|
|
1128
1127
|
});
|
|
1129
1128
|
}
|
|
1130
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1131
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1129
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapManagementService, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1130
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapManagementService });
|
|
1132
1131
|
}
|
|
1133
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1132
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapManagementService, decorators: [{
|
|
1134
1133
|
type: Injectable
|
|
1135
1134
|
}], ctorParameters: () => [{ type: MapPostboyService }] });
|
|
1136
1135
|
|
|
@@ -1170,10 +1169,10 @@ class MapStateService {
|
|
|
1170
1169
|
this.map?.getView().setZoom(c.zoom);
|
|
1171
1170
|
});
|
|
1172
1171
|
}
|
|
1173
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1174
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1172
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapStateService, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1173
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapStateService });
|
|
1175
1174
|
}
|
|
1176
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1175
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapStateService, decorators: [{
|
|
1177
1176
|
type: Injectable
|
|
1178
1177
|
}], ctorParameters: () => [{ type: MapPostboyService }] });
|
|
1179
1178
|
|
|
@@ -1236,10 +1235,10 @@ class MapFeatureService {
|
|
|
1236
1235
|
this.map.getView().fit(extent);
|
|
1237
1236
|
this.map.getView().setZoom(this.map.getView().getZoom() + zoomAfter);
|
|
1238
1237
|
}
|
|
1239
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1240
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1238
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapFeatureService, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1239
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapFeatureService });
|
|
1241
1240
|
}
|
|
1242
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1241
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapFeatureService, decorators: [{
|
|
1243
1242
|
type: Injectable
|
|
1244
1243
|
}], ctorParameters: () => [{ type: MapPostboyService }] });
|
|
1245
1244
|
|
|
@@ -1285,10 +1284,10 @@ class MapClickService {
|
|
|
1285
1284
|
});
|
|
1286
1285
|
return result;
|
|
1287
1286
|
}
|
|
1288
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1289
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1287
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapClickService, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1288
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapClickService });
|
|
1290
1289
|
}
|
|
1291
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1290
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapClickService, decorators: [{
|
|
1292
1291
|
type: Injectable
|
|
1293
1292
|
}], ctorParameters: () => [{ type: MapPostboyService }] });
|
|
1294
1293
|
|
|
@@ -1367,10 +1366,10 @@ class DrawingService {
|
|
|
1367
1366
|
this.postboy.unlock(MapClickEvent);
|
|
1368
1367
|
setTimeout(() => this.postboy.fire(new DrawingFinishedEvent()), 300);
|
|
1369
1368
|
}
|
|
1370
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1371
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1369
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: DrawingService, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1370
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: DrawingService });
|
|
1372
1371
|
}
|
|
1373
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1372
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: DrawingService, decorators: [{
|
|
1374
1373
|
type: Injectable
|
|
1375
1374
|
}], ctorParameters: () => [{ type: MapPostboyService }] });
|
|
1376
1375
|
|
|
@@ -1459,10 +1458,10 @@ class FeatureModificationService {
|
|
|
1459
1458
|
if (this.translate)
|
|
1460
1459
|
this.map?.removeInteraction(this.translate);
|
|
1461
1460
|
}
|
|
1462
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1463
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1461
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: FeatureModificationService, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1462
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: FeatureModificationService });
|
|
1464
1463
|
}
|
|
1465
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1464
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: FeatureModificationService, decorators: [{
|
|
1466
1465
|
type: Injectable
|
|
1467
1466
|
}], ctorParameters: () => [{ type: MapPostboyService }] });
|
|
1468
1467
|
|
|
@@ -1491,10 +1490,10 @@ class ControlsService {
|
|
|
1491
1490
|
observeRemoving() {
|
|
1492
1491
|
this.postboy.sub(RemoveControlCommand).subscribe((c) => this.map?.removeControl(c.item));
|
|
1493
1492
|
}
|
|
1494
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1495
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1493
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ControlsService, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1494
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ControlsService });
|
|
1496
1495
|
}
|
|
1497
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1496
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ControlsService, decorators: [{
|
|
1498
1497
|
type: Injectable
|
|
1499
1498
|
}], ctorParameters: () => [{ type: MapPostboyService }] });
|
|
1500
1499
|
|
|
@@ -1547,10 +1546,10 @@ class MessageRegistratorService extends PostboyAbstractRegistrator {
|
|
|
1547
1546
|
this.recordExecutor(GetMapPositionExecutor, () => this.state.getMapPosition());
|
|
1548
1547
|
this.recordExecutor(GetGeometryLengthExecutor, (e) => new GetGeometryLengthExecutorHandler().handle(e));
|
|
1549
1548
|
}
|
|
1550
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1551
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1549
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MessageRegistratorService, deps: [{ token: MapPostboyService }, { token: MapManagementService }, { token: MapStateService }, { token: MapFeatureService }, { token: MapClickService }, { token: DrawingService }, { token: FeatureModificationService }, { token: ControlsService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1550
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MessageRegistratorService });
|
|
1552
1551
|
}
|
|
1553
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1552
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MessageRegistratorService, decorators: [{
|
|
1554
1553
|
type: Injectable
|
|
1555
1554
|
}], ctorParameters: () => [{ type: MapPostboyService }, { type: MapManagementService }, { type: MapStateService }, { type: MapFeatureService }, { type: MapClickService }, { type: DrawingService }, { type: FeatureModificationService }, { type: ControlsService }] });
|
|
1556
1555
|
|
|
@@ -1746,10 +1745,10 @@ class TileLayerFactory {
|
|
|
1746
1745
|
x = ((x % tileRange) + tileRange) % tileRange;
|
|
1747
1746
|
return { x: x, y: y };
|
|
1748
1747
|
}
|
|
1749
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1750
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1748
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TileLayerFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1749
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TileLayerFactory, providedIn: 'root' });
|
|
1751
1750
|
}
|
|
1752
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1751
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TileLayerFactory, decorators: [{
|
|
1753
1752
|
type: Injectable,
|
|
1754
1753
|
args: [{
|
|
1755
1754
|
providedIn: 'root',
|
|
@@ -1788,12 +1787,12 @@ class TileLayerComponent extends DestructibleComponent {
|
|
|
1788
1787
|
if (this.layer)
|
|
1789
1788
|
this.postboy.fire(new RemoveTileCommand(this.layer));
|
|
1790
1789
|
}
|
|
1791
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1792
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1790
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TileLayerComponent, deps: [{ token: MapPostboyService }, { token: TileLayerFactory }], target: i0.ɵɵFactoryTarget.Component });
|
|
1791
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: TileLayerComponent, isStandalone: true, selector: "art-tile-layer", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1793
1792
|
}
|
|
1794
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1793
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TileLayerComponent, decorators: [{
|
|
1795
1794
|
type: Component,
|
|
1796
|
-
args: [{ selector: 'art-tile-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
1795
|
+
args: [{ selector: 'art-tile-layer', standalone: true, template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
1797
1796
|
}], ctorParameters: () => [{ type: MapPostboyService }, { type: TileLayerFactory }], propDecorators: { settings: [{
|
|
1798
1797
|
type: Input
|
|
1799
1798
|
}] } });
|
|
@@ -1846,12 +1845,12 @@ class OsmTileLayerComponent extends DestructibleComponent {
|
|
|
1846
1845
|
this.layer.set('name', 'osm-tile-layer');
|
|
1847
1846
|
this._map.addLayer(this.layer);
|
|
1848
1847
|
}
|
|
1849
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1850
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1848
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: OsmTileLayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1849
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: OsmTileLayerComponent, isStandalone: true, selector: "art-osm-tile-layer", inputs: { url: "url", opacity: "opacity", map: "map" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1851
1850
|
}
|
|
1852
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1851
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: OsmTileLayerComponent, decorators: [{
|
|
1853
1852
|
type: Component,
|
|
1854
|
-
args: [{ selector: 'art-osm-tile-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
1853
|
+
args: [{ selector: 'art-osm-tile-layer', standalone: true, template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
1855
1854
|
}], ctorParameters: () => [], propDecorators: { url: [{
|
|
1856
1855
|
type: Input
|
|
1857
1856
|
}], opacity: [{
|
|
@@ -2012,10 +2011,10 @@ class FeatureLayerFactory {
|
|
|
2012
2011
|
layer.set('name', settings.name);
|
|
2013
2012
|
return layer;
|
|
2014
2013
|
}
|
|
2015
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2016
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2014
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: FeatureLayerFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2015
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: FeatureLayerFactory, providedIn: 'root' });
|
|
2017
2016
|
}
|
|
2018
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2017
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: FeatureLayerFactory, decorators: [{
|
|
2019
2018
|
type: Injectable,
|
|
2020
2019
|
args: [{
|
|
2021
2020
|
providedIn: 'root',
|
|
@@ -2054,12 +2053,12 @@ class FeatureLayerComponent extends DestructibleComponent {
|
|
|
2054
2053
|
if (this.layer)
|
|
2055
2054
|
this.postboy.fire(new RemoveLayerCommand(this.layer));
|
|
2056
2055
|
}
|
|
2057
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2058
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2056
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: FeatureLayerComponent, deps: [{ token: MapPostboyService }, { token: FeatureLayerFactory }], target: i0.ɵɵFactoryTarget.Component });
|
|
2057
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: FeatureLayerComponent, isStandalone: true, selector: "art-feature-layer", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2059
2058
|
}
|
|
2060
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2059
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: FeatureLayerComponent, decorators: [{
|
|
2061
2060
|
type: Component,
|
|
2062
|
-
args: [{ selector: 'art-feature-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
2061
|
+
args: [{ selector: 'art-feature-layer', standalone: true, template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
2063
2062
|
}], ctorParameters: () => [{ type: MapPostboyService }, { type: FeatureLayerFactory }], propDecorators: { settings: [{
|
|
2064
2063
|
type: Input
|
|
2065
2064
|
}] } });
|
|
@@ -2281,10 +2280,10 @@ class ClusterLayerFactory {
|
|
|
2281
2280
|
return settings.style(features.map((f) => ({ id: f.getId(), ...f.get(MapConstants.FeatureInfo) })));
|
|
2282
2281
|
};
|
|
2283
2282
|
}
|
|
2284
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2285
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2283
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ClusterLayerFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2284
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ClusterLayerFactory, providedIn: 'root' });
|
|
2286
2285
|
}
|
|
2287
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2286
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ClusterLayerFactory, decorators: [{
|
|
2288
2287
|
type: Injectable,
|
|
2289
2288
|
args: [{
|
|
2290
2289
|
providedIn: 'root',
|
|
@@ -2331,12 +2330,12 @@ class ClusterLayerComponent extends DestructibleComponent {
|
|
|
2331
2330
|
if (this.manager?.layer)
|
|
2332
2331
|
this.postboy.fire(new RemoveLayerCommand(this.manager.layer));
|
|
2333
2332
|
}
|
|
2334
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2335
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2333
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ClusterLayerComponent, deps: [{ token: MapPostboyService }, { token: ClusterLayerFactory }], target: i0.ɵɵFactoryTarget.Component });
|
|
2334
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: ClusterLayerComponent, isStandalone: true, selector: "art-cluster-layer", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2336
2335
|
}
|
|
2337
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2336
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ClusterLayerComponent, decorators: [{
|
|
2338
2337
|
type: Component,
|
|
2339
|
-
args: [{ selector: 'art-cluster-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
2338
|
+
args: [{ selector: 'art-cluster-layer', standalone: true, template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
2340
2339
|
}], ctorParameters: () => [{ type: MapPostboyService }, { type: ClusterLayerFactory }], propDecorators: { settings: [{
|
|
2341
2340
|
type: Input
|
|
2342
2341
|
}] } });
|
|
@@ -2486,10 +2485,10 @@ class ImageLayerFactory {
|
|
|
2486
2485
|
});
|
|
2487
2486
|
return new ImageLayer({ source });
|
|
2488
2487
|
}
|
|
2489
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2490
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2488
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ImageLayerFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2489
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ImageLayerFactory, providedIn: 'root' });
|
|
2491
2490
|
}
|
|
2492
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2491
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ImageLayerFactory, decorators: [{
|
|
2493
2492
|
type: Injectable,
|
|
2494
2493
|
args: [{
|
|
2495
2494
|
providedIn: 'root',
|
|
@@ -2528,12 +2527,12 @@ class ImageLayerComponent extends DestructibleComponent {
|
|
|
2528
2527
|
if (this.layer)
|
|
2529
2528
|
this.postboy.fire(new RemoveImageLayerCommand(this.layer));
|
|
2530
2529
|
}
|
|
2531
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2532
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2530
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ImageLayerComponent, deps: [{ token: MapPostboyService }, { token: ImageLayerFactory }], target: i0.ɵɵFactoryTarget.Component });
|
|
2531
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: ImageLayerComponent, isStandalone: true, selector: "art-image-layer", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2533
2532
|
}
|
|
2534
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2533
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ImageLayerComponent, decorators: [{
|
|
2535
2534
|
type: Component,
|
|
2536
|
-
args: [{ selector: 'art-image-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
2535
|
+
args: [{ selector: 'art-image-layer', standalone: true, template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
2537
2536
|
}], ctorParameters: () => [{ type: MapPostboyService }, { type: ImageLayerFactory }], propDecorators: { settings: [{
|
|
2538
2537
|
type: Input
|
|
2539
2538
|
}] } });
|
|
@@ -2761,10 +2760,10 @@ class RasterTileLayerFactory {
|
|
|
2761
2760
|
x = ((x % tileRange) + tileRange) % tileRange;
|
|
2762
2761
|
return { x: x, y: y };
|
|
2763
2762
|
}
|
|
2764
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2765
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2763
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: RasterTileLayerFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2764
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: RasterTileLayerFactory, providedIn: 'root' });
|
|
2766
2765
|
}
|
|
2767
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2766
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: RasterTileLayerFactory, decorators: [{
|
|
2768
2767
|
type: Injectable,
|
|
2769
2768
|
args: [{
|
|
2770
2769
|
providedIn: 'root',
|
|
@@ -2803,12 +2802,12 @@ class RasterTileLayerComponent extends DestructibleComponent {
|
|
|
2803
2802
|
if (this.layer)
|
|
2804
2803
|
this.postboy.fire(new RemoveRasterTileCommand(this.layer));
|
|
2805
2804
|
}
|
|
2806
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2807
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2805
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: RasterTileLayerComponent, deps: [{ token: MapPostboyService }, { token: RasterTileLayerFactory }], target: i0.ɵɵFactoryTarget.Component });
|
|
2806
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: RasterTileLayerComponent, isStandalone: true, selector: "art-raster-tile-layer", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2808
2807
|
}
|
|
2809
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2808
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: RasterTileLayerComponent, decorators: [{
|
|
2810
2809
|
type: Component,
|
|
2811
|
-
args: [{ selector: 'art-raster-tile-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
2810
|
+
args: [{ selector: 'art-raster-tile-layer', standalone: true, template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
2812
2811
|
}], ctorParameters: () => [{ type: MapPostboyService }, { type: RasterTileLayerFactory }], propDecorators: { settings: [{
|
|
2813
2812
|
type: Input
|
|
2814
2813
|
}] } });
|
|
@@ -2827,10 +2826,10 @@ class MapPlateFactory {
|
|
|
2827
2826
|
interactions: defaults(settings.interactionSettings),
|
|
2828
2827
|
});
|
|
2829
2828
|
}
|
|
2830
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2831
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2829
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapPlateFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2830
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapPlateFactory, providedIn: 'root' });
|
|
2832
2831
|
}
|
|
2833
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2832
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapPlateFactory, decorators: [{
|
|
2834
2833
|
type: Injectable,
|
|
2835
2834
|
args: [{
|
|
2836
2835
|
providedIn: 'root',
|
|
@@ -2843,6 +2842,7 @@ class MapPlateComponent extends DestructibleComponent {
|
|
|
2843
2842
|
mapFactory;
|
|
2844
2843
|
registrator;
|
|
2845
2844
|
detector;
|
|
2845
|
+
contentRef = input.required();
|
|
2846
2846
|
renderTryCount = 0;
|
|
2847
2847
|
map;
|
|
2848
2848
|
osmUrl = '';
|
|
@@ -2901,8 +2901,8 @@ class MapPlateComponent extends DestructibleComponent {
|
|
|
2901
2901
|
this.detector.detectChanges();
|
|
2902
2902
|
this.map.updateSize();
|
|
2903
2903
|
}
|
|
2904
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2905
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2904
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapPlateComponent, deps: [{ token: i0.ElementRef }, { token: MapPostboyService }, { token: MapPlateFactory }, { token: MessageRegistratorService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
2905
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.19", type: MapPlateComponent, isStandalone: true, selector: "art-map-plate", inputs: { contentRef: { classPropertyName: "contentRef", publicName: "contentRef", isSignal: true, isRequired: true, transformFunction: null }, settings: { classPropertyName: "settings", publicName: "settings", isSignal: false, isRequired: false, transformFunction: null } }, providers: [
|
|
2906
2906
|
MessageRegistratorService,
|
|
2907
2907
|
MapStateService,
|
|
2908
2908
|
MapManagementService,
|
|
@@ -2913,11 +2913,11 @@ class MapPlateComponent extends DestructibleComponent {
|
|
|
2913
2913
|
FeatureService,
|
|
2914
2914
|
FeatureModificationService,
|
|
2915
2915
|
ControlsService,
|
|
2916
|
-
], usesInheritance: true, ngImport: i0, template: "<ng-
|
|
2916
|
+
], usesInheritance: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"contentRef()\"> </ng-container>\r\n<art-osm-tile-layer *ngIf=\"osmUrl && map\" [map]=\"map\" [url]=\"osmUrl\" [opacity]=\"_settings.osmOpacity\"></art-osm-tile-layer>\r\n<art-feature-layer *ngIf=\"map\" [settings]=\"drawingLayerSettings\"></art-feature-layer>\r\n", styles: ["art-map-plate{display:block;width:100%;height:100%}\n"], dependencies: [{ kind: "component", type: OsmTileLayerComponent, selector: "art-osm-tile-layer", inputs: ["url", "opacity", "map"] }, { kind: "component", type: FeatureLayerComponent, selector: "art-feature-layer", inputs: ["settings"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
2917
2917
|
}
|
|
2918
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2918
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapPlateComponent, decorators: [{
|
|
2919
2919
|
type: Component,
|
|
2920
|
-
args: [{ selector: 'art-map-plate', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
2920
|
+
args: [{ selector: 'art-map-plate', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
2921
2921
|
MessageRegistratorService,
|
|
2922
2922
|
MapStateService,
|
|
2923
2923
|
MapManagementService,
|
|
@@ -2928,7 +2928,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
|
|
|
2928
2928
|
FeatureService,
|
|
2929
2929
|
FeatureModificationService,
|
|
2930
2930
|
ControlsService,
|
|
2931
|
-
], encapsulation: ViewEncapsulation.None,
|
|
2931
|
+
], encapsulation: ViewEncapsulation.None, imports: [
|
|
2932
|
+
OsmTileLayerComponent,
|
|
2933
|
+
FeatureLayerComponent,
|
|
2934
|
+
NgIf,
|
|
2935
|
+
NgTemplateOutlet
|
|
2936
|
+
], template: "<ng-container *ngTemplateOutlet=\"contentRef()\"> </ng-container>\r\n<art-osm-tile-layer *ngIf=\"osmUrl && map\" [map]=\"map\" [url]=\"osmUrl\" [opacity]=\"_settings.osmOpacity\"></art-osm-tile-layer>\r\n<art-feature-layer *ngIf=\"map\" [settings]=\"drawingLayerSettings\"></art-feature-layer>\r\n", styles: ["art-map-plate{display:block;width:100%;height:100%}\n"] }]
|
|
2932
2937
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: MapPostboyService }, { type: MapPlateFactory }, { type: MessageRegistratorService }, { type: i0.ChangeDetectorRef }], propDecorators: { settings: [{
|
|
2933
2938
|
type: Input
|
|
2934
2939
|
}] } });
|
|
@@ -2966,120 +2971,18 @@ class MarkersComponent extends DestructibleComponent {
|
|
|
2966
2971
|
return;
|
|
2967
2972
|
this.postboy.fire(new PlaceLayerFeaturesCommand(this.layerName, this._markers.map((m) => m.feature)));
|
|
2968
2973
|
}
|
|
2969
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2970
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2974
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MarkersComponent, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Component });
|
|
2975
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: MarkersComponent, isStandalone: true, selector: "art-markers", inputs: { layerName: "layerName", markers: "markers" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2971
2976
|
}
|
|
2972
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2977
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MarkersComponent, decorators: [{
|
|
2973
2978
|
type: Component,
|
|
2974
|
-
args: [{ selector: 'art-markers', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
2979
|
+
args: [{ selector: 'art-markers', standalone: true, template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
2975
2980
|
}], ctorParameters: () => [{ type: MapPostboyService }], propDecorators: { layerName: [{
|
|
2976
2981
|
type: Input
|
|
2977
2982
|
}], markers: [{
|
|
2978
2983
|
type: Input
|
|
2979
2984
|
}] } });
|
|
2980
2985
|
|
|
2981
|
-
class TooltipSettings {
|
|
2982
|
-
id;
|
|
2983
|
-
containerClass = 'custom-tooltip-class';
|
|
2984
|
-
constructor(id) {
|
|
2985
|
-
this.id = id ?? IdGenerator.get();
|
|
2986
|
-
}
|
|
2987
|
-
static copy(model) {
|
|
2988
|
-
const result = new TooltipSettings(model.id);
|
|
2989
|
-
result.show = model.show;
|
|
2990
|
-
result.containerClass = model.containerClass;
|
|
2991
|
-
return result;
|
|
2992
|
-
}
|
|
2993
|
-
show = (e) => true;
|
|
2994
|
-
setShow(show) {
|
|
2995
|
-
return TooltipSettings.copy({ ...this, show });
|
|
2996
|
-
}
|
|
2997
|
-
setClass(containerClass) {
|
|
2998
|
-
return TooltipSettings.copy({ ...this, containerClass });
|
|
2999
|
-
}
|
|
3000
|
-
isSame(model) {
|
|
3001
|
-
if (this.show !== model.show)
|
|
3002
|
-
return false;
|
|
3003
|
-
if (this.containerClass !== model.containerClass)
|
|
3004
|
-
return false;
|
|
3005
|
-
if (this.id !== model.id)
|
|
3006
|
-
return false;
|
|
3007
|
-
return true;
|
|
3008
|
-
}
|
|
3009
|
-
}
|
|
3010
|
-
|
|
3011
|
-
class TooltipComponent extends DestructibleComponent {
|
|
3012
|
-
postboy;
|
|
3013
|
-
detector;
|
|
3014
|
-
container;
|
|
3015
|
-
overlay;
|
|
3016
|
-
show = false;
|
|
3017
|
-
map;
|
|
3018
|
-
constructor(postboy, detector) {
|
|
3019
|
-
super();
|
|
3020
|
-
this.postboy = postboy;
|
|
3021
|
-
this.detector = detector;
|
|
3022
|
-
}
|
|
3023
|
-
_settings = new TooltipSettings();
|
|
3024
|
-
set settings(value) {
|
|
3025
|
-
if (!value || this._settings.isSame(value))
|
|
3026
|
-
return;
|
|
3027
|
-
this._settings = value;
|
|
3028
|
-
this.detector.detectChanges();
|
|
3029
|
-
}
|
|
3030
|
-
ngOnInit() {
|
|
3031
|
-
this.subs.push(this.observeMapRender());
|
|
3032
|
-
this.subs.push(this.observeMapClick());
|
|
3033
|
-
this.subs.push(this.observeClose());
|
|
3034
|
-
}
|
|
3035
|
-
addOverlay(coordinates) {
|
|
3036
|
-
this.removeOverlay();
|
|
3037
|
-
this.overlay = new Overlay(this.options(coordinates));
|
|
3038
|
-
this.map?.addOverlay(this.overlay);
|
|
3039
|
-
this.show = true;
|
|
3040
|
-
this.detector.detectChanges();
|
|
3041
|
-
}
|
|
3042
|
-
options = (coordinates) => {
|
|
3043
|
-
return {
|
|
3044
|
-
element: this.container?.nativeElement,
|
|
3045
|
-
autoPan: false,
|
|
3046
|
-
autoPanAnimation: { duration: 0 },
|
|
3047
|
-
position: coordinates,
|
|
3048
|
-
};
|
|
3049
|
-
};
|
|
3050
|
-
observeMapClick() {
|
|
3051
|
-
return this.postboy.sub(MapClickEvent).subscribe((ev) => {
|
|
3052
|
-
this._settings.show(ev) ? this.addOverlay(ev.coordinates) : this.removeOverlay();
|
|
3053
|
-
});
|
|
3054
|
-
}
|
|
3055
|
-
observeClose() {
|
|
3056
|
-
return this.postboy
|
|
3057
|
-
.sub(CloseTooltipCommand)
|
|
3058
|
-
.pipe(filter((ev) => ev.tooltipId === this._settings.id))
|
|
3059
|
-
.subscribe(() => this.removeOverlay());
|
|
3060
|
-
}
|
|
3061
|
-
observeMapRender() {
|
|
3062
|
-
return this.postboy.sub(MapRenderedEvent).subscribe((m) => {
|
|
3063
|
-
this.map = m.map;
|
|
3064
|
-
});
|
|
3065
|
-
}
|
|
3066
|
-
removeOverlay = () => {
|
|
3067
|
-
!!this.overlay && this.map?.removeOverlay(this.overlay);
|
|
3068
|
-
this.show = false;
|
|
3069
|
-
};
|
|
3070
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: TooltipComponent, deps: [{ token: MapPostboyService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
3071
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: TooltipComponent, selector: "art-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 });
|
|
3072
|
-
}
|
|
3073
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: TooltipComponent, decorators: [{
|
|
3074
|
-
type: Component,
|
|
3075
|
-
args: [{ selector: 'art-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"] }]
|
|
3076
|
-
}], ctorParameters: () => [{ type: MapPostboyService }, { type: i0.ChangeDetectorRef }], propDecorators: { container: [{
|
|
3077
|
-
type: ViewChild,
|
|
3078
|
-
args: ['tip']
|
|
3079
|
-
}], settings: [{
|
|
3080
|
-
type: Input
|
|
3081
|
-
}] } });
|
|
3082
|
-
|
|
3083
2986
|
/**
|
|
3084
2987
|
* Component for rendering polygons on a map.
|
|
3085
2988
|
* It listens for changes in the `polygons` input property and
|
|
@@ -3116,12 +3019,12 @@ class PolygonsComponent extends DestructibleComponent {
|
|
|
3116
3019
|
return m.feature;
|
|
3117
3020
|
})));
|
|
3118
3021
|
}
|
|
3119
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3120
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3022
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: PolygonsComponent, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3023
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: PolygonsComponent, isStandalone: true, selector: "art-polygons", inputs: { layerName: "layerName", polygons: "polygons" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3121
3024
|
}
|
|
3122
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3025
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: PolygonsComponent, decorators: [{
|
|
3123
3026
|
type: Component,
|
|
3124
|
-
args: [{ selector: 'art-polygons', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
3027
|
+
args: [{ selector: 'art-polygons', standalone: true, template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
3125
3028
|
}], ctorParameters: () => [{ type: MapPostboyService }], propDecorators: { layerName: [{
|
|
3126
3029
|
type: Input
|
|
3127
3030
|
}], polygons: [{
|
|
@@ -3129,59 +3032,251 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
|
|
|
3129
3032
|
}] } });
|
|
3130
3033
|
|
|
3131
3034
|
/**
|
|
3132
|
-
*
|
|
3035
|
+
* Helper class to create and modify marker styles.
|
|
3133
3036
|
*/
|
|
3134
|
-
class
|
|
3135
|
-
/**
|
|
3136
|
-
* The CSS class name of the control element.
|
|
3137
|
-
*
|
|
3138
|
-
* @type {string}
|
|
3139
|
-
*/
|
|
3140
|
-
controlClass = 'ol-zoom';
|
|
3037
|
+
class MarkerStyleHelper {
|
|
3141
3038
|
/**
|
|
3142
|
-
*
|
|
3143
|
-
* @
|
|
3039
|
+
* Creates a new Style object from an SVG.
|
|
3040
|
+
* @param {string} svg - The SVG string.
|
|
3041
|
+
* @param {Array<number>} [size=[30, 30]] - The size of the icon image.
|
|
3042
|
+
* @param {number} [zIndex=400] - The zIndex of the style.
|
|
3043
|
+
* @returns {Style} A new Style object.
|
|
3144
3044
|
*/
|
|
3145
|
-
|
|
3045
|
+
static fromSvg(svg, size = [30, 30], zIndex = 400) {
|
|
3046
|
+
let image = new Image();
|
|
3047
|
+
image.src = 'data:image/svg+xml,' + escape(svg);
|
|
3048
|
+
return new Style({
|
|
3049
|
+
image: new Icon({
|
|
3050
|
+
img: image,
|
|
3051
|
+
size: size,
|
|
3052
|
+
}),
|
|
3053
|
+
zIndex,
|
|
3054
|
+
});
|
|
3055
|
+
}
|
|
3146
3056
|
/**
|
|
3147
|
-
*
|
|
3057
|
+
* Returns a Style object with a circle style.
|
|
3148
3058
|
*
|
|
3149
|
-
* @
|
|
3059
|
+
* @param {number} radius - The radius of the circle.
|
|
3060
|
+
* @param {string} fill - The fill color of the circle. Format: '#RRGGBB' or 'rgba(R, G, B, A)'.
|
|
3061
|
+
* @param {string} strokeColor - The stroke color of the circle. Format: '#RRGGBB' or 'rgba(R, G, B, A)'.
|
|
3062
|
+
* @param {number} [strokeWidth=1] - The width of the stroke. Default is 1.
|
|
3063
|
+
* @returns {Style} - A Style object with a Circle image.
|
|
3150
3064
|
*/
|
|
3151
|
-
|
|
3065
|
+
static circle(radius, fill, strokeColor, strokeWidth = 1) {
|
|
3066
|
+
return new Style({
|
|
3067
|
+
image: new Circle$1({
|
|
3068
|
+
radius,
|
|
3069
|
+
fill: new Fill({ color: fill }),
|
|
3070
|
+
stroke: new Stroke({ color: strokeColor, width: strokeWidth }),
|
|
3071
|
+
}),
|
|
3072
|
+
});
|
|
3073
|
+
}
|
|
3152
3074
|
/**
|
|
3153
|
-
*
|
|
3075
|
+
* Applies the given Text to the provided Style.
|
|
3154
3076
|
*
|
|
3155
|
-
* @
|
|
3077
|
+
* @param {Style} style - The Style to modify.
|
|
3078
|
+
* @param {Text} text - The Text to apply to the Style.
|
|
3079
|
+
* @return {Style} - The modified Style with the applied Text.
|
|
3156
3080
|
*/
|
|
3157
|
-
|
|
3081
|
+
static withText(style, text) {
|
|
3082
|
+
style.setText(text);
|
|
3083
|
+
return style;
|
|
3084
|
+
}
|
|
3085
|
+
}
|
|
3086
|
+
|
|
3087
|
+
/**
|
|
3088
|
+
* A helper class for creating polygon styles.
|
|
3089
|
+
* @class
|
|
3090
|
+
*/
|
|
3091
|
+
class PolygonStyleHelper {
|
|
3158
3092
|
/**
|
|
3159
|
-
*
|
|
3093
|
+
* Creates a Style object with the given fill color, stroke color, and stroke width.
|
|
3160
3094
|
*
|
|
3161
|
-
* @
|
|
3095
|
+
* @param {string} fill - The fill color in hexadecimal or RGB format.
|
|
3096
|
+
* @param {string} stroke - The stroke color in hexadecimal or RGB format.
|
|
3097
|
+
* @param {number} [strokeWidth=1] - The width of the stroke. Defaults to 1.
|
|
3098
|
+
* @return {Style} The created Style object.
|
|
3162
3099
|
*/
|
|
3163
|
-
|
|
3100
|
+
static simple(fill, stroke, strokeWidth = 1) {
|
|
3101
|
+
return new Style({
|
|
3102
|
+
fill: new Fill({
|
|
3103
|
+
color: fill,
|
|
3104
|
+
}),
|
|
3105
|
+
stroke: new Stroke({
|
|
3106
|
+
color: stroke,
|
|
3107
|
+
width: strokeWidth,
|
|
3108
|
+
}),
|
|
3109
|
+
});
|
|
3110
|
+
}
|
|
3164
3111
|
/**
|
|
3165
|
-
*
|
|
3112
|
+
* Creates a new Style object with the given fill, stroke, stroke width, and pin radius.
|
|
3166
3113
|
*
|
|
3167
|
-
* @param {
|
|
3168
|
-
* @
|
|
3114
|
+
* @param {string} fill - The color to use for the fill of the style.
|
|
3115
|
+
* @param {string} stroke - The color to use for the stroke of the style.
|
|
3116
|
+
* @param {number} [strokeWidth=1] - The width of the stroke. Defaults to 1.
|
|
3117
|
+
* @param {number} [pinRadius=5] - The radius of the circle used as the image for the style. Defaults to 5.
|
|
3118
|
+
* @returns {Style} - The newly created Style object.
|
|
3169
3119
|
*/
|
|
3170
|
-
static
|
|
3171
|
-
|
|
3172
|
-
|
|
3173
|
-
|
|
3174
|
-
|
|
3175
|
-
|
|
3176
|
-
|
|
3177
|
-
|
|
3120
|
+
static edit(fill, stroke, strokeWidth = 1, pinRadius = 5) {
|
|
3121
|
+
return new Style({
|
|
3122
|
+
image: new Circle$1({
|
|
3123
|
+
fill: new Fill({
|
|
3124
|
+
color: stroke,
|
|
3125
|
+
}),
|
|
3126
|
+
radius: pinRadius,
|
|
3127
|
+
}),
|
|
3128
|
+
fill: new Fill({
|
|
3129
|
+
color: fill,
|
|
3130
|
+
}),
|
|
3131
|
+
stroke: new Stroke({
|
|
3132
|
+
color: stroke,
|
|
3133
|
+
width: strokeWidth,
|
|
3134
|
+
}),
|
|
3135
|
+
});
|
|
3178
3136
|
}
|
|
3137
|
+
}
|
|
3138
|
+
|
|
3139
|
+
/**
|
|
3140
|
+
* Helper class for creating text styles.
|
|
3141
|
+
*/
|
|
3142
|
+
class TextStyleHelper {
|
|
3179
3143
|
/**
|
|
3180
|
-
*
|
|
3181
|
-
*
|
|
3182
|
-
* @param {ZoomControlSettings} model - The ZoomControlSettings object to compare with.
|
|
3144
|
+
* Creates and returns a new Text instance with specified styling properties.
|
|
3183
3145
|
*
|
|
3184
|
-
* @
|
|
3146
|
+
* @param {string} text - The text content to display.
|
|
3147
|
+
* @param {string} font - The font style to use for the text.
|
|
3148
|
+
* @param {string} color - The color of the text.
|
|
3149
|
+
* @param {string|null|undefined} [backColor] - The background color of the text. Optional.
|
|
3150
|
+
* @param {number[]|null|undefined} [padding] - The padding around the text in pixels. Optional.
|
|
3151
|
+
* @param {string|null|undefined} [textBaseline] - The text baseline alignment. Optional.
|
|
3152
|
+
* @param {number|null|undefined} [offsetY] - The vertical offset for the text. Optional.
|
|
3153
|
+
* @return {Text} A new Text instance configured with the specified properties.
|
|
3154
|
+
*/
|
|
3155
|
+
static get(text, font, color, backColor, padding, textBaseline, offsetY) {
|
|
3156
|
+
return new Text({
|
|
3157
|
+
text: text,
|
|
3158
|
+
font: font,
|
|
3159
|
+
textAlign: 'center',
|
|
3160
|
+
fill: new Fill({
|
|
3161
|
+
color: color,
|
|
3162
|
+
}),
|
|
3163
|
+
backgroundFill: backColor ? new Fill({ color: backColor }) : undefined,
|
|
3164
|
+
padding: padding ?? undefined,
|
|
3165
|
+
textBaseline: textBaseline ?? undefined,
|
|
3166
|
+
offsetY: offsetY ?? undefined,
|
|
3167
|
+
});
|
|
3168
|
+
}
|
|
3169
|
+
}
|
|
3170
|
+
|
|
3171
|
+
/**
|
|
3172
|
+
* A helper class for converting and stringify features.
|
|
3173
|
+
*/
|
|
3174
|
+
class StringifyFeatureHelper {
|
|
3175
|
+
static polygon(feature, format = FeatureOutputFormat.GeoJson) {
|
|
3176
|
+
return format === FeatureOutputFormat.GeoJson
|
|
3177
|
+
? new GeoJSON().writeFeature(feature)
|
|
3178
|
+
: new WKT().writeFeature(feature);
|
|
3179
|
+
}
|
|
3180
|
+
/**
|
|
3181
|
+
* Creates a polygon feature representing a circle based on a given feature with a circle geometry.
|
|
3182
|
+
*
|
|
3183
|
+
* @param {Feature<Geometry>} feature - The input feature with a circle geometry.
|
|
3184
|
+
* @param {FeatureOutputFormat} format - The format for outputting the polygon feature. (default: FeatureOutputFormat.GeoJson)
|
|
3185
|
+
*
|
|
3186
|
+
* @return {string} - The string representation of the polygon feature.
|
|
3187
|
+
*/
|
|
3188
|
+
static circle(feature, format = FeatureOutputFormat.GeoJson) {
|
|
3189
|
+
const circle = feature.getGeometry();
|
|
3190
|
+
const ext = feature.getGeometry().getExtent();
|
|
3191
|
+
const coords = [
|
|
3192
|
+
...transform([ext[0], ext[1]], 'EPSG:4326', 'EPSG:3857'),
|
|
3193
|
+
...transform([ext[2], ext[3]], 'EPSG:4326', 'EPSG:3857'),
|
|
3194
|
+
];
|
|
3195
|
+
const radius = (coords[2] - coords[0]) / 2;
|
|
3196
|
+
const polygonGeom = new Polygon(StringifyFeatureHelper.drawCircle(circle.getCenter(), radius));
|
|
3197
|
+
return StringifyFeatureHelper.polygon(new Feature(polygonGeom), format);
|
|
3198
|
+
}
|
|
3199
|
+
/**
|
|
3200
|
+
* Draw a circle based on a center point and radius.
|
|
3201
|
+
*
|
|
3202
|
+
* @param {number[]} point - The center point coordinates in EPSG:4326 format.
|
|
3203
|
+
* @param {number} radius - The radius of the circle in meters.
|
|
3204
|
+
* @return {Coordinate[][]} - The coordinates of the circle boundary in EPSG:4326 format.
|
|
3205
|
+
*/
|
|
3206
|
+
static drawCircle(point, radius) {
|
|
3207
|
+
const tetetemp = transform(point, 'EPSG:4326', 'EPSG:3857');
|
|
3208
|
+
// const tetetemp = point;
|
|
3209
|
+
const radians = Math.PI / 180; // degrees to radians
|
|
3210
|
+
const degrees = 180 / Math.PI; // radians to degrees
|
|
3211
|
+
const earthsradius = 6378137.0;
|
|
3212
|
+
const rlat = (radius / earthsradius) * degrees;
|
|
3213
|
+
const rlng = rlat / Math.cos(tetetemp[1] * radians);
|
|
3214
|
+
const extp = [];
|
|
3215
|
+
for (let i = 0; i <= 32; i++) {
|
|
3216
|
+
const theta = Math.PI * (i / 16);
|
|
3217
|
+
extp.push([
|
|
3218
|
+
tetetemp[0] + rlng * Math.cos(theta) * METERS_PER_UNIT,
|
|
3219
|
+
tetetemp[1] + rlat * Math.sin(theta) * METERS_PER_UNIT,
|
|
3220
|
+
]);
|
|
3221
|
+
}
|
|
3222
|
+
return [extp.map((e) => transform(e, 'EPSG:3857', 'EPSG:4326'))];
|
|
3223
|
+
}
|
|
3224
|
+
}
|
|
3225
|
+
|
|
3226
|
+
/**
|
|
3227
|
+
* Represents the settings for a zoom control.
|
|
3228
|
+
*/
|
|
3229
|
+
class ZoomControlSettings {
|
|
3230
|
+
/**
|
|
3231
|
+
* The CSS class name of the control element.
|
|
3232
|
+
*
|
|
3233
|
+
* @type {string}
|
|
3234
|
+
*/
|
|
3235
|
+
controlClass = 'ol-zoom';
|
|
3236
|
+
/**
|
|
3237
|
+
* The CSS class name for zoom in button.
|
|
3238
|
+
* @type {string}
|
|
3239
|
+
*/
|
|
3240
|
+
zoomInClass = 'ol-zoom-in';
|
|
3241
|
+
/**
|
|
3242
|
+
* The CSS class name for the zoom out button element.
|
|
3243
|
+
*
|
|
3244
|
+
* @type {string}
|
|
3245
|
+
*/
|
|
3246
|
+
zoomOutClass = 'ol-zoom-out';
|
|
3247
|
+
/**
|
|
3248
|
+
* The label for the zoom in action.
|
|
3249
|
+
*
|
|
3250
|
+
* @type {string}
|
|
3251
|
+
*/
|
|
3252
|
+
zoomInLabel = 'Zoom In';
|
|
3253
|
+
/**
|
|
3254
|
+
* The label for the zoom out control.
|
|
3255
|
+
*
|
|
3256
|
+
* @type {string}
|
|
3257
|
+
*/
|
|
3258
|
+
zoomOutLabel = 'Zoom Out';
|
|
3259
|
+
/**
|
|
3260
|
+
* Copies the provided ZoomControlSettings object.
|
|
3261
|
+
*
|
|
3262
|
+
* @param {ZoomControlSettings} model - The ZoomControlSettings object to be copied.
|
|
3263
|
+
* @return {ZoomControlSettings} - The copied ZoomControlSettings object.
|
|
3264
|
+
*/
|
|
3265
|
+
static copy(model) {
|
|
3266
|
+
const result = new ZoomControlSettings();
|
|
3267
|
+
result.controlClass = model.controlClass;
|
|
3268
|
+
result.zoomInClass = model.zoomInClass;
|
|
3269
|
+
result.zoomOutClass = model.zoomOutClass;
|
|
3270
|
+
result.zoomInLabel = model.zoomInLabel;
|
|
3271
|
+
result.zoomOutLabel = model.zoomOutLabel;
|
|
3272
|
+
return result;
|
|
3273
|
+
}
|
|
3274
|
+
/**
|
|
3275
|
+
* Checks if the current ZoomControlSettings object is equal to the given model.
|
|
3276
|
+
*
|
|
3277
|
+
* @param {ZoomControlSettings} model - The ZoomControlSettings object to compare with.
|
|
3278
|
+
*
|
|
3279
|
+
* @return {boolean} - true if the current object is equal to the given model, false otherwise.
|
|
3185
3280
|
*/
|
|
3186
3281
|
isSame(model) {
|
|
3187
3282
|
if (this.zoomInClass !== model.zoomInClass)
|
|
@@ -3295,265 +3390,119 @@ class MapControlZoomComponent extends DestructibleComponent {
|
|
|
3295
3390
|
this.map.addControl(this.control);
|
|
3296
3391
|
}
|
|
3297
3392
|
eliminate = () => !!this.map && !!this.control && this.map.removeControl(this.control);
|
|
3298
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3299
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3393
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapControlZoomComponent, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3394
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.19", type: MapControlZoomComponent, isStandalone: true, selector: "art-map-control-zoom", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3300
3395
|
}
|
|
3301
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3396
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: MapControlZoomComponent, decorators: [{
|
|
3302
3397
|
type: Component,
|
|
3303
|
-
args: [{ selector: 'art-map-control-zoom', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
3398
|
+
args: [{ selector: 'art-map-control-zoom', standalone: true, template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
3304
3399
|
}], ctorParameters: () => [{ type: MapPostboyService }], propDecorators: { settings: [{
|
|
3305
3400
|
type: Input
|
|
3306
3401
|
}] } });
|
|
3307
3402
|
|
|
3308
|
-
class
|
|
3309
|
-
|
|
3310
|
-
|
|
3311
|
-
|
|
3312
|
-
|
|
3313
|
-
OsmTileLayerComponent,
|
|
3314
|
-
FeatureLayerComponent,
|
|
3315
|
-
MarkersComponent,
|
|
3316
|
-
TooltipComponent,
|
|
3317
|
-
PolygonsComponent,
|
|
3318
|
-
ClusterLayerComponent,
|
|
3319
|
-
MapControlZoomComponent,
|
|
3320
|
-
ImageLayerComponent,
|
|
3321
|
-
RasterTileLayerComponent], imports: [CommonModule], exports: [MapPlateComponent,
|
|
3322
|
-
FeatureLayerComponent,
|
|
3323
|
-
MarkersComponent,
|
|
3324
|
-
TileLayerComponent,
|
|
3325
|
-
TooltipComponent,
|
|
3326
|
-
PolygonsComponent,
|
|
3327
|
-
ClusterLayerComponent,
|
|
3328
|
-
MapControlZoomComponent,
|
|
3329
|
-
ImageLayerComponent,
|
|
3330
|
-
RasterTileLayerComponent] });
|
|
3331
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapModule, imports: [CommonModule] });
|
|
3332
|
-
}
|
|
3333
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapModule, decorators: [{
|
|
3334
|
-
type: NgModule,
|
|
3335
|
-
args: [{
|
|
3336
|
-
imports: [CommonModule],
|
|
3337
|
-
declarations: [
|
|
3338
|
-
DestructibleComponent,
|
|
3339
|
-
MapPlateComponent,
|
|
3340
|
-
TileLayerComponent,
|
|
3341
|
-
OsmTileLayerComponent,
|
|
3342
|
-
FeatureLayerComponent,
|
|
3343
|
-
MarkersComponent,
|
|
3344
|
-
TooltipComponent,
|
|
3345
|
-
PolygonsComponent,
|
|
3346
|
-
ClusterLayerComponent,
|
|
3347
|
-
MapControlZoomComponent,
|
|
3348
|
-
ImageLayerComponent,
|
|
3349
|
-
RasterTileLayerComponent,
|
|
3350
|
-
],
|
|
3351
|
-
exports: [
|
|
3352
|
-
MapPlateComponent,
|
|
3353
|
-
FeatureLayerComponent,
|
|
3354
|
-
MarkersComponent,
|
|
3355
|
-
TileLayerComponent,
|
|
3356
|
-
TooltipComponent,
|
|
3357
|
-
PolygonsComponent,
|
|
3358
|
-
ClusterLayerComponent,
|
|
3359
|
-
MapControlZoomComponent,
|
|
3360
|
-
ImageLayerComponent,
|
|
3361
|
-
RasterTileLayerComponent,
|
|
3362
|
-
],
|
|
3363
|
-
}]
|
|
3364
|
-
}] });
|
|
3365
|
-
|
|
3366
|
-
/**
|
|
3367
|
-
* Helper class to create and modify marker styles.
|
|
3368
|
-
*/
|
|
3369
|
-
class MarkerStyleHelper {
|
|
3370
|
-
/**
|
|
3371
|
-
* Creates a new Style object from an SVG.
|
|
3372
|
-
* @param {string} svg - The SVG string.
|
|
3373
|
-
* @param {Array<number>} [size=[30, 30]] - The size of the icon image.
|
|
3374
|
-
* @param {number} [zIndex=400] - The zIndex of the style.
|
|
3375
|
-
* @returns {Style} A new Style object.
|
|
3376
|
-
*/
|
|
3377
|
-
static fromSvg(svg, size = [30, 30], zIndex = 400) {
|
|
3378
|
-
let image = new Image();
|
|
3379
|
-
image.src = 'data:image/svg+xml,' + escape(svg);
|
|
3380
|
-
return new Style({
|
|
3381
|
-
image: new Icon({
|
|
3382
|
-
img: image,
|
|
3383
|
-
imgSize: size,
|
|
3384
|
-
}),
|
|
3385
|
-
zIndex,
|
|
3386
|
-
});
|
|
3403
|
+
class TooltipSettings {
|
|
3404
|
+
id;
|
|
3405
|
+
containerClass = 'custom-tooltip-class';
|
|
3406
|
+
constructor(id) {
|
|
3407
|
+
this.id = id ?? IdGenerator.get();
|
|
3387
3408
|
}
|
|
3388
|
-
|
|
3389
|
-
|
|
3390
|
-
|
|
3391
|
-
|
|
3392
|
-
|
|
3393
|
-
* @param {string} strokeColor - The stroke color of the circle. Format: '#RRGGBB' or 'rgba(R, G, B, A)'.
|
|
3394
|
-
* @param {number} [strokeWidth=1] - The width of the stroke. Default is 1.
|
|
3395
|
-
* @returns {Style} - A Style object with a Circle image.
|
|
3396
|
-
*/
|
|
3397
|
-
static circle(radius, fill, strokeColor, strokeWidth = 1) {
|
|
3398
|
-
return new Style({
|
|
3399
|
-
image: new Circle$1({
|
|
3400
|
-
radius,
|
|
3401
|
-
fill: new Fill({ color: fill }),
|
|
3402
|
-
stroke: new Stroke({ color: strokeColor, width: strokeWidth }),
|
|
3403
|
-
}),
|
|
3404
|
-
});
|
|
3409
|
+
static copy(model) {
|
|
3410
|
+
const result = new TooltipSettings(model.id);
|
|
3411
|
+
result.show = model.show;
|
|
3412
|
+
result.containerClass = model.containerClass;
|
|
3413
|
+
return result;
|
|
3405
3414
|
}
|
|
3406
|
-
|
|
3407
|
-
|
|
3408
|
-
|
|
3409
|
-
* @param {Style} style - The Style to modify.
|
|
3410
|
-
* @param {Text} text - The Text to apply to the Style.
|
|
3411
|
-
* @return {Style} - The modified Style with the applied Text.
|
|
3412
|
-
*/
|
|
3413
|
-
static withText(style, text) {
|
|
3414
|
-
style.setText(text);
|
|
3415
|
-
return style;
|
|
3415
|
+
show = (e) => true;
|
|
3416
|
+
setShow(show) {
|
|
3417
|
+
return TooltipSettings.copy({ ...this, show });
|
|
3416
3418
|
}
|
|
3417
|
-
|
|
3418
|
-
|
|
3419
|
-
/**
|
|
3420
|
-
* A helper class for creating polygon styles.
|
|
3421
|
-
* @class
|
|
3422
|
-
*/
|
|
3423
|
-
class PolygonStyleHelper {
|
|
3424
|
-
/**
|
|
3425
|
-
* Creates a Style object with the given fill color, stroke color, and stroke width.
|
|
3426
|
-
*
|
|
3427
|
-
* @param {string} fill - The fill color in hexadecimal or RGB format.
|
|
3428
|
-
* @param {string} stroke - The stroke color in hexadecimal or RGB format.
|
|
3429
|
-
* @param {number} [strokeWidth=1] - The width of the stroke. Defaults to 1.
|
|
3430
|
-
* @return {Style} The created Style object.
|
|
3431
|
-
*/
|
|
3432
|
-
static simple(fill, stroke, strokeWidth = 1) {
|
|
3433
|
-
return new Style({
|
|
3434
|
-
fill: new Fill({
|
|
3435
|
-
color: fill,
|
|
3436
|
-
}),
|
|
3437
|
-
stroke: new Stroke({
|
|
3438
|
-
color: stroke,
|
|
3439
|
-
width: strokeWidth,
|
|
3440
|
-
}),
|
|
3441
|
-
});
|
|
3419
|
+
setClass(containerClass) {
|
|
3420
|
+
return TooltipSettings.copy({ ...this, containerClass });
|
|
3442
3421
|
}
|
|
3443
|
-
|
|
3444
|
-
|
|
3445
|
-
|
|
3446
|
-
|
|
3447
|
-
|
|
3448
|
-
|
|
3449
|
-
|
|
3450
|
-
|
|
3451
|
-
*/
|
|
3452
|
-
static edit(fill, stroke, strokeWidth = 1, pinRadius = 5) {
|
|
3453
|
-
return new Style({
|
|
3454
|
-
image: new Circle$1({
|
|
3455
|
-
fill: new Fill({
|
|
3456
|
-
color: stroke,
|
|
3457
|
-
}),
|
|
3458
|
-
radius: pinRadius,
|
|
3459
|
-
}),
|
|
3460
|
-
fill: new Fill({
|
|
3461
|
-
color: fill,
|
|
3462
|
-
}),
|
|
3463
|
-
stroke: new Stroke({
|
|
3464
|
-
color: stroke,
|
|
3465
|
-
width: strokeWidth,
|
|
3466
|
-
}),
|
|
3467
|
-
});
|
|
3422
|
+
isSame(model) {
|
|
3423
|
+
if (this.show !== model.show)
|
|
3424
|
+
return false;
|
|
3425
|
+
if (this.containerClass !== model.containerClass)
|
|
3426
|
+
return false;
|
|
3427
|
+
if (this.id !== model.id)
|
|
3428
|
+
return false;
|
|
3429
|
+
return true;
|
|
3468
3430
|
}
|
|
3469
3431
|
}
|
|
3470
3432
|
|
|
3471
|
-
|
|
3472
|
-
|
|
3473
|
-
|
|
3474
|
-
|
|
3475
|
-
|
|
3476
|
-
|
|
3477
|
-
|
|
3478
|
-
|
|
3479
|
-
|
|
3480
|
-
|
|
3481
|
-
|
|
3482
|
-
|
|
3483
|
-
* @param {string|null|undefined} [textBaseline] - The text baseline alignment. Optional.
|
|
3484
|
-
* @param {number|null|undefined} [offsetY] - The vertical offset for the text. Optional.
|
|
3485
|
-
* @return {Text} A new Text instance configured with the specified properties.
|
|
3486
|
-
*/
|
|
3487
|
-
static get(text, font, color, backColor, padding, textBaseline, offsetY) {
|
|
3488
|
-
return new Text({
|
|
3489
|
-
text: text,
|
|
3490
|
-
font: font,
|
|
3491
|
-
textAlign: 'center',
|
|
3492
|
-
fill: new Fill({
|
|
3493
|
-
color: color,
|
|
3494
|
-
}),
|
|
3495
|
-
backgroundFill: backColor ? new Fill({ color: backColor }) : undefined,
|
|
3496
|
-
padding: padding ?? undefined,
|
|
3497
|
-
textBaseline: textBaseline ?? undefined,
|
|
3498
|
-
offsetY: offsetY ?? undefined,
|
|
3499
|
-
});
|
|
3433
|
+
class TooltipComponent extends DestructibleComponent {
|
|
3434
|
+
postboy;
|
|
3435
|
+
detector;
|
|
3436
|
+
contentRef = input.required();
|
|
3437
|
+
container;
|
|
3438
|
+
overlay;
|
|
3439
|
+
show = false;
|
|
3440
|
+
map;
|
|
3441
|
+
constructor(postboy, detector) {
|
|
3442
|
+
super();
|
|
3443
|
+
this.postboy = postboy;
|
|
3444
|
+
this.detector = detector;
|
|
3500
3445
|
}
|
|
3501
|
-
|
|
3502
|
-
|
|
3503
|
-
|
|
3504
|
-
|
|
3505
|
-
|
|
3506
|
-
|
|
3507
|
-
static polygon(feature, format = FeatureOutputFormat.GeoJson) {
|
|
3508
|
-
return format === FeatureOutputFormat.GeoJson
|
|
3509
|
-
? new GeoJSON().writeFeature(feature)
|
|
3510
|
-
: new WKT().writeFeature(feature);
|
|
3446
|
+
_settings = new TooltipSettings();
|
|
3447
|
+
set settings(value) {
|
|
3448
|
+
if (!value || this._settings.isSame(value))
|
|
3449
|
+
return;
|
|
3450
|
+
this._settings = value;
|
|
3451
|
+
this.detector.detectChanges();
|
|
3511
3452
|
}
|
|
3512
|
-
|
|
3513
|
-
|
|
3514
|
-
|
|
3515
|
-
|
|
3516
|
-
* @param {FeatureOutputFormat} format - The format for outputting the polygon feature. (default: FeatureOutputFormat.GeoJson)
|
|
3517
|
-
*
|
|
3518
|
-
* @return {string} - The string representation of the polygon feature.
|
|
3519
|
-
*/
|
|
3520
|
-
static circle(feature, format = FeatureOutputFormat.GeoJson) {
|
|
3521
|
-
const circle = feature.getGeometry();
|
|
3522
|
-
const ext = feature.getGeometry().getExtent();
|
|
3523
|
-
const coords = [
|
|
3524
|
-
...transform([ext[0], ext[1]], 'EPSG:4326', 'EPSG:3857'),
|
|
3525
|
-
...transform([ext[2], ext[3]], 'EPSG:4326', 'EPSG:3857'),
|
|
3526
|
-
];
|
|
3527
|
-
const radius = (coords[2] - coords[0]) / 2;
|
|
3528
|
-
const polygonGeom = new Polygon(StringifyFeatureHelper.drawCircle(circle.getCenter(), radius));
|
|
3529
|
-
return StringifyFeatureHelper.polygon(new Feature(polygonGeom), format);
|
|
3453
|
+
ngOnInit() {
|
|
3454
|
+
this.subs.push(this.observeMapRender());
|
|
3455
|
+
this.subs.push(this.observeMapClick());
|
|
3456
|
+
this.subs.push(this.observeClose());
|
|
3530
3457
|
}
|
|
3531
|
-
|
|
3532
|
-
|
|
3533
|
-
|
|
3534
|
-
|
|
3535
|
-
|
|
3536
|
-
|
|
3537
|
-
|
|
3538
|
-
|
|
3539
|
-
|
|
3540
|
-
|
|
3541
|
-
|
|
3542
|
-
|
|
3543
|
-
|
|
3544
|
-
|
|
3545
|
-
|
|
3546
|
-
|
|
3547
|
-
|
|
3548
|
-
|
|
3549
|
-
extp.push([
|
|
3550
|
-
tetetemp[0] + rlng * Math.cos(theta) * METERS_PER_UNIT,
|
|
3551
|
-
tetetemp[1] + rlat * Math.sin(theta) * METERS_PER_UNIT,
|
|
3552
|
-
]);
|
|
3553
|
-
}
|
|
3554
|
-
return [extp.map((e) => transform(e, 'EPSG:3857', 'EPSG:4326'))];
|
|
3458
|
+
addOverlay(coordinates) {
|
|
3459
|
+
this.removeOverlay();
|
|
3460
|
+
this.overlay = new Overlay(this.options(coordinates));
|
|
3461
|
+
this.map?.addOverlay(this.overlay);
|
|
3462
|
+
this.show = true;
|
|
3463
|
+
this.detector.detectChanges();
|
|
3464
|
+
}
|
|
3465
|
+
options = (coordinates) => {
|
|
3466
|
+
return {
|
|
3467
|
+
element: this.container?.nativeElement,
|
|
3468
|
+
autoPan: false,
|
|
3469
|
+
position: coordinates,
|
|
3470
|
+
};
|
|
3471
|
+
};
|
|
3472
|
+
observeMapClick() {
|
|
3473
|
+
return this.postboy.sub(MapClickEvent).subscribe((ev) => {
|
|
3474
|
+
this._settings.show(ev) ? this.addOverlay(ev.coordinates) : this.removeOverlay();
|
|
3475
|
+
});
|
|
3555
3476
|
}
|
|
3477
|
+
observeClose() {
|
|
3478
|
+
return this.postboy
|
|
3479
|
+
.sub(CloseTooltipCommand)
|
|
3480
|
+
.pipe(filter((ev) => ev.tooltipId === this._settings.id))
|
|
3481
|
+
.subscribe(() => this.removeOverlay());
|
|
3482
|
+
}
|
|
3483
|
+
observeMapRender() {
|
|
3484
|
+
return this.postboy.sub(MapRenderedEvent).subscribe((m) => {
|
|
3485
|
+
this.map = m.map;
|
|
3486
|
+
});
|
|
3487
|
+
}
|
|
3488
|
+
removeOverlay = () => {
|
|
3489
|
+
!!this.overlay && this.map?.removeOverlay(this.overlay);
|
|
3490
|
+
this.show = false;
|
|
3491
|
+
};
|
|
3492
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TooltipComponent, deps: [{ token: MapPostboyService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
3493
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.19", type: TooltipComponent, isStandalone: true, selector: "art-tooltip", inputs: { contentRef: { classPropertyName: "contentRef", publicName: "contentRef", isSignal: true, isRequired: true, transformFunction: null }, settings: { classPropertyName: "settings", publicName: "settings", isSignal: false, isRequired: false, transformFunction: null } }, 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-container *ngTemplateOutlet=\"contentRef()\"> </ng-container>\r\n</div>\r\n", styles: [".tooltip-wrapper{position:absolute}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3556
3494
|
}
|
|
3495
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: TooltipComponent, decorators: [{
|
|
3496
|
+
type: Component,
|
|
3497
|
+
args: [{ selector: 'art-tooltip', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
3498
|
+
NgTemplateOutlet
|
|
3499
|
+
], template: "<div #tip [class]=\"['tooltip-wrapper', _settings.containerClass]\" [hidden]=\"!show\">\r\n <ng-container *ngTemplateOutlet=\"contentRef()\"> </ng-container>\r\n</div>\r\n", styles: [".tooltip-wrapper{position:absolute}\n"] }]
|
|
3500
|
+
}], ctorParameters: () => [{ type: MapPostboyService }, { type: i0.ChangeDetectorRef }], propDecorators: { container: [{
|
|
3501
|
+
type: ViewChild,
|
|
3502
|
+
args: ['tip']
|
|
3503
|
+
}], settings: [{
|
|
3504
|
+
type: Input
|
|
3505
|
+
}] } });
|
|
3557
3506
|
|
|
3558
3507
|
/*
|
|
3559
3508
|
* Public API Surface of maps
|
|
@@ -3563,5 +3512,5 @@ class StringifyFeatureHelper {
|
|
|
3563
3512
|
* Generated bundle index. Do not edit.
|
|
3564
3513
|
*/
|
|
3565
3514
|
|
|
3566
|
-
export { AddControlCommand, CalculateAreaExecutor, CancelDrawingCommand, CancelFeatureModificationCommand, CloseTooltipCommand, ClusterLayerComponent, ClusterLayerSettings, DrawSelectionAreaCommand, DrawingType, FeatureLayerComponent, FeatureLayerSettings, FeatureOutputFormat, FilterFeaturesInAreaExecutor, FilterFeaturesInPointExecutor, FitToFeaturesCommand, FitToPolygonsCommand, GetFeaturesInAreaQuery, GetFeaturesInPointQuery, GetGeometryLengthExecutor, GetMapPositionExecutor, ImageLayerComponent, ImageLayerSettings, MapClickEvent, MapConstants, MapControl, MapControlZoomComponent, MapFeatureHoveredEvent, MapLyrs, MapLyrsLabel,
|
|
3515
|
+
export { AddControlCommand, CalculateAreaExecutor, CancelDrawingCommand, CancelFeatureModificationCommand, CloseTooltipCommand, ClusterLayerComponent, ClusterLayerSettings, DrawSelectionAreaCommand, DrawingType, FeatureLayerComponent, FeatureLayerSettings, FeatureOutputFormat, FilterFeaturesInAreaExecutor, FilterFeaturesInPointExecutor, FitToFeaturesCommand, FitToPolygonsCommand, GetFeaturesInAreaQuery, GetFeaturesInPointQuery, GetGeometryLengthExecutor, GetMapPositionExecutor, ImageLayerComponent, ImageLayerSettings, MapClickEvent, MapConstants, MapControl, MapControlZoomComponent, MapFeatureHoveredEvent, MapLyrs, MapLyrsLabel, MapMoveEndEvent, MapPlateComponent, MapPointerMoveEvent, MapPostboyService, MapRenderedEvent, MapSettings, MarkerModel, MarkerStyleHelper, MarkersComponent, MessageRegistratorService, ModifyFeatureCommand, OsmTileLayerComponent, PolygonModel, PolygonSelfIntersectionExecutor, PolygonStyleHelper, PolygonsComponent, RasterTileLayerComponent, RasterTileLayerSettings, RemoveControlCommand, SetMapCenterCommand, StartDrawingCommand, StringifyFeatureHelper, TextStyleHelper, TileLayerComponent, TileLayerSettings, TooltipComponent, TooltipSettings, ZoomControlSettings };
|
|
3567
3516
|
//# sourceMappingURL=maps-components-src-map.mjs.map
|