fix(ui,help): #61 unified dynamic version display + full guide sections for AI editor & plugins
CI / lint (push) Successful in 54s
CI / security (push) Successful in 35s
CI / test (push) Successful in 1m13s
CI / build (push) Successful in 32s
CI / e2e (push) Failing after 22m0s
Desktop Build / build-windows (push) Canceled after 0s
Desktop Build / build-linux (push) Canceled after 0s
CI / lint (push) Successful in 54s
CI / security (push) Successful in 35s
CI / test (push) Successful in 1m13s
CI / build (push) Successful in 32s
CI / e2e (push) Failing after 22m0s
Desktop Build / build-windows (push) Canceled after 0s
Desktop Build / build-linux (push) Canceled after 0s
This commit is contained in:
+73
-4
@@ -1455,8 +1455,6 @@
|
||||
<li><a href="#cfg-webhooks" class="help-nav-link" data-i18n="config.section_webhooks"></a></li>
|
||||
<li><a href="#cfg-partages-publics" class="help-nav-link" data-i18n="config.section_shares"></a></li>
|
||||
</ul>
|
||||
<li>
|
||||
<a href="#help-plugins" class="help-nav-link"
|
||||
</nav>
|
||||
<div class="help-content" id="config-scroll">
|
||||
<div class="config-content">
|
||||
@@ -2817,7 +2815,7 @@
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#help-ia" class="help-nav-link"
|
||||
<a href="#help-ai" class="help-nav-link"
|
||||
data-i18n="help.nav_ai">🤖 IA Éditeur</a
|
||||
>
|
||||
</li>
|
||||
@@ -2865,6 +2863,11 @@
|
||||
data-i18n="help.nav_tips">💡 Astuces</a
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#help-plugins" class="help-nav-link"
|
||||
data-i18n="help.nav_plugins">🧩 Plugins</a
|
||||
>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="help-content">
|
||||
@@ -4759,9 +4762,74 @@ curl -X POST https://votre-serveur.com/webhook \
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<!-- 🧩 Plugins -->
|
||||
<section class="help-section" id="help-plugins">
|
||||
<h2 data-i18n="help.plugins_title">🧩 Plugins</h2>
|
||||
<p data-i18n="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é.
|
||||
</p>
|
||||
|
||||
<h3 data-i18n="help.plugins_install">Installation</h3>
|
||||
<ol>
|
||||
<li data-i18n="help.plugins_install_1">Ouvrez Réglages → 🧩 Plugins.</li>
|
||||
<li data-i18n="help.plugins_install_2">Cliquez « Installer un plugin ».</li>
|
||||
<li data-i18n="help.plugins_install_3">Sélectionnez un fichier <code>.zip</code> contenant le manifest
|
||||
<code>plugin.json</code> + le code du plugin.</li>
|
||||
<li data-i18n="help.plugins_install_4">Le manifest est validé (nom, version semver, hooks, permissions)
|
||||
avant installation.</li>
|
||||
</ol>
|
||||
|
||||
<h3 data-i18n="help.plugins_manage">Gestion</h3>
|
||||
<ul>
|
||||
<li data-i18n="help.plugins_manage_1"><strong>Activer / Désactiver</strong> : boutons sur chaque plugin — les
|
||||
hooks ne tournent que si le plugin est activé.</li>
|
||||
<li data-i18n="help.plugins_manage_2"><strong>Désinstaller</strong> : supprime définitivement le plugin du vault.</li>
|
||||
<li data-i18n="help.plugins_manage_3"><strong>Code</strong> : visualisez le code source du plugin installé.</li>
|
||||
</ul>
|
||||
|
||||
<h3 data-i18n="help.plugins_dev">Développer un plugin</h3>
|
||||
<p data-i18n="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
|
||||
<code>plugin.json</code> et d'un fichier principal (ex.
|
||||
<code>index.js</code>).
|
||||
</p>
|
||||
|
||||
<h3 data-i18n="help.plugins_hooks">Hooks disponibles</h3>
|
||||
<ul>
|
||||
<li><strong data-i18n="help.plugins_hook_render">onFileRender</strong> :
|
||||
<span data-i18n="help.plugins_hook_render_desc">transforme le contenu affiché d'un fichier.</span></li>
|
||||
<li><strong data-i18n="help.plugins_hook_search">onSearchFilter</strong> :
|
||||
<span data-i18n="help.plugins_hook_search_desc">filtre les résultats de recherche.</span></li>
|
||||
<li><strong data-i18n="help.plugins_hook_editor">onEditorAction</strong> :
|
||||
<span data-i18n="help.plugins_hook_editor_desc">intercepte les actions de l'éditeur.</span></li>
|
||||
<li><strong data-i18n="help.plugins_hook_sidebar">onSidebarItem</strong> :
|
||||
<span data-i18n="help.plugins_hook_sidebar_desc">ajoute des éléments à la barre latérale.</span></li>
|
||||
<li><strong data-i18n="help.plugins_hook_file">onFileCreate / onFileDelete</strong> :
|
||||
<span data-i18n="help.plugins_hook_file_desc">réagit à la création / suppression de fichiers.</span></li>
|
||||
<li><strong data-i18n="help.plugins_hook_vault">onVaultMount</strong> :
|
||||
<span data-i18n="help.plugins_hook_vault_desc">exécuté au chargement d'un vault.</span></li>
|
||||
</ul>
|
||||
|
||||
<h3 data-i18n="help.plugins_security">Sécurité</h3>
|
||||
<ul>
|
||||
<li data-i18n="help.plugins_security_1"><strong>Sandbox Web Worker</strong> : le code plugin tourne isolé, sans
|
||||
accès direct au DOM.</li>
|
||||
<li data-i18n="help.plugins_security_2"><strong>Permissions</strong> : chaque hook déclaré doit être satisfait
|
||||
par les permissions du manifest.</li>
|
||||
<li data-i18n="help.plugins_security_3"><strong>Empaquetage sécurisé</strong> : le .zip est vérifié contre le
|
||||
path traversal à l'installation.</li>
|
||||
<li data-i18n="help.plugins_security_4"><strong>Admin uniquement</strong> : l'installation et la suppression
|
||||
requièrent le rôle admin.</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<div class="help-footer">
|
||||
<p>
|
||||
<strong>ObsiGate v1.7.0</strong> - Porte
|
||||
<strong data-i18n="help.footer_version">ObsiGate <span id="help-version"></span></strong> - Porte
|
||||
d'entrée web pour vos vaults Obsidian
|
||||
</p>
|
||||
<p>
|
||||
@@ -4773,6 +4841,7 @@ curl -X POST https://votre-serveur.com/webhook \
|
||||
>.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user