import * as React from "react"; import { ViewState } from "@devexpress/dx-react-scheduler"; import { AppointmentModel } from "@devexpress/dx-react-scheduler"; import { Scheduler, WeekView, Appointments, AppointmentTooltip, } from "@devexpress/dx-react-scheduler-material-ui"; import moment from "moment"; import "moment/locale/pl"; import "./index.scss"; import { makeStyles, Theme, createStyles } from "@material-ui/core/styles"; interface CalendarProps { data: Array; } interface CalendarState {currentDate: Date;} const formatDayScaleDate = ( date: moment.MomentInput, options: { weekday: any } ) => { const momentDate = moment(date).locale("pl"); const { weekday } = options; return momentDate.format(weekday ? "dddd" : " ").toUpperCase(); }; const useStyles = makeStyles((theme: Theme) => createStyles({ dayScaleCell: { paddingTop: 10, paddingBottom: 10, }, timeTableLayout: { border: "1px solid rgba(224, 224, 224, 1);", borderCollapse: "separate", }, timeTableCell: { //borderRadius: 15, }, appointmentLayer: { borderRadius: 15, marginLeft: 5, textAlign: "center", }, }) ); //don't know how to set proper type of function arguments const DayScaleCell = ({ formatDate, ...restProps }: any) => { const classes = useStyles(); return ( ); }; const TimeTableCell = ({ ...restProps }: any) => { const classes = useStyles(); return ( ); }; const TimeTableLayout = ({ ...restProps }: any) => { const classes = useStyles(); return ( ); }; const Appointment = ({ ...restProps }: any) => { const classes = useStyles(); return ( ); }; export default class Calendar extends React.PureComponent< CalendarProps, CalendarState > { constructor(props: CalendarProps) { super(props); this.state = { currentDate: new Date("2020-06-01"), }; } render() { const { data } = this.props; const { currentDate } = this.state; return ( ); } }