diff --git a/server/index.js b/server/index.js index 6592772..42072a0 100644 --- a/server/index.js +++ b/server/index.js @@ -45,10 +45,12 @@ app.use((req, res, next) => { const fsRoutes = require("./routes/fs"); const vaultRoutes = require("./routes/vault"); const proxyRoutes = require("./routes/proxy"); +const versionRoutes = require("./routes/version"); app.use("/api/fs", fsRoutes); app.use("/api/vault", vaultRoutes); app.use("/api/proxy", proxyRoutes); +app.use("/api/version", versionRoutes); // Serve vault files for resource URLs (images, attachments, etc.) // Vault ID is the first path segment: /vault-files//path/to/file diff --git a/server/routes/version.js b/server/routes/version.js new file mode 100644 index 0000000..9e2c9b3 --- /dev/null +++ b/server/routes/version.js @@ -0,0 +1,17 @@ +const express = require("express"); +const { getVersion } = require("../version"); +const config = require("../config"); + +const router = express.Router(); + +router.get("/", (req, res) => { + const pkg = require("../../package.json"); + + res.json({ + version: getVersion(), + semver: pkg.version, + obsidianVersion: config.obsidianVersion, + }); +}); + +module.exports = router; diff --git a/src/ui/views/VaultManager.svelte b/src/ui/views/VaultManager.svelte index ffe8589..59c2048 100644 --- a/src/ui/views/VaultManager.svelte +++ b/src/ui/views/VaultManager.svelte @@ -30,6 +30,7 @@ let dialogValue = ""; let errorMessage = ""; let pendingReload = false; + let version = ""; const menuItems = [ { id: "rename", label: "Rename" }, @@ -47,6 +48,16 @@ ) : vaults; + async function fetchVersion() { + try { + const res = await fetch("/api/version"); + const data = await res.json(); + version = data.version; + } catch (e) { + console.warn("[VaultManager] Failed to fetch version:", e); + } + } + async function refreshVaults() { try { vaults = await vaultService.listVaults(); @@ -177,6 +188,7 @@ onMount(() => { refreshVaults(); + fetchVersion(); }); @@ -246,6 +258,11 @@ +