Plugins

Covers Engine Plugin SDK 2.0.0 · Interface Plugin SDK 0.2.0

ModuleUiDefinition

Registers icon and panel components for a module type.

Import

import type { ModuleUiDefinition } from "@dartwic/interface-sdk";

Declaration

export interface ModuleUiDefinition extends NamedContribution {
    /** Optional shared document declaration. An explicit panel owns its layout; omit panel for the automatic editor. */
    configMap?: ConfigMapDefinition;
    icon?: (props: {className?: string; size?: number; "aria-hidden"?: boolean}) => any;
    panel?: ModuleConfigDefinition["component"];
    /** Opts this module type into shared live connection status presentation. */
    connection?: ModuleConnectionDefinition;
    /** Host normalization metadata; the registrar sets this when an explicit panel accompanies configMap. */
    customConfigMapLayout?: boolean;
}

Members

NameTypeRequirementDescription
configMapConfigMapDefinitionOptionalOptional shared document declaration. An explicit panel owns its layout; omit panel for the automatic editor.
icon(props: {className?: string; size?: number; "aria-hidden"?: boolean}) => anyOptional
panelModuleConfigDefinition["component"]Optional
connectionModuleConnectionDefinitionOptionalOpts this module type into shared live connection status presentation.
customConfigMapLayoutbooleanOptionalHost normalization metadata; the registrar sets this when an explicit panel accompanies configMap.