diff --git a/frontend/index.html b/frontend/index.html index ed692c1..d75ec02 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -1455,8 +1455,6 @@
+ Les plugins étendent ObsiGate : affichage personnalisé des + fichiers, filtres de recherche, actions d'édition, widgets + et intégrations. Ils s'exécutent dans des Web Workers + sandboxés — isolés de la page pour la sécurité. +
+ +.zip contenant le manifest
+ plugin.json + le code du plugin.
+ Téléchargez le modèle depuis Réglages → Plugins → « Obtenir le
+ modèle ». Un plugin se compose d'un manifest
+ plugin.json et d'un fichier principal (ex.
+ index.js).
+
onFileRender, onSearchFilter, onEditorAction, onSidebarItem, onFileCreate, onFileDelete, onVaultMount.",
- "help.plugins_security": "Security: 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 Template button in Settings > Plugins to generate a valid starter plugin."
-}
\ No newline at end of file
+ "help.plugins_intro": "Plugins extend ObsiGate: custom file rendering, search filters, editor actions, widgets and integrations. They run in sandboxed Web Workers — isolated from the page for security.",
+ "help.plugins_install": "Installation",
+ "help.plugins_install_1": "Open Settings → 🧩 Plugins.",
+ "help.plugins_install_2": "Click 'Install a plugin'.",
+ "help.plugins_install_3": "Select a .zip file containing the plugin.json manifest and the plugin code.",
+ "help.plugins_install_4": "The manifest is validated (name, semver version, hooks, permissions) before installation.",
+ "help.plugins_manage": "Management",
+ "help.plugins_manage_1": "Enable / Disable: buttons on each plugin — hooks only run if the plugin is enabled.",
+ "help.plugins_manage_2": "Uninstall: permanently removes the plugin from the vault.",
+ "help.plugins_manage_3": "Code: view the source code of the installed plugin.",
+ "help.plugins_dev": "Develop a plugin",
+ "help.plugins_dev_intro": "Download the template from Settings → Plugins → 'Get template'. A plugin consists of a plugin.json manifest and a main file (e.g. index.js).",
+ "help.plugins_hooks": "Available hooks",
+ "help.plugins_hook_render": "onFileRender",
+ "help.plugins_hook_render_desc": "transforms the displayed content of a file.",
+ "help.plugins_hook_search": "onSearchFilter",
+ "help.plugins_hook_search_desc": "filters search results.",
+ "help.plugins_hook_editor": "onEditorAction",
+ "help.plugins_hook_editor_desc": "intercepts editor actions.",
+ "help.plugins_hook_sidebar": "onSidebarItem",
+ "help.plugins_hook_sidebar_desc": "adds items to the sidebar.",
+ "help.plugins_hook_file": "onFileCreate / onFileDelete",
+ "help.plugins_hook_file_desc": "reacts to file creation / deletion.",
+ "help.plugins_hook_vault": "onVaultMount",
+ "help.plugins_hook_vault_desc": "runs when a vault is loaded.",
+ "help.plugins_security": "Security",
+ "help.plugins_security_1": "Web Worker sandbox: plugin code runs isolated, with no direct DOM access.",
+ "help.plugins_security_2": "Permissions: each declared hook must be satisfied by the manifest permissions.",
+ "help.plugins_security_3": "Secure packaging: the .zip is checked against path traversal on install.",
+ "help.plugins_security_4": "Admin only: installation and removal require the admin role.",
+ "help.plugins_template": "Use the Template button in Settings > Plugins to generate a valid starter plugin.",
+ "help.footer_version": "ObsiGate - Web gateway for your Obsidian vaults"
+ }
\ No newline at end of file
diff --git a/frontend/locales/fr.json b/frontend/locales/fr.json
index dabc576..4c118d3 100644
--- a/frontend/locales/fr.json
+++ b/frontend/locales/fr.json
@@ -1637,12 +1637,36 @@
"plugins.uninstalled": "Plugin '{name}' désinstallé.",
"plugins.confirm_uninstall": "Désinstaller le plugin '{name}' ? Cette action est irréversible.",
"help.plugins_title": "đź§© Plugins",
- "help.plugins_intro": "ObsiGate supporte un système de plugins pour étendre ses fonctionnalités. Les plugins peuvent ajouter des renderers personnalisés, des filtres de recherche, des actions d'éditeur, et des éléments d'interface.",
- "help.plugins_install": "Installation",
- "help.plugins_manage": "Gestion",
- "help.plugins_develop": "Développement",
- "help.plugins_dev_intro": "Un plugin est un dossier ou ZIP contenant :",
- "help.plugins_hooks_desc": "Hooks disponibles : onFileRender, onSearchFilter, onEditorAction, onSidebarItem, onFileCreate, onFileDelete, onVaultMount.",
- "help.plugins_security": "Sécurité : chaque plugin s'exécute dans un Web Worker isolé (sandbox), sans accès au DOM, localStorage, ni réseau sauf permissions explicites.",
- "help.plugins_template": "Utilisez le bouton Template dans Paramètres > Plugins pour générer un plugin starter valide."
-}
\ No newline at end of file
+ "help.plugins_intro": "Les plugins étendent ObsiGate : affichage personnalisé des fichiers, filtres de recherche, actions d'édition, widgets et intégrations. Ils s'exécutent dans des Web Workers sandboxés — isolés de la page pour la sécurité.",
+ "help.plugins_install": "Installation",
+ "help.plugins_install_1": "Ouvrez Réglages → 🧩 Plugins.",
+ "help.plugins_install_2": "Cliquez « Installer un plugin ».",
+ "help.plugins_install_3": "Sélectionnez un fichier .zip contenant le manifest plugin.json et le code du plugin.",
+ "help.plugins_install_4": "Le manifest est validé (nom, version semver, hooks, permissions) avant installation.",
+ "help.plugins_manage": "Gestion",
+ "help.plugins_manage_1": "Activer / Désactiver : boutons sur chaque plugin — les hooks ne tournent que si le plugin est activé.",
+ "help.plugins_manage_2": "Désinstaller : supprime définitivement le plugin du vault.",
+ "help.plugins_manage_3": "Code : visualisez le code source du plugin installé.",
+ "help.plugins_dev": "Développer un plugin",
+ "help.plugins_dev_intro": "Téléchargez le modèle depuis Réglages → Plugins → « Obtenir le modèle ». Un plugin se compose d'un manifest plugin.json et d'un fichier principal (ex. index.js).",
+ "help.plugins_hooks": "Hooks disponibles",
+ "help.plugins_hook_render": "onFileRender",
+ "help.plugins_hook_render_desc": "transforme le contenu affiché d'un fichier.",
+ "help.plugins_hook_search": "onSearchFilter",
+ "help.plugins_hook_search_desc": "filtre les résultats de recherche.",
+ "help.plugins_hook_editor": "onEditorAction",
+ "help.plugins_hook_editor_desc": "intercepte les actions de l'éditeur.",
+ "help.plugins_hook_sidebar": "onSidebarItem",
+ "help.plugins_hook_sidebar_desc": "ajoute des éléments à la barre latérale.",
+ "help.plugins_hook_file": "onFileCreate / onFileDelete",
+ "help.plugins_hook_file_desc": "réagit à la création / suppression de fichiers.",
+ "help.plugins_hook_vault": "onVaultMount",
+ "help.plugins_hook_vault_desc": "exécuté au chargement d'un vault.",
+ "help.plugins_security": "Sécurité",
+ "help.plugins_security_1": "Sandbox Web Worker : le code plugin tourne isolé, sans accès direct au DOM.",
+ "help.plugins_security_2": "Permissions : chaque hook déclaré doit être satisfait par les permissions du manifest.",
+ "help.plugins_security_3": "Empaquetage sécurisé : le .zip est vérifié contre le path traversal à l'installation.",
+ "help.plugins_security_4": "Admin uniquement : l'installation et la suppression requièrent le rôle admin.",
+ "help.plugins_template": "Utilisez le bouton Template dans Paramètres > Plugins pour générer un plugin starter valide.",
+ "help.footer_version": "ObsiGate - Porte d'entrée web pour vos vaults Obsidian"
+ }
\ No newline at end of file