import "./homePage.css"; import * as React from "bloatless-react"; import ChatViewModel, { ChatPageTypes } from "../ViewModel/Chat/chatViewModel"; import { CalendarPage } from "./ChatPages/calendarPage"; import { ChatViewToggleButton } from "./Components/chatViewToggleButton"; import { MessagePage } from "./ChatPages/messagePage"; import { SettingsPage } from "./ChatPages/settingsPage"; import { TaskPage } from "./ChatPages/taskPage"; import { translations } from "./translations"; export function ChatPage(chatViewModel: ChatViewModel) { const mainContent = React.createProxyState( [chatViewModel.selectedPage], () => { chatViewModel.closeSubPages(); switch (chatViewModel.selectedPage.value) { case ChatPageTypes.Settings: { return SettingsPage(chatViewModel.settingsPageViewModel); } case ChatPageTypes.Tasks: { return TaskPage(chatViewModel.taskPageViewModel); } case ChatPageTypes.Calendar: { return CalendarPage(chatViewModel.calendarViewModel); } default: { return MessagePage(chatViewModel.messagePageViewModel); } } }, ); const marqueeContent = React.createProxyState( [chatViewModel.notificationViewModel.marquee], () => { const value = chatViewModel.notificationViewModel.marquee.value; if (value == undefined) return ; return ( {value.sender} {value.chat}: {value.body} ); }, ); return (
{ChatViewToggleButton( translations.chatPage.pages.calendar, "calendar_month", ChatPageTypes.Calendar, chatViewModel, )} {ChatViewToggleButton( translations.chatPage.pages.tasks, "task_alt", ChatPageTypes.Tasks, chatViewModel, )} {ChatViewToggleButton( translations.chatPage.pages.messages, "forum", ChatPageTypes.Messages, chatViewModel, )} {ChatViewToggleButton( translations.chatPage.pages.settings, "settings", ChatPageTypes.Settings, chatViewModel, )}
); }