load bundled plugins via virtual-plugin loader

This commit is contained in:
Nystik
2026-05-24 17:41:13 +02:00
parent f05ee9e856
commit 9eeff3c1b3
11 changed files with 152 additions and 96 deletions

View File

@@ -1,6 +1,17 @@
const esbuild = require("esbuild");
const fs = require("fs");
const path = require("path");
const headlessSyncDir = path.join(
__dirname,
"apps",
"ignis-server",
"server",
"plugins",
"headless-sync",
"obsidian",
);
Promise.all([
// Build shim-loader.js (delegated to packages/shim)
require("./packages/shim/build.js"),
@@ -9,35 +20,21 @@ Promise.all([
require("./packages/ui/build.js"),
// Build headless-sync bundled plugin
esbuild.build({
entryPoints: [
path.join(
__dirname,
"apps",
"ignis-server",
"server",
"plugins",
"headless-sync",
"obsidian",
"src",
"main.js",
),
],
bundle: true,
outfile: path.join(
__dirname,
"apps",
"ignis-server",
"server",
"plugins",
"headless-sync",
"obsidian",
"main.js",
),
format: "cjs",
platform: "browser",
target: ["chrome90"],
external: ["obsidian", "fs"], //using fs shim
logLevel: "info",
}),
esbuild
.build({
entryPoints: [path.join(headlessSyncDir, "src", "main.js")],
bundle: true,
outfile: path.join(headlessSyncDir, "dist", "ignis-headless-sync.js"),
format: "cjs",
platform: "browser",
target: ["chrome90"],
external: ["obsidian", "fs"],
logLevel: "info",
})
.then(() => {
fs.copyFileSync(
path.join(headlessSyncDir, "styles.css"),
path.join(headlessSyncDir, "dist", "ignis-headless-sync.css"),
);
}),
]).catch(() => process.exit(1));