ZADA PluginLoader
Diese Seite dokumentiert die Runtime-Plugin-Architektur von ZADA und zeigt sie live am
ace-snippets Plugin (Inline-Ace im Fließtext + optional Tabs/Manifest).
Prinzip: pluginLoader.js liest #ZADA_PLUGINS, lädt Plugin-Scripts (src), und ruft danach plugin.init(ctx, options) auf.
Ohne #ZADA_PLUGINS ist der Loader ein No-Op.
1) Core: pluginLoader.js
Wesentliche Idee: Registry + deterministisches Laden/Init aus einem JSON-Script-Tag.
/js/core/pluginLoader.js2) Plugin: ace-snippets
Das Plugin kann:
- Inline ACE-Blöcke initialisieren (DOM-Markup:
.zada-ace[data-src]) – kein Manifest nötig - Tabs + Editor über Manifest (
manifestUrl) – klassische Snippet-Liste
3) Page-Konfiguration: #ZADA_PLUGINS
Damit der Loader arbeitet, muss die Seite eine Plugin-Konfiguration enthalten. Beispiel:
/plugins/ace/snippets/zada-framework/pluginInitSectionExampe.json
Hinweis: Der Loader lädt zuerst alle src-Skripte in Reihenfolge und initialisiert danach Plugins in derselben Reihenfolge.
4) Live-Demo: Inline ACE im Text (ohne Manifest)
Diese beiden Blöcke sind reine HTML-Platzhalter. Das Plugin findet sie über
embeddedSelector und rendert sie als read-only ACE.
5) Live-Demo: Tabs + Manifest
Dieser Bereich nutzt ein Manifest als Snippet-Liste:
/plugins/ace/snippets/zada-framework/manifest.json.