UNPKG

tdesign-vue

Version:
86 lines (85 loc) 2.4 kB
import { ButtonProps } from '../button'; import { RadioGroupProps } from '../radio'; import { CheckTagProps } from '../tag'; import { SelectProps } from '../select'; import { TNode } from '../common'; export interface TdCalendarProps { cell?: string | TNode<CalendarCell>; cellAppend?: string | TNode<CalendarCell>; controllerConfig?: boolean | CalendarController; fillWithZero?: boolean; firstDayOfWeek?: number; format?: string; head?: string | TNode<ControllerOptions>; isShowWeekendDefault?: boolean; mode?: 'month' | 'year'; month?: string | number; multiple?: boolean; preventCellContextmenu?: boolean; range?: Array<CalendarValue>; theme?: 'full' | 'card'; value?: CalendarValue | CalendarValue[]; week?: Array<string> | TNode<CalendarWeek>; year?: string | number; onCellClick?: (options: { cell: CalendarCell; e: MouseEvent; }) => void; onCellDoubleClick?: (options: { cell: CalendarCell; e: MouseEvent; }) => void; onCellRightClick?: (options: { cell: CalendarCell; e: MouseEvent; }) => void; onControllerChange?: (options: ControllerOptions) => void; onMonthChange?: (options: { month: string; year: string; }) => void; } export interface CalendarController { current?: { visible?: boolean; currentDayButtonProps?: ButtonProps; currentMonthButtonProps?: ButtonProps; }; disabled?: boolean; mode?: { visible?: boolean; radioGroupProps?: RadioGroupProps; }; month?: { visible?: boolean; selectProps?: SelectProps; }; weekend?: { visible?: boolean; showWeekendButtonProps?: CheckTagProps; hideWeekendButtonProps?: CheckTagProps; }; year?: { visible?: boolean; selectProps?: SelectProps; }; } export interface CalendarCell extends ControllerOptions { belongTo?: number; date?: Date; day?: number; formattedDate?: string; isCurrent?: boolean; weekOrder?: number; } export declare type CalendarValue = string | Date; export interface CalendarWeek { day: WeekDay; } export declare type WeekDay = 1 | 2 | 3 | 4 | 5 | 6 | 7; export interface ControllerOptions { filterDate: Date; formattedFilterDate: string; mode: string; isShowWeekend: boolean; }