diff --git a/src/lib/components/chat/Settings/SyncStatsModal.svelte b/src/lib/components/chat/Settings/SyncStatsModal.svelte
index d0095b8727..4633921c78 100644
--- a/src/lib/components/chat/Settings/SyncStatsModal.svelte
+++ b/src/lib/components/chat/Settings/SyncStatsModal.svelte
@@ -16,7 +16,7 @@
const i18n = getContext('i18n');
export let show = false;
- export let params = {};
+ export let eventData = null;
let loading = false;
let completed = false;
@@ -26,14 +26,20 @@
const syncStats = async () => {
if (window.opener) {
window.opener.focus();
- window.opener.postMessage({ type: 'sync:start' }, '*');
+ window.opener.postMessage(
+ { type: 'sync:start', requestId: eventData?.requestId ?? null },
+ '*'
+ );
}
const res = await getVersion(localStorage.token).catch(() => {
return null;
});
if (res) {
- window.opener.postMessage({ type: 'sync:version', data: res }, '*');
+ window.opener.postMessage(
+ { type: 'sync:version', data: res, requestId: eventData?.requestId ?? null },
+ '*'
+ );
}
loading = true;
@@ -43,7 +49,11 @@
let allItemsLoaded = false;
while (!allItemsLoaded) {
- const res = await exportChatStats(localStorage.token, page, params).catch(() => {
+ const res = await exportChatStats(
+ localStorage.token,
+ page,
+ eventData?.searchParams ?? {}
+ ).catch(() => {
return null;
});
@@ -53,7 +63,10 @@
if (window.opener) {
if (res.items.length > 0) {
- window.opener.postMessage({ type: 'sync:stats:chats', data: res }, '*');
+ window.opener.postMessage(
+ { type: 'sync:stats:chats', data: res, requestId: eventData?.requestId ?? null },
+ '*'
+ );
}
} else {
console.log('No opener found to send stats back to.');
@@ -71,7 +84,10 @@
// send sync complete message
if (window.opener) {
- window.opener.postMessage({ type: 'sync:complete' }, '*');
+ window.opener.postMessage(
+ { type: 'sync:complete', requestId: eventData?.requestId ?? null },
+ '*'
+ );
}
loading = false;
completed = true;
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte
index e91d136574..c7bb8c5c50 100644
--- a/src/routes/+layout.svelte
+++ b/src/routes/+layout.svelte
@@ -90,8 +90,9 @@
let tokenTimer = null;
let showRefresh = false;
+
let showSyncStatsModal = false;
- let syncStatsParams = {};
+ let syncStatsEventData = null;
let heartbeatInterval = null;
@@ -613,7 +614,7 @@
}
if (event.data === 'export:stats' || event.data?.type === 'export:stats') {
- syncStatsParams = event.data?.searchParams ?? {};
+ syncStatsEventData = event.data;
showSyncStatsModal = true;
}
};
@@ -886,7 +887,7 @@
{/if}
{#if $config?.features.enable_community_sharing}
-
+
{/if}