feat: scaffold inicial del plugin de Obsidian osint_obsidian_plugin
Plugin fino (id osint-db) que habla HTTP con el service local osint_db (FastAPI + DuckDB) y renderiza tablas de datos en las notas del vault osint mediante el code block osintdb. Incluye parser puro de directivas con tests (node --test), settings tab, comando de paleta, enlaces internos para columnas note_path, build con esbuild + tsc y deploy.sh al vault. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
// Build del plugin: empaqueta main.ts en un main.js CommonJS que Obsidian carga
|
||||
// directamente. El paquete "obsidian" y los módulos de Electron/Node quedan como
|
||||
// externals porque los provee el propio runtime de Obsidian.
|
||||
import esbuild from "esbuild";
|
||||
import { builtinModules } from "node:module";
|
||||
|
||||
const banner = `/*
|
||||
Bundle generado por esbuild. No editar a mano: el código fuente vive en main.ts.
|
||||
*/`;
|
||||
|
||||
await esbuild.build({
|
||||
entryPoints: ["main.ts"],
|
||||
bundle: true,
|
||||
outfile: "main.js",
|
||||
format: "cjs",
|
||||
target: "es2020",
|
||||
platform: "browser",
|
||||
sourcemap: false,
|
||||
treeShaking: true,
|
||||
logLevel: "info",
|
||||
banner: { js: banner },
|
||||
external: [
|
||||
"obsidian",
|
||||
"electron",
|
||||
...builtinModules,
|
||||
...builtinModules.map((m) => `node:${m}`),
|
||||
],
|
||||
});
|
||||
Reference in New Issue
Block a user