diff options
author | metamuffin <metamuffin@disroot.org> | 2022-09-10 00:56:25 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2022-09-10 00:56:25 +0200 |
commit | 429dc2d5375abf8ca9c3861bdc4bdff52a31b0e4 (patch) | |
tree | 2fa8201ebdf45237a9ec90429bd18b5d6cdd9944 /client-web/source/chat.ts | |
parent | 95041256f86745832df42423e889d50d2cff35e7 (diff) | |
download | keks-meet-429dc2d5375abf8ca9c3861bdc4bdff52a31b0e4.tar keks-meet-429dc2d5375abf8ca9c3861bdc4bdff52a31b0e4.tar.bz2 keks-meet-429dc2d5375abf8ca9c3861bdc4bdff52a31b0e4.tar.zst |
overlay rework + settings
Diffstat (limited to 'client-web/source/chat.ts')
-rw-r--r-- | client-web/source/chat.ts | 28 |
1 files changed, 11 insertions, 17 deletions
diff --git a/client-web/source/chat.ts b/client-web/source/chat.ts index d1165ee..dfef73f 100644 --- a/client-web/source/chat.ts +++ b/client-web/source/chat.ts @@ -1,20 +1,10 @@ -import { ediv, espan } from "./helper.ts"; -import { CHAT } from "./index.ts"; +import { ediv, espan, OverlayUi } from "./helper.ts"; import { Room } from "./room.ts"; import { User } from "./user/mod.ts"; -export class Chat { - private _shown = false; - - messages = ediv({ class: "messages" }) - controls = ediv({ class: "controls" }) - - get shown() { return this._shown } - set shown(value: boolean) { - if (value && !this._shown) document.body.prepend(CHAT) - if (!value && this._shown) document.body.removeChild(CHAT) - this._shown = value - } +export class Chat extends OverlayUi { + messages: HTMLElement + controls: HTMLElement constructor(public room: Room) { const send = document.createElement("input") @@ -26,9 +16,13 @@ export class Chat { send.value = "" } } - this.controls.append(send) - this.messages.append(document.createElement("hr")) - CHAT.append(this.messages, this.controls) + const messages = ediv({ class: "messages" }) + const controls = ediv({ class: "controls" }) + controls.append(send) + messages.append(document.createElement("hr")) + super(ediv({ class: "chat" }, messages, controls)) + this.messages = messages + this.controls = controls } send_message(sender: User, message: string) { |