@artstesh/maps 4.1.35 → 4.1.37

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 (25) hide show
  1. package/dist/esm2020/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.mjs +12 -2
  2. package/dist/esm2020/map/map-plate/layers/raster-tile/raster-tile-layer.factory.mjs +2 -2
  3. package/dist/esm2020/map/map-plate/layers/raster-tile/raster-tile-layer.settings.mjs +17 -1
  4. package/dist/esm2020/map/map-plate/map-plate.component.mjs +3 -3
  5. package/dist/esm2020/map/models/map-settings.mjs +14 -1
  6. package/dist/esm2020/src/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.mjs +12 -2
  7. package/dist/esm2020/src/map/map-plate/layers/raster-tile/raster-tile-layer.factory.mjs +2 -2
  8. package/dist/esm2020/src/map/map-plate/layers/raster-tile/raster-tile-layer.settings.mjs +17 -1
  9. package/dist/esm2020/src/map/map-plate/map-plate.component.mjs +3 -3
  10. package/dist/esm2020/src/map/models/map-settings.mjs +14 -1
  11. package/dist/fesm2015/maps-components-src-map.mjs +43 -4
  12. package/dist/fesm2015/maps-components-src-map.mjs.map +1 -1
  13. package/dist/fesm2015/maps-components.mjs +43 -4
  14. package/dist/fesm2015/maps-components.mjs.map +1 -1
  15. package/dist/fesm2020/maps-components-src-map.mjs +43 -4
  16. package/dist/fesm2020/maps-components-src-map.mjs.map +1 -1
  17. package/dist/fesm2020/maps-components.mjs +43 -4
  18. package/dist/fesm2020/maps-components.mjs.map +1 -1
  19. package/dist/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.d.ts +4 -2
  20. package/dist/map/map-plate/layers/raster-tile/raster-tile-layer.settings.d.ts +11 -0
  21. package/dist/map/models/map-settings.d.ts +8 -0
  22. package/dist/src/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.d.ts +4 -2
  23. package/dist/src/map/map-plate/layers/raster-tile/raster-tile-layer.settings.d.ts +11 -0
  24. package/dist/src/map/models/map-settings.d.ts +8 -0
  25. package/package.json +1 -1
@@ -86,6 +86,7 @@ class MapSettings {
86
86
  this.zoom = 4;
87
87
  this.lyrs = MapLyrs.Hybrid;
88
88
  this.language = 'en';
89
+ this.osmOpacity = 1;
89
90
  this.interactionSettings = {};
90
91
  }
91
92
  static copy(model) {
@@ -97,6 +98,7 @@ class MapSettings {
97
98
  result.lyrs = model.lyrs;
98
99
  result.interactionSettings = model.interactionSettings;
99
100
  result.language = model.language;
101
+ result.osmOpacity = model.osmOpacity;
100
102
  return result;
101
103
  }
102
104
  /**
@@ -163,6 +165,15 @@ class MapSettings {
163
165
  setLanguage(language) {
164
166
  return MapSettings.copy({ ...this, language });
165
167
  }
168
+ /**
169
+ * Sets the opacity level for the OpenStreetMap layer.
170
+ *
171
+ * @param {number} osmOpacity - The opacity value for the OpenStreetMap layer, where 0 is fully transparent and 1 is fully opaque.
172
+ * @return {MapSettings} A new MapSettings instance with the updated OpenStreetMap opacity.
173
+ */
174
+ setOsmOpacity(osmOpacity) {
175
+ return MapSettings.copy({ ...this, osmOpacity });
176
+ }
166
177
  /**
167
178
  * Compares the current MapSettings instance with another to determine if they are identical.
168
179
  *
@@ -182,6 +193,8 @@ class MapSettings {
182
193
  return false;
183
194
  if (this.interactionSettings !== model.interactionSettings)
184
195
  return false;
196
+ if (this.osmOpacity !== model.osmOpacity)
197
+ return false;
185
198
  return this.center.length === model.center.length && !this.center.filter((c, i) => c !== model.center[i]).length;
186
199
  }
187
200
  }
@@ -1708,6 +1721,7 @@ class OsmTileLayerComponent extends DestructibleComponent {
1708
1721
  constructor() {
1709
1722
  super();
1710
1723
  this._url = '';
1724
+ this._opacity = 1;
1711
1725
  }
1712
1726
  set url(value) {
1713
1727
  if (!value || this._url === value)
@@ -1715,6 +1729,12 @@ class OsmTileLayerComponent extends DestructibleComponent {
1715
1729
  this._url = value;
1716
1730
  this.initLayer();
1717
1731
  }
1732
+ set opacity(value) {
1733
+ if (!value || this._opacity === value)
1734
+ return;
1735
+ this._opacity = value;
1736
+ this.initLayer();
1737
+ }
1718
1738
  set map(value) {
1719
1739
  if (!value || this._map === value)
1720
1740
  return;
@@ -1738,18 +1758,21 @@ class OsmTileLayerComponent extends DestructibleComponent {
1738
1758
  source: new OSM({
1739
1759
  url: this._url,
1740
1760
  }),
1761
+ opacity: this._opacity,
1741
1762
  });
1742
1763
  this.layer.set('name', 'osm-tile-layer');
1743
1764
  this._map.addLayer(this.layer);
1744
1765
  }
1745
1766
  }
1746
1767
  OsmTileLayerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OsmTileLayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1747
- 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 });
1768
+ OsmTileLayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: OsmTileLayerComponent, selector: "art-osm-tile-layer", inputs: { url: "url", opacity: "opacity", map: "map" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1748
1769
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OsmTileLayerComponent, decorators: [{
1749
1770
  type: Component,
1750
1771
  args: [{ selector: 'art-osm-tile-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
1751
1772
  }], ctorParameters: function () { return []; }, propDecorators: { url: [{
1752
1773
  type: Input
1774
+ }], opacity: [{
1775
+ type: Input
1753
1776
  }], map: [{
1754
1777
  type: Input
1755
1778
  }] } });
@@ -2452,6 +2475,10 @@ class RasterTileLayerSettings {
2452
2475
  * @default An empty array
2453
2476
  */
2454
2477
  this.requestHeaders = null;
2478
+ /**
2479
+ * The priority of showing - layers with higher zIndex cover others in case of collisions
2480
+ */
2481
+ this.zIndex = 1;
2455
2482
  this.operation = (d) => d[0] ?? [];
2456
2483
  }
2457
2484
  /**
@@ -2464,6 +2491,7 @@ class RasterTileLayerSettings {
2464
2491
  const result = new RasterTileLayerSettings();
2465
2492
  result.maxZoom = model.maxZoom;
2466
2493
  result.minZoom = model.minZoom;
2494
+ result.zIndex = model.zIndex;
2467
2495
  result.projection = model.projection;
2468
2496
  result.opacity = model.opacity;
2469
2497
  result.url = model.url;
@@ -2507,6 +2535,15 @@ class RasterTileLayerSettings {
2507
2535
  setMaxZoom(maxZoom) {
2508
2536
  return RasterTileLayerSettings.copy({ ...this, maxZoom });
2509
2537
  }
2538
+ /**
2539
+ * Sets the z-index for the RasterTileLayerSettings.
2540
+ *
2541
+ * @param {number} zIndex - The new z-index to be assigned.
2542
+ * @return {RasterTileLayerSettings} A new RasterTileLayerSettings instance with the updated z-index.
2543
+ */
2544
+ setZIndex(zIndex) {
2545
+ return RasterTileLayerSettings.copy({ ...this, zIndex });
2546
+ }
2510
2547
  /**
2511
2548
  * Sets the minimum zoom level for the Tile Layer.
2512
2549
  *
@@ -2545,6 +2582,8 @@ class RasterTileLayerSettings {
2545
2582
  return false;
2546
2583
  if (this.minZoom !== model.minZoom)
2547
2584
  return false;
2585
+ if (this.zIndex !== model.zIndex)
2586
+ return false;
2548
2587
  if (this.url !== model.url)
2549
2588
  return false;
2550
2589
  if (this.projection !== model.projection)
@@ -2577,7 +2616,7 @@ class RasterTileLayerFactory {
2577
2616
  operationType: 'image',
2578
2617
  operation: settings.operation,
2579
2618
  });
2580
- return new ImageLayer({ source: raster, opacity: settings.opacity });
2619
+ return new ImageLayer({ source: raster, opacity: settings.opacity, zIndex: settings.zIndex });
2581
2620
  }
2582
2621
  getTileFunc(settings) {
2583
2622
  return (tileCoord) => {
@@ -2761,7 +2800,7 @@ MapPlateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", vers
2761
2800
  FeatureService,
2762
2801
  FeatureModificationService,
2763
2802
  ControlsService,
2764
- ], 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{display:block;width:100%;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, encapsulation: i0.ViewEncapsulation.None });
2803
+ ], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\r\n<art-osm-tile-layer *ngIf=\"osmUrl && map\" [map]=\"map\" [url]=\"osmUrl\" [opacity]=\"_settings.osmOpacity\"></art-osm-tile-layer>\r\n<art-feature-layer *ngIf=\"map\" [settings]=\"drawingLayerSettings\"></art-feature-layer>\r\n", styles: ["art-map-plate{display:block;width:100%;height:100%}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: OsmTileLayerComponent, selector: "art-osm-tile-layer", inputs: ["url", "opacity", "map"] }, { kind: "component", type: FeatureLayerComponent, selector: "art-feature-layer", inputs: ["settings"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2765
2804
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapPlateComponent, decorators: [{
2766
2805
  type: Component,
2767
2806
  args: [{ selector: 'art-map-plate', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
@@ -2775,7 +2814,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2775
2814
  FeatureService,
2776
2815
  FeatureModificationService,
2777
2816
  ControlsService,
2778
- ], encapsulation: ViewEncapsulation.None, 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{display:block;width:100%;height:100%}\n"] }]
2817
+ ], encapsulation: ViewEncapsulation.None, template: "<ng-content></ng-content>\r\n<art-osm-tile-layer *ngIf=\"osmUrl && map\" [map]=\"map\" [url]=\"osmUrl\" [opacity]=\"_settings.osmOpacity\"></art-osm-tile-layer>\r\n<art-feature-layer *ngIf=\"map\" [settings]=\"drawingLayerSettings\"></art-feature-layer>\r\n", styles: ["art-map-plate{display:block;width:100%;height:100%}\n"] }]
2779
2818
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: MapPostboyService }, { type: MapPlateFactory }, { type: MessageRegistratorService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { settings: [{
2780
2819
  type: Input
2781
2820
  }] } });