Skip to main content

Module plugin

Module plugin 

Source
Expand description

Plugin system for JSON-UI custom interactive components.

Provides a trait-based extension point where custom components (Map, Chart, Editor, etc.) register themselves with the framework. Each plugin declares its component type name, props schema, render function, and required JS/CSS assets.

A global PluginRegistry (mirroring the LayoutRegistry pattern) maps component type names to plugin implementations. The renderer checks built-in components first, then falls back to the plugin registry for unknown types.

Structs§

Asset
A JS or CSS asset required by a plugin.
CollectedAssets
Collected and deduplicated assets from all plugins used on a page.
PluginRegistry
Registry mapping component type names to plugin implementations.

Traits§

JsonUiPlugin
Trait for JSON-UI plugin components.

Functions§

collect_plugin_assets
Collect and deduplicate assets from a list of plugin type names.
global_plugin_registry
Access the global plugin registry.
register_plugin
Register a plugin in the global registry.
registered_plugin_types
Return a sorted list of all registered plugin type names.
with_plugin
Look up a plugin by component type name in the global registry.