@artstesh/maps 5.1.8 → 6.0.2
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/README.md +13 -13
- package/dist/README.md +24 -24
- package/dist/esm2022/map/common/destructible.component.mjs +18 -18
- package/dist/esm2022/map/common/id.generator.mjs +14 -14
- package/dist/esm2022/map/helpers/index.mjs +4 -4
- package/dist/esm2022/map/helpers/marker-style.helper.mjs +54 -54
- package/dist/esm2022/map/helpers/polygon-style.helper.mjs +53 -53
- package/dist/esm2022/map/helpers/stringify-feature.helper.mjs +61 -61
- package/dist/esm2022/map/helpers/text-style.helper.mjs +24 -24
- package/dist/esm2022/map/map-plate/controls/index.mjs +2 -2
- package/dist/esm2022/map/map-plate/controls/map-control-zoom/map-control-zoom.component.mjs +69 -69
- package/dist/esm2022/map/map-plate/controls/map-control-zoom/zoom-control.factory.mjs +12 -12
- package/dist/esm2022/map/map-plate/controls/map-control-zoom/zoom-control.settings.mjs +115 -115
- package/dist/esm2022/map/map-plate/features/index.mjs +2 -2
- package/dist/esm2022/map/map-plate/features/markers/markers.component.mjs +52 -52
- package/dist/esm2022/map/map-plate/features/polygons/polygons.component.mjs +52 -52
- package/dist/esm2022/map/map-plate/layers/cluster-layer/cluster-layer-factory.service.mjs +59 -59
- package/dist/esm2022/map/map-plate/layers/cluster-layer/cluster-layer.component.mjs +60 -60
- package/dist/esm2022/map/map-plate/layers/cluster-layer/cluster-layer.manager.mjs +38 -38
- package/dist/esm2022/map/map-plate/layers/cluster-layer/cluster-layer.settings.mjs +144 -144
- package/dist/esm2022/map/map-plate/layers/feature-layer/feature-layer.component.mjs +52 -52
- package/dist/esm2022/map/map-plate/layers/feature-layer/feature-layer.factory.mjs +28 -28
- package/dist/esm2022/map/map-plate/layers/feature-layer/feature-layer.settings.mjs +111 -111
- package/dist/esm2022/map/map-plate/layers/index.mjs +7 -7
- package/dist/esm2022/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.mjs +57 -57
- package/dist/esm2022/map/map-plate/layers/tile-layer/tile-layer.component.mjs +52 -52
- package/dist/esm2022/map/map-plate/layers/tile-layer/tile-layer.factory.mjs +50 -50
- package/dist/esm2022/map/map-plate/layers/tile-layer/tile-layer.settings.mjs +119 -119
- package/dist/esm2022/map/map-plate/map-plate.component.mjs +102 -102
- package/dist/esm2022/map/map-plate/map-plate.factory.service.mjs +27 -27
- package/dist/esm2022/map/map-plate/tooltips/index.mjs +2 -2
- package/dist/esm2022/map/map-plate/tooltips/tooltip/tooltip.component.mjs +81 -81
- package/dist/esm2022/map/map-plate/tooltips/tooltip/tooltip.settings.mjs +30 -30
- package/dist/esm2022/map/map.module.mjs +63 -63
- package/dist/esm2022/map/messages/commands/add-control.command.mjs +12 -12
- package/dist/esm2022/map/messages/commands/add-layer.command.mjs +12 -12
- package/dist/esm2022/map/messages/commands/add-tile.command.mjs +12 -12
- package/dist/esm2022/map/messages/commands/cancel-drawing.command.mjs +7 -7
- package/dist/esm2022/map/messages/commands/cancel-feature-modification.command.mjs +7 -7
- package/dist/esm2022/map/messages/commands/close-tooltip.command.mjs +12 -12
- package/dist/esm2022/map/messages/commands/draw-selection-area.command.mjs +16 -16
- package/dist/esm2022/map/messages/commands/fit-to-features.command.mjs +14 -14
- package/dist/esm2022/map/messages/commands/fit-to-polygons.command.mjs +14 -14
- package/dist/esm2022/map/messages/commands/modify-feature.command.mjs +17 -17
- package/dist/esm2022/map/messages/commands/place-layer-features.command.mjs +14 -14
- package/dist/esm2022/map/messages/commands/remove-control.command.mjs +12 -12
- package/dist/esm2022/map/messages/commands/remove-layer.command.mjs +12 -12
- package/dist/esm2022/map/messages/commands/remove-tile.command.mjs +12 -12
- package/dist/esm2022/map/messages/commands/set-map-center.command.mjs +25 -25
- package/dist/esm2022/map/messages/commands/start-drawing.command.mjs +17 -17
- package/dist/esm2022/map/messages/events/drawing-finished.event.mjs +10 -10
- package/dist/esm2022/map/messages/events/map-click.event.mjs +16 -16
- package/dist/esm2022/map/messages/events/map-move-end.event.mjs +14 -14
- package/dist/esm2022/map/messages/events/map-rendered.event.mjs +12 -12
- package/dist/esm2022/map/messages/executors/calculate-area.executor.mjs +12 -12
- package/dist/esm2022/map/messages/executors/filter-features-in-area.executor.mjs +14 -14
- package/dist/esm2022/map/messages/executors/generate-draw.executor.mjs +16 -16
- package/dist/esm2022/map/messages/executors/generate-zoom-control.executor.mjs +12 -12
- package/dist/esm2022/map/messages/index.mjs +14 -14
- package/dist/esm2022/map/messages/queries/get-features-in-area.query.mjs +14 -14
- package/dist/esm2022/map/messages/queries/get-layer.query.mjs +12 -12
- package/dist/esm2022/map/models/drawing-type.enum.mjs +7 -7
- package/dist/esm2022/map/models/feature-format.enum.mjs +5 -5
- package/dist/esm2022/map/models/i-identified.mjs +1 -1
- package/dist/esm2022/map/models/index.mjs +7 -7
- package/dist/esm2022/map/models/map-control.mjs +14 -14
- package/dist/esm2022/map/models/map-lyrs.enum.mjs +18 -18
- package/dist/esm2022/map/models/map-settings.mjs +50 -50
- package/dist/esm2022/map/models/map.constants.mjs +4 -4
- package/dist/esm2022/map/models/marker-model.mjs +28 -28
- package/dist/esm2022/map/models/polygon.model.mjs +32 -32
- package/dist/esm2022/map/public-api.mjs +15 -15
- package/dist/esm2022/map/services/controls/controls.service.mjs +39 -39
- package/dist/esm2022/map/services/drawing/drawing-generation.service.mjs +25 -25
- package/dist/esm2022/map/services/drawing/drawing.service.mjs +101 -101
- package/dist/esm2022/map/services/drawing/feature-modification.service.mjs +103 -103
- package/dist/esm2022/map/services/feature.service.mjs +21 -21
- package/dist/esm2022/map/services/map-click.service.mjs +55 -55
- package/dist/esm2022/map/services/map-feature.service.mjs +55 -55
- package/dist/esm2022/map/services/map-management.service.mjs +103 -103
- package/dist/esm2022/map/services/map-postboy.service.mjs +18 -18
- package/dist/esm2022/map/services/map-state.service.mjs +42 -42
- package/dist/esm2022/map/services/message-registrator.service.mjs +82 -82
- package/dist/esm2022/maps-components.mjs +4 -4
- package/dist/esm2022/public-api.mjs +4 -4
- package/dist/esm2022/src/map/common/destructible.component.mjs +18 -18
- package/dist/esm2022/src/map/common/id.generator.mjs +14 -14
- package/dist/esm2022/src/map/helpers/index.mjs +4 -4
- package/dist/esm2022/src/map/helpers/marker-style.helper.mjs +54 -54
- package/dist/esm2022/src/map/helpers/polygon-style.helper.mjs +53 -53
- package/dist/esm2022/src/map/helpers/stringify-feature.helper.mjs +61 -61
- package/dist/esm2022/src/map/helpers/text-style.helper.mjs +24 -24
- package/dist/esm2022/src/map/map-plate/controls/index.mjs +2 -2
- package/dist/esm2022/src/map/map-plate/controls/map-control-zoom/map-control-zoom.component.mjs +69 -69
- package/dist/esm2022/src/map/map-plate/controls/map-control-zoom/zoom-control.factory.mjs +12 -12
- package/dist/esm2022/src/map/map-plate/controls/map-control-zoom/zoom-control.settings.mjs +115 -115
- package/dist/esm2022/src/map/map-plate/features/index.mjs +2 -2
- package/dist/esm2022/src/map/map-plate/features/markers/markers.component.mjs +52 -52
- package/dist/esm2022/src/map/map-plate/features/polygons/polygons.component.mjs +52 -52
- package/dist/esm2022/src/map/map-plate/layers/cluster-layer/cluster-layer-factory.service.mjs +59 -59
- package/dist/esm2022/src/map/map-plate/layers/cluster-layer/cluster-layer.component.mjs +60 -60
- package/dist/esm2022/src/map/map-plate/layers/cluster-layer/cluster-layer.manager.mjs +38 -38
- package/dist/esm2022/src/map/map-plate/layers/cluster-layer/cluster-layer.settings.mjs +144 -144
- package/dist/esm2022/src/map/map-plate/layers/feature-layer/feature-layer.component.mjs +52 -52
- package/dist/esm2022/src/map/map-plate/layers/feature-layer/feature-layer.factory.mjs +28 -28
- package/dist/esm2022/src/map/map-plate/layers/feature-layer/feature-layer.settings.mjs +111 -111
- package/dist/esm2022/src/map/map-plate/layers/index.mjs +7 -7
- package/dist/esm2022/src/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.mjs +57 -57
- package/dist/esm2022/src/map/map-plate/layers/tile-layer/tile-layer.component.mjs +52 -52
- package/dist/esm2022/src/map/map-plate/layers/tile-layer/tile-layer.factory.mjs +50 -50
- package/dist/esm2022/src/map/map-plate/layers/tile-layer/tile-layer.settings.mjs +119 -119
- package/dist/esm2022/src/map/map-plate/map-plate.component.mjs +102 -102
- package/dist/esm2022/src/map/map-plate/map-plate.factory.service.mjs +27 -27
- package/dist/esm2022/src/map/map-plate/tooltips/index.mjs +2 -2
- package/dist/esm2022/src/map/map-plate/tooltips/tooltip/tooltip.component.mjs +81 -81
- package/dist/esm2022/src/map/map-plate/tooltips/tooltip/tooltip.settings.mjs +30 -30
- package/dist/esm2022/src/map/map.module.mjs +63 -63
- package/dist/esm2022/src/map/maps-components-src-map.mjs +4 -4
- package/dist/esm2022/src/map/messages/commands/add-control.command.mjs +12 -12
- package/dist/esm2022/src/map/messages/commands/add-layer.command.mjs +12 -12
- package/dist/esm2022/src/map/messages/commands/add-tile.command.mjs +12 -12
- package/dist/esm2022/src/map/messages/commands/cancel-drawing.command.mjs +7 -7
- package/dist/esm2022/src/map/messages/commands/cancel-feature-modification.command.mjs +7 -7
- package/dist/esm2022/src/map/messages/commands/close-tooltip.command.mjs +12 -12
- package/dist/esm2022/src/map/messages/commands/draw-selection-area.command.mjs +16 -16
- package/dist/esm2022/src/map/messages/commands/fit-to-features.command.mjs +14 -14
- package/dist/esm2022/src/map/messages/commands/fit-to-polygons.command.mjs +14 -14
- package/dist/esm2022/src/map/messages/commands/modify-feature.command.mjs +17 -17
- package/dist/esm2022/src/map/messages/commands/place-layer-features.command.mjs +14 -14
- package/dist/esm2022/src/map/messages/commands/remove-control.command.mjs +12 -12
- package/dist/esm2022/src/map/messages/commands/remove-layer.command.mjs +12 -12
- package/dist/esm2022/src/map/messages/commands/remove-tile.command.mjs +12 -12
- package/dist/esm2022/src/map/messages/commands/set-map-center.command.mjs +25 -25
- package/dist/esm2022/src/map/messages/commands/start-drawing.command.mjs +17 -17
- package/dist/esm2022/src/map/messages/events/drawing-finished.event.mjs +10 -10
- package/dist/esm2022/src/map/messages/events/map-click.event.mjs +16 -16
- package/dist/esm2022/src/map/messages/events/map-move-end.event.mjs +14 -14
- package/dist/esm2022/src/map/messages/events/map-rendered.event.mjs +12 -12
- package/dist/esm2022/src/map/messages/executors/calculate-area.executor.mjs +12 -12
- package/dist/esm2022/src/map/messages/executors/filter-features-in-area.executor.mjs +14 -14
- package/dist/esm2022/src/map/messages/executors/generate-draw.executor.mjs +16 -16
- package/dist/esm2022/src/map/messages/executors/generate-zoom-control.executor.mjs +12 -12
- package/dist/esm2022/src/map/messages/index.mjs +14 -14
- package/dist/esm2022/src/map/messages/queries/get-features-in-area.query.mjs +14 -14
- package/dist/esm2022/src/map/messages/queries/get-layer.query.mjs +12 -12
- package/dist/esm2022/src/map/models/drawing-type.enum.mjs +7 -7
- package/dist/esm2022/src/map/models/feature-format.enum.mjs +5 -5
- package/dist/esm2022/src/map/models/i-identified.mjs +1 -1
- package/dist/esm2022/src/map/models/index.mjs +7 -7
- package/dist/esm2022/src/map/models/map-control.mjs +14 -14
- package/dist/esm2022/src/map/models/map-lyrs.enum.mjs +18 -18
- package/dist/esm2022/src/map/models/map-settings.mjs +50 -50
- package/dist/esm2022/src/map/models/map.constants.mjs +4 -4
- package/dist/esm2022/src/map/models/marker-model.mjs +28 -28
- package/dist/esm2022/src/map/models/polygon.model.mjs +32 -32
- package/dist/esm2022/src/map/public-api.mjs +15 -15
- package/dist/esm2022/src/map/services/controls/controls.service.mjs +39 -39
- package/dist/esm2022/src/map/services/drawing/drawing-generation.service.mjs +25 -25
- package/dist/esm2022/src/map/services/drawing/drawing.service.mjs +101 -101
- package/dist/esm2022/src/map/services/drawing/feature-modification.service.mjs +103 -103
- package/dist/esm2022/src/map/services/feature.service.mjs +21 -21
- package/dist/esm2022/src/map/services/map-click.service.mjs +55 -55
- package/dist/esm2022/src/map/services/map-feature.service.mjs +55 -55
- package/dist/esm2022/src/map/services/map-management.service.mjs +103 -103
- package/dist/esm2022/src/map/services/map-postboy.service.mjs +18 -18
- package/dist/esm2022/src/map/services/map-state.service.mjs +42 -42
- package/dist/esm2022/src/map/services/message-registrator.service.mjs +82 -82
- package/dist/fesm2022/maps-components-src-map.mjs +2460 -2460
- package/dist/fesm2022/maps-components-src-map.mjs.map +1 -1
- package/dist/fesm2022/maps-components.mjs +2462 -2462
- package/dist/fesm2022/maps-components.mjs.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/map/common/destructible.component.d.ts +10 -10
- package/dist/map/common/id.generator.d.ts +4 -4
- package/dist/map/helpers/index.d.ts +4 -4
- package/dist/map/helpers/marker-style.helper.d.ts +33 -33
- package/dist/map/helpers/polygon-style.helper.d.ts +26 -26
- package/dist/map/helpers/stringify-feature.helper.d.ts +26 -26
- package/dist/map/helpers/text-style.helper.d.ts +15 -15
- package/dist/map/map-plate/controls/index.d.ts +2 -2
- package/dist/map/map-plate/controls/map-control-zoom/map-control-zoom.component.d.ts +36 -36
- package/dist/map/map-plate/controls/map-control-zoom/zoom-control.factory.d.ts +5 -5
- package/dist/map/map-plate/controls/map-control-zoom/zoom-control.settings.d.ts +85 -85
- package/dist/map/map-plate/features/index.d.ts +2 -2
- package/dist/map/map-plate/features/markers/markers.component.d.ts +26 -26
- package/dist/map/map-plate/features/polygons/polygons.component.d.ts +26 -26
- package/dist/map/map-plate/layers/cluster-layer/cluster-layer-factory.service.d.ts +11 -11
- package/dist/map/map-plate/layers/cluster-layer/cluster-layer.component.d.ts +29 -29
- package/dist/map/map-plate/layers/cluster-layer/cluster-layer.manager.d.ts +13 -13
- package/dist/map/map-plate/layers/cluster-layer/cluster-layer.settings.d.ts +100 -100
- package/dist/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +22 -22
- package/dist/map/map-plate/layers/feature-layer/feature-layer.factory.d.ts +9 -9
- package/dist/map/map-plate/layers/feature-layer/feature-layer.settings.d.ts +81 -81
- package/dist/map/map-plate/layers/index.d.ts +7 -7
- package/dist/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.d.ts +19 -19
- package/dist/map/map-plate/layers/tile-layer/tile-layer.component.d.ts +21 -21
- package/dist/map/map-plate/layers/tile-layer/tile-layer.factory.d.ts +11 -11
- package/dist/map/map-plate/layers/tile-layer/tile-layer.settings.d.ts +89 -89
- package/dist/map/map-plate/map-plate.component.d.ts +27 -27
- package/dist/map/map-plate/map-plate.factory.service.d.ts +8 -8
- package/dist/map/map-plate/tooltips/index.d.ts +2 -2
- package/dist/map/map-plate/tooltips/tooltip/tooltip.component.d.ts +26 -26
- package/dist/map/map-plate/tooltips/tooltip/tooltip.settings.d.ts +11 -11
- package/dist/map/map.module.d.ts +17 -17
- package/dist/map/messages/commands/add-control.command.d.ts +8 -8
- package/dist/map/messages/commands/add-layer.command.d.ts +10 -10
- package/dist/map/messages/commands/add-tile.command.d.ts +9 -9
- package/dist/map/messages/commands/cancel-drawing.command.d.ts +5 -5
- package/dist/map/messages/commands/cancel-feature-modification.command.d.ts +5 -5
- package/dist/map/messages/commands/close-tooltip.command.d.ts +7 -7
- package/dist/map/messages/commands/draw-selection-area.command.d.ts +13 -13
- package/dist/map/messages/commands/fit-to-features.command.d.ts +10 -10
- package/dist/map/messages/commands/fit-to-polygons.command.d.ts +9 -9
- package/dist/map/messages/commands/modify-feature.command.d.ts +11 -11
- package/dist/map/messages/commands/place-layer-features.command.d.ts +10 -10
- package/dist/map/messages/commands/remove-control.command.d.ts +8 -8
- package/dist/map/messages/commands/remove-layer.command.d.ts +8 -8
- package/dist/map/messages/commands/remove-tile.command.d.ts +9 -9
- package/dist/map/messages/commands/set-map-center.command.d.ts +18 -18
- package/dist/map/messages/commands/start-drawing.command.d.ts +11 -11
- package/dist/map/messages/events/drawing-finished.event.d.ts +6 -6
- package/dist/map/messages/events/map-click.event.d.ts +20 -20
- package/dist/map/messages/events/map-move-end.event.d.ts +8 -8
- package/dist/map/messages/events/map-rendered.event.d.ts +8 -8
- package/dist/map/messages/executors/calculate-area.executor.d.ts +10 -10
- package/dist/map/messages/executors/filter-features-in-area.executor.d.ts +10 -10
- package/dist/map/messages/executors/generate-draw.executor.d.ts +14 -14
- package/dist/map/messages/executors/generate-zoom-control.executor.d.ts +9 -9
- package/dist/map/messages/index.d.ts +14 -14
- package/dist/map/messages/queries/get-features-in-area.query.d.ts +11 -11
- package/dist/map/messages/queries/get-layer.query.d.ts +10 -10
- package/dist/map/models/drawing-type.enum.d.ts +6 -6
- package/dist/map/models/feature-format.enum.d.ts +4 -4
- package/dist/map/models/i-identified.d.ts +3 -3
- package/dist/map/models/index.d.ts +7 -7
- package/dist/map/models/map-control.d.ts +13 -13
- package/dist/map/models/map-lyrs.enum.d.ts +10 -10
- package/dist/map/models/map-settings.d.ts +17 -17
- package/dist/map/models/map.constants.d.ts +4 -4
- package/dist/map/models/marker-model.d.ts +16 -16
- package/dist/map/models/polygon.model.d.ts +19 -19
- package/dist/map/public-api.d.ts +12 -12
- package/dist/map/services/controls/controls.service.d.ts +14 -14
- package/dist/map/services/drawing/drawing-generation.service.d.ts +6 -6
- package/dist/map/services/drawing/drawing.service.d.ts +19 -19
- package/dist/map/services/drawing/feature-modification.service.d.ts +22 -22
- package/dist/map/services/feature.service.d.ts +9 -9
- package/dist/map/services/map-click.service.d.ts +16 -16
- package/dist/map/services/map-feature.service.d.ts +16 -16
- package/dist/map/services/map-management.service.d.ts +20 -20
- package/dist/map/services/map-postboy.service.d.ts +7 -7
- package/dist/map/services/map-state.service.d.ts +13 -13
- package/dist/map/services/message-registrator.service.d.ts +17 -17
- package/dist/public-api.d.ts +1 -1
- package/dist/src/map/common/destructible.component.d.ts +10 -10
- package/dist/src/map/common/id.generator.d.ts +4 -4
- package/dist/src/map/helpers/index.d.ts +4 -4
- package/dist/src/map/helpers/marker-style.helper.d.ts +33 -33
- package/dist/src/map/helpers/polygon-style.helper.d.ts +26 -26
- package/dist/src/map/helpers/stringify-feature.helper.d.ts +26 -26
- package/dist/src/map/helpers/text-style.helper.d.ts +15 -15
- package/dist/src/map/index.d.ts +5 -5
- package/dist/src/map/map-plate/controls/index.d.ts +2 -2
- package/dist/src/map/map-plate/controls/map-control-zoom/map-control-zoom.component.d.ts +36 -36
- package/dist/src/map/map-plate/controls/map-control-zoom/zoom-control.factory.d.ts +5 -5
- package/dist/src/map/map-plate/controls/map-control-zoom/zoom-control.settings.d.ts +85 -85
- package/dist/src/map/map-plate/features/index.d.ts +2 -2
- package/dist/src/map/map-plate/features/markers/markers.component.d.ts +26 -26
- package/dist/src/map/map-plate/features/polygons/polygons.component.d.ts +26 -26
- package/dist/src/map/map-plate/layers/cluster-layer/cluster-layer-factory.service.d.ts +11 -11
- package/dist/src/map/map-plate/layers/cluster-layer/cluster-layer.component.d.ts +29 -29
- package/dist/src/map/map-plate/layers/cluster-layer/cluster-layer.manager.d.ts +13 -13
- package/dist/src/map/map-plate/layers/cluster-layer/cluster-layer.settings.d.ts +100 -100
- package/dist/src/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +22 -22
- package/dist/src/map/map-plate/layers/feature-layer/feature-layer.factory.d.ts +9 -9
- package/dist/src/map/map-plate/layers/feature-layer/feature-layer.settings.d.ts +81 -81
- package/dist/src/map/map-plate/layers/index.d.ts +7 -7
- package/dist/src/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.d.ts +19 -19
- package/dist/src/map/map-plate/layers/tile-layer/tile-layer.component.d.ts +21 -21
- package/dist/src/map/map-plate/layers/tile-layer/tile-layer.factory.d.ts +11 -11
- package/dist/src/map/map-plate/layers/tile-layer/tile-layer.settings.d.ts +89 -89
- package/dist/src/map/map-plate/map-plate.component.d.ts +27 -27
- package/dist/src/map/map-plate/map-plate.factory.service.d.ts +8 -8
- package/dist/src/map/map-plate/tooltips/index.d.ts +2 -2
- package/dist/src/map/map-plate/tooltips/tooltip/tooltip.component.d.ts +26 -26
- package/dist/src/map/map-plate/tooltips/tooltip/tooltip.settings.d.ts +11 -11
- package/dist/src/map/map.module.d.ts +17 -17
- package/dist/src/map/messages/commands/add-control.command.d.ts +8 -8
- package/dist/src/map/messages/commands/add-layer.command.d.ts +10 -10
- package/dist/src/map/messages/commands/add-tile.command.d.ts +9 -9
- package/dist/src/map/messages/commands/cancel-drawing.command.d.ts +5 -5
- package/dist/src/map/messages/commands/cancel-feature-modification.command.d.ts +5 -5
- package/dist/src/map/messages/commands/close-tooltip.command.d.ts +7 -7
- package/dist/src/map/messages/commands/draw-selection-area.command.d.ts +13 -13
- package/dist/src/map/messages/commands/fit-to-features.command.d.ts +10 -10
- package/dist/src/map/messages/commands/fit-to-polygons.command.d.ts +9 -9
- package/dist/src/map/messages/commands/modify-feature.command.d.ts +11 -11
- package/dist/src/map/messages/commands/place-layer-features.command.d.ts +10 -10
- package/dist/src/map/messages/commands/remove-control.command.d.ts +8 -8
- package/dist/src/map/messages/commands/remove-layer.command.d.ts +8 -8
- package/dist/src/map/messages/commands/remove-tile.command.d.ts +9 -9
- package/dist/src/map/messages/commands/set-map-center.command.d.ts +18 -18
- package/dist/src/map/messages/commands/start-drawing.command.d.ts +11 -11
- package/dist/src/map/messages/events/drawing-finished.event.d.ts +6 -6
- package/dist/src/map/messages/events/map-click.event.d.ts +20 -20
- package/dist/src/map/messages/events/map-move-end.event.d.ts +8 -8
- package/dist/src/map/messages/events/map-rendered.event.d.ts +8 -8
- package/dist/src/map/messages/executors/calculate-area.executor.d.ts +10 -10
- package/dist/src/map/messages/executors/filter-features-in-area.executor.d.ts +10 -10
- package/dist/src/map/messages/executors/generate-draw.executor.d.ts +14 -14
- package/dist/src/map/messages/executors/generate-zoom-control.executor.d.ts +9 -9
- package/dist/src/map/messages/index.d.ts +14 -14
- package/dist/src/map/messages/queries/get-features-in-area.query.d.ts +11 -11
- package/dist/src/map/messages/queries/get-layer.query.d.ts +10 -10
- package/dist/src/map/models/drawing-type.enum.d.ts +6 -6
- package/dist/src/map/models/feature-format.enum.d.ts +4 -4
- package/dist/src/map/models/i-identified.d.ts +3 -3
- package/dist/src/map/models/index.d.ts +7 -7
- package/dist/src/map/models/map-control.d.ts +13 -13
- package/dist/src/map/models/map-lyrs.enum.d.ts +10 -10
- package/dist/src/map/models/map-settings.d.ts +17 -17
- package/dist/src/map/models/map.constants.d.ts +4 -4
- package/dist/src/map/models/marker-model.d.ts +16 -16
- package/dist/src/map/models/polygon.model.d.ts +19 -19
- package/dist/src/map/public-api.d.ts +12 -12
- package/dist/src/map/services/controls/controls.service.d.ts +14 -14
- package/dist/src/map/services/drawing/drawing-generation.service.d.ts +6 -6
- package/dist/src/map/services/drawing/drawing.service.d.ts +19 -19
- package/dist/src/map/services/drawing/feature-modification.service.d.ts +22 -22
- package/dist/src/map/services/feature.service.d.ts +9 -9
- package/dist/src/map/services/map-click.service.d.ts +16 -16
- package/dist/src/map/services/map-feature.service.d.ts +16 -16
- package/dist/src/map/services/map-management.service.d.ts +20 -20
- package/dist/src/map/services/map-postboy.service.d.ts +7 -7
- package/dist/src/map/services/map-state.service.d.ts +13 -13
- package/dist/src/map/services/message-registrator.service.d.ts +17 -17
- package/package.json +23 -24
- package/dist/package.json +0 -35
|
@@ -1,112 +1,112 @@
|
|
|
1
|
-
import { IdGenerator } from '../../../common/id.generator';
|
|
2
|
-
/**
|
|
3
|
-
* A layer that is responsible for showing and styling main features on the map, such as markers and polygons
|
|
4
|
-
*/
|
|
5
|
-
export class FeatureLayerSettings {
|
|
6
|
-
/**
|
|
7
|
-
* The identifier of the field, it is autogenerated by default, but can be set manually
|
|
8
|
-
*/
|
|
9
|
-
name = IdGenerator.get();
|
|
10
|
-
/**
|
|
11
|
-
* The priority of showing - layers with higher zIndex cover others in case of collisions
|
|
12
|
-
*/
|
|
13
|
-
zIndex = 1;
|
|
14
|
-
/**
|
|
15
|
-
The maximum view zoom level (inclusive) at which this layer will be visible.
|
|
16
|
-
|
|
17
|
-
@type {number}
|
|
18
|
-
@default 19
|
|
19
|
-
*/
|
|
20
|
-
maxZoom = 19;
|
|
21
|
-
/**
|
|
22
|
-
The minimum view zoom level (exclusive) at which this layer will be visible.
|
|
23
|
-
|
|
24
|
-
@type {number}
|
|
25
|
-
*/
|
|
26
|
-
minZoom = 0;
|
|
27
|
-
/**
|
|
28
|
-
* The styling definition of layer's features. The easiest way is to use {@link PolygonStyleHelper},{@link MarkerStyleHelper}
|
|
29
|
-
*/
|
|
30
|
-
style;
|
|
31
|
-
/**
|
|
32
|
-
* Copies the given FeatureLayerSettings object
|
|
33
|
-
*
|
|
34
|
-
* @param {FeatureLayerSettings} model - The FeatureLayerSettings object to be copied
|
|
35
|
-
* @returns {FeatureLayerSettings} - A copy of the FeatureLayerSettings object
|
|
36
|
-
*/
|
|
37
|
-
static copy(model) {
|
|
38
|
-
const result = new FeatureLayerSettings();
|
|
39
|
-
result.name = model.name;
|
|
40
|
-
result.maxZoom = model.maxZoom;
|
|
41
|
-
result.minZoom = model.minZoom;
|
|
42
|
-
result.zIndex = model.zIndex;
|
|
43
|
-
result.style = model.style;
|
|
44
|
-
return result;
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Sets the z-index value for the FeatureLayerSettings object.
|
|
48
|
-
*
|
|
49
|
-
* @param {number} zIndex - The new z-index value.
|
|
50
|
-
* @return {FeatureLayerSettings} - The updated FeatureLayerSettings object.
|
|
51
|
-
*/
|
|
52
|
-
setZIndex(zIndex) {
|
|
53
|
-
return FeatureLayerSettings.copy({ ...this, zIndex });
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Sets the name of the FeatureLayerSettings.
|
|
57
|
-
*
|
|
58
|
-
* @param {string} name - The name to set for the FeatureLayerSettings.
|
|
59
|
-
*
|
|
60
|
-
* @return {FeatureLayerSettings} - The updated FeatureLayerSettings object with the new name.
|
|
61
|
-
*/
|
|
62
|
-
setName(name) {
|
|
63
|
-
return FeatureLayerSettings.copy({ ...this, name });
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* Sets the maximum zoom level for the FeatureLayerSettings.
|
|
67
|
-
*
|
|
68
|
-
* @param {number} maxZoom - The maximum zoom level.
|
|
69
|
-
* @return {FeatureLayerSettings} - The updated FeatureLayerSettings object.
|
|
70
|
-
*/
|
|
71
|
-
setMaxZoom(maxZoom) {
|
|
72
|
-
return FeatureLayerSettings.copy({ ...this, maxZoom });
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Sets the minimum zoom level for the feature layer.
|
|
76
|
-
*
|
|
77
|
-
* @param {number} minZoom The minimum zoom level to be set.
|
|
78
|
-
* @returns {FeatureLayerSettings} The updated feature layer settings object.
|
|
79
|
-
*/
|
|
80
|
-
setMinZoom(minZoom) {
|
|
81
|
-
return FeatureLayerSettings.copy({ ...this, minZoom });
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Sets the style for the FeatureLayerSettings object.
|
|
85
|
-
*
|
|
86
|
-
* @param {Style | StyleFunction} style - The new style to set. It can be either a Style object or a StyleFunction.
|
|
87
|
-
* @return {FeatureLayerSettings} - The updated FeatureLayerSettings object with the new style.
|
|
88
|
-
*/
|
|
89
|
-
setStyle(style) {
|
|
90
|
-
return FeatureLayerSettings.copy({ ...this, style });
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Checks if the given FeatureLayerSettings object is identical to the current object.
|
|
94
|
-
*
|
|
95
|
-
* @param {FeatureLayerSettings} model - The FeatureLayerSettings object to compare with.
|
|
96
|
-
* @return {boolean} - Returns true if the given object is identical to the current object, otherwise false.
|
|
97
|
-
*/
|
|
98
|
-
isSame(model) {
|
|
99
|
-
if (this.maxZoom !== model.maxZoom)
|
|
100
|
-
return false;
|
|
101
|
-
if (this.minZoom !== model.minZoom)
|
|
102
|
-
return false;
|
|
103
|
-
if (this.zIndex !== model.zIndex)
|
|
104
|
-
return false;
|
|
105
|
-
if (this.name !== model.name)
|
|
106
|
-
return false;
|
|
107
|
-
if (this.style !== model.style)
|
|
108
|
-
return false;
|
|
109
|
-
return true;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
1
|
+
import { IdGenerator } from '../../../common/id.generator';
|
|
2
|
+
/**
|
|
3
|
+
* A layer that is responsible for showing and styling main features on the map, such as markers and polygons
|
|
4
|
+
*/
|
|
5
|
+
export class FeatureLayerSettings {
|
|
6
|
+
/**
|
|
7
|
+
* The identifier of the field, it is autogenerated by default, but can be set manually
|
|
8
|
+
*/
|
|
9
|
+
name = IdGenerator.get();
|
|
10
|
+
/**
|
|
11
|
+
* The priority of showing - layers with higher zIndex cover others in case of collisions
|
|
12
|
+
*/
|
|
13
|
+
zIndex = 1;
|
|
14
|
+
/**
|
|
15
|
+
The maximum view zoom level (inclusive) at which this layer will be visible.
|
|
16
|
+
|
|
17
|
+
@type {number}
|
|
18
|
+
@default 19
|
|
19
|
+
*/
|
|
20
|
+
maxZoom = 19;
|
|
21
|
+
/**
|
|
22
|
+
The minimum view zoom level (exclusive) at which this layer will be visible.
|
|
23
|
+
|
|
24
|
+
@type {number}
|
|
25
|
+
*/
|
|
26
|
+
minZoom = 0;
|
|
27
|
+
/**
|
|
28
|
+
* The styling definition of layer's features. The easiest way is to use {@link PolygonStyleHelper},{@link MarkerStyleHelper}
|
|
29
|
+
*/
|
|
30
|
+
style;
|
|
31
|
+
/**
|
|
32
|
+
* Copies the given FeatureLayerSettings object
|
|
33
|
+
*
|
|
34
|
+
* @param {FeatureLayerSettings} model - The FeatureLayerSettings object to be copied
|
|
35
|
+
* @returns {FeatureLayerSettings} - A copy of the FeatureLayerSettings object
|
|
36
|
+
*/
|
|
37
|
+
static copy(model) {
|
|
38
|
+
const result = new FeatureLayerSettings();
|
|
39
|
+
result.name = model.name;
|
|
40
|
+
result.maxZoom = model.maxZoom;
|
|
41
|
+
result.minZoom = model.minZoom;
|
|
42
|
+
result.zIndex = model.zIndex;
|
|
43
|
+
result.style = model.style;
|
|
44
|
+
return result;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Sets the z-index value for the FeatureLayerSettings object.
|
|
48
|
+
*
|
|
49
|
+
* @param {number} zIndex - The new z-index value.
|
|
50
|
+
* @return {FeatureLayerSettings} - The updated FeatureLayerSettings object.
|
|
51
|
+
*/
|
|
52
|
+
setZIndex(zIndex) {
|
|
53
|
+
return FeatureLayerSettings.copy({ ...this, zIndex });
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Sets the name of the FeatureLayerSettings.
|
|
57
|
+
*
|
|
58
|
+
* @param {string} name - The name to set for the FeatureLayerSettings.
|
|
59
|
+
*
|
|
60
|
+
* @return {FeatureLayerSettings} - The updated FeatureLayerSettings object with the new name.
|
|
61
|
+
*/
|
|
62
|
+
setName(name) {
|
|
63
|
+
return FeatureLayerSettings.copy({ ...this, name });
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Sets the maximum zoom level for the FeatureLayerSettings.
|
|
67
|
+
*
|
|
68
|
+
* @param {number} maxZoom - The maximum zoom level.
|
|
69
|
+
* @return {FeatureLayerSettings} - The updated FeatureLayerSettings object.
|
|
70
|
+
*/
|
|
71
|
+
setMaxZoom(maxZoom) {
|
|
72
|
+
return FeatureLayerSettings.copy({ ...this, maxZoom });
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Sets the minimum zoom level for the feature layer.
|
|
76
|
+
*
|
|
77
|
+
* @param {number} minZoom The minimum zoom level to be set.
|
|
78
|
+
* @returns {FeatureLayerSettings} The updated feature layer settings object.
|
|
79
|
+
*/
|
|
80
|
+
setMinZoom(minZoom) {
|
|
81
|
+
return FeatureLayerSettings.copy({ ...this, minZoom });
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Sets the style for the FeatureLayerSettings object.
|
|
85
|
+
*
|
|
86
|
+
* @param {Style | StyleFunction} style - The new style to set. It can be either a Style object or a StyleFunction.
|
|
87
|
+
* @return {FeatureLayerSettings} - The updated FeatureLayerSettings object with the new style.
|
|
88
|
+
*/
|
|
89
|
+
setStyle(style) {
|
|
90
|
+
return FeatureLayerSettings.copy({ ...this, style });
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Checks if the given FeatureLayerSettings object is identical to the current object.
|
|
94
|
+
*
|
|
95
|
+
* @param {FeatureLayerSettings} model - The FeatureLayerSettings object to compare with.
|
|
96
|
+
* @return {boolean} - Returns true if the given object is identical to the current object, otherwise false.
|
|
97
|
+
*/
|
|
98
|
+
isSame(model) {
|
|
99
|
+
if (this.maxZoom !== model.maxZoom)
|
|
100
|
+
return false;
|
|
101
|
+
if (this.minZoom !== model.minZoom)
|
|
102
|
+
return false;
|
|
103
|
+
if (this.zIndex !== model.zIndex)
|
|
104
|
+
return false;
|
|
105
|
+
if (this.name !== model.name)
|
|
106
|
+
return false;
|
|
107
|
+
if (this.style !== model.style)
|
|
108
|
+
return false;
|
|
109
|
+
return true;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
112
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1sYXllci5zZXR0aW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9sYXllcnMvZmVhdHVyZS1sYXllci9mZWF0dXJlLWxheWVyLnNldHRpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUUzRDs7R0FFRztBQUNILE1BQU0sT0FBTyxvQkFBb0I7SUFDL0I7O09BRUc7SUFDSCxJQUFJLEdBQVcsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ2pDOztPQUVHO0lBQ0gsTUFBTSxHQUFXLENBQUMsQ0FBQztJQUNuQjs7Ozs7T0FLRztJQUNILE9BQU8sR0FBVyxFQUFFLENBQUM7SUFDckI7Ozs7T0FJRztJQUNILE9BQU8sR0FBVyxDQUFDLENBQUM7SUFDcEI7O09BRUc7SUFDSCxLQUFLLENBQXlCO0lBRTlCOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBQyxLQUEyQjtRQUM1QyxNQUFNLE1BQU0sR0FBRyxJQUFJLG9CQUFvQixFQUFFLENBQUM7UUFDMUMsTUFBTSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDL0IsTUFBTSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUMzQixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxTQUFTLENBQUMsTUFBYztRQUN0QixPQUFPLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILE9BQU8sQ0FBQyxJQUFZO1FBQ2xCLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxVQUFVLENBQUMsT0FBZTtRQUN4QixPQUFPLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsVUFBVSxDQUFDLE9BQWU7UUFDeEIsT0FBTyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFFBQVEsQ0FBQyxLQUE0QjtRQUNuQyxPQUFPLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLEtBQTJCO1FBQ3ZDLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsTUFBTTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQy9DLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzNDLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxLQUFLLENBQUMsS0FBSztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzdDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFN0eWxlLCB7IFN0eWxlRnVuY3Rpb24gfSBmcm9tICdvbC9zdHlsZS9TdHlsZSc7XG5pbXBvcnQgeyBJZEdlbmVyYXRvciB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9pZC5nZW5lcmF0b3InO1xuXG4vKipcbiAqIEEgbGF5ZXIgdGhhdCBpcyByZXNwb25zaWJsZSBmb3Igc2hvd2luZyBhbmQgc3R5bGluZyBtYWluIGZlYXR1cmVzIG9uIHRoZSBtYXAsIHN1Y2ggYXMgbWFya2VycyBhbmQgcG9seWdvbnNcbiAqL1xuZXhwb3J0IGNsYXNzIEZlYXR1cmVMYXllclNldHRpbmdzIHtcbiAgLyoqXG4gICAqIFRoZSBpZGVudGlmaWVyIG9mIHRoZSBmaWVsZCwgaXQgaXMgYXV0b2dlbmVyYXRlZCBieSBkZWZhdWx0LCBidXQgY2FuIGJlIHNldCBtYW51YWxseVxuICAgKi9cbiAgbmFtZTogc3RyaW5nID0gSWRHZW5lcmF0b3IuZ2V0KCk7XG4gIC8qKlxuICAgKiBUaGUgcHJpb3JpdHkgb2Ygc2hvd2luZyAtIGxheWVycyB3aXRoIGhpZ2hlciB6SW5kZXggY292ZXIgb3RoZXJzIGluIGNhc2Ugb2YgY29sbGlzaW9uc1xuICAgKi9cbiAgekluZGV4OiBudW1iZXIgPSAxO1xuICAvKipcbiAgIFRoZSBtYXhpbXVtIHZpZXcgem9vbSBsZXZlbCAoaW5jbHVzaXZlKSBhdCB3aGljaCB0aGlzIGxheWVyIHdpbGwgYmUgdmlzaWJsZS5cblxuICAgQHR5cGUge251bWJlcn1cbiAgIEBkZWZhdWx0IDE5XG4gICAqL1xuICBtYXhab29tOiBudW1iZXIgPSAxOTtcbiAgLyoqXG4gICBUaGUgbWluaW11bSB2aWV3IHpvb20gbGV2ZWwgKGV4Y2x1c2l2ZSkgYXQgd2hpY2ggdGhpcyBsYXllciB3aWxsIGJlIHZpc2libGUuXG5cbiAgIEB0eXBlIHtudW1iZXJ9XG4gICAqL1xuICBtaW5ab29tOiBudW1iZXIgPSAwO1xuICAvKipcbiAgICogVGhlIHN0eWxpbmcgZGVmaW5pdGlvbiBvZiBsYXllcidzIGZlYXR1cmVzLiBUaGUgZWFzaWVzdCB3YXkgaXMgdG8gdXNlIHtAbGluayBQb2x5Z29uU3R5bGVIZWxwZXJ9LHtAbGluayBNYXJrZXJTdHlsZUhlbHBlcn1cbiAgICovXG4gIHN0eWxlPzogU3R5bGUgfCBTdHlsZUZ1bmN0aW9uO1xuXG4gIC8qKlxuICAgKiBDb3BpZXMgdGhlIGdpdmVuIEZlYXR1cmVMYXllclNldHRpbmdzIG9iamVjdFxuICAgKlxuICAgKiBAcGFyYW0ge0ZlYXR1cmVMYXllclNldHRpbmdzfSBtb2RlbCAtIFRoZSBGZWF0dXJlTGF5ZXJTZXR0aW5ncyBvYmplY3QgdG8gYmUgY29waWVkXG4gICAqIEByZXR1cm5zIHtGZWF0dXJlTGF5ZXJTZXR0aW5nc30gLSBBIGNvcHkgb2YgdGhlIEZlYXR1cmVMYXllclNldHRpbmdzIG9iamVjdFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjb3B5KG1vZGVsOiBGZWF0dXJlTGF5ZXJTZXR0aW5ncyk6IEZlYXR1cmVMYXllclNldHRpbmdzIHtcbiAgICBjb25zdCByZXN1bHQgPSBuZXcgRmVhdHVyZUxheWVyU2V0dGluZ3MoKTtcbiAgICByZXN1bHQubmFtZSA9IG1vZGVsLm5hbWU7XG4gICAgcmVzdWx0Lm1heFpvb20gPSBtb2RlbC5tYXhab29tO1xuICAgIHJlc3VsdC5taW5ab29tID0gbW9kZWwubWluWm9vbTtcbiAgICByZXN1bHQuekluZGV4ID0gbW9kZWwuekluZGV4O1xuICAgIHJlc3VsdC5zdHlsZSA9IG1vZGVsLnN0eWxlO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgei1pbmRleCB2YWx1ZSBmb3IgdGhlIEZlYXR1cmVMYXllclNldHRpbmdzIG9iamVjdC5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IHpJbmRleCAtIFRoZSBuZXcgei1pbmRleCB2YWx1ZS5cbiAgICogQHJldHVybiB7RmVhdHVyZUxheWVyU2V0dGluZ3N9IC0gVGhlIHVwZGF0ZWQgRmVhdHVyZUxheWVyU2V0dGluZ3Mgb2JqZWN0LlxuICAgKi9cbiAgc2V0WkluZGV4KHpJbmRleDogbnVtYmVyKTogRmVhdHVyZUxheWVyU2V0dGluZ3Mge1xuICAgIHJldHVybiBGZWF0dXJlTGF5ZXJTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgekluZGV4IH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG5hbWUgb2YgdGhlIEZlYXR1cmVMYXllclNldHRpbmdzLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIFRoZSBuYW1lIHRvIHNldCBmb3IgdGhlIEZlYXR1cmVMYXllclNldHRpbmdzLlxuICAgKlxuICAgKiBAcmV0dXJuIHtGZWF0dXJlTGF5ZXJTZXR0aW5nc30gLSBUaGUgdXBkYXRlZCBGZWF0dXJlTGF5ZXJTZXR0aW5ncyBvYmplY3Qgd2l0aCB0aGUgbmV3IG5hbWUuXG4gICAqL1xuICBzZXROYW1lKG5hbWU6IHN0cmluZyk6IEZlYXR1cmVMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gRmVhdHVyZUxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG5hbWUgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbWF4aW11bSB6b29tIGxldmVsIGZvciB0aGUgRmVhdHVyZUxheWVyU2V0dGluZ3MuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBtYXhab29tIC0gVGhlIG1heGltdW0gem9vbSBsZXZlbC5cbiAgICogQHJldHVybiB7RmVhdHVyZUxheWVyU2V0dGluZ3N9IC0gVGhlIHVwZGF0ZWQgRmVhdHVyZUxheWVyU2V0dGluZ3Mgb2JqZWN0LlxuICAgKi9cbiAgc2V0TWF4Wm9vbShtYXhab29tOiBudW1iZXIpOiBGZWF0dXJlTGF5ZXJTZXR0aW5ncyB7XG4gICAgcmV0dXJuIEZlYXR1cmVMYXllclNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBtYXhab29tIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG1pbmltdW0gem9vbSBsZXZlbCBmb3IgdGhlIGZlYXR1cmUgbGF5ZXIuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBtaW5ab29tIFRoZSBtaW5pbXVtIHpvb20gbGV2ZWwgdG8gYmUgc2V0LlxuICAgKiBAcmV0dXJucyB7RmVhdHVyZUxheWVyU2V0dGluZ3N9IFRoZSB1cGRhdGVkIGZlYXR1cmUgbGF5ZXIgc2V0dGluZ3Mgb2JqZWN0LlxuICAgKi9cbiAgc2V0TWluWm9vbShtaW5ab29tOiBudW1iZXIpOiBGZWF0dXJlTGF5ZXJTZXR0aW5ncyB7XG4gICAgcmV0dXJuIEZlYXR1cmVMYXllclNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBtaW5ab29tIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHN0eWxlIGZvciB0aGUgRmVhdHVyZUxheWVyU2V0dGluZ3Mgb2JqZWN0LlxuICAgKlxuICAgKiBAcGFyYW0ge1N0eWxlIHwgU3R5bGVGdW5jdGlvbn0gc3R5bGUgLSBUaGUgbmV3IHN0eWxlIHRvIHNldC4gSXQgY2FuIGJlIGVpdGhlciBhIFN0eWxlIG9iamVjdCBvciBhIFN0eWxlRnVuY3Rpb24uXG4gICAqIEByZXR1cm4ge0ZlYXR1cmVMYXllclNldHRpbmdzfSAtIFRoZSB1cGRhdGVkIEZlYXR1cmVMYXllclNldHRpbmdzIG9iamVjdCB3aXRoIHRoZSBuZXcgc3R5bGUuXG4gICAqL1xuICBzZXRTdHlsZShzdHlsZTogU3R5bGUgfCBTdHlsZUZ1bmN0aW9uKTogRmVhdHVyZUxheWVyU2V0dGluZ3Mge1xuICAgIHJldHVybiBGZWF0dXJlTGF5ZXJTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgc3R5bGUgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBnaXZlbiBGZWF0dXJlTGF5ZXJTZXR0aW5ncyBvYmplY3QgaXMgaWRlbnRpY2FsIHRvIHRoZSBjdXJyZW50IG9iamVjdC5cbiAgICpcbiAgICogQHBhcmFtIHtGZWF0dXJlTGF5ZXJTZXR0aW5nc30gbW9kZWwgLSBUaGUgRmVhdHVyZUxheWVyU2V0dGluZ3Mgb2JqZWN0IHRvIGNvbXBhcmUgd2l0aC5cbiAgICogQHJldHVybiB7Ym9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIGdpdmVuIG9iamVjdCBpcyBpZGVudGljYWwgdG8gdGhlIGN1cnJlbnQgb2JqZWN0LCBvdGhlcndpc2UgZmFsc2UuXG4gICAqL1xuICBwdWJsaWMgaXNTYW1lKG1vZGVsOiBGZWF0dXJlTGF5ZXJTZXR0aW5ncyk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLm1heFpvb20gIT09IG1vZGVsLm1heFpvb20pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5taW5ab29tICE9PSBtb2RlbC5taW5ab29tKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuekluZGV4ICE9PSBtb2RlbC56SW5kZXgpIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5uYW1lICE9PSBtb2RlbC5uYW1lKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuc3R5bGUgIT09IG1vZGVsLnN0eWxlKSByZXR1cm4gZmFsc2U7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export * from './tile-layer/tile-layer.component';
|
|
2
|
-
export * from './tile-layer/tile-layer.settings';
|
|
3
|
-
export * from './osm-tile-layer/osm-tile-layer.component';
|
|
4
|
-
export * from './feature-layer/feature-layer.settings';
|
|
5
|
-
export * from './feature-layer/feature-layer.component';
|
|
6
|
-
export * from './cluster-layer/cluster-layer.component';
|
|
7
|
-
export * from './cluster-layer/cluster-layer.settings';
|
|
1
|
+
export * from './tile-layer/tile-layer.component';
|
|
2
|
+
export * from './tile-layer/tile-layer.settings';
|
|
3
|
+
export * from './osm-tile-layer/osm-tile-layer.component';
|
|
4
|
+
export * from './feature-layer/feature-layer.settings';
|
|
5
|
+
export * from './feature-layer/feature-layer.component';
|
|
6
|
+
export * from './cluster-layer/cluster-layer.component';
|
|
7
|
+
export * from './cluster-layer/cluster-layer.settings';
|
|
8
8
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tYXAtcGxhdGUvbGF5ZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsd0NBQXdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3RpbGUtbGF5ZXIvdGlsZS1sYXllci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90aWxlLWxheWVyL3RpbGUtbGF5ZXIuc2V0dGluZ3MnO1xuZXhwb3J0ICogZnJvbSAnLi9vc20tdGlsZS1sYXllci9vc20tdGlsZS1sYXllci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9mZWF0dXJlLWxheWVyL2ZlYXR1cmUtbGF5ZXIuc2V0dGluZ3MnO1xuZXhwb3J0ICogZnJvbSAnLi9mZWF0dXJlLWxheWVyL2ZlYXR1cmUtbGF5ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2x1c3Rlci1sYXllci9jbHVzdGVyLWxheWVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2NsdXN0ZXItbGF5ZXIvY2x1c3Rlci1sYXllci5zZXR0aW5ncyc7XG4iXX0=
|
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
-
import { DestructibleComponent } from '../../../common/destructible.component';
|
|
3
|
-
import TileLayer from 'ol/layer/Tile';
|
|
4
|
-
import OSM from 'ol/source/OSM';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class OsmTileLayerComponent extends DestructibleComponent {
|
|
7
|
-
layer;
|
|
8
|
-
constructor() {
|
|
9
|
-
super();
|
|
10
|
-
}
|
|
11
|
-
_url = '';
|
|
12
|
-
set url(value) {
|
|
13
|
-
if (!value || this._url === value)
|
|
14
|
-
return;
|
|
15
|
-
this._url = value;
|
|
16
|
-
this.initLayer();
|
|
17
|
-
}
|
|
18
|
-
_map;
|
|
19
|
-
set map(value) {
|
|
20
|
-
if (!value || this._map === value)
|
|
21
|
-
return;
|
|
22
|
-
this._map = value;
|
|
23
|
-
this.initLayer();
|
|
24
|
-
}
|
|
25
|
-
ngOnInit() { }
|
|
26
|
-
ngOnDestroy() {
|
|
27
|
-
if (this.layer) {
|
|
28
|
-
this._map?.removeLayer(this.layer);
|
|
29
|
-
}
|
|
30
|
-
// @ts-ignore
|
|
31
|
-
this.layer?.setMap(null);
|
|
32
|
-
}
|
|
33
|
-
initLayer() {
|
|
34
|
-
if (!this._url || !this._map)
|
|
35
|
-
return;
|
|
36
|
-
if (this.layer)
|
|
37
|
-
this._map.removeLayer(this.layer);
|
|
38
|
-
this.layer = new TileLayer({
|
|
39
|
-
source: new OSM({
|
|
40
|
-
url: this._url,
|
|
41
|
-
}),
|
|
42
|
-
});
|
|
43
|
-
this.layer.set('name', 'osm-tile-layer');
|
|
44
|
-
this._map.addLayer(this.layer);
|
|
45
|
-
}
|
|
46
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
47
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
48
|
-
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
50
|
-
type: Component,
|
|
51
|
-
args: [{ selector: 'art-osm-tile-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
52
|
-
}], ctorParameters:
|
|
53
|
-
type: Input
|
|
54
|
-
}], map: [{
|
|
55
|
-
type: Input
|
|
56
|
-
}] } });
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
+
import { DestructibleComponent } from '../../../common/destructible.component';
|
|
3
|
+
import TileLayer from 'ol/layer/Tile';
|
|
4
|
+
import OSM from 'ol/source/OSM';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class OsmTileLayerComponent extends DestructibleComponent {
|
|
7
|
+
layer;
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
}
|
|
11
|
+
_url = '';
|
|
12
|
+
set url(value) {
|
|
13
|
+
if (!value || this._url === value)
|
|
14
|
+
return;
|
|
15
|
+
this._url = value;
|
|
16
|
+
this.initLayer();
|
|
17
|
+
}
|
|
18
|
+
_map;
|
|
19
|
+
set map(value) {
|
|
20
|
+
if (!value || this._map === value)
|
|
21
|
+
return;
|
|
22
|
+
this._map = value;
|
|
23
|
+
this.initLayer();
|
|
24
|
+
}
|
|
25
|
+
ngOnInit() { }
|
|
26
|
+
ngOnDestroy() {
|
|
27
|
+
if (this.layer) {
|
|
28
|
+
this._map?.removeLayer(this.layer);
|
|
29
|
+
}
|
|
30
|
+
// @ts-ignore
|
|
31
|
+
this.layer?.setMap(null);
|
|
32
|
+
}
|
|
33
|
+
initLayer() {
|
|
34
|
+
if (!this._url || !this._map)
|
|
35
|
+
return;
|
|
36
|
+
if (this.layer)
|
|
37
|
+
this._map.removeLayer(this.layer);
|
|
38
|
+
this.layer = new TileLayer({
|
|
39
|
+
source: new OSM({
|
|
40
|
+
url: this._url,
|
|
41
|
+
}),
|
|
42
|
+
});
|
|
43
|
+
this.layer.set('name', 'osm-tile-layer');
|
|
44
|
+
this._map.addLayer(this.layer);
|
|
45
|
+
}
|
|
46
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: OsmTileLayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: OsmTileLayerComponent, selector: "art-osm-tile-layer", inputs: { url: "url", map: "map" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
48
|
+
}
|
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: OsmTileLayerComponent, decorators: [{
|
|
50
|
+
type: Component,
|
|
51
|
+
args: [{ selector: 'art-osm-tile-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
52
|
+
}], ctorParameters: () => [], propDecorators: { url: [{
|
|
53
|
+
type: Input
|
|
54
|
+
}], map: [{
|
|
55
|
+
type: Input
|
|
56
|
+
}] } });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3NtLXRpbGUtbGF5ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbWFwLXBsYXRlL2xheWVycy9vc20tdGlsZS1sYXllci9vc20tdGlsZS1sYXllci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxTQUFTLE1BQU0sZUFBZSxDQUFDO0FBRXRDLE9BQU8sR0FBRyxNQUFNLGVBQWUsQ0FBQzs7QUFTaEMsTUFBTSxPQUFPLHFCQUFzQixTQUFRLHFCQUFxQjtJQUN2RCxLQUFLLENBQXlCO0lBRXJDO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRU8sSUFBSSxHQUFXLEVBQUUsQ0FBQztJQUUxQixJQUFhLEdBQUcsQ0FBQyxLQUF5QjtRQUN4QyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSztZQUFFLE9BQU87UUFDMUMsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDbEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFTyxJQUFJLENBQU87SUFFbkIsSUFBYSxHQUFHLENBQUMsS0FBc0I7UUFDckMsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEtBQUs7WUFBRSxPQUFPO1FBQzFDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsUUFBUSxLQUFVLENBQUM7SUFFbkIsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLENBQUM7UUFDRCxhQUFhO1FBQ2IsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTztRQUNyQyxJQUFJLElBQUksQ0FBQyxLQUFLO1lBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxTQUFTLENBQUM7WUFDekIsTUFBTSxFQUFFLElBQUksR0FBRyxDQUFDO2dCQUNkLEdBQUcsRUFBRSxJQUFJLENBQUMsSUFBSTthQUNmLENBQUM7U0FDSCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQzt1R0EzQ1UscUJBQXFCOzJGQUFyQixxQkFBcUIscUhBSnRCLEVBQUU7OzJGQUlELHFCQUFxQjtrQkFOakMsU0FBUzsrQkFDRSxvQkFBb0IsWUFDcEIsRUFBRSxtQkFFSyx1QkFBdUIsQ0FBQyxNQUFNO3dEQVdsQyxHQUFHO3NCQUFmLEtBQUs7Z0JBUU8sR0FBRztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGVzdHJ1Y3RpYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2Rlc3RydWN0aWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IFRpbGVMYXllciBmcm9tICdvbC9sYXllci9UaWxlJztcbmltcG9ydCBUaWxlU291cmNlIGZyb20gJ29sL3NvdXJjZS9UaWxlJztcbmltcG9ydCBPU00gZnJvbSAnb2wvc291cmNlL09TTSc7XG5pbXBvcnQgeyBNYXAgfSBmcm9tICdvbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FydC1vc20tdGlsZS1sYXllcicsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVVcmxzOiBbXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE9zbVRpbGVMYXllckNvbXBvbmVudCBleHRlbmRzIERlc3RydWN0aWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyBsYXllcj86IFRpbGVMYXllcjxUaWxlU291cmNlPjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXJsOiBzdHJpbmcgPSAnJztcblxuICBASW5wdXQoKSBzZXQgdXJsKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAoIXZhbHVlIHx8IHRoaXMuX3VybCA9PT0gdmFsdWUpIHJldHVybjtcbiAgICB0aGlzLl91cmwgPSB2YWx1ZTtcbiAgICB0aGlzLmluaXRMYXllcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBfbWFwPzogTWFwO1xuXG4gIEBJbnB1dCgpIHNldCBtYXAodmFsdWU6IE1hcCB8IHVuZGVmaW5lZCkge1xuICAgIGlmICghdmFsdWUgfHwgdGhpcy5fbWFwID09PSB2YWx1ZSkgcmV0dXJuO1xuICAgIHRoaXMuX21hcCA9IHZhbHVlO1xuICAgIHRoaXMuaW5pdExheWVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubGF5ZXIpIHtcbiAgICAgIHRoaXMuX21hcD8ucmVtb3ZlTGF5ZXIodGhpcy5sYXllcik7XG4gICAgfVxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICB0aGlzLmxheWVyPy5zZXRNYXAobnVsbCk7XG4gIH1cblxuICBwcml2YXRlIGluaXRMYXllcigpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX3VybCB8fCAhdGhpcy5fbWFwKSByZXR1cm47XG4gICAgaWYgKHRoaXMubGF5ZXIpIHRoaXMuX21hcC5yZW1vdmVMYXllcih0aGlzLmxheWVyKTtcbiAgICB0aGlzLmxheWVyID0gbmV3IFRpbGVMYXllcih7XG4gICAgICBzb3VyY2U6IG5ldyBPU00oe1xuICAgICAgICB1cmw6IHRoaXMuX3VybCxcbiAgICAgIH0pLFxuICAgIH0pO1xuICAgIHRoaXMubGF5ZXIuc2V0KCduYW1lJywgJ29zbS10aWxlLWxheWVyJyk7XG4gICAgdGhpcy5fbWFwLmFkZExheWVyKHRoaXMubGF5ZXIpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
-
import { DestructibleComponent } from '../../../common/destructible.component';
|
|
3
|
-
import { MapRenderedEvent } from '../../../messages';
|
|
4
|
-
import { filter, first } from 'rxjs/operators';
|
|
5
|
-
import { TileLayerSettings } from './tile-layer.settings';
|
|
6
|
-
import { AddTileCommand } from '../../../messages/commands/add-tile.command';
|
|
7
|
-
import { RemoveTileCommand } from '../../../messages/commands/remove-tile.command';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "../../../services/map-postboy.service";
|
|
10
|
-
import * as i2 from "./tile-layer.factory";
|
|
11
|
-
export class TileLayerComponent extends DestructibleComponent {
|
|
12
|
-
postboy;
|
|
13
|
-
factory;
|
|
14
|
-
layer;
|
|
15
|
-
constructor(postboy, factory) {
|
|
16
|
-
super();
|
|
17
|
-
this.postboy = postboy;
|
|
18
|
-
this.factory = factory;
|
|
19
|
-
}
|
|
20
|
-
_settings = new TileLayerSettings();
|
|
21
|
-
set settings(value) {
|
|
22
|
-
if (!value || this._settings.isSame(value))
|
|
23
|
-
return;
|
|
24
|
-
this._settings = value;
|
|
25
|
-
this.initLayer();
|
|
26
|
-
}
|
|
27
|
-
ngOnInit() {
|
|
28
|
-
this.postboy
|
|
29
|
-
.subscribe(MapRenderedEvent.ID)
|
|
30
|
-
.pipe(filter((m) => !!m), first())
|
|
31
|
-
.subscribe((m) => this.initLayer());
|
|
32
|
-
}
|
|
33
|
-
onDestroy = () => this.removeLayer();
|
|
34
|
-
initLayer() {
|
|
35
|
-
this.removeLayer();
|
|
36
|
-
this.layer = this.factory.build(this._settings);
|
|
37
|
-
this.postboy.fire(new AddTileCommand(this.layer));
|
|
38
|
-
}
|
|
39
|
-
removeLayer() {
|
|
40
|
-
if (this.layer)
|
|
41
|
-
this.postboy.fire(new RemoveTileCommand(this.layer));
|
|
42
|
-
}
|
|
43
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
44
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
45
|
-
}
|
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
47
|
-
type: Component,
|
|
48
|
-
args: [{ selector: 'art-tile-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
49
|
-
}], ctorParameters:
|
|
50
|
-
type: Input
|
|
51
|
-
}] } });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
+
import { DestructibleComponent } from '../../../common/destructible.component';
|
|
3
|
+
import { MapRenderedEvent } from '../../../messages';
|
|
4
|
+
import { filter, first } from 'rxjs/operators';
|
|
5
|
+
import { TileLayerSettings } from './tile-layer.settings';
|
|
6
|
+
import { AddTileCommand } from '../../../messages/commands/add-tile.command';
|
|
7
|
+
import { RemoveTileCommand } from '../../../messages/commands/remove-tile.command';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "../../../services/map-postboy.service";
|
|
10
|
+
import * as i2 from "./tile-layer.factory";
|
|
11
|
+
export class TileLayerComponent extends DestructibleComponent {
|
|
12
|
+
postboy;
|
|
13
|
+
factory;
|
|
14
|
+
layer;
|
|
15
|
+
constructor(postboy, factory) {
|
|
16
|
+
super();
|
|
17
|
+
this.postboy = postboy;
|
|
18
|
+
this.factory = factory;
|
|
19
|
+
}
|
|
20
|
+
_settings = new TileLayerSettings();
|
|
21
|
+
set settings(value) {
|
|
22
|
+
if (!value || this._settings.isSame(value))
|
|
23
|
+
return;
|
|
24
|
+
this._settings = value;
|
|
25
|
+
this.initLayer();
|
|
26
|
+
}
|
|
27
|
+
ngOnInit() {
|
|
28
|
+
this.postboy
|
|
29
|
+
.subscribe(MapRenderedEvent.ID)
|
|
30
|
+
.pipe(filter((m) => !!m), first())
|
|
31
|
+
.subscribe((m) => this.initLayer());
|
|
32
|
+
}
|
|
33
|
+
onDestroy = () => this.removeLayer();
|
|
34
|
+
initLayer() {
|
|
35
|
+
this.removeLayer();
|
|
36
|
+
this.layer = this.factory.build(this._settings);
|
|
37
|
+
this.postboy.fire(new AddTileCommand(this.layer));
|
|
38
|
+
}
|
|
39
|
+
removeLayer() {
|
|
40
|
+
if (this.layer)
|
|
41
|
+
this.postboy.fire(new RemoveTileCommand(this.layer));
|
|
42
|
+
}
|
|
43
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: TileLayerComponent, deps: [{ token: i1.MapPostboyService }, { token: i2.TileLayerFactory }], target: i0.ɵɵFactoryTarget.Component });
|
|
44
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: TileLayerComponent, selector: "art-tile-layer", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
45
|
+
}
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: TileLayerComponent, decorators: [{
|
|
47
|
+
type: Component,
|
|
48
|
+
args: [{ selector: 'art-tile-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
49
|
+
}], ctorParameters: () => [{ type: i1.MapPostboyService }, { type: i2.TileLayerFactory }], propDecorators: { settings: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}] } });
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS1sYXllci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tYXAtcGxhdGUvbGF5ZXJzL3RpbGUtbGF5ZXIvdGlsZS1sYXllci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFLL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7Ozs7QUFRbkYsTUFBTSxPQUFPLGtCQUFtQixTQUFRLHFCQUFxQjtJQUd2QztJQUFvQztJQUZqRCxLQUFLLENBQWtCO0lBRTlCLFlBQW9CLE9BQTBCLEVBQVUsT0FBeUI7UUFDL0UsS0FBSyxFQUFFLENBQUM7UUFEVSxZQUFPLEdBQVAsT0FBTyxDQUFtQjtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQWtCO0lBRWpGLENBQUM7SUFFRCxTQUFTLEdBQXNCLElBQUksaUJBQWlCLEVBQUUsQ0FBQztJQUV2RCxJQUFhLFFBQVEsQ0FBQyxLQUFvQztRQUN4RCxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztZQUFFLE9BQU87UUFDbkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU87YUFDVCxTQUFTLENBQW1CLGdCQUFnQixDQUFDLEVBQUUsQ0FBQzthQUNoRCxJQUFJLENBQ0gsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ2xCLEtBQUssRUFBRSxDQUNSO2FBQ0EsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsU0FBUyxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUU3QixTQUFTO1FBQ2YsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFTyxXQUFXO1FBQ2pCLElBQUksSUFBSSxDQUFDLEtBQUs7WUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7dUdBbkNVLGtCQUFrQjsyRkFBbEIsa0JBQWtCLCtHQUpuQixFQUFFOzsyRkFJRCxrQkFBa0I7a0JBTjlCLFNBQVM7K0JBQ0UsZ0JBQWdCLFlBQ2hCLEVBQUUsbUJBRUssdUJBQXVCLENBQUMsTUFBTTtxSEFXbEMsUUFBUTtzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZXN0cnVjdGlibGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZGVzdHJ1Y3RpYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBYWVogfSBmcm9tICdvbC9zb3VyY2UnO1xuaW1wb3J0IFRpbGVMYXllciBmcm9tICdvbC9sYXllci9UaWxlJztcbmltcG9ydCB7IE1hcFBvc3Rib3lTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbWFwLXBvc3Rib3kuc2VydmljZSc7XG5pbXBvcnQgeyBUaWxlTGF5ZXJGYWN0b3J5IH0gZnJvbSAnLi90aWxlLWxheWVyLmZhY3RvcnknO1xuaW1wb3J0IHsgTWFwUmVuZGVyZWRFdmVudCB9IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzJztcbmltcG9ydCB7IGZpbHRlciwgZmlyc3QgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBUaWxlTGF5ZXJTZXR0aW5ncyB9IGZyb20gJy4vdGlsZS1sYXllci5zZXR0aW5ncyc7XG5pbXBvcnQgeyBBZGRUaWxlQ29tbWFuZCB9IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC10aWxlLmNvbW1hbmQnO1xuaW1wb3J0IHsgUmVtb3ZlVGlsZUNvbW1hbmQgfSBmcm9tICcuLi8uLi8uLi9tZXNzYWdlcy9jb21tYW5kcy9yZW1vdmUtdGlsZS5jb21tYW5kJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXJ0LXRpbGUtbGF5ZXInLFxuICB0ZW1wbGF0ZTogJycsXG4gIHN0eWxlVXJsczogW10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUaWxlTGF5ZXJDb21wb25lbnQgZXh0ZW5kcyBEZXN0cnVjdGlibGVDb21wb25lbnQge1xuICBwdWJsaWMgbGF5ZXI/OiBUaWxlTGF5ZXI8WFlaPjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBvc3Rib3k6IE1hcFBvc3Rib3lTZXJ2aWNlLCBwcml2YXRlIGZhY3Rvcnk6IFRpbGVMYXllckZhY3RvcnkpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgX3NldHRpbmdzOiBUaWxlTGF5ZXJTZXR0aW5ncyA9IG5ldyBUaWxlTGF5ZXJTZXR0aW5ncygpO1xuXG4gIEBJbnB1dCgpIHNldCBzZXR0aW5ncyh2YWx1ZTogVGlsZUxheWVyU2V0dGluZ3MgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAoIXZhbHVlIHx8IHRoaXMuX3NldHRpbmdzLmlzU2FtZSh2YWx1ZSkpIHJldHVybjtcbiAgICB0aGlzLl9zZXR0aW5ncyA9IHZhbHVlO1xuICAgIHRoaXMuaW5pdExheWVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnBvc3Rib3lcbiAgICAgIC5zdWJzY3JpYmU8TWFwUmVuZGVyZWRFdmVudD4oTWFwUmVuZGVyZWRFdmVudC5JRClcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoKG0pID0+ICEhbSksXG4gICAgICAgIGZpcnN0KCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChtKSA9PiB0aGlzLmluaXRMYXllcigpKTtcbiAgfVxuXG4gIG9uRGVzdHJveSA9ICgpID0+IHRoaXMucmVtb3ZlTGF5ZXIoKTtcblxuICBwcml2YXRlIGluaXRMYXllcigpIHtcbiAgICB0aGlzLnJlbW92ZUxheWVyKCk7XG4gICAgdGhpcy5sYXllciA9IHRoaXMuZmFjdG9yeS5idWlsZCh0aGlzLl9zZXR0aW5ncyk7XG4gICAgdGhpcy5wb3N0Ym95LmZpcmUobmV3IEFkZFRpbGVDb21tYW5kKHRoaXMubGF5ZXIpKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlTGF5ZXIoKSB7XG4gICAgaWYgKHRoaXMubGF5ZXIpIHRoaXMucG9zdGJveS5maXJlKG5ldyBSZW1vdmVUaWxlQ29tbWFuZCh0aGlzLmxheWVyKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,50 +1,50 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { XYZ } from 'ol/source';
|
|
3
|
-
import { get } from 'ol/proj';
|
|
4
|
-
import TileLayer from 'ol/layer/Tile';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class TileLayerFactory {
|
|
7
|
-
build(settings) {
|
|
8
|
-
const source = new XYZ({
|
|
9
|
-
tileSize: 256,
|
|
10
|
-
maxZoom: settings.maxZoom || 14,
|
|
11
|
-
minZoom: settings.minZoom || 1,
|
|
12
|
-
projection: get(settings.projection),
|
|
13
|
-
tileUrlFunction: this.getTileFunc(settings),
|
|
14
|
-
crossOrigin: 'Anonymous',
|
|
15
|
-
});
|
|
16
|
-
return new TileLayer({ source, opacity: settings.opacity });
|
|
17
|
-
}
|
|
18
|
-
getTileFunc(settings) {
|
|
19
|
-
return (tileCoord) => {
|
|
20
|
-
const zoom = tileCoord[0];
|
|
21
|
-
const x = tileCoord[1];
|
|
22
|
-
const y = tileCoord[2];
|
|
23
|
-
const normalizedCoord = this.getNormalizedCoord({ x: x, y: y }, zoom);
|
|
24
|
-
const bound = 1 << zoom;
|
|
25
|
-
return settings.url
|
|
26
|
-
.replace('{x}', String(normalizedCoord?.x || x))
|
|
27
|
-
.replace('{z}', String(zoom))
|
|
28
|
-
.replace('{y}', String(bound - (normalizedCoord?.y || y) - 1));
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
getNormalizedCoord(coord, zoom) {
|
|
32
|
-
const y = coord.y;
|
|
33
|
-
let x = coord.x;
|
|
34
|
-
const tileRange = 1 << zoom;
|
|
35
|
-
if (y < 0 || y >= tileRange)
|
|
36
|
-
return null;
|
|
37
|
-
if (x < 0 || x >= tileRange)
|
|
38
|
-
x = ((x % tileRange) + tileRange) % tileRange;
|
|
39
|
-
return { x: x, y: y };
|
|
40
|
-
}
|
|
41
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
42
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
43
|
-
}
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
45
|
-
type: Injectable,
|
|
46
|
-
args: [{
|
|
47
|
-
providedIn: 'root',
|
|
48
|
-
}]
|
|
49
|
-
}] });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { XYZ } from 'ol/source';
|
|
3
|
+
import { get } from 'ol/proj';
|
|
4
|
+
import TileLayer from 'ol/layer/Tile';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class TileLayerFactory {
|
|
7
|
+
build(settings) {
|
|
8
|
+
const source = new XYZ({
|
|
9
|
+
tileSize: 256,
|
|
10
|
+
maxZoom: settings.maxZoom || 14,
|
|
11
|
+
minZoom: settings.minZoom || 1,
|
|
12
|
+
projection: get(settings.projection),
|
|
13
|
+
tileUrlFunction: this.getTileFunc(settings),
|
|
14
|
+
crossOrigin: 'Anonymous',
|
|
15
|
+
});
|
|
16
|
+
return new TileLayer({ source, opacity: settings.opacity });
|
|
17
|
+
}
|
|
18
|
+
getTileFunc(settings) {
|
|
19
|
+
return (tileCoord) => {
|
|
20
|
+
const zoom = tileCoord[0];
|
|
21
|
+
const x = tileCoord[1];
|
|
22
|
+
const y = tileCoord[2];
|
|
23
|
+
const normalizedCoord = this.getNormalizedCoord({ x: x, y: y }, zoom);
|
|
24
|
+
const bound = 1 << zoom;
|
|
25
|
+
return settings.url
|
|
26
|
+
.replace('{x}', String(normalizedCoord?.x || x))
|
|
27
|
+
.replace('{z}', String(zoom))
|
|
28
|
+
.replace('{y}', String(bound - (normalizedCoord?.y || y) - 1));
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
getNormalizedCoord(coord, zoom) {
|
|
32
|
+
const y = coord.y;
|
|
33
|
+
let x = coord.x;
|
|
34
|
+
const tileRange = 1 << zoom;
|
|
35
|
+
if (y < 0 || y >= tileRange)
|
|
36
|
+
return null;
|
|
37
|
+
if (x < 0 || x >= tileRange)
|
|
38
|
+
x = ((x % tileRange) + tileRange) % tileRange;
|
|
39
|
+
return { x: x, y: y };
|
|
40
|
+
}
|
|
41
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: TileLayerFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
42
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: TileLayerFactory, providedIn: 'root' });
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: TileLayerFactory, decorators: [{
|
|
45
|
+
type: Injectable,
|
|
46
|
+
args: [{
|
|
47
|
+
providedIn: 'root',
|
|
48
|
+
}]
|
|
49
|
+
}] });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS1sYXllci5mYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbWFwLXBsYXRlL2xheWVycy90aWxlLWxheWVyL3RpbGUtbGF5ZXIuZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFHaEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM5QixPQUFPLFNBQVMsTUFBTSxlQUFlLENBQUM7O0FBS3RDLE1BQU0sT0FBTyxnQkFBZ0I7SUFDcEIsS0FBSyxDQUFDLFFBQTJCO1FBQ3RDLE1BQU0sTUFBTSxHQUFHLElBQUksR0FBRyxDQUFDO1lBQ3JCLFFBQVEsRUFBRSxHQUFHO1lBQ2IsT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPLElBQUksRUFBRTtZQUMvQixPQUFPLEVBQUUsUUFBUSxDQUFDLE9BQU8sSUFBSSxDQUFDO1lBQzlCLFVBQVUsRUFBRSxHQUFHLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBRTtZQUNyQyxlQUFlLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUM7WUFDM0MsV0FBVyxFQUFFLFdBQVc7U0FDekIsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLFNBQVMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVPLFdBQVcsQ0FBQyxRQUEyQjtRQUM3QyxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDbkIsTUFBTSxJQUFJLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzFCLE1BQU0sQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2QixNQUFNLENBQUMsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkIsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDdEUsTUFBTSxLQUFLLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQztZQUN4QixPQUFPLFFBQVEsQ0FBQyxHQUFHO2lCQUNoQixPQUFPLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUMvQyxPQUFPLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDNUIsT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSyxHQUFHLENBQUMsZUFBZSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25FLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxLQUErQixFQUFFLElBQVk7UUFDdEUsTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ2hCLE1BQU0sU0FBUyxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUM7UUFDNUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxTQUFTO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDekMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxTQUFTO1lBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQzNFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUN4QixDQUFDO3VHQWxDVSxnQkFBZ0I7MkdBQWhCLGdCQUFnQixjQUZmLE1BQU07OzJGQUVQLGdCQUFnQjtrQkFINUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBYWVogfSBmcm9tICdvbC9zb3VyY2UnO1xuaW1wb3J0IHsgVGlsZUxheWVyU2V0dGluZ3MgfSBmcm9tICcuL3RpbGUtbGF5ZXIuc2V0dGluZ3MnO1xuaW1wb3J0IHsgVGlsZUNvb3JkIH0gZnJvbSAnb2wvdGlsZWNvb3JkJztcbmltcG9ydCB7IGdldCB9IGZyb20gJ29sL3Byb2onO1xuaW1wb3J0IFRpbGVMYXllciBmcm9tICdvbC9sYXllci9UaWxlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFRpbGVMYXllckZhY3Rvcnkge1xuICBwdWJsaWMgYnVpbGQoc2V0dGluZ3M6IFRpbGVMYXllclNldHRpbmdzKTogVGlsZUxheWVyPFhZWj4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IG5ldyBYWVooe1xuICAgICAgdGlsZVNpemU6IDI1NixcbiAgICAgIG1heFpvb206IHNldHRpbmdzLm1heFpvb20gfHwgMTQsXG4gICAgICBtaW5ab29tOiBzZXR0aW5ncy5taW5ab29tIHx8IDEsXG4gICAgICBwcm9qZWN0aW9uOiBnZXQoc2V0dGluZ3MucHJvamVjdGlvbikhLFxuICAgICAgdGlsZVVybEZ1bmN0aW9uOiB0aGlzLmdldFRpbGVGdW5jKHNldHRpbmdzKSxcbiAgICAgIGNyb3NzT3JpZ2luOiAnQW5vbnltb3VzJyxcbiAgICB9KTtcbiAgICByZXR1cm4gbmV3IFRpbGVMYXllcih7IHNvdXJjZSwgb3BhY2l0eTogc2V0dGluZ3Mub3BhY2l0eSB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VGlsZUZ1bmMoc2V0dGluZ3M6IFRpbGVMYXllclNldHRpbmdzKTogKHRpbGVDb29yZDogVGlsZUNvb3JkKSA9PiBzdHJpbmcge1xuICAgIHJldHVybiAodGlsZUNvb3JkKSA9PiB7XG4gICAgICBjb25zdCB6b29tID0gdGlsZUNvb3JkWzBdO1xuICAgICAgY29uc3QgeCA9IHRpbGVDb29yZFsxXTtcbiAgICAgIGNvbnN0IHkgPSB0aWxlQ29vcmRbMl07XG4gICAgICBjb25zdCBub3JtYWxpemVkQ29vcmQgPSB0aGlzLmdldE5vcm1hbGl6ZWRDb29yZCh7IHg6IHgsIHk6IHkgfSwgem9vbSk7XG4gICAgICBjb25zdCBib3VuZCA9IDEgPDwgem9vbTtcbiAgICAgIHJldHVybiBzZXR0aW5ncy51cmxcbiAgICAgICAgLnJlcGxhY2UoJ3t4fScsIFN0cmluZyhub3JtYWxpemVkQ29vcmQ/LnggfHwgeCkpXG4gICAgICAgIC5yZXBsYWNlKCd7en0nLCBTdHJpbmcoem9vbSkpXG4gICAgICAgIC5yZXBsYWNlKCd7eX0nLCBTdHJpbmcoYm91bmQgLSAobm9ybWFsaXplZENvb3JkPy55IHx8IHkpIC0gMSkpO1xuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldE5vcm1hbGl6ZWRDb29yZChjb29yZDogeyB4OiBudW1iZXI7IHk6IG51bWJlciB9LCB6b29tOiBudW1iZXIpIHtcbiAgICBjb25zdCB5ID0gY29vcmQueTtcbiAgICBsZXQgeCA9IGNvb3JkLng7XG4gICAgY29uc3QgdGlsZVJhbmdlID0gMSA8PCB6b29tO1xuICAgIGlmICh5IDwgMCB8fCB5ID49IHRpbGVSYW5nZSkgcmV0dXJuIG51bGw7XG4gICAgaWYgKHggPCAwIHx8IHggPj0gdGlsZVJhbmdlKSB4ID0gKCh4ICUgdGlsZVJhbmdlKSArIHRpbGVSYW5nZSkgJSB0aWxlUmFuZ2U7XG4gICAgcmV0dXJuIHsgeDogeCwgeTogeSB9O1xuICB9XG59XG4iXX0=
|