Browse Source

Reset files

pull/14155/head
LeoMorgan113 11 months ago
parent
commit
cb12d93ce8
  1. 20
      ui-ngx/src/app/modules/home/components/widget/lib/maps/data-layer/map-data-layer.ts
  2. 13
      ui-ngx/src/app/modules/home/components/widget/lib/maps/data-layer/polygons-data-layer.ts

20
ui-ngx/src/app/modules/home/components/widget/lib/maps/data-layer/map-data-layer.ts

@ -28,6 +28,7 @@ import {
} from '@shared/models/widget/maps/map.models'; } from '@shared/models/widget/maps/map.models';
import { import {
createLabelFromPattern, createLabelFromPattern,
guid,
isDefined, isDefined,
isDefinedAndNotNull, isDefinedAndNotNull,
isNumber, isNumber,
@ -52,8 +53,7 @@ export class DataLayerPatternProcessor {
private pattern: string; private pattern: string;
constructor(private dataLayer: TbMapDataLayer, constructor(private dataLayer: TbMapDataLayer,
private settings: DataLayerPatternSettings) { private settings: DataLayerPatternSettings) {}
}
public setup(): Observable<void> { public setup(): Observable<void> {
if (this.settings.type === DataLayerPatternType.function) { if (this.settings.type === DataLayerPatternType.function) {
@ -91,8 +91,7 @@ export class DataLayerColorProcessor {
private range: ColorRange[]; private range: ColorRange[];
constructor(private dataLayer: TbMapDataLayer, constructor(private dataLayer: TbMapDataLayer,
private settings: DataLayerColorSettings) { private settings: DataLayerColorSettings) {}
}
public setup(): Observable<void> { public setup(): Observable<void> {
this.color = this.settings.color; this.color = this.settings.color;
@ -151,8 +150,7 @@ export abstract class TbDataLayerItem<S extends MapDataLayerSettings = MapDataLa
protected layer: L; protected layer: L;
protected constructor(protected settings: S, protected constructor(protected settings: S,
protected dataLayer: D) { protected dataLayer: D) {}
}
public getLayer(): L { public getLayer(): L {
return this.layer; return this.layer;
@ -180,7 +178,7 @@ export abstract class TbMapDataLayer<S extends MapDataLayerSettings = MapDataLay
protected layerItems = new Map<string, I>(); protected layerItems = new Map<string, I>();
protected groupsState: { [group: string]: boolean } = {}; protected groupsState: {[group: string]: boolean} = {};
protected enabled = true; protected enabled = true;
@ -199,7 +197,7 @@ export abstract class TbMapDataLayer<S extends MapDataLayerSettings = MapDataLay
} }
this.dataLayerContainer = this.createDataLayerContainer(); this.dataLayerContainer = this.createDataLayerContainer();
this.dataLayerLabelProcessor = this.settings.label.show ? new DataLayerPatternProcessor(this, this.settings.label) : null; this.dataLayerLabelProcessor = this.settings.label.show ? new DataLayerPatternProcessor(this, this.settings.label) : null;
this.dataLayerTooltipProcessor = this.settings.tooltip.show ? new DataLayerPatternProcessor(this, this.settings.tooltip) : null; this.dataLayerTooltipProcessor = this.settings.tooltip.show ? new DataLayerPatternProcessor(this, this.settings.tooltip): null;
this.map.getMap().addLayer(this.dataLayerContainer); this.map.getMap().addLayer(this.dataLayerContainer);
} }
@ -318,11 +316,9 @@ export abstract class TbMapDataLayer<S extends MapDataLayerSettings = MapDataLay
return []; return [];
} }
protected onDataLayerEnabled(): void { protected onDataLayerEnabled(): void {}
}
protected onDataLayerDisabled(): void { protected onDataLayerDisabled(): void {}
}
public abstract dataLayerType(): MapDataLayerType; public abstract dataLayerType(): MapDataLayerType;

13
ui-ngx/src/app/modules/home/components/widget/lib/maps/data-layer/polygons-data-layer.ts

@ -1,5 +1,4 @@
/// ///
///
/// Copyright © 2016-2025 The Thingsboard Authors /// Copyright © 2016-2025 The Thingsboard Authors
/// ///
/// Licensed under the Apache License, Version 2.0 (the "License"); /// Licensed under the Apache License, Version 2.0 (the "License");
@ -32,7 +31,6 @@ import {
UnplacedMapDataItem UnplacedMapDataItem
} from '@home/components/widget/lib/maps/data-layer/latest-map-data-layer'; } from '@home/components/widget/lib/maps/data-layer/latest-map-data-layer';
import { map } from 'rxjs/operators'; import { map } from 'rxjs/operators';
import { instanceOfSearchableComponent } from '@home/models/searchable-component.models';
class TbPolygonDataLayerItem extends TbLatestDataLayerItem<PolygonsDataLayerSettings, TbPolygonsDataLayer> { class TbPolygonDataLayerItem extends TbLatestDataLayerItem<PolygonsDataLayerSettings, TbPolygonsDataLayer> {
@ -149,7 +147,7 @@ class TbPolygonDataLayerItem extends TbLatestDataLayerItem<PolygonsDataLayerSett
} }
protected onSelected(): L.TB.ToolbarButtonOptions[] { protected onSelected(): L.TB.ToolbarButtonOptions[] {
const buttons: L.TB.ToolbarButtonOptions[] = []; const buttons: L.TB.ToolbarButtonOptions[] = [];
if (this.dataLayer.isEditEnabled()) { if (this.dataLayer.isEditEnabled()) {
this.enablePolygonEditMode(); this.enablePolygonEditMode();
buttons.push( buttons.push(
@ -227,7 +225,7 @@ class TbPolygonDataLayerItem extends TbLatestDataLayerItem<PolygonsDataLayerSett
this.polygon.on('pm:markerdragstart', () => this.editing = true); this.polygon.on('pm:markerdragstart', () => this.editing = true);
this.polygon.on('pm:markerdragend', () => setTimeout(() => { this.polygon.on('pm:markerdragend', () => setTimeout(() => {
this.editing = false; this.editing = false;
})); }) );
this.polygon.on('pm:edit', () => this.savePolygonCoordinates()); this.polygon.on('pm:edit', () => this.savePolygonCoordinates());
this.polygon.pm.enable(); this.polygon.pm.enable();
const map = this.dataLayer.getMap(); const map = this.dataLayer.getMap();
@ -247,10 +245,8 @@ class TbPolygonDataLayerItem extends TbLatestDataLayerItem<PolygonsDataLayerSett
this.polygonContainer.closePopup(); this.polygonContainer.closePopup();
this.editing = true; this.editing = true;
this.polygon.options.bubblingMouseEvents = true; this.polygon.options.bubblingMouseEvents = true;
this.polygon.setStyle({ this.polygon.setStyle({...this.polygonStyleInfo.style, dashArray: '5 5', weight: 3,
...this.polygonStyleInfo.style, dashArray: '5 5', weight: 3, color: '#3388ff', opacity: 1, fillColor: '#3388ff', fillOpacity: 0.2});
color: '#3388ff', opacity: 1, fillColor: '#3388ff', fillOpacity: 0.2
});
this.addItemClass('tb-cut-mode'); this.addItemClass('tb-cut-mode');
this.polygon.once('pm:cut', (e) => { this.polygon.once('pm:cut', (e) => {
if (e.layer instanceof L.Polygon) { if (e.layer instanceof L.Polygon) {
@ -368,7 +364,6 @@ class TbPolygonDataLayerItem extends TbLatestDataLayerItem<PolygonsDataLayerSett
this.polygon.setLatLngs(polyData); this.polygon.setLatLngs(polyData);
} }
} else if (polyData.length === 2) { } else if (polyData.length === 2) {
const bounds = new L.LatLngBounds(polyData as L.LatLngTuple[]); const bounds = new L.LatLngBounds(polyData as L.LatLngTuple[]);
(this.polygon as L.Rectangle).setBounds(bounds); (this.polygon as L.Rectangle).setBounds(bounds);
} }

Loading…
Cancel
Save