From 8a8b9a8b9e9b5aa5b22b01cb7981cabca3e00886 Mon Sep 17 00:00:00 2001 From: kwaroran Date: Mon, 10 Jun 2024 22:16:16 +0900 Subject: [PATCH] feat: add char_history and user_history --- src/ts/parser.ts | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/src/ts/parser.ts b/src/ts/parser.ts index 91bbba05..01b58d2b 100644 --- a/src/ts/parser.ts +++ b/src/ts/parser.ts @@ -513,6 +513,33 @@ const matcher = (p1:string,matcherArg:matcherArg) => { return f.role + ': ' + f.data }).join("§\n") } + + case 'user_history': + case 'user_messages':{ + const selchar = db.characters[get(selectedCharID)] + const chat = selchar.chats[selchar.chatPage] + return chat.message.map((f) => { + if(f.role === 'user'){ + return f.data + } + return '' + }).filter((f) => { + return f !== '' + }).join("§\n") + } + case 'char_history': + case 'char_messages':{ + const selchar = db.characters[get(selectedCharID)] + const chat = selchar.chats[selchar.chatPage] + return chat.message.map((f) => { + if(f.role === 'char'){ + return f.data + } + return '' + }).filter((f) => { + return f !== '' + }).join("§\n") + } case 'ujb': case 'global_note': case 'system_note':{ @@ -896,7 +923,7 @@ const matcher = (p1:string,matcherArg:matcherArg) => { } case 'arrayelement': case 'array_element':{ - return arra[1].split('§')[Number(arra[2])] + return arra[1].split('§').at(Number(arra[2])) ?? 'null' } case 'arrayshift': case 'array_shift':{