diff --git a/src/lib/ChatScreens/Chat.svelte b/src/lib/ChatScreens/Chat.svelte
index 6aaab00f..1c6dfcef 100644
--- a/src/lib/ChatScreens/Chat.svelte
+++ b/src/lib/ChatScreens/Chat.svelte
@@ -4,10 +4,11 @@
import AutoresizeArea from "../UI/GUI/TextAreaResizable.svelte";
import { alertConfirm } from "../../ts/alert";
import { language } from "../../lang";
- import { DataBase, type character, type groupChat } from "../../ts/storage/database";
+ import { DataBase, type groupChat } from "../../ts/storage/database";
import { CurrentChat, selectedCharID } from "../../ts/stores";
- import { translate } from "../../ts/translator/translator";
+ import { translate, translateHTML } from "../../ts/translator/translator";
import { risuChatParser } from "src/ts/process/scripts";
+ import { get } from "svelte/store";
export let message = ''
export let name = ''
export let largePortrait = false
@@ -24,8 +25,7 @@
export let altGreeting = false
let msgDisplay = ''
- let msgTranslated = ''
- let translated = false;
+ let translated = get(DataBase).autoTranslate
async function rm(){
const rm = $DataBase.askRemoval ? await alertConfirm(language.removeChat) : true
if(rm){
@@ -55,14 +55,7 @@
}
async function displaya(message:string){
- if($DataBase.autoTranslate && $DataBase.translator !== ''){
- msgDisplay = risuChatParser(message, {chara: name, chatID: idx, rmVar: true})
- msgDisplay = await translate(risuChatParser(message, {chara: name, chatID: idx, rmVar: true}), false)
-
- }
- else{
- msgDisplay = risuChatParser(message, {chara: name, chatID: idx, rmVar: true})
- }
+ msgDisplay = risuChatParser(message, {chara: name, chatID: idx, rmVar: true})
}
const setStatusMessage = (message:string, timeout:number = 0)=>{
@@ -73,6 +66,20 @@
}, timeout)
}
+ let lastParsed = ''
+
+ const markParsing = async (data: string, charArg?: string | groupChat | simpleCharacterArgument, mode?: "normal" | "back", chatID?: number, translateText?:boolean) => {
+ const marked = await ParseMarkdown(data, charArg, mode, chatID)
+ lastParsed = marked
+ if(translateText){
+ translating = true
+ const translated = await translateHTML(marked, false)
+ translating = false
+ return translated
+ }
+ return marked
+ }
+
$: displaya(message)
@@ -107,11 +114,9 @@