Editors, Toolbar, And Export
This page documents 115 public symbols exported by @revolist/gantt.
areGanttDependencyDropdownValuesEqual
Section titled “areGanttDependencyDropdownValuesEqual”function
export function areGanttDependencyDropdownValuesEqual(left: readonly GanttDependencyDropdownValue[], right: readonly GanttDependencyDropdownValue[]): boolean;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
left | readonly GanttDependencyDropdownValue[] | Yes | — | |
right | readonly GanttDependencyDropdownValue[] | Yes | — |
Related types: GanttDependencyDropdownValue
AssignResourceMenuItemOptions
Section titled “AssignResourceMenuItemOptions”interface
export interface AssignResourceMenuItemOptions extends GanttContextMenuBaseItemOptions { readonly onAssignResource: (context: GanttContextMenuExtensionContext) => void;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
onAssignResource | (context: GanttContextMenuExtensionContext) => void | Yes | — |
Related types: GanttContextMenuBaseItemOptions, GanttContextMenuExtensionContext
buildDependencyValidationSummary
Section titled “buildDependencyValidationSummary”function
Convert scheduler diagnostics or projected row warnings into grouped data for a dependency validation panel. This helper is intentionally presentation-free.
export function buildDependencyValidationSummary(input: DependencyValidationSummaryInput = {}): DependencyValidationSummary;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
input | DependencyValidationSummaryInput | No | {} |
Related types: DependencyValidationSummary, DependencyValidationSummaryInput
buildResourceOverallocationSummary
Section titled “buildResourceOverallocationSummary”function
Convert projected resource-planning rows, raw load summaries, or scheduler over-allocation diagnostics into grouped data for an overload summary panel. The return value is presentation-free so UI layers can render it however they need.
export function buildResourceOverallocationSummary(input: ResourceOverallocationSummaryInput = {}): ResourceOverallocationSummary;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
input | ResourceOverallocationSummaryInput | No | {} |
Related types: ResourceOverallocationSummary, ResourceOverallocationSummaryInput
captureGanttBaseline
Section titled “captureGanttBaseline”function
export function captureGanttBaseline(grid: HTMLRevoGridElement, options?: CaptureBaselineOptions): Promise<BaselineSnapshot | null>;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
grid | HTMLRevoGridElement | Yes | — | |
options | CaptureBaselineOptions | undefined | No | — |
Related types: BaselineSnapshot
createAssignResourceMenuItem
Section titled “createAssignResourceMenuItem”function
export function createAssignResourceMenuItem(options: AssignResourceMenuItemOptions): ContextMenuItem;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
options | AssignResourceMenuItemOptions | Yes | — |
Related types: AssignResourceMenuItemOptions
createDeleteTaskMenuItem
Section titled “createDeleteTaskMenuItem”function
export function createDeleteTaskMenuItem(options: DeleteTaskMenuItemOptions): ContextMenuItem;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
options | DeleteTaskMenuItemOptions | Yes | — |
Related types: DeleteTaskMenuItemOptions
createDuplicateTaskMenuItem
Section titled “createDuplicateTaskMenuItem”function
export function createDuplicateTaskMenuItem(options: DuplicateTaskMenuItemOptions = {}): ContextMenuItem;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
options | DuplicateTaskMenuItemOptions | No | {} |
Related types: DuplicateTaskMenuItemOptions
createExportMenuItem
Section titled “createExportMenuItem”function
export function createExportMenuItem(options: ExportMenuItemOptions = {}): ContextMenuItem;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
options | ExportMenuItemOptions | No | {} |
Related types: ExportMenuItemOptions
createGanttContextMenuExtensionItems
Section titled “createGanttContextMenuExtensionItems”function
export function createGanttContextMenuExtensionItems(options: { readonly duplicate?: DuplicateTaskMenuItemOptions | false; readonly delete?: DeleteTaskMenuItemOptions | false; readonly assignResource?: AssignResourceMenuItemOptions | false; readonly export?: ExportMenuItemOptions | false;}): ContextMenuItem[];| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
options | { readonly duplicate?: DuplicateTaskMenuItemOptions | false; readonly delete?: DeleteTaskMenuItemOptions | false; readonly assignResource?: AssignResourceMenuItemOptions | false; readonly export?: ExportMenuItemOptions | false; } | Yes | — |
Related types: AssignResourceMenuItemOptions, DeleteTaskMenuItemOptions, DuplicateTaskMenuItemOptions, ExportMenuItemOptions
createGanttRoleEditabilityHelpers
Section titled “createGanttRoleEditabilityHelpers”function
export function createGanttRoleEditabilityHelpers(policy: GanttRoleEditabilityPolicy): GanttRoleEditabilityHelpers;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
policy | GanttRoleEditabilityPolicy | Yes | — |
Related types: GanttRoleEditabilityPolicy
createGanttToolbarQuickWinActions
Section titled “createGanttToolbarQuickWinActions”function
Framework-neutral command descriptors for common Gantt toolbar additions.
Render the returned commands in any toolbar UI and call run() from the
button handler. Creating the descriptors does not dispatch events, scroll, or
mutate the grid.
export function createGanttToolbarQuickWinActions(grid: HTMLRevoGridElement, options: GanttToolbarQuickWinOptions = {}): GanttToolbarQuickWinActions;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
grid | HTMLRevoGridElement | Yes | — | |
options | GanttToolbarQuickWinOptions | No | {} |
Related types: GanttToolbarQuickWinActions, GanttToolbarQuickWinOptions
createTaskDetailPopoverModel
Section titled “createTaskDetailPopoverModel”function
Creates a framework-agnostic data model for a task detail popover.
The helper intentionally returns plain sections and fields only. Rendering, interaction, positioning, and DOM ownership stay with the consuming UI.
export function createTaskDetailPopoverModel(options: CreateTaskDetailPopoverModelOptions): TaskDetailPopoverModel;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
options | CreateTaskDetailPopoverModelOptions | Yes | — |
Related types: TaskDetailPopoverModel
createTaskEditorDialogLocaleText
Section titled “createTaskEditorDialogLocaleText”function
export function createTaskEditorDialogLocaleText(localeText: GanttTaskEditorDialogLocaleTextOptions | undefined, inheritedLocaleText?: GanttTaskEditorDialogLocaleTextOptions): GanttTaskEditorDialogLocaleText;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
localeText | GanttTaskEditorDialogLocaleTextOptions | undefined | Yes | — | |
inheritedLocaleText | GanttTaskEditorDialogLocaleTextOptions | undefined | No | — |
Related types: GanttTaskEditorDialogLocaleText, GanttTaskEditorDialogLocaleTextOptions
createTaskEditorFormValues
Section titled “createTaskEditorFormValues”function
export function createTaskEditorFormValues(task: TaskEntity, resources: readonly ResourceEntity[] = [], assignments: readonly AssignmentEntity[] = [], options: Pick<NormalizeTaskEditorSubmitOptions, 'durationSettings' | 'calendars'> = {}): TaskEditorFormValues;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
task | TaskEntity | Yes | — | |
resources | readonly ResourceEntity[] | No | [] | |
assignments | readonly AssignmentEntity[] | No | [] | |
options | Pick<NormalizeTaskEditorSubmitOptions, "durationSettings" | "calendars"> | No | {} |
Related types: AssignmentEntity, NormalizeTaskEditorSubmitOptions, ResourceEntity, TaskEditorFormValues, TaskEntity
DEFAULT_GANTT_DEPENDENCY_TYPES
Section titled “DEFAULT_GANTT_DEPENDENCY_TYPES”constant
export const DEFAULT_GANTT_DEPENDENCY_TYPES: readonly ["finish-to-start", "start-to-start", "finish-to-finish", "start-to-finish"];DEFAULT_TASK_EDITOR_DIALOG_LOCALE_TEXT
Section titled “DEFAULT_TASK_EDITOR_DIALOG_LOCALE_TEXT”constant
export const DEFAULT_TASK_EDITOR_DIALOG_LOCALE_TEXT: GanttTaskEditorDialogLocaleText;Related types: GanttTaskEditorDialogLocaleText
defineGanttToolbar
Section titled “defineGanttToolbar”constant
Mounts the Gantt editing toolbar into el and wires it to the given
revo-grid element. Call this once after the grid’s gantt property
has been set so the toolbar can read the initial visual config.
controls hides built-in controls. Omitted flags are visible by default,
except baseline, which is opt-in.
Example
Section titled “Example”import { defineGanttToolbar } from '@revolist/gantt';
const toolbarEl = document.querySelector('#gantt-toolbar');const grid = document.querySelector('revo-grid');
defineGanttToolbar(toolbarEl, { grid, columns: [ { prop: 'wbs', label: 'WBS', visible: true }, { prop: 'name', label: 'Name', visible: true }, { prop: 'startDate', label: 'Start Date', visible: true }, { prop: 'duration', label: 'Duration', visible: true }, { prop: 'status', label: 'Status', visible: true }, { prop: 'endDate', label: 'End Date', visible: false }, ], visuals: { showDependencies: true, showBaseline: true, showCriticalPath: true, }, controls: { search: true, history: true, undo: true, redo: true, tree: true, expandAll: true, collapseAll: true, zoom: true, zoomIn: true, zoomOut: true, tasks: true, addTask: true, indent: true, outdent: true, export: true, exportExcel: true, columns: true, dependencies: true, baseline: true, criticalPath: true, },});export const defineGanttToolbar: (el: HTMLElement, options: GanttToolbarOptions) => void;Related types: GanttToolbarOptions
DeleteTaskMenuItemOptions
Section titled “DeleteTaskMenuItemOptions”interface
export interface DeleteTaskMenuItemOptions extends GanttContextMenuBaseItemOptions { readonly onDeleteTask: (context: GanttContextMenuExtensionContext) => void; readonly confirm?: (context: GanttContextMenuExtensionContext) => boolean;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
onDeleteTask | (context: GanttContextMenuExtensionContext) => void | Yes | — | |
confirm | ((context: GanttContextMenuExtensionContext) => boolean) | undefined | No | — |
Related types: GanttContextMenuBaseItemOptions, GanttContextMenuExtensionContext
DependencyEndpointPair
Section titled “DependencyEndpointPair”interface
export interface DependencyEndpointPair { readonly predecessor: GanttDependencyEndpoint; readonly successor: GanttDependencyEndpoint;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
predecessor | GanttDependencyEndpoint | Yes | — | |
successor | GanttDependencyEndpoint | Yes | — |
Related types: GanttDependencyEndpoint
dependencyEndpointsToType
Section titled “dependencyEndpointsToType”function
export function dependencyEndpointsToType(predecessor: GanttDependencyEndpoint, successor: GanttDependencyEndpoint): DependencyType;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
predecessor | GanttDependencyEndpoint | Yes | — | |
successor | GanttDependencyEndpoint | Yes | — |
Related types: DependencyType, GanttDependencyEndpoint
dependencyTypeToEndpoints
Section titled “dependencyTypeToEndpoints”function
export function dependencyTypeToEndpoints(type: DependencyType): DependencyEndpointPair;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
type | DependencyType | Yes | — |
Related types: DependencyEndpointPair, DependencyType
DependencyValidationSummary
Section titled “DependencyValidationSummary”interface
export interface DependencyValidationSummary { readonly totalCount: number; readonly conflictCount: number; readonly warningCount: number; readonly groups: readonly DependencyValidationSummaryGroup[];}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
totalCount | number | Yes | — | |
conflictCount | number | Yes | — | |
warningCount | number | Yes | — | |
groups | readonly DependencyValidationSummaryGroup[] | Yes | — |
DependencyValidationSummaryInput
Section titled “DependencyValidationSummaryInput”interface
export interface DependencyValidationSummaryInput { readonly conflicts?: readonly SchedulerConflict[]; readonly issues?: readonly SchedulerIssue[]; readonly rows?: readonly DependencyValidationSummaryRow[];}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
conflicts | readonly SchedulerConflict[] | undefined | No | — | |
issues | readonly SchedulerIssue[] | undefined | No | — | |
rows | readonly DependencyValidationSummaryRow[] | undefined | No | — |
Related types: SchedulerConflict, SchedulerIssue
DuplicateTaskMenuItemOptions
Section titled “DuplicateTaskMenuItemOptions”interface
export interface DuplicateTaskMenuItemOptions extends GanttContextMenuBaseItemOptions { readonly copyName?: (task: Partial<TaskEntity>, context: GanttContextMenuExtensionContext) => string; readonly createTaskOptions?: ( context: GanttContextMenuExtensionContext, ) => GanttCreateTaskOptions | null | undefined;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
copyName | ((task: Partial<TaskEntity>, context: GanttContextMenuExtensionContext) => string) | undefined | No | — | |
createTaskOptions | ((context: GanttContextMenuExtensionContext) => GanttCreateTaskOptions | null | undefined) | undefined | No | — |
Related types: GanttContextMenuBaseItemOptions, GanttContextMenuExtensionContext, GanttCreateTaskOptions, TaskEntity
exportGanttCsv
Section titled “exportGanttCsv”function
export function exportGanttCsv(grid: HTMLRevoGridElement, options: GanttCsvExportOptions = {}): Promise<boolean>;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
grid | HTMLRevoGridElement | Yes | — | |
options | GanttCsvExportOptions | No | {} |
Related types: GanttCsvExportOptions
exportGanttExcel
Section titled “exportGanttExcel”function
export function exportGanttExcel(grid: HTMLRevoGridElement, options: GanttExcelExportOptions = {}): CustomEvent<GanttExcelExportOptions>;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
grid | HTMLRevoGridElement | Yes | — | |
options | ExportExcelEvent | No | {} |
Related types: GanttExcelExportOptions
ExportMenuItemOptions
Section titled “ExportMenuItemOptions”interface
export interface ExportMenuItemOptions extends GanttContextMenuBaseItemOptions { readonly exportOptions?: ExportExcelEvent | ((context: GanttContextMenuExtensionContext) => ExportExcelEvent | undefined);}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
exportOptions | ExportExcelEvent | ((context: GanttContextMenuExtensionContext) => ExportExcelEvent | undefined) | undefined | No | — |
Related types: GanttContextMenuBaseItemOptions, GanttContextMenuExtensionContext
fitGanttToProject
Section titled “fitGanttToProject”function
export function fitGanttToProject(grid: HTMLRevoGridElement, options: GanttProjectFitOptions = {}): Promise<boolean>;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
grid | HTMLRevoGridElement | Yes | — | |
options | GanttProjectFitOptions | No | {} |
Related types: GanttProjectFitOptions
GANTT_TOOLBAR_SELECT_ALL_COLUMNS
Section titled “GANTT_TOOLBAR_SELECT_ALL_COLUMNS”constant
export const GANTT_TOOLBAR_SELECT_ALL_COLUMNS: "__select_all__";GanttBaselineCaptureRuntime
Section titled “GanttBaselineCaptureRuntime”interface
export interface GanttBaselineCaptureRuntime { captureBaseline(options?: CaptureBaselineOptions): BaselineSnapshot | null;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
captureBaseline(options?: CaptureBaselineOptions) | BaselineSnapshot | null | Yes | — |
Related types: BaselineSnapshot
GanttContextMenuBaseItemOptions
Section titled “GanttContextMenuBaseItemOptions”interface
export interface GanttContextMenuBaseItemOptions { readonly name?: ContextMenuItem['name']; readonly class?: string; readonly rowClass?: ContextMenuItem['rowClass']; readonly icon?: string; readonly hidden?: ContextMenuItem['hidden']; readonly keepOpen?: boolean;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
name | string | ((focused?: Cell | null, range?: RangeArea | null) => string) | undefined | No | — | |
class | string | undefined | No | — | |
rowClass | string | ((item: ContextMenuItem, focused?: Cell | null, range?: RangeArea | null) => string) | undefined | No | — | |
icon | string | undefined | No | — | |
hidden | boolean | ContextMenuItemStateResolver | undefined | No | — | |
keepOpen | boolean | undefined | No | — |
GanttContextMenuExtensionContext
Section titled “GanttContextMenuExtensionContext”interface
export interface GanttContextMenuExtensionContext { readonly event: MouseEvent; readonly focused?: Cell | null; readonly range?: RangeArea | null; readonly close?: () => void; readonly revogrid: HTMLRevoGridElement; readonly providers: PluginProviders; readonly taskId: TaskId | null; readonly task: Partial<TaskEntity> | null;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
event | MouseEvent | Yes | — | |
focused | Cell | null | undefined | No | — | |
range | RangeArea | null | undefined | No | — | |
close | (() => void) | undefined | No | — | |
revogrid | HTMLRevoGridElement | Yes | — | |
providers | PluginProviders | Yes | — | |
taskId | string | null | Yes | — | |
task | Partial<TaskEntity> | null | Yes | — |
Related types: TaskEntity, TaskId
GanttCsvExportOptions
Section titled “GanttCsvExportOptions”interface
export interface GanttCsvExportOptions { filename?: string; bom?: boolean; columnDelimiter?: string; rowDelimiter?: string; mime?: string; encoding?: string;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
filename | string | undefined | No | — | |
bom | boolean | undefined | No | — | |
columnDelimiter | string | undefined | No | — | |
rowDelimiter | string | undefined | No | — | |
mime | string | undefined | No | — | |
encoding | string | undefined | No | — |
GanttDependencyDropdownConfig
Section titled “GanttDependencyDropdownConfig”interface
export interface GanttDependencyDropdownConfig { readonly tasks: readonly GanttDependencyDropdownTaskOption[]; readonly getTasks?: () => readonly GanttDependencyDropdownTaskOption[]; readonly allowedTypes?: readonly DependencyType[];}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
tasks | readonly GanttDependencyDropdownTaskOption[] | Yes | — | |
getTasks | (() => readonly GanttDependencyDropdownTaskOption[]) | undefined | No | — | |
allowedTypes | readonly DependencyType[] | undefined | No | — |
Related types: DependencyType, GanttDependencyDropdownTaskOption
GanttDependencyDropdownControl
Section titled “GanttDependencyDropdownControl”function
export function GanttDependencyDropdownControl({ getOptions, currentTaskId, value, rawValue, allowedTypes, displayValue, autoOpen = false, theme, onChange, onClose,}: GanttDependencyDropdownControlProps): h.JSX.Element;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
{ getOptions, currentTaskId, value, rawValue, allowedTypes, displayValue, autoOpen = false, theme, onChange, onClose, } | GanttDependencyDropdownControlProps | Yes | — |
Related types: GanttDependencyDropdownControlProps
GanttDependencyDropdownControlProps
Section titled “GanttDependencyDropdownControlProps”interface
export interface GanttDependencyDropdownControlProps { readonly getOptions: () => readonly GanttDependencyDropdownTaskOption[]; readonly currentTaskId: TaskId; readonly value: readonly GanttDependencyDropdownValue[]; readonly rawValue?: unknown; readonly allowedTypes: readonly DependencyType[]; readonly displayValue: string; readonly autoOpen?: boolean; readonly theme?: string; readonly onChange: (value: readonly GanttDependencyDropdownValue[]) => void; readonly onClose?: (focusNext?: boolean) => void;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
getOptions | () => readonly GanttDependencyDropdownTaskOption[] | Yes | — | |
currentTaskId | string | Yes | — | |
value | readonly GanttDependencyDropdownValue[] | Yes | — | |
rawValue | unknown | No | — | |
allowedTypes | readonly DependencyType[] | Yes | — | |
displayValue | string | Yes | — | |
autoOpen | boolean | undefined | No | — | |
theme | string | undefined | No | — | |
onChange | (value: readonly GanttDependencyDropdownValue[]) => void | Yes | — | |
onClose | ((focusNext?: boolean) => void) | undefined | No | — |
Related types: DependencyType, GanttDependencyDropdownTaskOption, GanttDependencyDropdownValue, TaskId
GanttDependencyDropdownTaskOption
Section titled “GanttDependencyDropdownTaskOption”interface
export interface GanttDependencyDropdownTaskOption { readonly taskId: TaskId; readonly wbs: string; readonly name: string; readonly label: string;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
taskId | string | Yes | — | |
wbs | string | Yes | — | |
name | string | Yes | — | |
label | string | Yes | — |
Related types: TaskId
GanttDependencyDropdownValue
Section titled “GanttDependencyDropdownValue”interface
export interface GanttDependencyDropdownValue { readonly taskId: TaskId; readonly type: DependencyType; readonly lagDays?: number;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
taskId | string | Yes | — | |
type | DependencyType | Yes | — | |
lagDays | number | undefined | No | — |
Related types: DependencyType, TaskId
GanttDependencyEndpoint
Section titled “GanttDependencyEndpoint”type
export type GanttDependencyEndpoint = 'start' | 'finish';GanttExcelExportOptions
Section titled “GanttExcelExportOptions”type
export type GanttExcelExportOptions = ExportExcelEvent;GanttExcelExportRow
Section titled “GanttExcelExportRow”interface
export interface GanttExcelExportRow { readonly Project: string; readonly WBS: string; readonly 'Task ID': string; readonly 'Parent ID': string; readonly Name: string; readonly 'Task Type': string; readonly Status: string; readonly 'Workflow Status': string; readonly 'Start Date': string; readonly 'Finish Date': string; readonly Duration: string; readonly Work: string; readonly 'Remaining Duration': string; readonly '% Complete': string; readonly Cost: string | number | ''; readonly Assignees: string; readonly Predecessors: string; readonly Successors: string; readonly 'Task Mode': string; readonly 'Scheduled By': string; readonly Constraint: string; readonly 'Constraint Date': string; readonly Deadline: string; readonly 'Actual Start': string; readonly 'Actual Finish': string; readonly 'Effort Mode': string; readonly 'Effort Driven': string; readonly Inactive: string; readonly Priority: number | ''; readonly 'Can Level': string; readonly 'Leveling Delay (days)': number | ''; readonly 'Total Slack (days)': number | ''; readonly Critical: string; readonly 'Early Start': string; readonly 'Early Finish': string; readonly 'Late Start': string; readonly 'Late Finish': string; readonly 'Start Variance (days)': number | ''; readonly 'Finish Variance (days)': number | ''; readonly 'Duration Variance': string; readonly 'Progress Variance (%)': number | ''; readonly Calendar: string; readonly Tags: string; readonly Notes: string; readonly 'Scheduling Warnings': string;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
Project | string | Yes | — | |
WBS | string | Yes | — | |
'Task ID' | string | Yes | — | |
'Parent ID' | string | Yes | — | |
Name | string | Yes | — | |
'Task Type' | string | Yes | — | |
Status | string | Yes | — | |
'Workflow Status' | string | Yes | — | |
'Start Date' | string | Yes | — | |
'Finish Date' | string | Yes | — | |
Duration | string | Yes | — | |
Work | string | Yes | — | |
'Remaining Duration' | string | Yes | — | |
'% Complete' | string | Yes | — | |
Cost | string | number | Yes | — | |
Assignees | string | Yes | — | |
Predecessors | string | Yes | — | |
Successors | string | Yes | — | |
'Task Mode' | string | Yes | — | |
'Scheduled By' | string | Yes | — | |
Constraint | string | Yes | — | |
'Constraint Date' | string | Yes | — | |
Deadline | string | Yes | — | |
'Actual Start' | string | Yes | — | |
'Actual Finish' | string | Yes | — | |
'Effort Mode' | string | Yes | — | |
'Effort Driven' | string | Yes | — | |
Inactive | string | Yes | — | |
Priority | number | "" | Yes | — | |
'Can Level' | string | Yes | — | |
'Leveling Delay (days)' | number | "" | Yes | — | |
'Total Slack (days)' | number | "" | Yes | — | |
Critical | string | Yes | — | |
'Early Start' | string | Yes | — | |
'Early Finish' | string | Yes | — | |
'Late Start' | string | Yes | — | |
'Late Finish' | string | Yes | — | |
'Start Variance (days)' | number | "" | Yes | — | |
'Finish Variance (days)' | number | "" | Yes | — | |
'Duration Variance' | string | Yes | — | |
'Progress Variance (%)' | number | "" | Yes | — | |
Calendar | string | Yes | — | |
Tags | string | Yes | — | |
Notes | string | Yes | — | |
'Scheduling Warnings' | string | Yes | — |
GanttExcelMappingOptions
Section titled “GanttExcelMappingOptions”interface
export interface GanttExcelMappingOptions { /** * Resource-planning rows contain load bar metadata rather than task data. * They are skipped by default so task exports do not leak timeline layout fields. */ readonly includeResourceRows?: boolean;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
includeResourceRows | boolean | undefined | No | — | Resource-planning rows contain load bar metadata rather than task data. They are skipped by default so task exports do not leak timeline layout fields. |
GanttPanelResizeDetail
Section titled “GanttPanelResizeDetail”interface
Payload emitted with each gantt-panel-resize event.
export interface GanttPanelResizeDetail { /** The current width of the gantt panel in pixels. */ readonly width: number;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
width | number | Yes | — | The current width of the gantt panel in pixels. |
GanttPanelResizePlugin
Section titled “GanttPanelResizePlugin”class
GanttPanelResizePlugin adds a drag handle on the left edge of the pinned-end (gantt chart) viewport, allowing the user to resize the split between the task-list columns (rgCol) and the gantt chart (colPinEnd).
Dragging the handle left expands the gantt panel; dragging right shrinks it.
An gantt-panel-resize event is emitted on the revogrid element during and
after each drag with { width: number } in its detail.
export class GanttPanelResizePlugin extends CorePlugin { constructor(revogrid: HTMLRevoGridElement, providers: PluginProviders, config?: GanttPanelResizePluginConfig); setPanelWidth(width: number): void; getPanelWidth(): number | null; syncTimelineScrollPosition(coordinate: number): void; destroy(): void;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
handle | HTMLDivElement | Yes | — | |
ghost | HTMLDivElement | Yes | — | |
taskListScroll | PanelScrollElement | Yes | — | |
timelineScroll | PanelScrollElement | Yes | — | |
rAFId | number | null | Yes | null | |
dragRafId | number | null | Yes | null | |
dragWidth | number | null | Yes | null | |
dragStartWidth | number | null | Yes | null | |
dragStartDividerLeft | number | null | Yes | null | |
dragColPinEnd | HTMLElement | null | Yes | null | |
dragMoved | boolean | Yes | false | |
isDragging | boolean | Yes | false | |
isDestroyed | boolean | Yes | false | |
pendingInitialWidth | string | number | null | Yes | null | |
fullWidthBecauseNoTaskColumns | boolean | Yes | false | |
desiredPanelWidth | number | null | Yes | null | |
lastTaskListPanelWidth | number | null | Yes | null | |
lastTaskListViewportWidth | number | null | Yes | null | |
lastAppliedTaskListViewportWidth | number | null | Yes | null | |
pendingPanelForward | { side: PanelScrollSide; coordinate: number; } | null | Yes | null | |
leftEdgeSyncGeneration | Record<PanelScrollSide, number> | Yes | { 'task-list': 0, timeline: 0, } | |
setPanelWidth(width: number) | void | Yes | — | Programmatically set the gantt panel width. |
getPanelWidth() | number | null | Yes | — | Returns the current gantt panel (colPinEnd) width in pixels, or null if the viewport is not yet rendered. |
syncTimelineScrollPosition(coordinate: number) | void | Yes | — | Mirror a programmatic timeline viewport scroll into the visible panel scrollbar without forwarding the change back through the viewport. |
destroy() | void | Yes | — | |
createPanelScroll(side: PanelScrollSide) | PanelScrollElement | Yes | — | |
applyInitialWidth(initialWidth: number | string) | boolean | Yes | — | |
getColPinEnd() | HTMLElement | null | Yes | — | |
getRgCol() | HTMLElement | null | Yes | — | |
schedulePositionUpdate() | void | Yes | — | |
updateHandlePosition() | void | Yes | — | |
onPointerDown | (e: PointerEvent) => void | Yes | (e: PointerEvent): void => { const colPinEnd = this.getColPinEnd(); if (!colPinEnd || !this.hasVisibleTaskListColumns()) return; e.preventDefault(); this.isDragging = true; this.dragColPinEnd = colPinEnd; this.handle.classList.add('is-dragging'); const startX = e.clientX; const pinEndRect = colPinEnd.getBoundingClientRect(); const gridRect = this.revogrid.getBoundingClientRect(); const startWidth = this.getCommittedPanelWidth(colPinEnd, pinEndRect.width); this.dragWidth = startWidth; this.dragStartWidth = startWidth; this.dragStartDividerLeft = pinEndRect.left - gridRect.left; this.dragMoved = false; this.updateGhostPosition(startWidth, colPinEnd); this.handle.setPointerCapture(e.pointerId); const onPointerMove = (moveEvent: PointerEvent): void => { // Dragging left = positive delta = wider gantt pane const delta = startX - moveEvent.clientX; this.dragMoved ||= delta !== 0; const nextWidth = this.clampWidth(startWidth + delta, colPinEnd); this.dragWidth = nextWidth; this.scheduleDragUpdate(); }; const finishDrag = (commit: boolean): void => { if (commit && this.dragMoved) { this.applyPendingDragWidth(); } this.isDragging = false; this.dragColPinEnd = null; this.dragWidth = null; this.dragStartWidth = null; this.dragStartDividerLeft = null; this.dragMoved = false; this.ghost.style.display = 'none'; this.handle.classList.remove('is-dragging'); if (this.handle.hasPointerCapture(e.pointerId)) { this.handle.releasePointerCapture(e.pointerId); } this.handle.removeEventListener('pointermove', onPointerMove); this.handle.removeEventListener('pointerup', onPointerUp); this.handle.removeEventListener('pointercancel', onPointerCancel); this.schedulePositionUpdate(); }; const onPointerUp = (): void => finishDrag(true); const onPointerCancel = (): void => finishDrag(false); this.handle.addEventListener('pointermove', onPointerMove); this.handle.addEventListener('pointerup', onPointerUp); this.handle.addEventListener('pointercancel', onPointerCancel); } | |
clampWidth(desiredWidth: number, _colPinEnd: HTMLElement) | number | Yes | — | |
scheduleDragUpdate() | void | Yes | — | |
flushDragPreview() | void | Yes | — | |
applyPendingDragWidth() | void | Yes | — | |
applyPanelWidth(colPinEnd: HTMLElement, width: number, emitEvent = true, rememberWidth = true) | void | Yes | — | |
updateGhostPosition(width: number, colPinEnd: HTMLElement) | void | Yes | — | |
getCommittedPanelWidth(colPinEnd: HTMLElement, renderedWidth: number) | number | Yes | — | |
syncGridStoresWithPanelWidth(width: number) | boolean | Yes | — | |
syncPanelScrollbars() | void | Yes | — | |
syncPanelScrollbar(side: PanelScrollSide) | void | Yes | — | |
getViewportBounds(viewport: HTMLElement) | { left: number; bottom: number; width: number } | Yes | — | |
getHorizontalRealSize(side: PanelScrollSide) | number | Yes | — | |
onTaskListPanelScroll | (event: Event) => void | Yes | (event: Event): void => { this.forwardPanelScroll('task-list', event as CustomEvent<{ dimension?: unknown; coordinate?: unknown }>); } | |
onTimelinePanelScroll | (event: Event) => void | Yes | (event: Event): void => { this.forwardPanelScroll('timeline', event as CustomEvent<{ dimension?: unknown; coordinate?: unknown }>); } | |
onTaskListPanelNativeScroll | () => void | Yes | (): void => { const generation = this.invalidateLeftEdgeSync('task-list'); this.syncViewportLeftEdgeFromPanel('task-list'); this.scheduleViewportLeftEdgeSyncFromPanel('task-list', generation); } | |
onTimelinePanelNativeScroll | () => void | Yes | (): void => { const generation = this.invalidateLeftEdgeSync('timeline'); this.syncViewportLeftEdgeFromPanel('timeline'); this.scheduleViewportLeftEdgeSyncFromPanel('timeline', generation); } | |
syncViewportLeftEdgeFromPanel(side: PanelScrollSide) | void | Yes | — | |
invalidateLeftEdgeSync(side: PanelScrollSide) | number | Yes | — | |
scheduleViewportLeftEdgeSyncFromPanel(side: PanelScrollSide, generation: number) | void | Yes | — | |
forwardPanelScroll(side: PanelScrollSide, event: CustomEvent<{ dimension?: unknown; coordinate?: unknown }>) | void | Yes | — | |
syncPanelScrollFromViewport(event: CustomEvent<{ dimension?: unknown; coordinate?: unknown }>) | void | Yes | — | |
syncTimelineWidthWithTaskColumns() | void | Yes | — | |
getPanelWidthForTaskListAnchor(gridWidth: number) | number | null | Yes | — | |
getCurrentPanelWidth(colPinEnd: HTMLElement) | number | Yes | — | |
getMinimumTaskListWidth() | number | Yes | — | |
hasVisibleTaskListColumns() | boolean | Yes | — | |
hasVisibleColumnsInDimension(type: TaskListColumnType) | boolean | null | Yes | — | |
emitResizeEvent(width: number) | void | Yes | — |
Related types: GanttPanelResizePluginConfig
GanttPanelResizePluginConfig
Section titled “GanttPanelResizePluginConfig”interface
export interface GanttPanelResizePluginConfig { /** * Initial width of the gantt (colPinEnd) panel in pixels or as a percentage * of the grid width (e.g. `"40%"`). * Defaults to the current rendered width of the panel. */ initialWidth?: number | string;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
initialWidth | string | number | undefined | No | — | Initial width of the gantt (colPinEnd) panel in pixels or as a percentage of the grid width (e.g. "40%"). Defaults to the current rendered width of the panel. |
GanttProjectFitOptions
Section titled “GanttProjectFitOptions”interface
export interface GanttProjectFitOptions extends GanttTimelineNavigationOptions { viewportWidth?: number;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
viewportWidth | number | undefined | No | — |
Related types: GanttTimelineNavigationOptions
GanttRoleEditabilityContext
Section titled “GanttRoleEditabilityContext”interface
export interface GanttRoleEditabilityContext { readonly roles: readonly GanttRoleId[] | GanttRoleId | null | undefined;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
roles | string | readonly string[] | null | undefined | Yes | — |
GanttRoleEditabilityPolicy
Section titled “GanttRoleEditabilityPolicy”interface
export interface GanttRoleEditabilityPolicy { /** * Permission list per role. Multiple active roles are merged additively. */ readonly roles: Readonly<Record<GanttRoleId, readonly GanttEditPermission[]>>; /** * Decision for users with no matching permission. Defaults to `deny`. */ readonly fallback?: 'allow' | 'deny';}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
roles | Readonly<Record<string, readonly GanttEditPermission[]>> | Yes | — | Permission list per role. Multiple active roles are merged additively. |
fallback | "allow" | "deny" | undefined | No | — | Decision for users with no matching permission. Defaults to deny. |
GanttTaskEditorControlId
Section titled “GanttTaskEditorControlId”type
export type GanttTaskEditorControlId = | 'header' | 'title' | 'description' | 'close' | 'tabs' | 'validation' | 'preview' | 'cancel' /** @deprecated Use `cancel`. */ | 'reset' | 'apply' | 'footer';GanttTaskEditorDialog
Section titled “GanttTaskEditorDialog”function
export function GanttTaskEditorDialog({ grid, task, tasks, resources, assignments, dependencies, project, allowedTaskTypes, calendars, options, open, status, onClose, fieldReadonly = EMPTY_FIELD_READONLY, onSubmit,}: GanttTaskEditorDialogProps): h.JSX.Element | null;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
{ grid, task, tasks, resources, assignments, dependencies, project, allowedTaskTypes, calendars, options, open, status, onClose, fieldReadonly = EMPTY_FIELD_READONLY, onSubmit, } | GanttTaskEditorDialogProps | Yes | — |
GanttTaskEditorDialogCustomization
Section titled “GanttTaskEditorDialogCustomization”interface
export interface GanttTaskEditorDialogCustomization { readonly tabs?: GanttTaskEditorTabsOptions; readonly controls?: Partial<Record<GanttTaskEditorControlId, boolean>>; readonly editor?: GanttTaskEditorDomRenderer;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
tabs | GanttTaskEditorTabsOptions | undefined | No | — | |
controls | Partial<Record<GanttTaskEditorControlId, boolean>> | undefined | No | — | |
editor | GanttTaskEditorDomRenderer | undefined | No | — |
Related types: GanttTaskEditorControlId, GanttTaskEditorDomRenderer, GanttTaskEditorTabsOptions
ganttTaskEditorDialogDependencies
Section titled “ganttTaskEditorDialogDependencies”constant
export const ganttTaskEditorDialogDependencies: PluginDependency[];GanttTaskEditorDialogDependencyDraft
Section titled “GanttTaskEditorDialogDependencyDraft”interface
export interface GanttTaskEditorDialogDependencyDraft { readonly id?: DependencyId; readonly predecessorTaskId: TaskId | ''; readonly successorTaskId: TaskId | ''; readonly type: DependencyType; readonly lagDays: number;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
id | string | undefined | No | — | |
predecessorTaskId | string | Yes | — | |
successorTaskId | string | Yes | — | |
type | DependencyType | Yes | — | |
lagDays | number | Yes | — |
Related types: DependencyId, DependencyType, TaskId
GanttTaskEditorDialogLocaleText
Section titled “GanttTaskEditorDialogLocaleText”interface
export interface GanttTaskEditorDialogLocaleText { readonly title: string; readonly description: string; readonly fallbackTaskTitle: string; readonly closeLabel: string; readonly closeButtonText: string; readonly applyLabel: string; readonly cancelLabel: string; /** @deprecated Use `cancelLabel`. */ readonly resetLabel: string; readonly menuItemName: string; readonly tabListAriaLabel: string; readonly readOnlyLabel: string; readonly noResourcesAvailable: string; readonly noAssignedResources: string; readonly assignedResourcesAriaLabel: string; readonly colorPaletteAriaLabel: string; readonly defaultColorOption: string; readonly projectDefaultOption: string; readonly noConstraintOption: string; readonly timeToggleLabel: string; readonly switchOnLabel: string; readonly switchOffLabel: string; readonly manualSchedulingOnLabel: string; readonly manualSchedulingOffLabel: string; readonly dependencyTargetLabel: { readonly predecessors: string; readonly successors: string; }; readonly dependencyEmptyLabel: { readonly predecessors: string; readonly successors: string; }; readonly dependencySearch: { readonly predecessors: GanttTaskEditorDialogSearchText; readonly successors: GanttTaskEditorDialogSearchText; }; readonly resourcesSearch: GanttTaskEditorDialogSearchText; readonly dependencyTypeLabel: string; readonly dependencyLagDaysLabel: string; readonly removeDependencyLabel: (targetLabel: string) => string; readonly removeDependencyButton: string; readonly addDependencyButton: { readonly predecessors: string; readonly successors: string; }; readonly tabs: Record<TaskEditorTabId, string>; readonly dependencyTypes: Record<DependencyType, string>; readonly fields: Partial<Record<TaskEditorFieldId, string>>; readonly fieldOptions: Partial<Record<TaskEditorFieldId, readonly TaskEditorFieldOption[]>>; readonly status: GanttTaskEditorDialogStatusText; readonly validation: GanttTaskEditorDialogValidationText;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
title | string | Yes | — | |
description | string | Yes | — | |
fallbackTaskTitle | string | Yes | — | |
closeLabel | string | Yes | — | |
closeButtonText | string | Yes | — | |
applyLabel | string | Yes | — | |
cancelLabel | string | Yes | — | |
resetLabel | string | Yes | — | |
menuItemName | string | Yes | — | |
tabListAriaLabel | string | Yes | — | |
readOnlyLabel | string | Yes | — | |
noResourcesAvailable | string | Yes | — | |
noAssignedResources | string | Yes | — | |
assignedResourcesAriaLabel | string | Yes | — | |
colorPaletteAriaLabel | string | Yes | — | |
defaultColorOption | string | Yes | — | |
projectDefaultOption | string | Yes | — | |
noConstraintOption | string | Yes | — | |
timeToggleLabel | string | Yes | — | |
switchOnLabel | string | Yes | — | |
switchOffLabel | string | Yes | — | |
manualSchedulingOnLabel | string | Yes | — | |
manualSchedulingOffLabel | string | Yes | — | |
dependencyTargetLabel | { readonly predecessors: string; readonly successors: string; } | Yes | — | |
dependencyEmptyLabel | { readonly predecessors: string; readonly successors: string; } | Yes | — | |
dependencySearch | { readonly predecessors: GanttTaskEditorDialogSearchText; readonly successors: GanttTaskEditorDialogSearchText; } | Yes | — | |
resourcesSearch | GanttTaskEditorDialogSearchText | Yes | — | |
dependencyTypeLabel | string | Yes | — | |
dependencyLagDaysLabel | string | Yes | — | |
removeDependencyLabel | (targetLabel: string) => string | Yes | — | |
removeDependencyButton | string | Yes | — | |
addDependencyButton | { readonly predecessors: string; readonly successors: string; } | Yes | — | |
tabs | Record<TaskEditorTabId, string> | Yes | — | |
dependencyTypes | Record<DependencyType, string> | Yes | — | |
fields | Partial<Record<TaskEditorFieldId, string>> | Yes | — | |
fieldOptions | Partial<Record<TaskEditorFieldId, readonly TaskEditorFieldOption<string>[]>> | Yes | — | |
status | GanttTaskEditorDialogStatusText | Yes | — | |
validation | GanttTaskEditorDialogValidationText | Yes | — |
Related types: DependencyType, GanttTaskEditorDialogSearchText, GanttTaskEditorDialogStatusText, GanttTaskEditorDialogValidationText, TaskEditorFieldId
GanttTaskEditorDialogLocaleTextOptions
Section titled “GanttTaskEditorDialogLocaleTextOptions”type
export type GanttTaskEditorDialogLocaleTextOptions = Partial<Omit< GanttTaskEditorDialogLocaleText, | 'dependencyTargetLabel' | 'dependencyEmptyLabel' | 'dependencySearch' | 'resourcesSearch' | 'addDependencyButton' | 'tabs' | 'dependencyTypes' | 'fields' | 'fieldOptions' | 'status' | 'validation'>> & { readonly dependencyTargetLabel?: Partial<GanttTaskEditorDialogLocaleText['dependencyTargetLabel']>; readonly dependencyEmptyLabel?: Partial<GanttTaskEditorDialogLocaleText['dependencyEmptyLabel']>; readonly dependencySearch?: { readonly predecessors?: Partial<GanttTaskEditorDialogSearchText>; readonly successors?: Partial<GanttTaskEditorDialogSearchText>; }; readonly resourcesSearch?: Partial<GanttTaskEditorDialogSearchText>; readonly addDependencyButton?: Partial<GanttTaskEditorDialogLocaleText['addDependencyButton']>; readonly tabs?: Partial<Record<TaskEditorTabId, string>>; readonly dependencyTypes?: Partial<Record<DependencyType, string>>; readonly fields?: Partial<Record<TaskEditorFieldId, string>>; readonly fieldOptions?: Partial<Record<TaskEditorFieldId, readonly TaskEditorFieldOption[]>>; readonly status?: Partial<GanttTaskEditorDialogStatusText>; readonly validation?: Partial<GanttTaskEditorDialogValidationText>;};Related types: DependencyType, GanttTaskEditorDialogLocaleText, GanttTaskEditorDialogSearchText, GanttTaskEditorDialogStatusText, GanttTaskEditorDialogValidationText, TaskEditorFieldId
GanttTaskEditorDialogOptions
Section titled “GanttTaskEditorDialogOptions”interface
export interface GanttTaskEditorDialogOptions { readonly fields?: readonly TaskEditorFieldId[]; readonly localeText?: GanttTaskEditorDialogLocaleTextOptions; readonly menuItemName?: string; readonly title?: string; readonly description?: string; readonly applyLabel?: string; /** Label for the footer action that discards drafts and closes the dialog. */ readonly cancelLabel?: string; /** @deprecated Use `cancelLabel`. */ readonly resetLabel?: string; readonly closeLabel?: string; /** * Controls the packaged row context-menu entry for opening the task editor. * Defaults to the Gantt context-menu setting. Set to `false` to remove only * the editor menu item, or `true` to keep it when `gantt.contextMenu` is * disabled. */ readonly contextMenu?: boolean; /** * Opens the dialog immediately after the Gantt plugin creates a task. Defaults * to `true`. Set to `false` to keep task creation silent. This * covers task creation from the toolbar, row context menu, and custom * dispatches of the task-create event. */ readonly openOnCreate?: boolean; /** * Controls the built-in resource assignment picker. Set to `false` to keep * the resources field read-only. */ readonly resources?: false | GanttTaskEditorDialogResourcesOptions; /** * Overrides inherited task-table editability for packaged dialog fields. * `true` enables a field and `false` makes it read-only. Gantt-wide read-only * mode and `resources: false` remain hard restrictions. */ readonly fieldEditability?: Partial<Record<GanttTaskEditorFieldEditabilityId, boolean>>; /** * Configures task colors in the packaged editor. Omit to inherit the Gantt * context-menu palette; set to `false` to remove the editor field. */ readonly colorPalette?: GanttColorPaletteConfig | false; /** * Shows the normalized TaskUpdate JSON preview. Intended for documentation, * diagnostics, and custom developer tooling; hidden by default for end-user UI. */ readonly preview?: boolean; readonly readOnly?: boolean; readonly onSubmit?: (context: GanttTaskEditorDialogSubmitContext) => boolean | void | Promise<boolean | void>; readonly getTask?: (taskId: TaskId, grid: HTMLRevoGridElement) => TaskEntity | null | undefined; readonly customization?: GanttTaskEditorDialogCustomization;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
fields | readonly TaskEditorFieldId[] | undefined | No | — | |
localeText | GanttTaskEditorDialogLocaleTextOptions | undefined | No | — | |
menuItemName | string | undefined | No | — | |
title | string | undefined | No | — | |
description | string | undefined | No | — | |
applyLabel | string | undefined | No | — | |
cancelLabel | string | undefined | No | — | Label for the footer action that discards drafts and closes the dialog. |
resetLabel | string | undefined | No | — | |
closeLabel | string | undefined | No | — | |
contextMenu | boolean | undefined | No | — | Controls the packaged row context-menu entry for opening the task editor. Defaults to the Gantt context-menu setting. Set to false to remove only the editor menu item, or true to keep it when gantt.contextMenu is disabled. |
openOnCreate | boolean | undefined | No | — | Opens the dialog immediately after the Gantt plugin creates a task. Defaults to true. Set to false to keep task creation silent. This covers task creation from the toolbar, row context menu, and custom dispatches of the task-create event. |
resources | false | GanttTaskEditorDialogResourcesOptions | undefined | No | — | Controls the built-in resource assignment picker. Set to false to keep the resources field read-only. |
fieldEditability | Partial<Record<GanttTaskEditorFieldEditabilityId, boolean>> | undefined | No | — | Overrides inherited task-table editability for packaged dialog fields. true enables a field and false makes it read-only. Gantt-wide read-only mode and resources: false remain hard restrictions. |
colorPalette | false | GanttColorPaletteConfig | undefined | No | — | Configures task colors in the packaged editor. Omit to inherit the Gantt context-menu palette; set to false to remove the editor field. |
preview | boolean | undefined | No | — | Shows the normalized TaskUpdate JSON preview. Intended for documentation, diagnostics, and custom developer tooling; hidden by default for end-user UI. |
readOnly | boolean | undefined | No | — | |
onSubmit | ((context: GanttTaskEditorDialogSubmitContext) => boolean | void | Promise<boolean | void>) | undefined | No | — | |
getTask | ((taskId: TaskId, grid: HTMLRevoGridElement) => TaskEntity | null | undefined) | undefined | No | — | |
customization | GanttTaskEditorDialogCustomization | undefined | No | — |
Related types: GanttColorPaletteConfig, GanttTaskEditorDialogCustomization, GanttTaskEditorDialogLocaleTextOptions, GanttTaskEditorDialogResourcesOptions, GanttTaskEditorDialogSubmitContext, GanttTaskEditorFieldEditabilityId, TaskEditorFieldId, TaskEntity, TaskId, TaskUpdate
GanttTaskEditorDialogPlugin
Section titled “GanttTaskEditorDialogPlugin”class
export class GanttTaskEditorDialogPlugin extends CorePlugin { pluginDependencies: PluginDependency[]; constructor(revogrid: HTMLRevoGridElement, providers: PluginProviders); openTask(taskId: TaskId | null): void; closeTaskEditor(): void; destroy(): void;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
pluginDependencies | PluginDependency[] | Yes | ganttTaskEditorDialogDependencies | |
host | HTMLDivElement | Yes | — | |
originalRowContextMenu | ContextMenuConfig | undefined | Yes | — | |
appliedRowContextMenu | ContextMenuConfig | null | Yes | null | |
selectedTaskId | string | null | Yes | null | |
recentCreatedTasks | Map<string, TaskEntity> | Yes | new Map<TaskId, TaskEntity>() | |
status | string | Yes | DEFAULT_TASK_EDITOR_DIALOG_LOCALE_TEXT.status.ready | |
open | boolean | Yes | false | |
renderKey | number | Yes | 0 | |
taskEditorDialogOptions | GanttTaskEditorDialogOptions | Yes | DEFAULT_TASK_EDITOR_DIALOG_OPTIONS | |
ganttConfig | GanttPluginConfig | undefined | Yes | — | |
openTask(taskId: TaskId | null) | void | Yes | — | |
closeTaskEditor() | void | Yes | — | |
destroy() | void | Yes | — | |
removeContextMenu() | void | Yes | — | |
isContextMenuEnabled() | boolean | Yes | — | |
getTaskRuntime() | GanttTaskRuntime | undefined | Yes | — | |
getCurrentProjectSnapshot() | ProjectSnapshot | null | Yes | — | |
getCurrentTasks() | readonly TaskEntity[] | Yes | — | |
getCurrentResources() | readonly ResourceEntity[] | Yes | — | |
getCurrentAssignments() | readonly AssignmentEntity[] | Yes | — | |
getCurrentDependencies() | readonly DependencyEntity[] | Yes | — | |
getCurrentCalendars() | readonly CalendarEntity[] | Yes | — | |
deleteUnsavedCreatedTask() | void | Yes | — | |
getTaskRowIndex(taskId: TaskId) | number | null | Yes | — | |
applyTaskPatch(task: TaskEntity, patch: TaskUpdate) | boolean | Yes | — | |
getTask(taskId: TaskId) | TaskEntity | null | Yes | — | |
isReadOnly() | boolean | Yes | — | |
getFieldReadonly(task: TaskEntity) | Partial<Record<GanttTaskEditorFieldEditabilityId, boolean>> | Yes | — | |
createNextAssignments(taskId: TaskId, selectedResourceIds: readonly ResourceId[]) | { assignments: readonly AssignmentEntity[]; changed: boolean; error: string | null } | Yes | — | |
createNextDependencies(taskId: TaskId, dependencyDrafts: readonly GanttTaskEditorDialogDependencyDraft[]) | { dependencies: readonly DependencyEntity[]; changed: boolean; error: string | null } | Yes | — | |
applyContextMenu() | void | Yes | — | |
syncContextMenuPlugin() | Promise<void> | Yes | — | |
submit(values: TaskEditorFormValues, selectedResourceIds: readonly ResourceId[], dependencyDrafts: readonly GanttTaskEditorDialogDependencyDraft[], customValues: Readonly<Record<string, unknown>> = {}) | Promise<void> | Yes | — | |
renderDialog() | void | Yes | — |
Related types: TaskId
GanttTaskEditorDialogResourcesOptions
Section titled “GanttTaskEditorDialogResourcesOptions”interface
export interface GanttTaskEditorDialogResourcesOptions { readonly editable?: boolean; readonly defaultAllocationUnits?: number; readonly defaultResponsibility?: string;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
editable | boolean | undefined | No | — | |
defaultAllocationUnits | number | undefined | No | — | |
defaultResponsibility | string | undefined | No | — |
GanttTaskEditorDialogSearchText
Section titled “GanttTaskEditorDialogSearchText”interface
export interface GanttTaskEditorDialogSearchText { readonly placeholder: string; readonly ariaLabel: string; readonly empty: string;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
placeholder | string | Yes | — | |
ariaLabel | string | Yes | — | |
empty | string | Yes | — |
GanttTaskEditorDialogState
Section titled “GanttTaskEditorDialogState”interface
export interface GanttTaskEditorDialogState { readonly taskId: TaskId | null; readonly task: TaskEntity | null; readonly values: TaskEditorFormValues; readonly status: string;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
taskId | string | null | Yes | — | |
task | TaskEntity | null | Yes | — | |
values | Partial<Record<TaskEditorFieldId, unknown>> | Yes | — | |
status | string | Yes | — |
Related types: TaskEditorFormValues, TaskEntity, TaskId
GanttTaskEditorDialogStatusText
Section titled “GanttTaskEditorDialogStatusText”interface
export interface GanttTaskEditorDialogStatusText { readonly ready: string; readonly closed: string; readonly changesSaved: string; readonly noChangesToSave: string; readonly readOnlyProject: string; readonly fixValidationErrors: string; readonly saveFailed: string;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
ready | string | Yes | — | |
closed | string | Yes | — | |
changesSaved | string | Yes | — | |
noChangesToSave | string | Yes | — | |
readOnlyProject | string | Yes | — | |
fixValidationErrors | string | Yes | — | |
saveFailed | string | Yes | — |
GanttTaskEditorDialogSubmitContext
Section titled “GanttTaskEditorDialogSubmitContext”interface
export interface GanttTaskEditorDialogSubmitContext { readonly grid: HTMLRevoGridElement; readonly task: TaskEntity; readonly values: TaskEditorFormValues; readonly result: TaskEditorSubmitSuccess; readonly assignmentResourceIds: readonly ResourceId[]; readonly assignments: readonly AssignmentEntity[]; readonly assignmentsChanged: boolean; readonly dependencyDrafts: readonly GanttTaskEditorDialogDependencyDraft[]; readonly dependencies: readonly DependencyEntity[]; readonly dependenciesChanged: boolean; readonly customValues: Readonly<Record<string, unknown>>;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
grid | HTMLRevoGridElement | Yes | — | |
task | TaskEntity | Yes | — | |
values | Partial<Record<TaskEditorFieldId, unknown>> | Yes | — | |
result | TaskEditorSubmitSuccess | Yes | — | |
assignmentResourceIds | readonly string[] | Yes | — | |
assignments | readonly AssignmentEntity[] | Yes | — | |
assignmentsChanged | boolean | Yes | — | |
dependencyDrafts | readonly GanttTaskEditorDialogDependencyDraft[] | Yes | — | |
dependencies | readonly DependencyEntity[] | Yes | — | |
dependenciesChanged | boolean | Yes | — | |
customValues | Readonly<Record<string, unknown>> | Yes | — |
Related types: AssignmentEntity, DependencyEntity, GanttTaskEditorDialogDependencyDraft, ResourceId, TaskEditorFormValues, TaskEntity
GanttTaskEditorDialogValidationText
Section titled “GanttTaskEditorDialogValidationText”interface
export interface GanttTaskEditorDialogValidationText { readonly checkRequiredFields: string; readonly couldNotSave: string; readonly fieldError: (error: TaskEditorSubmitError, fieldLabel: string) => string; readonly resourceNotFound: (resourceId: ResourceId) => string; readonly taskCannotDependOnItself: string; readonly predecessorTaskNotFound: (taskId: TaskId) => string; readonly successorTaskNotFound: (taskId: TaskId) => string; readonly dependencyMustIncludeCurrentTask: string; readonly duplicateDependencyLinks: string;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
checkRequiredFields | string | Yes | — | |
couldNotSave | string | Yes | — | |
fieldError | (error: TaskEditorSubmitError, fieldLabel: string) => string | Yes | — | |
resourceNotFound | (resourceId: ResourceId) => string | Yes | — | |
taskCannotDependOnItself | string | Yes | — | |
predecessorTaskNotFound | (taskId: TaskId) => string | Yes | — | |
successorTaskNotFound | (taskId: TaskId) => string | Yes | — | |
dependencyMustIncludeCurrentTask | string | Yes | — | |
duplicateDependencyLinks | string | Yes | — |
Related types: ResourceId, TaskId
GanttTaskEditorDomRenderer
Section titled “GanttTaskEditorDomRenderer”interface
export interface GanttTaskEditorDomRenderer { mount(container: HTMLElement, context: GanttTaskEditorRendererContext): void | GanttTaskEditorRendererLifecycle;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
mount(container: HTMLElement, context: GanttTaskEditorRendererContext) | void | GanttTaskEditorRendererLifecycle | Yes | — |
Related types: GanttTaskEditorRendererContext, GanttTaskEditorRendererLifecycle
GanttTaskEditorDraftController
Section titled “GanttTaskEditorDraftController”interface
export interface GanttTaskEditorDraftController { getState(): GanttTaskEditorDraftState; setValues(values: Partial<TaskEditorFormValues>): void; setResourceIds(resourceIds: readonly ResourceId[]): void; setDependencyDrafts(drafts: readonly GanttTaskEditorDialogDependencyDraft[]): void; setCustomValue(key: string, value: unknown): void; setValidationErrors(errors: readonly string[]): void; reset(): void; close(): void; submit(): void;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
getState() | GanttTaskEditorDraftState | Yes | — | |
setValues(values: Partial<TaskEditorFormValues>) | void | Yes | — | |
setResourceIds(resourceIds: readonly ResourceId[]) | void | Yes | — | |
setDependencyDrafts(drafts: readonly GanttTaskEditorDialogDependencyDraft[]) | void | Yes | — | |
setCustomValue(key: string, value: unknown) | void | Yes | — | |
setValidationErrors(errors: readonly string[]) | void | Yes | — | |
reset() | void | Yes | — | |
close() | void | Yes | — | |
submit() | void | Yes | — |
Related types: GanttTaskEditorDialogDependencyDraft, GanttTaskEditorDraftState, ResourceId, TaskEditorFormValues
GanttTaskEditorDraftState
Section titled “GanttTaskEditorDraftState”interface
export interface GanttTaskEditorDraftState { readonly values: TaskEditorFormValues; readonly resourceIds: readonly ResourceId[]; readonly dependencyDrafts: readonly GanttTaskEditorDialogDependencyDraft[]; readonly customValues: Readonly<Record<string, unknown>>; readonly validationErrors: readonly string[]; readonly dirty: boolean;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
values | Partial<Record<TaskEditorFieldId, unknown>> | Yes | — | |
resourceIds | readonly string[] | Yes | — | |
dependencyDrafts | readonly GanttTaskEditorDialogDependencyDraft[] | Yes | — | |
customValues | Readonly<Record<string, unknown>> | Yes | — | |
validationErrors | readonly string[] | Yes | — | |
dirty | boolean | Yes | — |
Related types: GanttTaskEditorDialogDependencyDraft, ResourceId, TaskEditorFormValues
GanttTaskEditorFieldEditabilityId
Section titled “GanttTaskEditorFieldEditabilityId”type
Packaged task-dialog controls that can inherit task-table editability.
export type GanttTaskEditorFieldEditabilityId = | TaskEditorFieldId | 'predecessors' | 'successors';Related types: TaskEditorFieldId
GanttTaskEditorRendererContext
Section titled “GanttTaskEditorRendererContext”interface
export interface GanttTaskEditorRendererContext { readonly grid: HTMLRevoGridElement; readonly task: TaskEntity | null; readonly project: ProjectSnapshot | null; readonly open: boolean; readonly status: string; readonly state: GanttTaskEditorDraftState; readonly controller: GanttTaskEditorDraftController;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
grid | HTMLRevoGridElement | Yes | — | |
task | TaskEntity | null | Yes | — | |
project | ProjectSnapshot | null | Yes | — | |
open | boolean | Yes | — | |
status | string | Yes | — | |
state | GanttTaskEditorDraftState | Yes | — | |
controller | GanttTaskEditorDraftController | Yes | — |
Related types: GanttTaskEditorDraftController, GanttTaskEditorDraftState, ProjectSnapshot, TaskEntity
GanttTaskEditorRendererLifecycle
Section titled “GanttTaskEditorRendererLifecycle”interface
export interface GanttTaskEditorRendererLifecycle { update?(context: GanttTaskEditorRendererContext): void; destroy?(): void;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
update(context: GanttTaskEditorRendererContext) | void | Yes | — | |
destroy() | void | Yes | — |
Related types: GanttTaskEditorRendererContext
GanttTaskEditorTabOptions
Section titled “GanttTaskEditorTabOptions”interface
export interface GanttTaskEditorTabOptions { readonly title?: string; readonly hidden?: boolean; readonly fields?: readonly TaskEditorFieldId[]; readonly renderer?: GanttTaskEditorDomRenderer;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
title | string | undefined | No | — | |
hidden | boolean | undefined | No | — | |
fields | readonly TaskEditorFieldId[] | undefined | No | — | |
renderer | GanttTaskEditorDomRenderer | undefined | No | — |
Related types: GanttTaskEditorDomRenderer, TaskEditorFieldId
GanttTaskEditorTabsOptions
Section titled “GanttTaskEditorTabsOptions”interface
export interface GanttTaskEditorTabsOptions { readonly items?: Readonly<Record<string, false | GanttTaskEditorTabOptions>>; readonly order?: readonly string[];}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
items | Readonly<Record<string, false | GanttTaskEditorTabOptions>> | undefined | No | — | |
order | readonly string[] | undefined | No | — |
Related types: GanttTaskEditorTabOptions
GanttTimelineNavigationOptions
Section titled “GanttTimelineNavigationOptions”interface
export interface GanttTimelineNavigationOptions { align?: number;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
align | number | undefined | No | — |
GanttTimelineNavigationRuntime
Section titled “GanttTimelineNavigationRuntime”interface
export interface GanttTimelineNavigationRuntime { providers?: PluginProviders; scrollToTimelineCoordinate?: (position: { x: number }) => Promise<void> | void; scrollToToday?: () => Promise<void> | void; fitToProject?: () => Promise<void> | void; getZoomLevel?: () => { id?: string } | null | undefined; setZoomLevel?: (levelId: string) => boolean;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
providers | PluginProviders | undefined | No | — | |
scrollToTimelineCoordinate | ((position: { x: number; }) => Promise<void> | void) | undefined | No | — | |
scrollToToday | (() => Promise<void> | void) | undefined | No | — | |
fitToProject | (() => Promise<void> | void) | undefined | No | — | |
getZoomLevel | (() => { id?: string; } | null | undefined) | undefined | No | — | |
setZoomLevel | ((levelId: string) => boolean) | undefined | No | — |
GanttTodayNavigationOptions
Section titled “GanttTodayNavigationOptions”interface
export interface GanttTodayNavigationOptions extends GanttTimelineNavigationOptions { date?: ISODateString;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
date | ISODateString | undefined | No | — |
Related types: GanttTimelineNavigationOptions
GanttToolbar
Section titled “GanttToolbar”constant
export const GanttToolbar: ({ grid, columns, visuals: initialVisuals, controls }: GanttToolbarComponentProps) => h.JSX.Element;GanttToolbarColumnOption
Section titled “GanttToolbarColumnOption”interface
A single column entry shown in the Gantt toolbar column-visibility dropdown.
export interface GanttToolbarColumnOption { /** Property name matching a task-table column (e.g. `'wbs'`, `'status'`). */ prop: string; /** Human-readable label shown in the dropdown. */ label: string; /** * Whether the column is visible by default. * Columns with `visible: false` will be added to `grid.hideColumns` on mount. * @default true */ visible?: boolean;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
prop | string | Yes | — | Property name matching a task-table column (e.g. 'wbs', 'status'). |
label | string | Yes | — | Human-readable label shown in the dropdown. |
visible | boolean | undefined | No | true | Whether the column is visible by default. Columns with visible: false will be added to grid.hideColumns on mount. |
GanttToolbarControls
Section titled “GanttToolbarControls”interface
Visibility switches for each toolbar control or control group.
export interface GanttToolbarControls { search?: boolean; history?: boolean; undo?: boolean; redo?: boolean; tree?: boolean; expandAll?: boolean; collapseAll?: boolean; zoom?: boolean; zoomIn?: boolean; zoomOut?: boolean; tasks?: boolean; addTask?: boolean; indent?: boolean; outdent?: boolean; export?: boolean; exportExcel?: boolean; columns?: boolean; dependencies?: boolean; baseline?: boolean; criticalPath?: boolean;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
search | boolean | undefined | No | — | |
history | boolean | undefined | No | — | |
undo | boolean | undefined | No | — | |
redo | boolean | undefined | No | — | |
tree | boolean | undefined | No | — | |
expandAll | boolean | undefined | No | — | |
collapseAll | boolean | undefined | No | — | |
zoom | boolean | undefined | No | — | |
zoomIn | boolean | undefined | No | — | |
zoomOut | boolean | undefined | No | — | |
tasks | boolean | undefined | No | — | |
addTask | boolean | undefined | No | — | |
indent | boolean | undefined | No | — | |
outdent | boolean | undefined | No | — | |
export | boolean | undefined | No | — | |
exportExcel | boolean | undefined | No | — | |
columns | boolean | undefined | No | — | |
dependencies | boolean | undefined | No | — | |
baseline | boolean | undefined | No | — | |
criticalPath | boolean | undefined | No | — |
ganttToolbarDependencies
Section titled “ganttToolbarDependencies”constant
export const ganttToolbarDependencies: PluginDependency[];GanttToolbarOptions
Section titled “GanttToolbarOptions”interface
Options accepted by {@link defineGanttToolbar}.
export interface GanttToolbarOptions { /** The `revo-grid` element the toolbar should control. */ grid: HTMLRevoGridElement; /** * Column options to show in the visibility dropdown. * If omitted, no column dropdown is rendered. */ columns?: GanttToolbarColumnOption[]; /** * Initial state of the visual/scheduling toggles. * When omitted, values are read from the current `grid.gantt.visuals` config. */ visuals?: GanttToolbarVisuals; /** * Per-control visibility. Omitted options default to visible, except * `baseline`, which is opt-in to keep the default command bar compact. */ controls?: GanttToolbarControls;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
grid | HTMLRevoGridElement | Yes | — | The revo-grid element the toolbar should control. |
columns | GanttToolbarColumnOption[] | undefined | No | — | Column options to show in the visibility dropdown. If omitted, no column dropdown is rendered. |
visuals | GanttToolbarVisuals | undefined | No | — | Initial state of the visual/scheduling toggles. When omitted, values are read from the current grid.gantt.visuals config. |
controls | GanttToolbarControls | undefined | No | — | Per-control visibility. Omitted options default to visible, except baseline, which is opt-in to keep the default command bar compact. |
Related types: GanttToolbarColumnOption, GanttToolbarControls, GanttToolbarVisuals
GanttToolbarQuickWinAction
Section titled “GanttToolbarQuickWinAction”interface
export interface GanttToolbarQuickWinAction<Result = unknown> { readonly id: GanttToolbarQuickWinActionId; readonly label: string; readonly title: string; readonly run: () => Result | Promise<Result>;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
id | GanttToolbarQuickWinActionId | Yes | — | |
label | string | Yes | — | |
title | string | Yes | — | |
run | () => Result | Promise<Result> | Yes | — |
Related types: GanttToolbarQuickWinActionId
GanttToolbarQuickWinActionId
Section titled “GanttToolbarQuickWinActionId”type
export type GanttToolbarQuickWinActionId = | 'export-csv' | 'export-excel' | 'capture-baseline' | 'toggle-critical-path' | 'timeline-today' | 'timeline-fit-project';GanttToolbarQuickWinActions
Section titled “GanttToolbarQuickWinActions”interface
export interface GanttToolbarQuickWinActions { readonly exportCsv?: GanttToolbarQuickWinAction<boolean>; readonly exportExcel?: GanttToolbarQuickWinAction<CustomEvent<GanttExcelExportOptions>>; readonly captureBaseline?: GanttToolbarQuickWinAction<BaselineSnapshot | null>; readonly toggleCriticalPath?: GanttToolbarQuickWinAction<boolean | undefined>; readonly scrollToToday?: GanttToolbarQuickWinAction<boolean>; readonly fitToProject?: GanttToolbarQuickWinAction<boolean>;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
exportCsv | GanttToolbarQuickWinAction<boolean> | undefined | No | — | |
exportExcel | GanttToolbarQuickWinAction<CustomEvent<ExportExcelEvent>> | undefined | No | — | |
captureBaseline | GanttToolbarQuickWinAction<BaselineSnapshot | null> | undefined | No | — | |
toggleCriticalPath | GanttToolbarQuickWinAction<boolean | undefined> | undefined | No | — | |
scrollToToday | GanttToolbarQuickWinAction<boolean> | undefined | No | — | |
fitToProject | GanttToolbarQuickWinAction<boolean> | undefined | No | — |
Related types: BaselineSnapshot, GanttExcelExportOptions, GanttToolbarQuickWinAction
GanttToolbarQuickWinOptions
Section titled “GanttToolbarQuickWinOptions”interface
export interface GanttToolbarQuickWinOptions { readonly csv?: GanttCsvExportOptions | false; readonly excel?: GanttExcelExportOptions | false; readonly baseline?: CaptureBaselineOptions | false; readonly criticalPath?: false; readonly today?: GanttTodayNavigationOptions | false; readonly fitToProject?: GanttProjectFitOptions | false;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
csv | false | GanttCsvExportOptions | undefined | No | — | |
excel | false | ExportExcelEvent | undefined | No | — | |
baseline | false | CaptureBaselineOptions | undefined | No | — | |
criticalPath | false | undefined | No | — | |
today | false | GanttTodayNavigationOptions | undefined | No | — | |
fitToProject | false | GanttProjectFitOptions | undefined | No | — |
Related types: GanttCsvExportOptions, GanttExcelExportOptions, GanttProjectFitOptions, GanttTodayNavigationOptions
GanttToolbarVisuals
Section titled “GanttToolbarVisuals”interface
Initial visual toggle state passed to the toolbar.
export interface GanttToolbarVisuals { showBaseline?: boolean; showDependencies?: boolean; showCriticalPath?: boolean;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
showBaseline | boolean | undefined | No | — | |
showDependencies | boolean | undefined | No | — | |
showCriticalPath | boolean | undefined | No | — |
getCsvExportPlugin
Section titled “getCsvExportPlugin”function
export function getCsvExportPlugin(grid: HTMLRevoGridElement): Promise<RevoGridCsvExportPlugin | undefined>;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
grid | HTMLRevoGridElement | Yes | — |
Related types: RevoGridCsvExportPlugin
getDefaultDependencyDropdownType
Section titled “getDefaultDependencyDropdownType”function
export function getDefaultDependencyDropdownType(allowedTypes: readonly DependencyType[] = DEFAULT_GANTT_DEPENDENCY_TYPES): DependencyType | null;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
allowedTypes | readonly DependencyType[] | No | DEFAULT_GANTT_DEPENDENCY_TYPES |
Related types: DependencyType
getGanttBaselineCaptureRuntime
Section titled “getGanttBaselineCaptureRuntime”function
export function getGanttBaselineCaptureRuntime(grid: HTMLRevoGridElement): Promise<GanttBaselineCaptureRuntime | undefined>;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
grid | HTMLRevoGridElement | Yes | — |
Related types: GanttBaselineCaptureRuntime
getGanttDependencyDropdownCellBadges
Section titled “getGanttDependencyDropdownCellBadges”function
export function getGanttDependencyDropdownCellBadges(value: unknown, config: GanttDependencyDropdownConfig): string[];| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
value | unknown | Yes | — | |
config | GanttDependencyDropdownConfig | Yes | — |
Related types: GanttDependencyDropdownConfig
getGanttDependencyDropdownSearchText
Section titled “getGanttDependencyDropdownSearchText”function
export function getGanttDependencyDropdownSearchText(option: GanttDependencyDropdownTaskOption): string;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
option | GanttDependencyDropdownTaskOption | Yes | — |
Related types: GanttDependencyDropdownTaskOption
getGanttDependencyDropdownTasks
Section titled “getGanttDependencyDropdownTasks”function
export function getGanttDependencyDropdownTasks(config: GanttDependencyDropdownConfig): readonly GanttDependencyDropdownTaskOption[];| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
config | GanttDependencyDropdownConfig | Yes | — |
Related types: GanttDependencyDropdownConfig, GanttDependencyDropdownTaskOption
getGanttDependencyDropdownValue
Section titled “getGanttDependencyDropdownValue”function
export function getGanttDependencyDropdownValue(value: unknown, config: GanttDependencyDropdownConfig): GanttDependencyDropdownValue[];| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
value | unknown | Yes | — | |
config | GanttDependencyDropdownConfig | Yes | — |
Related types: GanttDependencyDropdownConfig, GanttDependencyDropdownValue
getGanttTimelineNavigationRuntime
Section titled “getGanttTimelineNavigationRuntime”function
export function getGanttTimelineNavigationRuntime(grid: HTMLRevoGridElement): Promise<GanttTimelineNavigationRuntime | undefined>;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
grid | HTMLRevoGridElement | Yes | — |
Related types: GanttTimelineNavigationRuntime
isGanttAddTaskRow
Section titled “isGanttAddTaskRow”function
export function isGanttAddTaskRow(row: unknown): boolean;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
row | unknown | Yes | — |
isGanttDependencyType
Section titled “isGanttDependencyType”function
export function isGanttDependencyType(value: unknown): value is DependencyType;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
value | unknown | Yes | — |
Related types: DependencyType
listGanttToolbarQuickWinActions
Section titled “listGanttToolbarQuickWinActions”function
export function listGanttToolbarQuickWinActions(actions: GanttToolbarQuickWinActions): readonly GanttToolbarQuickWinAction[];| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
actions | GanttToolbarQuickWinActions | Yes | — |
Related types: GanttToolbarQuickWinAction, GanttToolbarQuickWinActions
mapGanttRowsToExcelExport
Section titled “mapGanttRowsToExcelExport”function
Maps projected Gantt task grid rows to spreadsheet-ready row objects.
This function intentionally uses an allowlist of user-facing columns instead
of spreading GanttGridRow, because projected rows contain renderer and
timeline layout fields that should never be serialized to Excel.
export function mapGanttRowsToExcelExport(rows: readonly GanttGridRow[], project: ProjectSnapshot, options: GanttExcelMappingOptions = {}): GanttExcelExportRow[];| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
rows | readonly GanttGridRow[] | Yes | — | |
project | ProjectSnapshot | Yes | — | |
options | GanttExcelMappingOptions | No | {} |
Related types: GanttExcelExportRow, GanttExcelMappingOptions, GanttGridRow, ProjectSnapshot
normalizeGanttDependencyDropdownAllowedTypes
Section titled “normalizeGanttDependencyDropdownAllowedTypes”function
export function normalizeGanttDependencyDropdownAllowedTypes(allowedTypes: readonly DependencyType[] | undefined): readonly DependencyType[];| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
allowedTypes | readonly DependencyType[] | undefined | Yes | — |
Related types: DependencyType
normalizeGanttDependencyDropdownValues
Section titled “normalizeGanttDependencyDropdownValues”function
export function normalizeGanttDependencyDropdownValues(value: readonly GanttDependencyDropdownValue[], options: readonly GanttDependencyDropdownTaskOption[]): GanttDependencyDropdownValue[];| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
value | readonly GanttDependencyDropdownValue[] | Yes | — | |
options | readonly GanttDependencyDropdownTaskOption[] | Yes | — |
Related types: GanttDependencyDropdownTaskOption, GanttDependencyDropdownValue
normalizeTaskEditorSubmit
Section titled “normalizeTaskEditorSubmit”function
export function normalizeTaskEditorSubmit(task: TaskEntity, values: TaskEditorFormValues, options: NormalizeTaskEditorSubmitOptions = {}): TaskEditorSubmitResult;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
task | TaskEntity | Yes | — | |
values | Partial<Record<TaskEditorFieldId, unknown>> | Yes | — | |
options | NormalizeTaskEditorSubmitOptions | No | {} |
Related types: NormalizeTaskEditorSubmitOptions, TaskEditorFormValues, TaskEditorSubmitResult, TaskEntity
NormalizeTaskEditorSubmitOptions
Section titled “NormalizeTaskEditorSubmitOptions”interface
export interface NormalizeTaskEditorSubmitOptions { /** * When false, fields equal to the current task value are omitted from the * returned patch. Defaults to false so forms can submit their whole state. */ readonly includeUnchanged?: boolean; /** Calendar ids accepted by calendarId edits. Omit for presentation-only/standalone normalization. */ readonly calendars?: readonly CalendarEntity[]; /** Project duration conversion settings used for unitless values and date-derived duration. */ readonly durationSettings?: import('../../core').DurationSettings; /** Task kinds accepted for type changes. Omit to accept every supported task kind. */ readonly allowedTaskTypes?: readonly TaskType[]; /** Gantt labels used to resolve validation messages. */ readonly labels?: GanttRuntimeLabelsConfig;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
includeUnchanged | boolean | undefined | No | — | When false, fields equal to the current task value are omitted from the returned patch. Defaults to false so forms can submit their whole state. |
calendars | readonly CalendarEntity[] | undefined | No | — | Calendar ids accepted by calendarId edits. Omit for presentation-only/standalone normalization. |
durationSettings | DurationSettings | undefined | No | — | Project duration conversion settings used for unitless values and date-derived duration. |
allowedTaskTypes | readonly TaskType[] | undefined | No | — | Task kinds accepted for type changes. Omit to accept every supported task kind. |
labels | GanttRuntimeLabelsConfig | undefined | No | — | Gantt labels used to resolve validation messages. |
Related types: GanttRuntimeLabelsConfig, TaskType
parseDependencyDropdownDisplayValue
Section titled “parseDependencyDropdownDisplayValue”function
export function parseDependencyDropdownDisplayValue(displayValue: unknown, options: readonly GanttDependencyDropdownTaskOption[]): GanttDependencyDropdownValue[];| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
displayValue | unknown | Yes | — | |
options | readonly GanttDependencyDropdownTaskOption[] | Yes | — |
Related types: GanttDependencyDropdownTaskOption, GanttDependencyDropdownValue
resolveHiddenColumnsFromToolbarSelection
Section titled “resolveHiddenColumnsFromToolbarSelection”function
export function resolveHiddenColumnsFromToolbarSelection(selectedValues: string | string[], allProps: string[], previousHiddenColumns: string[]): string[];| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
selectedValues | string | string[] | Yes | — | |
allProps | string[] | Yes | — | |
previousHiddenColumns | string[] | Yes | — |
ResourceOverallocationLoadSummary
Section titled “ResourceOverallocationLoadSummary”interface
export interface ResourceOverallocationLoadSummary { readonly resourceId: ResourceId; readonly resourceName?: string; readonly resourceRole?: string; readonly planning?: ResourcePlanningRowData; readonly segments?: readonly ResourceLoadSegment[];}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
resourceId | string | Yes | — | |
resourceName | string | undefined | No | — | |
resourceRole | string | undefined | No | — | |
planning | ResourcePlanningRowData | undefined | No | — | |
segments | readonly ResourceLoadSegment[] | undefined | No | — |
Related types: ResourceId, ResourceLoadSegment, ResourcePlanningRowData
ResourceOverallocationSummary
Section titled “ResourceOverallocationSummary”interface
export interface ResourceOverallocationSummary { readonly totalCount: number; readonly resourceCount: number; readonly peakOverloadUnits: number; readonly groups: readonly ResourceOverallocationSummaryGroup[];}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
totalCount | number | Yes | — | |
resourceCount | number | Yes | — | |
peakOverloadUnits | number | Yes | — | |
groups | readonly ResourceOverallocationSummaryGroup[] | Yes | — |
ResourceOverallocationSummaryInput
Section titled “ResourceOverallocationSummaryInput”interface
export interface ResourceOverallocationSummaryInput { readonly conflicts?: readonly SchedulerConflict[]; readonly rows?: readonly ResourceOverallocationSummaryRow[]; readonly loadSummaries?: readonly ResourceOverallocationLoadSummary[];}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
conflicts | readonly SchedulerConflict[] | undefined | No | — | |
rows | readonly ResourceOverallocationSummaryRow[] | undefined | No | — | |
loadSummaries | readonly ResourceOverallocationLoadSummary[] | undefined | No | — |
Related types: ResourceOverallocationLoadSummary, SchedulerConflict
RevoGridCsvExportPlugin
Section titled “RevoGridCsvExportPlugin”interface
export interface RevoGridCsvExportPlugin { exportFile(options?: GanttCsvExportOptions): Promise<void>;}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
exportFile(options?: GanttCsvExportOptions) | Promise<void> | Yes | — |
Related types: GanttCsvExportOptions
scrollGanttToToday
Section titled “scrollGanttToToday”function
export function scrollGanttToToday(grid: HTMLRevoGridElement, options: GanttTodayNavigationOptions = {}): Promise<boolean>;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
grid | HTMLRevoGridElement | Yes | — | |
options | GanttTodayNavigationOptions | No | {} |
Related types: GanttTodayNavigationOptions
TASK_EDITOR_FIELD_SCHEMA
Section titled “TASK_EDITOR_FIELD_SCHEMA”constant
export const TASK_EDITOR_FIELD_SCHEMA: readonly [{ readonly id: "name"; readonly label: "Task Name"; readonly kind: "text"; readonly taskField: "name"; readonly updateField: "name"; }, { readonly id: "workflowStatus"; readonly label: "Workflow Status"; readonly kind: "select"; readonly taskField: "workflowStatus"; readonly updateField: "workflowStatus"; readonly options: readonly TaskEditorFieldOption<TaskWorkflowStatus>[]; }, { readonly id: "type"; readonly label: "Task Kind"; readonly kind: "select"; readonly taskField: "type"; readonly updateField: "type"; readonly options: readonly TaskEditorFieldOption<TaskType>[]; }, { readonly id: "startDate"; readonly label: "Start"; readonly kind: "date"; readonly taskField: "startDate"; readonly updateField: "startDate"; }, { readonly id: "endDate"; readonly label: "Finish"; readonly kind: "date"; readonly taskField: "endDate"; readonly updateField: "endDate"; }, { readonly id: "duration"; readonly label: "Duration"; readonly kind: "duration"; readonly taskField: "duration"; readonly updateField: "duration"; readonly min: 0; readonly step: 1; }, { readonly id: "progressPercent"; readonly label: "Progress"; readonly kind: "percent"; readonly taskField: "progressPercent"; readonly updateField: "progressPercent"; readonly min: 0; readonly max: 100; readonly step: 1; }, { readonly id: "color"; readonly label: "Color"; readonly kind: "color"; readonly taskField: "color"; readonly updateField: "color"; }, { readonly id: "constraintType"; readonly label: "Constraint"; readonly kind: "select"; readonly taskField: "constraintType"; readonly updateField: "constraintType"; readonly options: readonly TaskEditorFieldOption<TaskConstraintType>[]; }, { readonly id: "constraintDate"; readonly label: "Constraint Date"; readonly kind: "date"; readonly taskField: "constraintDate"; readonly updateField: "constraintDate"; }, { readonly id: "deadlineDate"; readonly label: "Deadline"; readonly kind: "date"; readonly taskField: "deadlineDate"; readonly updateField: "deadlineDate"; }, { readonly id: "actualStartDate"; readonly label: "Actual Start"; readonly kind: "date"; readonly taskField: "actualStartDate"; readonly updateField: "actualStartDate"; }, { readonly id: "actualFinishDate"; readonly label: "Actual Finish"; readonly kind: "date"; readonly taskField: "actualFinishDate"; readonly updateField: "actualFinishDate"; }, { readonly id: "remainingDuration"; readonly label: "Remaining Duration"; readonly kind: "duration"; readonly taskField: "remainingDuration"; readonly updateField: "remainingDuration"; readonly min: 0; }, { readonly id: "workHours"; readonly label: "Work"; readonly kind: "duration"; readonly taskField: "workHours"; readonly updateField: "workHours"; readonly min: 0; }, { readonly id: "effortMode"; readonly label: "Task Type"; readonly kind: "select"; readonly taskField: "effortMode"; readonly updateField: "effortMode"; readonly options: readonly TaskEditorFieldOption<TaskEffortMode>[]; }, { readonly id: "effortDriven"; readonly label: "Effort Driven"; readonly kind: "switch"; readonly taskField: "effortDriven"; readonly updateField: "effortDriven"; }, { readonly id: "inactive"; readonly label: "Inactive"; readonly kind: "switch"; readonly taskField: "inactive"; readonly updateField: "inactive"; }, { readonly id: "priority"; readonly label: "Priority"; readonly kind: "number"; readonly taskField: "priority"; readonly updateField: "priority"; readonly min: 0; readonly max: 1000; readonly step: 1; }, { readonly id: "canLevel"; readonly label: "Can Level"; readonly kind: "switch"; readonly taskField: "canLevel"; readonly updateField: "canLevel"; }, { readonly id: "levelingDelayDays"; readonly label: "Leveling Delay"; readonly kind: "number"; readonly taskField: "levelingDelayDays"; readonly updateField: "levelingDelayDays"; readonly min: 0; readonly step: 1; }, { readonly id: "manuallyScheduled"; readonly label: "Manual Scheduling"; readonly kind: "switch"; readonly taskField: "manuallyScheduled"; readonly updateField: "manuallyScheduled"; }, { readonly id: "resourceLabels"; readonly label: "Resources"; readonly kind: "labels"; readonly readonly: true; }, { readonly id: "calendarId"; readonly label: "Calendar"; readonly kind: "select"; readonly taskField: "calendarId"; readonly updateField: "calendarId"; }, { readonly id: "tags"; readonly label: "Tags"; readonly kind: "tags"; readonly taskField: "tags"; readonly updateField: "tags"; }, { readonly id: "notes"; readonly label: "Notes"; readonly kind: "textarea"; readonly taskField: "notes"; readonly updateField: "notes"; }];Related types: TaskConstraintType, TaskEffortMode, TaskType, TaskWorkflowStatus
TaskDetailPopoverModel
Section titled “TaskDetailPopoverModel”interface
export interface TaskDetailPopoverModel { readonly taskId: string; readonly title: string; readonly subtitle: string; readonly sections: readonly TaskDetailPopoverSection[]; readonly resourceAssignments: readonly TaskDetailPopoverResourceAssignment[];}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
taskId | string | Yes | — | |
title | string | Yes | — | |
subtitle | string | Yes | — | |
sections | readonly TaskDetailPopoverSection[] | Yes | — | |
resourceAssignments | readonly TaskDetailPopoverResourceAssignment[] | Yes | — |
TaskEditorFieldId
Section titled “TaskEditorFieldId”type
export type TaskEditorFieldId = TaskEditorEditableFieldId | TaskEditorDisplayFieldId;TaskEditorFieldSchema
Section titled “TaskEditorFieldSchema”interface
export interface TaskEditorFieldSchema<TField extends TaskEditorFieldId = TaskEditorFieldId> { readonly id: TField; readonly label: string; readonly kind: TaskEditorFieldKind; readonly taskField?: keyof TaskEntity; readonly updateField?: keyof TaskUpdate; readonly readonly?: boolean; readonly min?: number; readonly max?: number; readonly step?: number; readonly options?: readonly TaskEditorFieldOption[];}| Member | Type / return | Required | Default | Description |
|---|---|---|---|---|
id | TField | Yes | — | |
label | string | Yes | — | |
kind | TaskEditorFieldKind | Yes | — | |
taskField | keyof TaskEntity | undefined | No | — | |
updateField | "name" | "workflowStatus" | "type" | "startDate" | "endDate" | "duration" | "actualStartDate" | "actualFinishDate" | "deadlineDate" | "progressPercent" | "color" | "constraintType" | "constraintDate" | "manuallyScheduled" | "workHours" | "remainingDuration" | "notes" | "calendarId" | "tags" | "effortMode" | "effortDriven" | "inactive" | "priority" | "canLevel" | "levelingDelayDays" | "durationUnit" | "durationIsElapsed" | "workUnit" | "splitRanges" | undefined | No | — | |
readonly | boolean | undefined | No | — | |
min | number | undefined | No | — | |
max | number | undefined | No | — | |
step | number | undefined | No | — | |
options | readonly TaskEditorFieldOption<string>[] | undefined | No | — |
Related types: TaskEditorFieldId, TaskEntity, TaskUpdate
TaskEditorFormValues
Section titled “TaskEditorFormValues”type
export type TaskEditorFormValues = Partial<Record<TaskEditorFieldId, unknown>>;Related types: TaskEditorFieldId
TaskEditorSubmitResult
Section titled “TaskEditorSubmitResult”type
export type TaskEditorSubmitResult = TaskEditorSubmitSuccess | TaskEditorSubmitFailure;toggleGanttCriticalPath
Section titled “toggleGanttCriticalPath”function
Toggle critical-path highlighting on the grid’s Gantt visual config.
Returns the next visibility state, or undefined when the grid has no
Gantt config to update.
export function toggleGanttCriticalPath(grid: HTMLRevoGridElement): boolean | undefined;| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
grid | HTMLRevoGridElement | Yes | — |