feat(FN-3079): add plugin dashboard views and dependency graph plugin
- Add plugin dashboard view registration and hosting across core, dashboard routes, and plugin SDK exports - Integrate plugin-provided views into app navigation, mobile/header UI, and view state hooks with coverage - Add fusion-plugin-dependency-graph example plugin with persisted storage, dashboard view UI, and manifest wiring - Update plugin authoring and architecture docs for dashboard view extension points - Add a changeset for @runfusion/fusion covering plugin dashboard view support Fusion-Task-Id: FN-3079
This commit is contained in:
@@ -240,6 +240,22 @@ describe("Plugin SDK", () => {
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
it("PluginDashboardViewDefinition can be used in FusionPlugin", () => {
|
||||
const plugin: FusionPlugin = {
|
||||
manifest: { id: "test", name: "Test", version: "1.0.0" },
|
||||
state: "installed",
|
||||
hooks: {},
|
||||
tools: [],
|
||||
routes: [],
|
||||
dashboardViews: [
|
||||
{ viewId: "graph", label: "Graph", componentPath: "./views/Graph.js", placement: "more" },
|
||||
],
|
||||
};
|
||||
expect(plugin.dashboardViews).toHaveLength(1);
|
||||
expect(plugin.dashboardViews?.[0].viewId).toBe("graph");
|
||||
});
|
||||
// ── validatePluginManifest ───────────────────────────────────────────
|
||||
|
||||
describe("validatePluginManifest", () => {
|
||||
|
||||
@@ -49,6 +49,7 @@ export type {
|
||||
PluginRouteDefinition,
|
||||
PluginRouteMethod,
|
||||
PluginUiSlotDefinition,
|
||||
PluginDashboardViewDefinition,
|
||||
PluginRuntimeManifestMetadata,
|
||||
PluginRuntimeFactory,
|
||||
PluginRuntimeRegistration,
|
||||
|
||||
Reference in New Issue
Block a user