diff --git a/desktop-app/src/main/extensions/index.ts b/desktop-app/src/main/extensions/index.ts new file mode 100644 index 00000000..ab7001e7 --- /dev/null +++ b/desktop-app/src/main/extensions/index.ts @@ -0,0 +1,17 @@ +import path from 'path'; +import fs from 'fs'; +import { session, app } from 'electron'; + +export const loadVueDevTools = async (): Promise => { + const extensionPath = path.resolve(app.getAppPath(), '..', 'extensions', 'vue-devtools'); + if (!fs.existsSync(extensionPath)) { + console.warn(`[extensions] Vue DevTools not found at ${extensionPath}`); + return; + } + try { + await session.defaultSession.loadExtension(extensionPath, { allowFileAccess: true }); + console.log(`[extensions] Vue DevTools loaded from ${extensionPath}`); + } catch (err) { + console.error(`[extensions] Failed to load Vue DevTools from ${extensionPath}`, err); + } +}; diff --git a/desktop-app/src/main/main.ts b/desktop-app/src/main/main.ts index 8408dcbe..b406cbf9 100644 --- a/desktop-app/src/main/main.ts +++ b/desktop-app/src/main/main.ts @@ -32,6 +32,7 @@ import { initHttpBasicAuthHandlers } from './http-basic-auth'; import { initAppMetaHandlers } from './app-meta'; import { openUrl } from './protocol-handler'; import { AppUpdater } from './app-updater'; +import { loadVueDevTools } from './extensions'; let windowShownOnOpen = false; @@ -83,7 +84,7 @@ const installExtensions = async () => { 'MOBX_DEVTOOLS', 'APOLLO_DEVELOPER_TOOLS', ]; - + await loadVueDevTools(); return installer .default( extensions.map((name) => installer[name]),