@artstesh/maps 4.0.11 → 4.1.1

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.
Files changed (81) hide show
  1. package/dist/esm2020/map/map-plate/controls/index.mjs +3 -0
  2. package/dist/esm2020/map/map-plate/controls/map-control-zoom/map-control-zoom.component.mjs +49 -0
  3. package/dist/esm2020/map/map-plate/controls/map-control-zoom/zoom-control.factory.mjs +13 -0
  4. package/dist/esm2020/map/map-plate/controls/map-control-zoom/zoom-control.settings.mjs +47 -0
  5. package/dist/esm2020/map/map-plate/features/markers/markers.component.mjs +3 -3
  6. package/dist/esm2020/map/map-plate/features/polygons/polygons.component.mjs +3 -3
  7. package/dist/esm2020/map/map-plate/layers/cluster-layer/cluster-layer.component.mjs +3 -3
  8. package/dist/esm2020/map/map-plate/layers/feature-layer/feature-layer.component.mjs +3 -3
  9. package/dist/esm2020/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.mjs +3 -3
  10. package/dist/esm2020/map/map-plate/layers/tile-layer/tile-layer.component.mjs +3 -3
  11. package/dist/esm2020/map/map-plate/map-plate.component.mjs +5 -5
  12. package/dist/esm2020/map/map-plate/tooltips/tooltip/tooltip.component.mjs +3 -3
  13. package/dist/esm2020/map/map.module.mjs +8 -3
  14. package/dist/esm2020/map/messages/executors/generate-zoom-control.executor.mjs +12 -0
  15. package/dist/esm2020/map/messages/queries/get-features-in-area.query.mjs +1 -1
  16. package/dist/esm2020/map/models/drawing-type.enum.mjs +2 -1
  17. package/dist/esm2020/map/public-api.mjs +2 -1
  18. package/dist/esm2020/map/services/drawing/drawing-generation.service.mjs +4 -2
  19. package/dist/esm2020/map/services/feature.service.mjs +1 -1
  20. package/dist/esm2020/map/services/message-registrator.service.mjs +4 -1
  21. package/dist/esm2020/src/map/map-plate/controls/index.mjs +3 -0
  22. package/dist/esm2020/src/map/map-plate/controls/map-control-zoom/map-control-zoom.component.mjs +49 -0
  23. package/dist/esm2020/src/map/map-plate/controls/map-control-zoom/zoom-control.factory.mjs +13 -0
  24. package/dist/esm2020/src/map/map-plate/controls/map-control-zoom/zoom-control.settings.mjs +47 -0
  25. package/dist/esm2020/src/map/map-plate/features/markers/markers.component.mjs +3 -3
  26. package/dist/esm2020/src/map/map-plate/features/polygons/polygons.component.mjs +3 -3
  27. package/dist/esm2020/src/map/map-plate/layers/cluster-layer/cluster-layer.component.mjs +3 -3
  28. package/dist/esm2020/src/map/map-plate/layers/feature-layer/feature-layer.component.mjs +3 -3
  29. package/dist/esm2020/src/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.mjs +3 -3
  30. package/dist/esm2020/src/map/map-plate/layers/tile-layer/tile-layer.component.mjs +3 -3
  31. package/dist/esm2020/src/map/map-plate/map-plate.component.mjs +5 -5
  32. package/dist/esm2020/src/map/map-plate/tooltips/tooltip/tooltip.component.mjs +3 -3
  33. package/dist/esm2020/src/map/map.module.mjs +8 -3
  34. package/dist/esm2020/src/map/messages/executors/generate-zoom-control.executor.mjs +12 -0
  35. package/dist/esm2020/src/map/messages/queries/get-features-in-area.query.mjs +1 -1
  36. package/dist/esm2020/src/map/models/drawing-type.enum.mjs +2 -1
  37. package/dist/esm2020/src/map/public-api.mjs +2 -1
  38. package/dist/esm2020/src/map/services/drawing/drawing-generation.service.mjs +4 -2
  39. package/dist/esm2020/src/map/services/feature.service.mjs +1 -1
  40. package/dist/esm2020/src/map/services/message-registrator.service.mjs +4 -1
  41. package/dist/fesm2015/maps-components-src-map.mjs +142 -22
  42. package/dist/fesm2015/maps-components-src-map.mjs.map +1 -1
  43. package/dist/fesm2015/maps-components.mjs +142 -22
  44. package/dist/fesm2015/maps-components.mjs.map +1 -1
  45. package/dist/fesm2020/maps-components-src-map.mjs +142 -22
  46. package/dist/fesm2020/maps-components-src-map.mjs.map +1 -1
  47. package/dist/fesm2020/maps-components.mjs +142 -22
  48. package/dist/fesm2020/maps-components.mjs.map +1 -1
  49. package/dist/map/map-plate/controls/index.d.ts +2 -0
  50. package/dist/map/map-plate/controls/map-control-zoom/map-control-zoom.component.d.ts +19 -0
  51. package/dist/map/map-plate/controls/map-control-zoom/zoom-control.factory.d.ts +5 -0
  52. package/dist/map/map-plate/controls/map-control-zoom/zoom-control.settings.d.ts +14 -0
  53. package/dist/map/map-plate/features/markers/markers.component.d.ts +1 -1
  54. package/dist/map/map-plate/features/polygons/polygons.component.d.ts +1 -1
  55. package/dist/map/map-plate/layers/cluster-layer/cluster-layer.component.d.ts +1 -1
  56. package/dist/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +1 -1
  57. package/dist/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.d.ts +1 -1
  58. package/dist/map/map-plate/layers/tile-layer/tile-layer.component.d.ts +1 -1
  59. package/dist/map/map-plate/map-plate.component.d.ts +1 -1
  60. package/dist/map/map-plate/tooltips/tooltip/tooltip.component.d.ts +1 -1
  61. package/dist/map/map.module.d.ts +3 -2
  62. package/dist/map/messages/executors/generate-zoom-control.executor.d.ts +9 -0
  63. package/dist/map/models/drawing-type.enum.d.ts +2 -1
  64. package/dist/map/public-api.d.ts +1 -0
  65. package/dist/src/map/map-plate/controls/index.d.ts +2 -0
  66. package/dist/src/map/map-plate/controls/map-control-zoom/map-control-zoom.component.d.ts +19 -0
  67. package/dist/src/map/map-plate/controls/map-control-zoom/zoom-control.factory.d.ts +5 -0
  68. package/dist/src/map/map-plate/controls/map-control-zoom/zoom-control.settings.d.ts +14 -0
  69. package/dist/src/map/map-plate/features/markers/markers.component.d.ts +1 -1
  70. package/dist/src/map/map-plate/features/polygons/polygons.component.d.ts +1 -1
  71. package/dist/src/map/map-plate/layers/cluster-layer/cluster-layer.component.d.ts +1 -1
  72. package/dist/src/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +1 -1
  73. package/dist/src/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.d.ts +1 -1
  74. package/dist/src/map/map-plate/layers/tile-layer/tile-layer.component.d.ts +1 -1
  75. package/dist/src/map/map-plate/map-plate.component.d.ts +1 -1
  76. package/dist/src/map/map-plate/tooltips/tooltip/tooltip.component.d.ts +1 -1
  77. package/dist/src/map/map.module.d.ts +3 -2
  78. package/dist/src/map/messages/executors/generate-zoom-control.executor.d.ts +9 -0
  79. package/dist/src/map/models/drawing-type.enum.d.ts +2 -1
  80. package/dist/src/map/public-api.d.ts +1 -0
  81. package/package.json +1 -1
@@ -9,7 +9,8 @@ import { getCenter, createEmpty, extend } from 'ol/extent';
9
9
  import { get, useGeographic, transform } from 'ol/proj';
10
10
  import { PostboyGenericMessage, PostboyCallbackMessage, PostboyExecutor, PostboyService, PostboyAbstractRegistrator } from '@artstesh/postboy';
11
11
  import { Draw, Modify, Translate } from 'ol/interaction';
12
- import { createRegularPolygon } from 'ol/interaction/Draw';
12
+ import { createRegularPolygon, createBox } from 'ol/interaction/Draw';
13
+ import { Zoom } from 'ol/control';
13
14
  import { first, filter, auditTime } from 'rxjs/operators';
14
15
  import { Vector, XYZ } from 'ol/source';
15
16
  import TileLayer from 'ol/layer/Tile';
@@ -181,6 +182,7 @@ var DrawingType;
181
182
  DrawingType[DrawingType["Polygon"] = 1] = "Polygon";
182
183
  DrawingType[DrawingType["Circle"] = 2] = "Circle";
183
184
  DrawingType[DrawingType["Square"] = 3] = "Square";
185
+ DrawingType[DrawingType["Box"] = 4] = "Box";
184
186
  })(DrawingType || (DrawingType = {}));
185
187
 
186
188
  var FeatureOutputFormat;
@@ -447,6 +449,8 @@ class DrawingGenerationService {
447
449
  switch (type) {
448
450
  case DrawingType.Circle:
449
451
  return createRegularPolygon(32);
452
+ case DrawingType.Box:
453
+ return createBox();
450
454
  case DrawingType.Square:
451
455
  return createRegularPolygon(4);
452
456
  }
@@ -507,6 +511,29 @@ class GenerateDrawExecutor extends PostboyExecutor {
507
511
  }
508
512
  GenerateDrawExecutor.ID = 'f01c99ba-0953-4ab5-82f9-04e6fbb678c1';
509
513
 
514
+ class GenerateZoomControlExecutor extends PostboyExecutor {
515
+ constructor(settings) {
516
+ super();
517
+ this.settings = settings;
518
+ }
519
+ get id() {
520
+ return GenerateZoomControlExecutor.ID;
521
+ }
522
+ }
523
+ GenerateZoomControlExecutor.ID = 'ff16a833-c68e-4b1a-bc23-c0d16b002810';
524
+
525
+ class ZoomControlFactory {
526
+ static build(settings) {
527
+ return new Zoom({
528
+ zoomInTipLabel: settings.zoomInLabel,
529
+ zoomOutTipLabel: settings.zoomOutLabel,
530
+ zoomInClassName: settings.zoomInClass,
531
+ zoomOutClassName: settings.zoomOutClass,
532
+ className: settings.controlClass,
533
+ });
534
+ }
535
+ }
536
+
510
537
  class MapPostboyService extends PostboyService {
511
538
  constructor() {
512
539
  super();
@@ -915,6 +942,7 @@ class MessageRegistratorService extends PostboyAbstractRegistrator {
915
942
  setExecutors() {
916
943
  this.registerExecutor(FilterFeaturesInAreaExecutor.ID, (e) => FeatureService.filterFeaturesInArea(e));
917
944
  this.registerExecutor(GenerateDrawExecutor.ID, (e) => DrawingGenerationService.getDraw(e));
945
+ this.registerExecutor(GenerateZoomControlExecutor.ID, (e) => ZoomControlFactory.build(e.settings));
918
946
  }
919
947
  }
920
948
  MessageRegistratorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MessageRegistratorService, deps: [{ token: MapPostboyService }, { token: MapManagementService }, { token: MapStateService }, { token: MapFeatureService }, { token: MapClickService }, { token: DrawingService }, { token: FeatureModificationService }], target: i0.ɵɵFactoryTarget.Injectable });
@@ -1046,10 +1074,10 @@ class TileLayerComponent extends DestructibleComponent {
1046
1074
  }
1047
1075
  }
1048
1076
  TileLayerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TileLayerComponent, deps: [{ token: MapPostboyService }, { token: TileLayerFactory }], target: i0.ɵɵFactoryTarget.Component });
1049
- TileLayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TileLayerComponent, selector: "lib-tile-layer", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1077
+ TileLayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TileLayerComponent, selector: "art-tile-layer", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1050
1078
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TileLayerComponent, decorators: [{
1051
1079
  type: Component,
1052
- args: [{ selector: 'lib-tile-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1080
+ args: [{ selector: 'art-tile-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1053
1081
  }], ctorParameters: function () { return [{ type: MapPostboyService }, { type: TileLayerFactory }]; }, propDecorators: { settings: [{
1054
1082
  type: Input
1055
1083
  }] } });
@@ -1095,10 +1123,10 @@ class OsmTileLayerComponent extends DestructibleComponent {
1095
1123
  }
1096
1124
  }
1097
1125
  OsmTileLayerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OsmTileLayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1098
- OsmTileLayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: OsmTileLayerComponent, selector: "lib-osm-tile-layer", inputs: { url: "url", map: "map" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1126
+ OsmTileLayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: OsmTileLayerComponent, selector: "art-osm-tile-layer", inputs: { url: "url", map: "map" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1099
1127
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OsmTileLayerComponent, decorators: [{
1100
1128
  type: Component,
1101
- args: [{ selector: 'lib-osm-tile-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1129
+ args: [{ selector: 'art-osm-tile-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1102
1130
  }], ctorParameters: function () { return []; }, propDecorators: { url: [{
1103
1131
  type: Input
1104
1132
  }], map: [{
@@ -1207,10 +1235,10 @@ class FeatureLayerComponent extends DestructibleComponent {
1207
1235
  }
1208
1236
  }
1209
1237
  FeatureLayerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FeatureLayerComponent, deps: [{ token: MapPostboyService }, { token: FeatureLayerFactory }], target: i0.ɵɵFactoryTarget.Component });
1210
- FeatureLayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FeatureLayerComponent, selector: "lib-feature-layer", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1238
+ FeatureLayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FeatureLayerComponent, selector: "art-feature-layer", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1211
1239
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FeatureLayerComponent, decorators: [{
1212
1240
  type: Component,
1213
- args: [{ selector: 'lib-feature-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1241
+ args: [{ selector: 'art-feature-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1214
1242
  }], ctorParameters: function () { return [{ type: MapPostboyService }, { type: FeatureLayerFactory }]; }, propDecorators: { settings: [{
1215
1243
  type: Input
1216
1244
  }] } });
@@ -1398,10 +1426,10 @@ class ClusterLayerComponent extends DestructibleComponent {
1398
1426
  }
1399
1427
  }
1400
1428
  ClusterLayerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ClusterLayerComponent, deps: [{ token: MapPostboyService }, { token: ClusterLayerFactory }], target: i0.ɵɵFactoryTarget.Component });
1401
- ClusterLayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ClusterLayerComponent, selector: "lib-cluster-layer", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1429
+ ClusterLayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ClusterLayerComponent, selector: "art-cluster-layer", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1402
1430
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ClusterLayerComponent, decorators: [{
1403
1431
  type: Component,
1404
- args: [{ selector: 'lib-cluster-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1432
+ args: [{ selector: 'art-cluster-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1405
1433
  }], ctorParameters: function () { return [{ type: MapPostboyService }, { type: ClusterLayerFactory }]; }, propDecorators: { settings: [{
1406
1434
  type: Input
1407
1435
  }] } });
@@ -1471,7 +1499,7 @@ class MapPlateComponent extends DestructibleComponent {
1471
1499
  }
1472
1500
  }
1473
1501
  MapPlateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapPlateComponent, deps: [{ token: i0.ElementRef }, { token: MapPostboyService }, { token: MapPlateFactory }, { token: MessageRegistratorService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1474
- MapPlateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MapPlateComponent, selector: "lib-map-plate", inputs: { settings: "settings" }, providers: [
1502
+ MapPlateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MapPlateComponent, selector: "art-map-plate", inputs: { settings: "settings" }, providers: [
1475
1503
  MessageRegistratorService,
1476
1504
  MapStateService,
1477
1505
  MapManagementService,
@@ -1481,10 +1509,10 @@ MapPlateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", vers
1481
1509
  DrawingGenerationService,
1482
1510
  FeatureService,
1483
1511
  FeatureModificationService,
1484
- ], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\r\n<lib-osm-tile-layer *ngIf=\"osmUrl && map\" [map]=\"map\" [url]=\"osmUrl\"></lib-osm-tile-layer>\r\n<lib-feature-layer *ngIf=\"map\" [settings]=\"drawingLayerSettings\"></lib-feature-layer>\r\n", styles: ["lib-map-plate{position:relative;display:flex;flex-direction:column;height:100%}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: OsmTileLayerComponent, selector: "lib-osm-tile-layer", inputs: ["url", "map"] }, { kind: "component", type: FeatureLayerComponent, selector: "lib-feature-layer", inputs: ["settings"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1512
+ ], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\r\n<art-osm-tile-layer *ngIf=\"osmUrl && map\" [map]=\"map\" [url]=\"osmUrl\"></art-osm-tile-layer>\r\n<art-feature-layer *ngIf=\"map\" [settings]=\"drawingLayerSettings\"></art-feature-layer>\r\n", styles: ["art-map-plate{position:relative;display:flex;flex-direction:column;height:100%}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: OsmTileLayerComponent, selector: "art-osm-tile-layer", inputs: ["url", "map"] }, { kind: "component", type: FeatureLayerComponent, selector: "art-feature-layer", inputs: ["settings"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1485
1513
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapPlateComponent, decorators: [{
1486
1514
  type: Component,
1487
- args: [{ selector: 'lib-map-plate', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
1515
+ args: [{ selector: 'art-map-plate', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
1488
1516
  MessageRegistratorService,
1489
1517
  MapStateService,
1490
1518
  MapManagementService,
@@ -1494,7 +1522,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1494
1522
  DrawingGenerationService,
1495
1523
  FeatureService,
1496
1524
  FeatureModificationService,
1497
- ], template: "<ng-content></ng-content>\r\n<lib-osm-tile-layer *ngIf=\"osmUrl && map\" [map]=\"map\" [url]=\"osmUrl\"></lib-osm-tile-layer>\r\n<lib-feature-layer *ngIf=\"map\" [settings]=\"drawingLayerSettings\"></lib-feature-layer>\r\n", styles: ["lib-map-plate{position:relative;display:flex;flex-direction:column;height:100%}\n"] }]
1525
+ ], template: "<ng-content></ng-content>\r\n<art-osm-tile-layer *ngIf=\"osmUrl && map\" [map]=\"map\" [url]=\"osmUrl\"></art-osm-tile-layer>\r\n<art-feature-layer *ngIf=\"map\" [settings]=\"drawingLayerSettings\"></art-feature-layer>\r\n", styles: ["art-map-plate{position:relative;display:flex;flex-direction:column;height:100%}\n"] }]
1498
1526
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: MapPostboyService }, { type: MapPlateFactory }, { type: MessageRegistratorService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { settings: [{
1499
1527
  type: Input
1500
1528
  }] } });
@@ -1524,10 +1552,10 @@ class MarkersComponent extends DestructibleComponent {
1524
1552
  }
1525
1553
  }
1526
1554
  MarkersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MarkersComponent, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Component });
1527
- MarkersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MarkersComponent, selector: "lib-markers", inputs: { layerName: "layerName", markers: "markers" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1555
+ MarkersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MarkersComponent, selector: "art-markers", inputs: { layerName: "layerName", markers: "markers" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1528
1556
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MarkersComponent, decorators: [{
1529
1557
  type: Component,
1530
- args: [{ selector: 'lib-markers', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1558
+ args: [{ selector: 'art-markers', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1531
1559
  }], ctorParameters: function () { return [{ type: MapPostboyService }]; }, propDecorators: { layerName: [{
1532
1560
  type: Input
1533
1561
  }], markers: [{
@@ -1622,10 +1650,10 @@ class TooltipComponent extends DestructibleComponent {
1622
1650
  }
1623
1651
  }
1624
1652
  TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TooltipComponent, deps: [{ token: MapPostboyService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1625
- TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TooltipComponent, selector: "lib-tooltip", inputs: { settings: "settings" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["tip"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div #tip [class]=\"['tooltip-wrapper', _settings.containerClass]\" [hidden]=\"!show\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".tooltip-wrapper{position:absolute}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1653
+ TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", 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 });
1626
1654
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TooltipComponent, decorators: [{
1627
1655
  type: Component,
1628
- args: [{ selector: 'lib-tooltip', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #tip [class]=\"['tooltip-wrapper', _settings.containerClass]\" [hidden]=\"!show\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".tooltip-wrapper{position:absolute}\n"] }]
1656
+ 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"] }]
1629
1657
  }], ctorParameters: function () { return [{ type: MapPostboyService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { container: [{
1630
1658
  type: ViewChild,
1631
1659
  args: ['tip']
@@ -1657,16 +1685,104 @@ class PolygonsComponent extends DestructibleComponent {
1657
1685
  }
1658
1686
  }
1659
1687
  PolygonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PolygonsComponent, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Component });
1660
- PolygonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PolygonsComponent, selector: "lib-polygons", inputs: { layerName: "layerName", polygons: "polygons" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1688
+ PolygonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PolygonsComponent, selector: "art-polygons", inputs: { layerName: "layerName", polygons: "polygons" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1661
1689
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PolygonsComponent, decorators: [{
1662
1690
  type: Component,
1663
- args: [{ selector: 'lib-polygons', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1691
+ args: [{ selector: 'art-polygons', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1664
1692
  }], ctorParameters: function () { return [{ type: MapPostboyService }]; }, propDecorators: { layerName: [{
1665
1693
  type: Input
1666
1694
  }], polygons: [{
1667
1695
  type: Input
1668
1696
  }] } });
1669
1697
 
1698
+ class ZoomControlSettings {
1699
+ constructor() {
1700
+ this.controlClass = 'ol-zoom';
1701
+ this.zoomInClass = 'ol-zoom-in';
1702
+ this.zoomOutClass = 'ol-zoom-out';
1703
+ this.zoomInLabel = 'Zoom In';
1704
+ this.zoomOutLabel = 'Zoom Out';
1705
+ }
1706
+ static copy(model) {
1707
+ const result = new ZoomControlSettings();
1708
+ result.controlClass = model.controlClass;
1709
+ result.zoomInClass = model.zoomInClass;
1710
+ result.zoomOutClass = model.zoomOutClass;
1711
+ result.zoomInLabel = model.zoomInLabel;
1712
+ result.zoomOutLabel = model.zoomOutLabel;
1713
+ return result;
1714
+ }
1715
+ isSame(model) {
1716
+ if (this.zoomInClass !== model.zoomInClass)
1717
+ return false;
1718
+ if (this.zoomOutClass !== model.zoomOutClass)
1719
+ return false;
1720
+ if (this.zoomInLabel !== model.zoomInLabel)
1721
+ return false;
1722
+ if (this.controlClass !== model.controlClass)
1723
+ return false;
1724
+ if (this.zoomOutLabel !== model.zoomOutLabel)
1725
+ return false;
1726
+ return true;
1727
+ }
1728
+ setZoomInLabel(zoomInLabel) {
1729
+ return ZoomControlSettings.copy(Object.assign(Object.assign({}, this), { zoomInLabel }));
1730
+ }
1731
+ setZoomOutClass(zoomOutClass) {
1732
+ return ZoomControlSettings.copy(Object.assign(Object.assign({}, this), { zoomOutClass }));
1733
+ }
1734
+ setZoomInClass(zoomInClass) {
1735
+ return ZoomControlSettings.copy(Object.assign(Object.assign({}, this), { zoomInClass }));
1736
+ }
1737
+ setZoomOutLabel(zoomOutLabel) {
1738
+ return ZoomControlSettings.copy(Object.assign(Object.assign({}, this), { zoomOutLabel }));
1739
+ }
1740
+ setControlClass(controlClass) {
1741
+ return ZoomControlSettings.copy(Object.assign(Object.assign({}, this), { controlClass }));
1742
+ }
1743
+ }
1744
+
1745
+ class MapControlZoomComponent extends DestructibleComponent {
1746
+ set settings(value) {
1747
+ if (!value || this._settings.isSame(value))
1748
+ return;
1749
+ this._settings = value;
1750
+ this.setControl();
1751
+ }
1752
+ constructor(postboy) {
1753
+ super();
1754
+ this.postboy = postboy;
1755
+ this._settings = new ZoomControlSettings();
1756
+ this.onDestroy = () => {
1757
+ this.eliminate();
1758
+ };
1759
+ this.eliminate = () => !!this.map && !!this.control && this.map.removeControl(this.control);
1760
+ }
1761
+ ngOnInit() {
1762
+ this.postboy
1763
+ .subscribe(MapRenderedEvent.ID)
1764
+ .pipe(filter((m) => !!m), first())
1765
+ .subscribe((m) => {
1766
+ this.map = m.map;
1767
+ this.setControl();
1768
+ });
1769
+ }
1770
+ setControl() {
1771
+ if (!this.map)
1772
+ return;
1773
+ this.control = this.postboy.execute(new GenerateZoomControlExecutor(this._settings));
1774
+ this.map.addControl(this.control);
1775
+ }
1776
+ }
1777
+ MapControlZoomComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapControlZoomComponent, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Component });
1778
+ MapControlZoomComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MapControlZoomComponent, selector: "art-map-control-zoom", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1779
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapControlZoomComponent, decorators: [{
1780
+ type: Component,
1781
+ args: [{ selector: 'art-map-control-zoom', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1782
+ }], ctorParameters: function () { return [{ type: MapPostboyService }]; }, propDecorators: { settings: [{
1783
+ type: Input
1784
+ }] } });
1785
+
1670
1786
  class MapModule {
1671
1787
  }
1672
1788
  MapModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -1678,13 +1794,15 @@ MapModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.
1678
1794
  MarkersComponent,
1679
1795
  TooltipComponent,
1680
1796
  PolygonsComponent,
1681
- ClusterLayerComponent], imports: [CommonModule], exports: [MapPlateComponent,
1797
+ ClusterLayerComponent,
1798
+ MapControlZoomComponent], imports: [CommonModule], exports: [MapPlateComponent,
1682
1799
  FeatureLayerComponent,
1683
1800
  MarkersComponent,
1684
1801
  TileLayerComponent,
1685
1802
  TooltipComponent,
1686
1803
  PolygonsComponent,
1687
- ClusterLayerComponent] });
1804
+ ClusterLayerComponent,
1805
+ MapControlZoomComponent] });
1688
1806
  MapModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapModule, imports: [CommonModule] });
1689
1807
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapModule, decorators: [{
1690
1808
  type: NgModule,
@@ -1700,6 +1818,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1700
1818
  TooltipComponent,
1701
1819
  PolygonsComponent,
1702
1820
  ClusterLayerComponent,
1821
+ MapControlZoomComponent,
1703
1822
  ],
1704
1823
  exports: [
1705
1824
  MapPlateComponent,
@@ -1709,6 +1828,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1709
1828
  TooltipComponent,
1710
1829
  PolygonsComponent,
1711
1830
  ClusterLayerComponent,
1831
+ MapControlZoomComponent,
1712
1832
  ],
1713
1833
  }]
1714
1834
  }] });
@@ -1843,5 +1963,5 @@ class StringifyFeatureHelper {
1843
1963
  * Generated bundle index. Do not edit.
1844
1964
  */
1845
1965
 
1846
- export { CancelDrawingCommand, CancelFeatureModificationCommand, CloseTooltipCommand, ClusterLayerComponent, ClusterLayerSettings, Dictionary, DrawSelectionAreaCommand, DrawingType, FeatureLayerComponent, FeatureLayerSettings, FeatureOutputFormat, MapClickEvent, MapLyrs, MapLyrsLabel, MapModule, MapMoveEndEvent, MapPlateComponent, MapPostboyService, MapRenderedEvent, MapSettings, MarkerModel, MarkerStyleHelper, MarkersComponent, MessageRegistratorService, ModifyFeatureCommand, OsmTileLayerComponent, PolygonModel, PolygonStyleHelper, PolygonsComponent, StartDrawingCommand, StringifyFeatureHelper, TextStyleHelper, TileLayerComponent, TileLayerSettings, TooltipComponent, TooltipSettings };
1966
+ export { CancelDrawingCommand, CancelFeatureModificationCommand, CloseTooltipCommand, ClusterLayerComponent, ClusterLayerSettings, Dictionary, DrawSelectionAreaCommand, DrawingType, FeatureLayerComponent, FeatureLayerSettings, FeatureOutputFormat, MapClickEvent, MapControlZoomComponent, MapLyrs, MapLyrsLabel, MapModule, MapMoveEndEvent, MapPlateComponent, MapPostboyService, MapRenderedEvent, MapSettings, MarkerModel, MarkerStyleHelper, MarkersComponent, MessageRegistratorService, ModifyFeatureCommand, OsmTileLayerComponent, PolygonModel, PolygonStyleHelper, PolygonsComponent, StartDrawingCommand, StringifyFeatureHelper, TextStyleHelper, TileLayerComponent, TileLayerSettings, TooltipComponent, TooltipSettings, ZoomControlSettings };
1847
1967
  //# sourceMappingURL=maps-components-src-map.mjs.map