add basic layout for chat page

This commit is contained in:
marlon-erler
2024-07-20 15:27:27 +02:00
parent a18acbae10
commit 3c686e8879
4 changed files with 66 additions and 19 deletions
+22 -1
View File
@@ -102,8 +102,29 @@ main {
right: 0px; right: 0px;
bottom: 0px; bottom: 0px;
background-color: var(--background); background-color: var(--background);
z-index: 2;
} }
#chat-page { #chat-page > div {
padding: 0px;
overflow: hidden;
display: grid;
grid-template-columns: var(--control-height) 1fr;
grid-template-rows: var(--control-height) 1fr;
border-top: 1px solid var(--border);
}
#chat-page #ribbon {
grid-column: 1 / 2;
grid-row: 1 / 3;
border-right: 1px solid var(--border);
}
#chat-page #toolbar {
grid-column: 2 / 3;
grid-row: 1 / 2;
border-bottom: 1px solid var(--border);
}
#chat-page #main {
grid-column: 2 / 3;
grid-row: 2 / 3;
} }
/* src/View/homePage.css */ /* src/View/homePage.css */
+1 -1
View File
@@ -584,7 +584,7 @@
// src/View/chatPage.tsx // src/View/chatPage.tsx
function ChatPage(chatViewModel) { function ChatPage(chatViewModel) {
return /* @__PURE__ */ createElement("article", { id: "chat-page" }, /* @__PURE__ */ createElement("header", null, /* @__PURE__ */ createElement("span", { "subscribe:innerText": chatViewModel.primaryChannel })), /* @__PURE__ */ createElement("div", null, /* @__PURE__ */ createElement("div", { class: "ribbon" }), /* @__PURE__ */ createElement("div", { class: "toolbar" }), /* @__PURE__ */ createElement("div", { class: "main" }))); return /* @__PURE__ */ createElement("article", { id: "chat-page" }, /* @__PURE__ */ createElement("div", null, /* @__PURE__ */ createElement("div", { id: "ribbon" }), /* @__PURE__ */ createElement("div", { id: "toolbar" }), /* @__PURE__ */ createElement("div", { id: "main" })));
} }
// src/View/chatPageWrapper.tsx // src/View/chatPageWrapper.tsx
+38 -9
View File
@@ -1,19 +1,48 @@
#chat-page-wrapper { #chat-page-wrapper {
display: none; display: none;
} }
#chat-page-wrapper[open] { #chat-page-wrapper[open] {
display: flex; display: flex;
position: absolute; position: absolute;
top: 0px; top: 0px;
left: 0px; left: 0px;
right: 0px; right: 0px;
bottom: 0px; bottom: 0px;
background-color: var(--background); background-color: var(--background);
z-index: 2;
} }
#chat-page { #chat-page > div {
padding: 0px;
overflow: hidden;
display: grid;
grid-template-columns: var(--control-height) 1fr;
grid-template-rows: var(--control-height) 1fr;
border-top: 1px solid var(--border);
}
#chat-page #ribbon {
grid-column: 1 / 2;
grid-row: 1 / 3;
border-right: 1px solid var(--border);
}
#chat-page #toolbar {
grid-column: 2 / 3;
grid-row: 1 / 2;
border-bottom: 1px solid var(--border);
}
#chat-page #main {
grid-column: 2 / 3;
grid-row: 2 / 3;
} }
+3 -6
View File
@@ -8,13 +8,10 @@ import { translations } from "./translations";
export function ChatPage(chatViewModel: ChatViewModel) { export function ChatPage(chatViewModel: ChatViewModel) {
return ( return (
<article id="chat-page"> <article id="chat-page">
<header>
<span subscribe:innerText={chatViewModel.primaryChannel}></span>
</header>
<div> <div>
<div class="ribbon"></div> <div id="ribbon"></div>
<div class="toolbar"></div> <div id="toolbar"></div>
<div class="main"></div> <div id="main"></div>
</div> </div>
</article> </article>
); );