// Copies the built plugin into the vault. A real directory, not a symlink: Obsidian // Sync would not reliably propagate main.js changes from a symlinked plugin folder, // which left mobile running stale code for weeks. import { copyFileSync, mkdirSync, lstatSync, rmSync } from "fs"; import { join } from "path"; const vault = process.env.ABLAZE_VAULT || "/Users/robin/Data/Obsidian/Everything"; const target = join(vault, ".obsidian", "plugins", "ablaze"); try { if (lstatSync(target).isSymbolicLink()) { rmSync(target); console.log(`removed symlink ${target}`); } } catch (e) { if (e.code !== "ENOENT") throw e; } mkdirSync(target, { recursive: true }); for (const f of ["main.js", "manifest.json", "styles.css"]) { copyFileSync(f, join(target, f)); console.log(`${f} -> ${target}`); }