|
|
|
@ -38,6 +38,7 @@ import { |
|
|
|
} from '@shared/models/widget/maps/map.models'; |
|
|
|
import { MapSettingsComponent } from '@home/components/widget/lib/settings/common/map/map-settings.component'; |
|
|
|
import { MapSettingsContext } from '@home/components/widget/lib/settings/common/map/map-settings.component.models'; |
|
|
|
import { CdkDragDrop } from '@angular/cdk/drag-drop'; |
|
|
|
|
|
|
|
@Component({ |
|
|
|
selector: 'tb-map-data-layers', |
|
|
|
@ -79,6 +80,10 @@ export class MapDataLayersComponent implements ControlValueAccessor, OnInit, Val |
|
|
|
|
|
|
|
noDataLayersText: string; |
|
|
|
|
|
|
|
get dragEnabled(): boolean { |
|
|
|
return this.dataLayersFormArray().controls.length > 1; |
|
|
|
} |
|
|
|
|
|
|
|
private propagateChange = (_val: any) => {}; |
|
|
|
|
|
|
|
constructor(private mapSettingsComponent: MapSettingsComponent, |
|
|
|
@ -162,6 +167,13 @@ export class MapDataLayersComponent implements ControlValueAccessor, OnInit, Val |
|
|
|
removeDataLayer(index: number) { |
|
|
|
(this.dataLayersFormGroup.get('dataLayers') as UntypedFormArray).removeAt(index); |
|
|
|
} |
|
|
|
|
|
|
|
layerDrop(event: CdkDragDrop<string[]>) { |
|
|
|
const layersArray = this.dataLayersFormArray(); |
|
|
|
const layer = layersArray.at(event.previousIndex); |
|
|
|
layersArray.removeAt(event.previousIndex); |
|
|
|
layersArray.insert(event.currentIndex, layer); |
|
|
|
} |
|
|
|
|
|
|
|
addDataLayer() { |
|
|
|
const dataLayer = mergeDeep<MapDataLayerSettings>({} as MapDataLayerSettings, |
|
|
|
|