diff --git a/dist/index.js b/dist/index.js index 6a1960f1..c2bcc660 100644 --- a/dist/index.js +++ b/dist/index.js @@ -553,7 +553,7 @@ getTaskReferencePath = (boardId, fileId) => { return [...this.getTaskContainerPath(boardId), fileId]; }; - // handler + // handlers handleFileContent = (fileContent) => { if (checkMatchesObjectStructure(fileContent, BoardInfoFileContentReference) == true) { this.handleBoard(fileContent); @@ -716,7 +716,7 @@ const filePath = this.getFilePath(fileId); return [...filePath, fileContentId]; }; - // handler + // handlers handleStringifiedFileContent = (stringifiedFileContent) => { const fileContent = parseValidObject( stringifiedFileContent, @@ -916,6 +916,20 @@ getMessagePath = (id) => { return [...this.getMessageDirPath(), id]; }; + // handlers + handleMessage = (body) => { + const chatMessage = parseValidObject( + body, + ChatMessageReference + ); + if (chatMessage == null) return; + chatMessage.status = "received" /* Received */; + this.addMessage(chatMessage); + }; + handleMessageSent = (chatMessage) => { + chatMessage.status = "sent" /* Sent */; + this.addMessage(chatMessage); + }; // sorting get index() { return this.chatListModel.getIndexOfPrimaryChannel( @@ -942,6 +956,15 @@ this.storeColor(); }; // messaging + addMessage = async (chatMessage) => { + await this.decryptMessage(chatMessage); + if (chatMessage.body != "") { + const messagePath = this.getMessagePath(chatMessage.id); + this.storageModel.writeStringifiable(messagePath, chatMessage); + this.chatMessageHandler(chatMessage); + } + this.fileModel.handleStringifiedFileContent(chatMessage.stringifiedFile); + }; sendMessage = async (body, fileContent) => { const senderName = this.settingsModel.username; if (senderName == "") return false; @@ -961,19 +984,6 @@ this.connectionModel.sendMessageOrStore(chatMessage); return true; }; - handleMessage = (body) => { - const chatMessage = parseValidObject( - body, - ChatMessageReference - ); - if (chatMessage == null) return; - chatMessage.status = "received" /* Received */; - this.addMessage(chatMessage); - }; - handleMessageSent = (chatMessage) => { - chatMessage.status = "sent" /* Sent */; - this.addMessage(chatMessage); - }; decryptMessage = async (chatMessage) => { const decryptedBody = await decryptString( chatMessage.body, @@ -999,15 +1009,6 @@ storeColor = () => { this.storageModel.write(this.getColorPath(), this.color); }; - addMessage = async (chatMessage) => { - await this.decryptMessage(chatMessage); - if (chatMessage.body != "") { - const messagePath = this.getMessagePath(chatMessage.id); - this.storageModel.writeStringifiable(messagePath, chatMessage); - this.chatMessageHandler(chatMessage); - } - this.fileModel.handleStringifiedFileContent(chatMessage.stringifiedFile); - }; delete = () => { this.chatListModel.untrackChat(this); const dirPath = this.getBasePath(); @@ -1259,7 +1260,6 @@ this.chatMessageViewModels.set(chatMessage.id, chatMessageModel); } }; - // messaging sendMessage = () => { if (this.cannotSendMessage.value == true) return; this.sendMessageFromBody(this.composingMessage.value); @@ -1357,7 +1357,7 @@ this.chatViewModel.chatListViewModel.loadChats(); }; // load - loadViewRelevantData = () => { + loadListRelevantData = () => { this.primaryChannel.value = this.chatViewModel.chatModel.info.primaryChannel; this.color.value = this.chatViewModel.chatModel.color; this.cannotSetEncryptionKey = createProxyState( @@ -1379,7 +1379,7 @@ // init constructor(chatViewModel) { this.chatViewModel = chatViewModel; - this.loadViewRelevantData(); + this.loadListRelevantData(); } }; @@ -2426,7 +2426,7 @@ this.connectionModel.removeAddress(address); this.updatePreviousAddresses(); }; - // view methods + // view showConnectionModal = () => { this.isShowingConnectionModal.value = true; }; @@ -2649,7 +2649,7 @@ [this.usernameInput], () => this.usernameInput.value == "" || this.usernameInput.value == this.settingsModel.username ); - // set + // methods setName = () => { this.settingsModel.setName(this.usernameInput.value); this.username.value = this.settingsModel.username; @@ -2782,7 +2782,7 @@ this.storageModel.removeRecursively(path); this.didMakeChanges.value = true; }; - // view methods + // view showStorageModal = () => { this.isShowingStorageModal.value = true; }; diff --git a/src/Model/Chat/chatModel.ts b/src/Model/Chat/chatModel.ts index 117a96c9..a0b6d118 100644 --- a/src/Model/Chat/chatModel.ts +++ b/src/Model/Chat/chatModel.ts @@ -57,6 +57,23 @@ export default class ChatModel { return [...this.getMessageDirPath(), id]; }; + // handlers + handleMessage = (body: string): void => { + const chatMessage: ChatMessage | null = parseValidObject( + body, + ChatMessageReference + ); + if (chatMessage == null) return; + + chatMessage.status = ChatMessageStatus.Received; + this.addMessage(chatMessage); + }; + + handleMessageSent = (chatMessage: ChatMessage): void => { + chatMessage.status = ChatMessageStatus.Sent; + this.addMessage(chatMessage); + }; + // sorting get index(): number { return this.chatListModel.getIndexOfPrimaryChannel( @@ -88,6 +105,20 @@ export default class ChatModel { }; // messaging + addMessage = async (chatMessage: ChatMessage): Promise => { + await this.decryptMessage(chatMessage); + + // message + if (chatMessage.body != "") { + const messagePath: string[] = this.getMessagePath(chatMessage.id); + this.storageModel.writeStringifiable(messagePath, chatMessage); + this.chatMessageHandler(chatMessage); + } + + // file + this.fileModel.handleStringifiedFileContent(chatMessage.stringifiedFile); + }; + sendMessage = async ( body: string, fileContent?: FileContent @@ -115,22 +146,6 @@ export default class ChatModel { return true; }; - handleMessage = (body: string): void => { - const chatMessage: ChatMessage | null = parseValidObject( - body, - ChatMessageReference - ); - if (chatMessage == null) return; - - chatMessage.status = ChatMessageStatus.Received; - this.addMessage(chatMessage); - }; - - handleMessageSent = (chatMessage: ChatMessage): void => { - chatMessage.status = ChatMessageStatus.Sent; - this.addMessage(chatMessage); - }; - decryptMessage = async (chatMessage: ChatMessage): Promise => { const decryptedBody: string = await decryptString( chatMessage.body, @@ -161,20 +176,6 @@ export default class ChatModel { this.storageModel.write(this.getColorPath(), this.color); }; - addMessage = async (chatMessage: ChatMessage): Promise => { - await this.decryptMessage(chatMessage); - - // message - if (chatMessage.body != "") { - const messagePath: string[] = this.getMessagePath(chatMessage.id); - this.storageModel.writeStringifiable(messagePath, chatMessage); - this.chatMessageHandler(chatMessage); - } - - // file - this.fileModel.handleStringifiedFileContent(chatMessage.stringifiedFile); - }; - delete = () => { // untrack this.chatListModel.untrackChat(this); diff --git a/src/Model/Files/fileModel.ts b/src/Model/Files/fileModel.ts index e204aab9..44d86dd8 100644 --- a/src/Model/Files/fileModel.ts +++ b/src/Model/Files/fileModel.ts @@ -46,7 +46,7 @@ export default class FileModel { return [...filePath, fileContentId]; }; - // handler + // handlers handleStringifiedFileContent = (stringifiedFileContent: string): void => { const fileContent: FileContent | null = parseValidObject( stringifiedFileContent, diff --git a/src/Model/Files/taskModel.ts b/src/Model/Files/taskModel.ts index fec231ab..5d2b463b 100644 --- a/src/Model/Files/taskModel.ts +++ b/src/Model/Files/taskModel.ts @@ -45,7 +45,7 @@ export default class TaskModel { return [...this.getTaskContainerPath(boardId), fileId]; }; - // handler + // handlers handleFileContent = (fileContent: FileContent): void => { if ( checkMatchesObjectStructure(fileContent, BoardInfoFileContentReference) == diff --git a/src/ViewModel/Chat/chatMessageViewModel.ts b/src/ViewModel/Chat/chatMessageViewModel.ts index b11bd67d..54afc40e 100644 --- a/src/ViewModel/Chat/chatMessageViewModel.ts +++ b/src/ViewModel/Chat/chatMessageViewModel.ts @@ -4,7 +4,6 @@ import * as React from "bloatless-react"; import { ChatMessage, ChatMessageStatus } from "../../Model/Chat/chatModel"; -import ChatViewModel from "./chatViewModel"; import MessagePageViewModel from "../Pages/messagePageViewModel"; export default class ChatMessageViewModel { diff --git a/src/ViewModel/Global/connectionViewModel.ts b/src/ViewModel/Global/connectionViewModel.ts index 55b976d1..0f1ea882 100644 --- a/src/ViewModel/Global/connectionViewModel.ts +++ b/src/ViewModel/Global/connectionViewModel.ts @@ -62,7 +62,7 @@ export default class ConnectionViewModel { this.updatePreviousAddresses(); }; - // view methods + // view showConnectionModal = (): void => { this.isShowingConnectionModal.value = true; }; diff --git a/src/ViewModel/Global/settingsViewModel.ts b/src/ViewModel/Global/settingsViewModel.ts index a0288c6b..e0fbd52f 100644 --- a/src/ViewModel/Global/settingsViewModel.ts +++ b/src/ViewModel/Global/settingsViewModel.ts @@ -18,7 +18,7 @@ export default class SettingsViewModel { this.usernameInput.value == this.settingsModel.username ); - // set + // methods setName = (): void => { this.settingsModel.setName(this.usernameInput.value); this.username.value = this.settingsModel.username; diff --git a/src/ViewModel/Global/storageViewModel.ts b/src/ViewModel/Global/storageViewModel.ts index 3ee10445..0ae8dab2 100644 --- a/src/ViewModel/Global/storageViewModel.ts +++ b/src/ViewModel/Global/storageViewModel.ts @@ -35,7 +35,7 @@ export default class StorageViewModel { this.didMakeChanges.value = true; }; - // view methods + // view showStorageModal = (): void => { this.isShowingStorageModal.value = true; }; diff --git a/src/ViewModel/Pages/messagePageViewModel.ts b/src/ViewModel/Pages/messagePageViewModel.ts index 512d7b74..b003326e 100644 --- a/src/ViewModel/Pages/messagePageViewModel.ts +++ b/src/ViewModel/Pages/messagePageViewModel.ts @@ -33,7 +33,6 @@ export default class MessagePageViewModel { } }; - // messaging sendMessage = (): void => { if (this.cannotSendMessage.value == true) return; diff --git a/src/ViewModel/Pages/settingsPageViewModel.ts b/src/ViewModel/Pages/settingsPageViewModel.ts index f3cf3bdb..498da96c 100644 --- a/src/ViewModel/Pages/settingsPageViewModel.ts +++ b/src/ViewModel/Pages/settingsPageViewModel.ts @@ -84,7 +84,7 @@ export default class SettingsPageViewModel { }; // load - loadViewRelevantData = (): void => { + loadListRelevantData = (): void => { this.primaryChannel.value = this.chatViewModel.chatModel.info.primaryChannel; @@ -119,6 +119,6 @@ export default class SettingsPageViewModel { // init constructor(chatViewModel: ChatViewModel) { this.chatViewModel = chatViewModel; - this.loadViewRelevantData(); + this.loadListRelevantData(); } }