User Interface Extensions

Last modified by Manuel Leduc on 2024/10/23 17:08

Description

User Interface Extensions (UIX) are a generic mechanism to inject UI elements at a given location, call User Interface Extension Point (UIXP) by extension.

Any UI Component can define an UIXP with a unique id. Then, any extension can provide UIX for known UIXP ids.

Supported Backends

Backend agnostic.

User

N/A

Admin

N/A

Developer

APIs

User Interface Extensions

interface UIExtension {
 /**
   * The unique id of an UI Extension
   */

  id: string;

 /**
   * The id of the extension point where this UIX should be injected.
   */

  uixpName: string;

 /**
   * The order of the UIX. The lowest values are expected to be presented
   * first.
   */

  order: number;

 /**
   * A free set of parameters.
   */

  parameters: { [key: string]: unknown };

 /**
   * Compute if the UIX should be displayed.
   */

  enabled(): Promise<boolean>;

 /**
   * The UI component of the UIX.
   */

  component(): Promise<Component>;
}

User Iterface Extensions Manager

/**
 * @since 0.11
 */

interface UIExtensionsManager {
 /**
   *
   * @param name the name of the UIXP
   * @return a list of UIExtension components, sorted by ascending order. disabled UIExtensions are excluded
   */

  list(name: string): Promise<UIExtension[]>;
}

Known UIXPs and UIXs

France 2030 Logo

This project is being financed by the French State as part of the France 2030 program

Ce projet est financé par l’État Français dans le cadre de France 2030

  • Powered by XWiki 16.4.4-node1. Hosted and managed by XWiki SAS

Get Connected