diff --git a/static/js/components/shared/ModelVersionsTab.js b/static/js/components/shared/ModelVersionsTab.js index ba778244..fa00f33b 100644 --- a/static/js/components/shared/ModelVersionsTab.js +++ b/static/js/components/shared/ModelVersionsTab.js @@ -1142,6 +1142,11 @@ export function initVersionsTab({ const actionButton = event.target.closest('[data-version-action]'); if (actionButton) { + // Check if browser extension has already handled this action + if (actionButton.dataset.lmExtensionHandled === 'true') { + return; + } + const row = actionButton.closest('.model-version-row'); if (!row) { return; @@ -1190,6 +1195,11 @@ export function initVersionsTab({ window.open(targetUrl, '_blank', 'noopener,noreferrer'); }); + // Listen for extension-triggered refresh requests + container.addEventListener('lm:refreshVersions', async () => { + await refresh(); + }); + return { load: options => loadVersions(options), refresh, diff --git a/static/js/managers/DownloadManager.js b/static/js/managers/DownloadManager.js index 3cb3afc4..d1495d60 100644 --- a/static/js/managers/DownloadManager.js +++ b/static/js/managers/DownloadManager.js @@ -744,3 +744,8 @@ export class DownloadManager { // Create global instance export const downloadManager = new DownloadManager(); + +// Expose to window for browser extension integration +if (typeof window !== 'undefined') { + window.downloadManager = downloadManager; +}