Plugins

Covers Engine Plugin SDK 2.0.0 · Interface Plugin SDK 0.2.0

TaskBindingTableProps

Standard task binding table shared by plugin task editors.

Import

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

Declaration

export interface TaskBindingTableProps extends HostComponentProps {
    title?: string;
    bindings: TaskBinding[];
    onBindingsChange: (bindings: TaskBinding[]) => void;
    bindingTypes: Array<{value: string; label: string}>;
    channelMode?: "read" | "write";
    typeKey?: string;
    addressKey?: string;
    channelKey?: string;
    typeLabel?: string;
    addressLabel?: string;
    channelLabel?: string;
    channelPlaceholder?: string;
    emptyMessage?: string;
    addLabel?: string;
    addDisabled?: boolean;
    normalizeChannelValue?: (value: string) => string;
    createBinding?: (sequence: number) => TaskBinding;
    /** Optional plugin-defined columns rendered with the standard host table styling. */
    columns?: Array<{
        key?: string;
        label: HostNode;
        width?: string;
        render: (binding: TaskBinding, index: number, updateBinding: (binding: TaskBinding) => void) => HostNode;
    }>;
    /** Optional controls replacing the standard single add button. */
    headerActions?: HostNode;
    /** Minimum width of the horizontally scrollable table content. */
    minTableWidth?: string;
}

Members

NameTypeRequirementDescription
titlestringOptional
bindingsTaskBinding[]Required
onBindingsChange(bindings: TaskBinding[]) => voidRequired
bindingTypesArray<{value: string; label: string}>Required
channelMode"read" | "write"Optional
typeKeystringOptional
addressKeystringOptional
channelKeystringOptional
typeLabelstringOptional
addressLabelstringOptional
channelLabelstringOptional
channelPlaceholderstringOptional
emptyMessagestringOptional
addLabelstringOptional
addDisabledbooleanOptional
normalizeChannelValue(value: string) => stringOptional
createBinding(sequence: number) => TaskBindingOptional
columns`Array<{

key?: string;

label: HostNode;

width?: string;

render: (binding: TaskBinding, index: number, updateBinding: (binding: TaskBinding) => void) => HostNode;

}>`
OptionalOptional plugin-defined columns rendered with the standard host table styling.
headerActionsHostNodeOptionalOptional controls replacing the standard single add button.
minTableWidthstringOptionalMinimum width of the horizontally scrollable table content.