Add some experimental module interfaces

...with somewhat placeholder names as they're the best I can think of right now:

 * 'Extras': To add new bits of UI to places (specifically the space panel)
 * 'Builtins': For modules to render components that are part of Element Web
 * 'Navigation': For modules to add paths to the URL router
This commit is contained in:
David Baker
2025-09-24 10:58:41 +01:00
parent ac81502c0a
commit 2cd86f7c3d
5 changed files with 51 additions and 0 deletions
@@ -0,0 +1,18 @@
/*
Copyright 2025 New Vector Ltd.
SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
Please see LICENSE files in the repository root for full details.
*/
import { JSX } from "react";
interface SpacePanelItemProps {
isPanelCollapsed: boolean;
}
export type SpacePanelItemRenderFunction = (props: SpacePanelItemProps) => JSX.Element;
export interface ExtrasApi {
addSpacePanelItem(renderer: SpacePanelItemRenderFunction): void;
}