import "./calendarPage.css"; import { ViewController } from "../viewController"; import { TaskSettingsModal } from "../Modals/taskSettingsModal"; import { TaskViewModelToEntry } from "../Components/taskEntry"; import { PlaceholderView } from "../Components/placeholderView"; import { MonthGrid } from "../Components/monthGrid"; import * as React from "../../react"; import CalendarPageViewModel from "../../ViewModel/Pages/calendarPageViewModel"; import CoreViewModel from "../../ViewModel/Global/coreViewModel"; export function CalendarPage( coreViewModel: CoreViewModel, calendarPageViewModel: CalendarPageViewModel, ) { calendarPageViewModel.loadData(); const mainContent = React.createProxyState( [calendarPageViewModel.monthGrid], () => { const monthGrid = calendarPageViewModel.monthGrid.value; if (monthGrid == undefined) { return
; } else { function drop(date: string) { calendarPageViewModel.handleDrop( monthGrid!.year.toString(), monthGrid!.month.toString(), date, ); } return MonthGrid( coreViewModel, monthGrid, calendarPageViewModel.selectedDate, drop, ); } }, ); const sidePaneContentWrapper = React.createProxyState( [ calendarPageViewModel.selectedYear, calendarPageViewModel.selectedMonth, calendarPageViewModel.selectedDate, ], () => { console.log(calendarPageViewModel.selectedDate.value); const listState = calendarPageViewModel.getEventsForDate(); if (listState == undefined) { return
; } else { const sidePaneContent = React.createProxyState( [listState], () => { if (listState.value.size == 0) { return PlaceholderView( coreViewModel.translations.chatPage.calendar .noEvents, ); } else { return (
); } }, ); return (
); } }, ); const taskSettingsModal = React.createProxyState( [calendarPageViewModel.selectedTaskViewModel], () => { if ( calendarPageViewModel.selectedTaskViewModel.value == undefined ) { return
; } else { ViewController.setFocusWithDelay(); return TaskSettingsModal( coreViewModel, calendarPageViewModel.selectedTaskViewModel.value, ); } }, ); return (
); }