choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
100 lines (99 loc) • 4.38 kB
TypeScript
import { CSSProperties, ReactNode } from 'react';
import PropTypes from 'prop-types';
import { Moment } from 'moment';
import { TimeUnit } from './enum';
import DaysView, { DateViewProps } from './DaysView';
import { FieldType } from '../data-set/enum';
export interface TimesViewProps extends DateViewProps {
/**
* 是否是dateTime是使用,内部使用
*/
datetimeSide?: boolean;
}
export default class TimesView<T extends TimesViewProps> extends DaysView<T> {
static displayName: string;
static propTypes: {
id: PropTypes.Requireable<string>;
size: PropTypes.Requireable<import("../core/enum").Size>;
suffixCls: PropTypes.Requireable<string>;
prefixCls: PropTypes.Requireable<string>;
title: PropTypes.Requireable<PropTypes.ReactNodeLike>;
disabled: PropTypes.Requireable<boolean>;
hidden: PropTypes.Requireable<boolean>;
autoFocus: PropTypes.Requireable<boolean>;
accessKey: PropTypes.Requireable<string | boolean>;
dir: PropTypes.Requireable<string>;
contentEditable: PropTypes.Requireable<string | boolean>;
draggable: PropTypes.Requireable<string | boolean>;
style: PropTypes.Requireable<object>;
className: PropTypes.Requireable<string>;
tabIndex: PropTypes.Requireable<number>;
lang: PropTypes.Requireable<string>;
spellCheck: PropTypes.Requireable<boolean>;
onFocus: PropTypes.Requireable<(...args: any[]) => any>;
onBlur: PropTypes.Requireable<(...args: any[]) => any>;
onClick: PropTypes.Requireable<(...args: any[]) => any>;
onDoubleClick: PropTypes.Requireable<(...args: any[]) => any>;
onMouseUp: PropTypes.Requireable<(...args: any[]) => any>;
onMouseDown: PropTypes.Requireable<(...args: any[]) => any>;
onMouseMove: PropTypes.Requireable<(...args: any[]) => any>;
onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
onMouseOver: PropTypes.Requireable<(...args: any[]) => any>;
onMouseOut: PropTypes.Requireable<(...args: any[]) => any>;
onContextMenu: PropTypes.Requireable<(...args: any[]) => any>;
onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
onKeyUp: PropTypes.Requireable<(...args: any[]) => any>;
onKeyPress: PropTypes.Requireable<(...args: any[]) => any>;
date: PropTypes.Requireable<object>;
renderer: PropTypes.Requireable<(...args: any[]) => any>;
isValidDate: PropTypes.Requireable<(...args: any[]) => any>;
onSelect: PropTypes.Requireable<(...args: any[]) => any>;
onSelectedDateChange: PropTypes.Requireable<(...args: any[]) => any>;
onViewModeChange: PropTypes.Requireable<(...args: any[]) => any>;
datetimeSide: PropTypes.Requireable<boolean>;
};
static defaultProps: {
suffixCls: string;
extraFooterPlacement: string;
datetimeSide: boolean;
};
static type: FieldType;
currentUnit?: TimeUnit;
panel: HTMLDivElement | null;
getViewClassName(): string;
get showHour(): boolean;
get showMinute(): boolean;
get showSecond(): boolean;
get use12Hours(): boolean;
get timeUnitQueue(): TimeUnit[];
get barStyle(): CSSProperties;
get activeStyle(): CSSProperties;
savePanel(node: any): void;
getObservableProps(props: any, context: any): any;
componentDidMount(): void;
componentWillUnmount(): void;
handleDateTimeSelect(): void;
handleKeyDownHome(e: any): void;
handleKeyDownEnd(e: any): void;
handleKeyDownLeft(e: any): void;
handleKeyDownRight(e: any): void;
handleKeyDownUp(e: any): void;
handleKeyDownDown(e: any): void;
handleKeyDownPageUp(e: any): void;
handleKeyDownPageDown(e: any): void;
handleTimeCellClick(date: Moment, unit: TimeUnit): void;
handleWheel(e: any): void;
renderHeader(): ReactNode;
renderFooter(): ReactNode;
renderPanel(): JSX.Element;
renderPanelBody(): ReactNode;
renderCell(props: object): ReactNode;
getTimeBar(unit: TimeUnit): ReactNode;
getPanelClass(): string;
getCurrentUnit(): TimeUnit;
getPrevUnit(): TimeUnit;
getNextUnit(): TimeUnit;
changeUnit(unit?: TimeUnit): void;
choose(date: Moment): void;
}