Type Chat message Store
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
This commit is contained in:
parent
1efcbb4529
commit
385ea1360e
@ -1,6 +1,6 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import type {PlayerInterface} from "../../Phaser/Game/PlayerInterface";
|
import type {PlayerInterface} from "../../Phaser/Game/PlayerInterface";
|
||||||
import {chatSubMenuVisbilityStore} from "../../Stores/ChatStore";
|
import {chatSubMenuVisibilityStore} from "../../Stores/ChatStore";
|
||||||
import {onDestroy, onMount} from "svelte";
|
import {onDestroy, onMount} from "svelte";
|
||||||
import type {Unsubscriber} from "svelte/store";
|
import type {Unsubscriber} from "svelte/store";
|
||||||
import ChatSubMenu from "./ChatSubMenu.svelte";
|
import ChatSubMenu from "./ChatSubMenu.svelte";
|
||||||
@ -12,11 +12,11 @@
|
|||||||
let chatSubMenuVisivilytUnsubcribe: Unsubscriber;
|
let chatSubMenuVisivilytUnsubcribe: Unsubscriber;
|
||||||
|
|
||||||
function openSubMenu() {
|
function openSubMenu() {
|
||||||
chatSubMenuVisbilityStore.openSubMenu(player.name, line);
|
chatSubMenuVisibilityStore.openSubMenu(player.name, line);
|
||||||
}
|
}
|
||||||
|
|
||||||
onMount(() => {
|
onMount(() => {
|
||||||
chatSubMenuVisivilytUnsubcribe = chatSubMenuVisbilityStore.subscribe((newValue) => {
|
chatSubMenuVisivilytUnsubcribe = chatSubMenuVisibilityStore.subscribe((newValue) => {
|
||||||
isSubMenuOpen = (newValue === player.name + line);
|
isSubMenuOpen = (newValue === player.name + line);
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
@ -84,7 +84,12 @@ function createChatMessagesStore() {
|
|||||||
addExternalMessage(authorId: number, text: string) {
|
addExternalMessage(authorId: number, text: string) {
|
||||||
update((list) => {
|
update((list) => {
|
||||||
const lastMessage = list[list.length - 1];
|
const lastMessage = list[list.length - 1];
|
||||||
if (lastMessage && lastMessage.type === ChatMessageTypes.text && lastMessage.text && lastMessage?.author?.userId === authorId) {
|
if (
|
||||||
|
lastMessage &&
|
||||||
|
lastMessage.type === ChatMessageTypes.text &&
|
||||||
|
lastMessage.text &&
|
||||||
|
lastMessage?.author?.userId === authorId
|
||||||
|
) {
|
||||||
lastMessage.text.push(text);
|
lastMessage.text.push(text);
|
||||||
} else {
|
} else {
|
||||||
list.push({
|
list.push({
|
||||||
@ -116,4 +121,4 @@ function createChatSubMenuVisibilityStore() {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export const chatSubMenuVisbilityStore = createChatSubMenuVisibilityStore();
|
export const chatSubMenuVisibilityStore = createChatSubMenuVisibilityStore();
|
||||||
|
Loading…
Reference in New Issue
Block a user