import "./calendarPage.css"; import * as React from "bloatless-react"; import CalendarModel from "../../Model/Files/calendarModel"; import CalendarPageViewModel from "../../ViewModel/Pages/calendarPageViewModel"; import { MonthGrid } from "../Components/monthGrid"; import { TaskSettingsModal } from "../Modals/taskSettingsModal"; import { TaskViewModelToEntry } from "../Components/taskEntry"; import { translations } from "../translations"; export function CalendarPage(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(monthGrid, calendarPageViewModel.selectedDate, drop); } } ); const sidePaneContent = React.createProxyState( [ calendarPageViewModel.selectedYear, calendarPageViewModel.selectedMonth, calendarPageViewModel.selectedDate, ], () => { const listState = calendarPageViewModel.monthGrid.value?.days[ calendarPageViewModel.selectedDate.toString() ]; if (listState == undefined) { return ; } else if (listState.value.size == 0) { return (