diff --git a/src/lib/components/workspace/Models.svelte b/src/lib/components/workspace/Models.svelte index aed6a1067..aa86bc3b1 100644 --- a/src/lib/components/workspace/Models.svelte +++ b/src/lib/components/workspace/Models.svelte @@ -71,16 +71,19 @@ const url = 'https://openwebui.com'; const tab = await window.open(`${url}/models/create`, '_blank'); - window.addEventListener( - 'message', - (event) => { - if (event.origin !== url) return; - if (event.data === 'loaded') { - tab.postMessage(JSON.stringify(model), '*'); - } - }, - false - ); + + // Define the event handler function + const messageHandler = (event) => { + if (event.origin !== url) return; + if (event.data === 'loaded') { + tab.postMessage(JSON.stringify(model), '*'); + + // Remove the event listener after handling the message + window.removeEventListener('message', messageHandler); + } + }; + + window.addEventListener('message', messageHandler, false); }; const hideModelHandler = async (model) => {