UNPKG

react-calendar-timeline

Version:
43 lines (42 loc) 1.79 kB
import { Component } from 'react'; import { ItemProps } from './Item'; import { Id, TimelineGroupBase, TimelineItemBase, TimelineKeys } from '../types/main'; import { ItemDimension } from '../types/dimension'; export type CanResize = true | false | 'left' | 'right' | 'both'; type ItemsProps<CustomItem extends TimelineItemBase<number>> = { groups: TimelineGroupBase[]; items: CustomItem[]; dimensionItems: ItemDimension[]; selected?: Id[]; canvasTimeStart: number; canvasTimeEnd: number; canvasWidth: number; dragSnap?: number; minResizeWidth?: number; selectedItem?: Id; canChangeGroup?: boolean; canMove?: boolean; canResize?: CanResize; canSelect?: boolean; keys: TimelineKeys; moveResizeValidator?: ItemProps<CustomItem>['moveResizeValidator']; itemSelect: ItemProps<CustomItem>['onSelect']; itemDrag: ItemProps<CustomItem>['onDrag']; itemDrop: ItemProps<CustomItem>['onDrop']; itemResizing: ItemProps<CustomItem>['onResizing']; itemResized: ItemProps<CustomItem>['onResized']; onItemDoubleClick: ItemProps<CustomItem>['onItemDoubleClick']; onItemContextMenu?: ItemProps<CustomItem>['onContextMenu']; itemRenderer?: ItemProps<CustomItem>['itemRenderer']; groupTops: number[]; useResizeHandle?: boolean; scrollRef: HTMLElement | null; }; type ItemsState = object; export default class Items<CustomItem extends TimelineItemBase<number>> extends Component<ItemsProps<CustomItem>, ItemsState> { shouldComponentUpdate(nextProps: ItemsProps<CustomItem>): boolean; isSelected(item: CustomItem, itemIdKey: string): boolean; getVisibleItems(canvasTimeStart: number, canvasTimeEnd: number): CustomItem[]; render(): import("react/jsx-runtime").JSX.Element; } export {};