UNPKG

@amcharts/amcharts5

Version:
288 lines 10.2 kB
import type { AxisRenderer } from "../xy/axes/AxisRenderer"; import type { GanttCategoryAxisRenderer } from "./GanttCategoryAxisRenderer"; import type { Container } from "../../core/render/Container"; import type { ProgressPie } from "../../core/render/ProgressPie"; import type { Gantt } from "./Gantt"; import type { AxisTick } from "../xy/axes/AxisTick"; import type { NumericStepper } from "../../core/render/NumericStepper"; import type { IGanttSeriesDataItem } from "./GanttSeries"; import type { Animation } from "../../core/util/Entity"; import { Rectangle } from "../../core/render/Rectangle"; import { CategoryAxis, ICategoryAxisSettings, ICategoryAxisPrivate, ICategoryAxisDataItem, ICategoryAxisEvents } from "../xy/axes/CategoryAxis"; import { Button, Color, DataItem, IDisposer } from "../../.."; export interface IGanttCategoryAxisSettings<R extends AxisRenderer> extends ICategoryAxisSettings<R> { /** * Currently selected category data item, if any. */ selectedDataItem?: DataItem<IGanttCategoryAxisDataItem>; /** * A field in data that holds parent id. * * @see {@link https://www.amcharts.com/docs/v5/charts/gantt/#Category_data} for more info * @default "parentId" */ parentIdField?: string; /** * A field in data that holds status whether the category is collapsed. * * @see {@link https://www.amcharts.com/docs/v5/charts/gantt/#Category_data} for more info * @default "collapsed" */ collapsedField?: string; /** * Size of child categories relative to the top-level cell height. (`0` - `1`) * * @see {@link https://www.amcharts.com/docs/v5/charts/gantt/#Cell_height_for_child_categories} for more info * @default 0.8 */ childCellSize?: number; /** * A shift in pixels to apply to child categories. * * @see {@link https://www.amcharts.com/docs/v5/charts/gantt/#Cell_height_for_child_categories} for more info * @default 25 */ childShift?: number; /** * A minimal height of the cell in pixels. * * @see {@link https://www.amcharts.com/docs/v5/charts/gantt/#Cell_height} for more info * @default 70 */ minCellHeight?: number; /** * Field of a category name * @default "name" */ nameField?: string; /** * Field of a category color * @default "color" */ colorField?: string; } export interface IGanttCategoryAxisDataItem extends ICategoryAxisDataItem { /** * A container that holds all other elements of a axis label - label, controls, grip, etc. */ container?: Container; /** * A container that holds progress pie and duration stepper. */ controlsContainer?: Container; /** * A grip for dragging the category. */ grip?: Rectangle; /** * A bullet to the left of a label (circle or triangle, if it has children) */ taskBullet?: Button; /** * A progress pie that shows progress of the task. */ progressPie?: ProgressPie; /** * Children of this category, if any. */ children?: Array<DataItem<IGanttCategoryAxisDataItem>>; /** * Parent id of data item. */ parentId?: string; /** * A reference to the parent category data item. */ parent?: DataItem<IGanttCategoryAxisDataItem>; /** * Progress of the task, from `0` to `1`. If this item has children, this will be the average of all children's progress. */ progress?: number; /** * A stepper that allows to change task duration. */ durationStepper?: NumericStepper; /** * A flag indicating whether the category is collapsed. */ collapsed?: boolean; /** * Duration of the task (in days or other units, depending on `durationUnit` setting of a `Gantt`). */ duration?: number; /** * Color of a task. */ color?: Color; /** * Custom color for the task, if any. */ customColor?: Color; /** * Displayed name of a category. */ name?: string; /** * @ignore */ deleting?: boolean; /** * A reference to the series data item. */ seriesDataItem?: DataItem<IGanttSeriesDataItem>; } export interface IGanttCategoryAxisPrivate extends ICategoryAxisPrivate { } export interface IGanttCategoryAxisEvents extends ICategoryAxisEvents { } /** * A category axis that is used as a Y (vertical) axis for [[Gantt]] charts. * * @see {@link https://www.amcharts.com/docs/v5/charts/gantt/#Category_vertical_axis} for more info * @since 5.14.0 * @important */ export declare class GanttCategoryAxis<R extends GanttCategoryAxisRenderer> extends CategoryAxis<R> { static className: string; static classNames: Array<string>; _settings: IGanttCategoryAxisSettings<R>; _privateSettings: IGanttCategoryAxisPrivate; _dataItemSettings: IGanttCategoryAxisDataItem; _events: IGanttCategoryAxisEvents; protected _downX: number | undefined; protected _downW: number | undefined; protected _xHideDP: IDisposer | undefined; protected _insertAfter: DataItem<IGanttCategoryAxisDataItem> | undefined; protected _makeChildOf: DataItem<IGanttCategoryAxisDataItem> | undefined; protected _draggedItem: DataItem<IGanttCategoryAxisDataItem> | undefined; protected _previousTick: AxisTick | undefined; protected _delDp: IDisposer | undefined; protected _firstDataItem: DataItem<IGanttCategoryAxisDataItem>; protected _updDP: IDisposer | undefined; protected _dataChangeDp: IDisposer | undefined; protected _treeDirty: boolean; axisResizer?: Rectangle; /** * A reference to the parent [[Gantt]] chart. */ gantt?: Gantt; /** * A [[Button]] used for deleting categories. */ xButton: Button; protected _afterNew(): void; _changed(): void; protected _processBullet(dataItem: DataItem<IGanttCategoryAxisDataItem>): void; _updateChildren(): void; _clearDirty(): void; getSeriesDataItem(dataItem: DataItem<IGanttCategoryAxisDataItem>): DataItem<IGanttSeriesDataItem> | undefined; /** * Zooms the axis to relative locations. * * Both `start` and `end` are relative: 0 means start of the axis, 1 - end. * * @param start Relative start * @param end Relative end * @param duration Duration of the zoom animation in milliseconds * @return Zoom animation */ zoom(start: number, end: number, duration?: number): Animation<this["_settings"]["start"]> | Animation<this["_settings"]["end"]> | undefined; _afterDataChange(): void; markDirtyTree(): void; _sortCategoryAxis(): void; _setNewColor(dataItem: DataItem<IGanttCategoryAxisDataItem>, color?: Color): void; _updateTree(): void; _updateCellSizes(duration?: number): void; _updateBullet(dataItem: DataItem<IGanttCategoryAxisDataItem>): void; /** * Toggles collapse state of a data item. * @param dataItem * @param collapse * @param duration */ toggleCollapse(dataItem: DataItem<IGanttCategoryAxisDataItem>, collapse?: boolean, duration?: number): void; /** * Expands all categories in the axis. */ expandAll(): void; /** * Collapses all categories in the axis. */ collapseAll(): void; /** * Deletes all data items from the axis. */ deleteAll(): void; /** * Deletes a data item from the axis. * * @param dataItem Data item to delete */ deleteDataItem(dataItem: DataItem<IGanttCategoryAxisDataItem>, child?: boolean): void; /** * Toggles progress pie for a data item. Toggling means that progress pie * will animate to 1 if it was less than 1, or animate to previous progress * value if it was 1. * * @param dataItem Data item to toggle progress pie for */ toggleProgressPie(dataItem?: DataItem<IGanttCategoryAxisDataItem>, value?: number): void; /** * Sets a custom color for a data item. * * @param dataItem Data item to set color for * @param c Color to set */ setDataItemColor(dataItem?: DataItem<IGanttCategoryAxisDataItem>, c?: Color): void; /** * Hides axis's data item. * * @param dataItem Data item * @param duration Animation duration in milliseconds * @return Promise */ hideDataItem(dataItem: DataItem<IGanttCategoryAxisDataItem>): Promise<void>; /** * Shows axis's data item. * * @param dataItem Data item * @param duration Animation duration in milliseconds * @return Promise */ showDataItem(dataItem: DataItem<IGanttCategoryAxisDataItem>): Promise<void>; _toggleFHDataItem(dataItem: DataItem<IGanttCategoryAxisDataItem>, forceHidden: boolean): void; _toggleDataItem(dataItem: DataItem<IGanttCategoryAxisDataItem>, visible: boolean): void; /** * Disposes a data item. * * @param dataItem Data item to dispose */ disposeDataItem(dataItem: DataItem<this["_dataItemSettings"]>): void; /** * Selects a data item and shows the delete button. If the data item is * already selected, it will unselect it. * * @param dataItem Data item to select */ selectDataItem(dataItem?: DataItem<IGanttCategoryAxisDataItem>): void; /** * Unselects all data items. */ unselectDataItems(): void; /** * @ignore */ _disposeXHideDP(): void; /** * @ignore * @param dataItem * @returns depth of the data item in the hierarchy */ _getItemDepth(dataItem: DataItem<IGanttCategoryAxisDataItem>): number; /** * @ignore * Overrides original method so that a ghost label is not created. */ protected _createGhostLabel(): void; } //# sourceMappingURL=GanttCategoryAxis.d.ts.map