diff --git a/client/src/components/highlights/HighlightPopover.vue b/client/src/components/highlights/HighlightPopover.vue
index acfcdd64..00fa2305 100644
--- a/client/src/components/highlights/HighlightPopover.vue
+++ b/client/src/components/highlights/HighlightPopover.vue
@@ -23,7 +23,7 @@
@@ -32,18 +32,31 @@
diff --git a/client/src/helpers/modalService.ts b/client/src/helpers/modalService.ts
new file mode 100644
index 00000000..6d72670b
--- /dev/null
+++ b/client/src/helpers/modalService.ts
@@ -0,0 +1,37 @@
+import { createApp } from 'vue';
+import Confirm from '@/components/modals/Confirm2.vue';
+import { ResolveReject } from './types';
+export default {
+ show() {
+ const mountEl = document.createElement('div');
+ document.body.appendChild(mountEl);
+
+ const cleanUp = () => {
+ mountEl?.parentNode?.removeChild(mountEl);
+ modal.unmount();
+ };
+ let _resolve: ResolveReject, _reject: ResolveReject;
+
+ const promise = new Promise((resolve, reject) => {
+ _resolve = resolve;
+ _reject = reject;
+ });
+
+ const modal = createApp(Confirm, {
+ title: 'Löschen bestätigen',
+ message: 'Wollen Sie die Markierung wirklich löschen?',
+ onConfirm: () => {
+ cleanUp();
+ _resolve();
+ },
+ onCancel: () => {
+ cleanUp();
+ _reject();
+ },
+ });
+
+ modal.mount(mountEl);
+
+ return promise;
+ },
+};
diff --git a/client/src/helpers/popover.ts b/client/src/helpers/popover.ts
index 299ee943..24e21efe 100644
--- a/client/src/helpers/popover.ts
+++ b/client/src/helpers/popover.ts
@@ -1,7 +1,6 @@
import HighlightPopover from '@/components/highlights/HighlightPopover.vue';
import { createApp } from 'vue';
-
-type ResolveReject = (v?: unknown) => void;
+import { ResolveReject } from './types';
interface Options {
wrapper: HTMLElement;
diff --git a/client/src/helpers/types.ts b/client/src/helpers/types.ts
index 43e4f031..9d19b709 100644
--- a/client/src/helpers/types.ts
+++ b/client/src/helpers/types.ts
@@ -22,3 +22,5 @@ export interface FlavorValues {
showLanguageFilter: boolean;
showTopicNavigationNumbering: boolean;
}
+
+export type ResolveReject = (v?: unknown) => void;