mirror of
https://github.com/Nystik-gh/ignis.git
synced 2026-06-17 04:35:53 +00:00
refactor plugin, split into modules
This commit is contained in:
34
plugin/src/main.js
Normal file
34
plugin/src/main.js
Normal file
@@ -0,0 +1,34 @@
|
||||
const { Plugin, TFile, TFolder } = require("obsidian");
|
||||
const { showFilePicker, addFileMenuItems, addFolderMenuItems } = require("./file-actions");
|
||||
const { patchSettingsModal, unpatchSettingsModal } = require("./settings/inject");
|
||||
|
||||
window.__obsidianAPI = require("obsidian");
|
||||
|
||||
class IgnisBridgePlugin extends Plugin {
|
||||
async onload() {
|
||||
console.log("[ignis-bridge] Plugin loaded");
|
||||
|
||||
patchSettingsModal(this);
|
||||
|
||||
this.addRibbonIcon("upload", "Upload file", () => {
|
||||
showFilePicker(this.app);
|
||||
});
|
||||
|
||||
this.registerEvent(
|
||||
this.app.workspace.on("file-menu", (menu, file) => {
|
||||
if (file instanceof TFile) {
|
||||
addFileMenuItems(menu, file);
|
||||
} else if (file instanceof TFolder) {
|
||||
addFolderMenuItems(menu, file, this.app);
|
||||
}
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
onunload() {
|
||||
unpatchSettingsModal(this);
|
||||
console.log("[ignis-bridge] Plugin unloaded");
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = IgnisBridgePlugin;
|
||||
Reference in New Issue
Block a user