@types/react-big-calendar
Advanced tools
Comparing version 0.24.5 to 0.24.6
@@ -25,2 +25,4 @@ // Type definitions for react-big-calendar 0.24 | ||
type Omit<T, K extends keyof T> = Pick<T, Exclude<keyof T, K>>; | ||
export type DayPropGetter = (date: Date, resourceId?: number | string) => React.HTMLAttributes<HTMLDivElement>; | ||
@@ -30,6 +32,30 @@ export type EventPropGetter<T> = (event: T, start: stringOrDate, end: stringOrDate, isSelected: boolean) => React.HTMLAttributes<HTMLDivElement>; | ||
export type SlotGroupPropGetter = () => React.HTMLAttributes<HTMLDivElement>; | ||
export type stringOrDate = string | Date; | ||
export type ViewKey = 'MONTH' | 'WEEK' | 'WORK_WEEK' | 'DAY' | 'AGENDA'; | ||
export type View = 'month' | 'week' | 'work_week' | 'day' | 'agenda'; | ||
export type ViewsProps = View[] | { | ||
export type ViewProps<TEvent extends object = Event, TResource extends object = object> = | ||
Omit< | ||
CalendarProps<TEvent, TResource>, | ||
'elementProps' | 'className' | 'style' | 'view' | 'toolbar' | 'components' | | ||
'formats' | 'messages' | 'culture' | ||
> & { | ||
date: stringOrDate; // date has always a value, in contrast to optional date in CalendarProps | ||
// props assigned from Calendar's this.state.context, see there if you want to improve the type defs: | ||
accessors: any; | ||
components: any; | ||
getters: any; | ||
localizer: any; | ||
// props assigned from Calendar instance, see there if you want to improve the type defs: | ||
getDrilldownView: any; // = this.getDrilldownView | ||
onNavigate: any; // = this.handleNavigate | ||
onDrillDown: any; // = this.handleDrillDown | ||
onSelectEvent: any; // = this.handleSelectEvent | ||
onDoubleClickEvent: any; // = this.handleDoubleClickEvent | ||
onSelectSlot: any; // = this.handleSelectSlot | ||
}; | ||
export type ViewsProps<TEvent extends object = Event, TResource extends object = object> = View[] | { | ||
work_week?: boolean | React.ComponentType<any> & ViewStatic, | ||
@@ -149,28 +175,28 @@ day?: boolean | React.ComponentType<any> & ViewStatic, | ||
export interface Components<TEvent extends object = Event> { | ||
export interface Components<TEvent extends object = Event, TResource extends object = object> { | ||
event?: React.ComponentType<EventProps<TEvent>>; | ||
eventWrapper?: React.ComponentType<EventWrapperProps<TEvent>>; | ||
eventContainerWrapper?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
dateCellWrapper?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
timeSlotWrapper?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
timeGutterHeader?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
timeGutterWrapper?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
toolbar?: React.ComponentType<ToolbarProps>; | ||
eventContainerWrapper?: React.ComponentType; | ||
dateCellWrapper?: React.ComponentType; | ||
timeSlotWrapper?: React.ComponentType; | ||
timeGutterHeader?: React.ComponentType; | ||
timeGutterWrapper?: React.ComponentType; | ||
toolbar?: React.ComponentType<ToolbarProps<TEvent, TResource>>; | ||
agenda?: { | ||
date?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
time?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
event?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
date?: React.ComponentType; | ||
time?: React.ComponentType; | ||
event?: React.ComponentType<EventProps<TEvent>>; | ||
}; | ||
day?: { | ||
header?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
event?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
header?: React.ComponentType; | ||
event?: React.ComponentType<EventProps<TEvent>>; | ||
}; | ||
week?: { | ||
header?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
event?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
header?: React.ComponentType; | ||
event?: React.ComponentType<EventProps<TEvent>>; | ||
}; | ||
month?: { | ||
header?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
dateHeader?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
event?: React.SFC | React.Component | React.ComponentClass | JSX.Element; | ||
header?: React.ComponentType; | ||
dateHeader?: React.ComponentType; | ||
event?: React.ComponentType<EventProps<TEvent>>; | ||
}; | ||
@@ -184,6 +210,6 @@ /** | ||
export interface ToolbarProps { | ||
export interface ToolbarProps<TEvent extends object = Event, TResource extends object = object> { | ||
date: Date; | ||
view: View; | ||
views: ViewsProps; | ||
views: ViewsProps<TEvent, TResource>; | ||
label: string; | ||
@@ -287,3 +313,3 @@ localizer: { messages: Messages }; | ||
selected?: any; | ||
views?: ViewsProps; | ||
views?: ViewsProps<TEvent, TResource>; | ||
drilldownView?: View | null; | ||
@@ -310,3 +336,3 @@ getDrilldownView?: ((targetDate: Date, currentViewName: View, configuredViewNames: View[]) => void) | null; | ||
formats?: Formats; | ||
components?: Components<TEvent>; | ||
components?: Components<TEvent, TResource>; | ||
messages?: Messages; | ||
@@ -374,1 +400,4 @@ dayLayoutAlgorithm?: DayLayoutAlgorithm | DayLayoutFunction<TEvent>; | ||
export function move(View: ViewStatic | ViewKey, options: MoveOptions): Date; | ||
// Turn off automatic exports | ||
export {}; |
import { Calendar, CalendarProps, Components, Event, stringOrDate } from '../../index'; | ||
import * as React from 'react'; | ||
export interface withDragAndDropProps<TEvent extends object = Event> { | ||
export interface withDragAndDropProps<TEvent extends object = Event, TResource extends object = object> { | ||
onEventDrop?: (args: { event: TEvent, start: stringOrDate, end: stringOrDate, allDay: boolean }) => void; | ||
@@ -15,3 +15,3 @@ onEventResize?: (args: { event: TEvent, start: stringOrDate, end: stringOrDate, allDay: boolean }) => void; | ||
resizable?: boolean; | ||
components?: Components<TEvent>; | ||
components?: Components<TEvent, TResource>; | ||
elementProps?: React.HTMLAttributes<HTMLElement>; | ||
@@ -21,6 +21,14 @@ step?: number; | ||
interface DragAndDropCalendarProps<TEvent extends object = Event, TResource extends object = object> | ||
extends CalendarProps<TEvent, TResource>, withDragAndDropProps<TEvent, TResource> {} | ||
declare class DragAndDropCalendar<TEvent extends object = Event, TResource extends object = object> | ||
extends React.Component<CalendarProps<TEvent, TResource> & withDragAndDropProps<TEvent>> {} | ||
extends React.Component<DragAndDropCalendarProps<TEvent, TResource>> {} | ||
declare function withDragAndDrop(calendar: typeof Calendar): typeof DragAndDropCalendar; | ||
declare function withDragAndDrop<TEvent extends object = Event, TResource extends object = object>( | ||
calendar: React.ComponentType<CalendarProps<TEvent, TResource>> | ||
): React.ComponentType<DragAndDropCalendarProps<TEvent, TResource>>; | ||
export default withDragAndDrop; | ||
// Turn off automatic exports | ||
export {}; |
{ | ||
"name": "@types/react-big-calendar", | ||
"version": "0.24.5", | ||
"version": "0.24.6", | ||
"description": "TypeScript definitions for react-big-calendar", | ||
@@ -105,4 +105,4 @@ "license": "MIT", | ||
}, | ||
"typesPublisherContentHash": "97d6874284b52ec9cd01e59726b5173f6fe7dbff78472d8de4c0b31369edf668", | ||
"typeScriptVersion": "3.0" | ||
"typesPublisherContentHash": "3b92c040283577d0c9910319da7fb698ef383b09942770cbe41dba4df4104faa", | ||
"typeScriptVersion": "3.1" | ||
} |
@@ -11,3 +11,3 @@ # Installation | ||
### Additional Details | ||
* Last updated: Mon, 27 Jul 2020 20:19:10 GMT | ||
* Last updated: Sat, 22 Aug 2020 09:52:48 GMT | ||
* Dependencies: [@types/prop-types](https://npmjs.com/package/@types/prop-types), [@types/react](https://npmjs.com/package/@types/react) | ||
@@ -14,0 +14,0 @@ * Global values: none |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
21374
383