feat: #61 Plugin system — backend API, sandboxed Web Worker, hooks wired to real app flow, user guide, 47+21 tests
CI / lint (push) Failing after 30s
CI / test (push) Skipped
CI / build (push) Skipped
CI / e2e (push) Skipped
CI / security (push) Successful in 35s
Desktop Build / build-windows (push) Canceled after 0s
Desktop Build / build-linux (push) Canceled after 0s
CI / lint (push) Failing after 30s
CI / test (push) Skipped
CI / build (push) Skipped
CI / e2e (push) Skipped
CI / security (push) Successful in 35s
Desktop Build / build-windows (push) Canceled after 0s
Desktop Build / build-linux (push) Canceled after 0s
This commit is contained in:
@@ -460,6 +460,7 @@
|
||||
"config.section_watcher": "Auto sync",
|
||||
"config.section_webhooks": "🔗 Webhooks",
|
||||
"config.section_push": "🔔 Push notifications",
|
||||
"config.section_plugins": "🧩 Plugins",
|
||||
"config.section_workflow-recommande": "Recommended workflow",
|
||||
"config.section_zone-de-contenu": "Zone de contenu",
|
||||
"config.server_config": "Server config",
|
||||
@@ -486,6 +487,8 @@
|
||||
"config.webhook_url_placeholder": "URL",
|
||||
"config.webhooks": "Webhooks",
|
||||
"config.webhooks_desc": "HTTP notifications to external services on file changes.",
|
||||
"config.plugins": "Plugins",
|
||||
"config.plugins_desc": "Manage installed plugins for this vault.",
|
||||
"config.workers_label": "Search workers",
|
||||
"confirm.delete_dir": "Delete this folder and all its contents?",
|
||||
"confirm.delete_dir_named": "Delete \"{path}\" and ALL its contents?",
|
||||
@@ -1072,6 +1075,7 @@
|
||||
"help.nav_tags": "🏷️ Tags",
|
||||
"help.nav_tips": "💡 Tips",
|
||||
"help.nav_webhooks": "🪝 Webhooks",
|
||||
"help.nav_plugins": "🧩 Plugins",
|
||||
"help.new_file": "New file",
|
||||
"help.new_folder": "New folder",
|
||||
"help.nights": "sleepless nights 😅",
|
||||
@@ -1338,6 +1342,7 @@
|
||||
"settings.search_placeholder": "Search...",
|
||||
"settings.sync": "🔄 Sync",
|
||||
"settings.themes": "🎨 Themes",
|
||||
"settings.plugins": "🧩 Plugins",
|
||||
"share.copied": "Link copied!",
|
||||
"share.copy_link": "Copy link",
|
||||
"share.create": "Create share link",
|
||||
@@ -1614,5 +1619,30 @@
|
||||
"mfa.webauthn_prompt": "Present your security key or confirm with Windows Hello.",
|
||||
"mfa.webauthn_btn": "Verify with my key",
|
||||
"mfa.webauthn_cancelled": "WebAuthn ceremony cancelled.",
|
||||
"mfa.webauthn_no_key": "No security key registered for this account."
|
||||
}
|
||||
"mfa.webauthn_no_key": "No security key registered for this account.",
|
||||
"plugins.title": "🧩 Plugins",
|
||||
"plugins.description": "Extend ObsiGate with custom renderers, search filters, and editor actions.",
|
||||
"plugins.install": "Install Plugin",
|
||||
"plugins.template": "View Template",
|
||||
"plugins.none": "No plugins installed.",
|
||||
"plugins.manifest_json": "Manifest (plugin.json)",
|
||||
"plugins.code": "Plugin Code (main file)",
|
||||
"plugins.view_code": "View Code",
|
||||
"plugins.uninstall": "Uninstall",
|
||||
"plugins.enable": "Enable",
|
||||
"plugins.disable": "Disable",
|
||||
"plugins.enabled": "Plugin '{name}' enabled.",
|
||||
"plugins.disabled": "Plugin '{name}' disabled.",
|
||||
"plugins.installed": "Plugin '{name}' installed successfully.",
|
||||
"plugins.uninstalled": "Plugin '{name}' uninstalled.",
|
||||
"plugins.confirm_uninstall": "Uninstall plugin '{name}'? This cannot be undone.",
|
||||
"help.plugins_title": "🧩 Plugins",
|
||||
"help.plugins_intro": "ObsiGate supports a plugin system to extend its functionality. Plugins can add custom renderers, search filters, editor actions, and UI elements.",
|
||||
"help.plugins_install": "Installation",
|
||||
"help.plugins_manage": "Management",
|
||||
"help.plugins_develop": "Development",
|
||||
"help.plugins_dev_intro": "A plugin is a folder or ZIP containing:",
|
||||
"help.plugins_hooks_desc": "Available hooks: <code>onFileRender</code>, <code>onSearchFilter</code>, <code>onEditorAction</code>, <code>onSidebarItem</code>, <code>onFileCreate</code>, <code>onFileDelete</code>, <code>onVaultMount</code>.",
|
||||
"help.plugins_security": "<strong>Security:</strong> each plugin runs in an isolated Web Worker sandbox, with no DOM, localStorage, or network access unless explicitly granted via permissions.",
|
||||
"help.plugins_template": "Use the <strong>Template</strong> button in Settings > Plugins to generate a valid starter plugin."
|
||||
}
|
||||
Reference in New Issue
Block a user