diff --git a/pdb-js/src/app/dashboard-page/dashboard/dashboard.component.html b/pdb-js/src/app/dashboard-page/dashboard/dashboard.component.html
index f5e6705..c82d61c 100644
--- a/pdb-js/src/app/dashboard-page/dashboard/dashboard.component.html
+++ b/pdb-js/src/app/dashboard-page/dashboard/dashboard.component.html
@@ -75,7 +75,7 @@
+ [data]="getTextWidget(id)!" (deleted)="delete($event)">
diff --git a/pdb-js/src/app/dashboard-page/dashboard/dashboard.component.ts b/pdb-js/src/app/dashboard-page/dashboard/dashboard.component.ts
index be389b4..56366cf 100644
--- a/pdb-js/src/app/dashboard-page/dashboard/dashboard.component.ts
+++ b/pdb-js/src/app/dashboard-page/dashboard/dashboard.component.ts
@@ -208,4 +208,10 @@ export class DashboardComponent implements OnInit {
);
}
}
+
+ delete(dashboardId: string) {
+ this.dashboard!.arrangement[0] = this.dashboard!.arrangement[0].filter(a => a != dashboardId);
+ this.dashboard!.plots = this.dashboard!.plots.filter(p => p.id != dashboardId);
+ this.dashboard!.texts = this.dashboard!.texts.filter(t => t.id != dashboardId);
+ }
}
diff --git a/pdb-js/src/app/dashboard-page/dashboard/text-widget/text-widget.component.html b/pdb-js/src/app/dashboard-page/dashboard/text-widget/text-widget.component.html
index 70afcc6..18568c5 100644
--- a/pdb-js/src/app/dashboard-page/dashboard/text-widget/text-widget.component.html
+++ b/pdb-js/src/app/dashboard-page/dashboard/text-widget/text-widget.component.html
@@ -25,6 +25,9 @@
}
diff --git a/pdb-js/src/app/dashboard-page/dashboard/text-widget/text-widget.component.ts b/pdb-js/src/app/dashboard-page/dashboard/text-widget/text-widget.component.ts
index 373dd3e..dee2e55 100644
--- a/pdb-js/src/app/dashboard-page/dashboard/text-widget/text-widget.component.ts
+++ b/pdb-js/src/app/dashboard-page/dashboard/text-widget/text-widget.component.ts
@@ -1,5 +1,6 @@
-import { Component, Input } from '@angular/core';
+import { Component, EventEmitter, Input, Output } from '@angular/core';
import { MatDialog } from '@angular/material/dialog';
+import { ConfirmationDialogComponent } from 'src/app/confirmation-dialog/confirmation-dialog.component';
import { TextWidget } from 'src/app/dashboard.service';
import { AddTextDialogComponent } from '../add-text-dialog/add-text-dialog.component';
@@ -11,11 +12,26 @@ export class TextWidgetComponent {
@Input()
data! : TextWidget;
+ @Output()
+ deleted : EventEmitter = new EventEmitter();
+
constructor(private dialog: MatDialog){}
lines(): string[]{
return typeof this.data.text == 'string' ? this.data.text.split(/\r?\n/) : [];
}
+ delete() {
+ this.dialog
+ .open(ConfirmationDialogComponent, {
+ data: {title: "", text: "Delete text?", btnOkLabel: "Delete", btnCancelLabel: "Cancel"}
+ })
+ .afterClosed()
+ .subscribe((result: boolean) => {
+ if (result === true) {
+ this.deleted.emit(this.data.id);
+ }
+ });
+ }
edit() {
this.dialog.open(AddTextDialogComponent,{