@@ -64,7 +65,8 @@ import { ref, toRefs } from 'vue'
import { computed } from 'vue'
import { VueDraggable } from 'vue-draggable-plus'
-import type { MiniWidget, MiniWidgetContainer } from '@/types/miniWidgets'
+import { CurrentlyLoggedVariables } from '@/libs/sensors-logging'
+import type { DraggableEvent, MiniWidget, MiniWidgetContainer } from '@/types/miniWidgets'
import MiniWidgetInstantiator from './MiniWidgetInstantiator.vue'
@@ -115,4 +117,13 @@ const refreshWidgetsHashs = (): void => {
const showWidgetTrashArea = ref(false)
const trashList = ref([])
+
+const handleDeleteWidget = (event: DraggableEvent): void => {
+ const widgetData = container.value.widgets.find((w) => w.hash === event.item.dataset.widgetHash)
+ if (widgetData) {
+ // Remove miniWidget variableName from Logged variables list
+ CurrentlyLoggedVariables.removeVariable(widgetData.options.displayName)
+ }
+ trashList.value = []
+}
diff --git a/src/types/miniWidgets.ts b/src/types/miniWidgets.ts
index e5e7ec01b..cad5039c7 100644
--- a/src/types/miniWidgets.ts
+++ b/src/types/miniWidgets.ts
@@ -75,3 +75,10 @@ export type MiniWidgetProfile = {
*/
name: string
}
+
+export type DraggableEvent = {
+ /**
+ * The HTML item that is being dragged
+ */
+ item: HTMLElement
+}