diff --git a/src/lang/en.ts b/src/lang/en.ts index 5975574f..9e4a6a61 100644 --- a/src/lang/en.ts +++ b/src/lang/en.ts @@ -515,4 +515,5 @@ export const languageEnglish = { license: "License", licenseDesc: "You can choose license for the downloaders to limit the usages of your card's prompt.", passwordDesc: "You can set a password to protect your card from unauthorized access.", + largePersonaPortrait: "Persona Portrait", } \ No newline at end of file diff --git a/src/lang/ko.ts b/src/lang/ko.ts index cd71656e..89e4f55e 100644 --- a/src/lang/ko.ts +++ b/src/lang/ko.ts @@ -429,4 +429,5 @@ export const languageKorean = { template: "템플릿", editTranslationDisplay: "번역문 수정", memoryLimitThickness: "기억 한계선 두께", + largePersonaPortrait: "페르소나 세로 이미지", } \ No newline at end of file diff --git a/src/lib/ChatScreens/DefaultChatScreen.svelte b/src/lib/ChatScreens/DefaultChatScreen.svelte index 22991339..ee724eb8 100644 --- a/src/lib/ChatScreens/DefaultChatScreen.svelte +++ b/src/lib/ChatScreens/DefaultChatScreen.svelte @@ -527,6 +527,7 @@ message={chat.data} img={getCharImage($CurrentUserIcon, 'css')} isLastMemory={$CurrentChat.lastMemory === (chat.chatId ?? 'none') && $CurrentShowMemoryLimit} + largePortrait={$DataBase.personas[$DataBase.selectedPersona].largePortrait} /> {/if} {/each} diff --git a/src/lib/Setting/Pages/PersonaSettings.svelte b/src/lib/Setting/Pages/PersonaSettings.svelte index 9a557f0a..01366bc9 100644 --- a/src/lib/Setting/Pages/PersonaSettings.svelte +++ b/src/lib/Setting/Pages/PersonaSettings.svelte @@ -2,6 +2,7 @@ import { language } from "src/lang"; import BaseRoundedButton from "src/lib/UI/BaseRoundedButton.svelte"; import Button from "src/lib/UI/GUI/Button.svelte"; + import Check from "src/lib/UI/GUI/CheckInput.svelte"; import TextAreaInput from "src/lib/UI/GUI/TextAreaInput.svelte"; import TextInput from "src/lib/UI/GUI/TextInput.svelte"; import { alertConfirm, alertError, alertSelect } from "src/ts/alert"; @@ -69,7 +70,7 @@ {#if $DataBase.userIcon === ''}
{:else} - {#await getCharImage($DataBase.userIcon, 'css')} + {#await getCharImage($DataBase.userIcon, $DataBase.personas[$DataBase.selectedPersona].largePortrait ? 'lgcss' : 'css')}
{:then im}
@@ -99,6 +100,7 @@ changeUserPersona(0, 'noSave') } }}>{language.remove} + {language.largePortrait}
\ No newline at end of file diff --git a/src/ts/persona.ts b/src/ts/persona.ts index d0cd1fe2..8dceee80 100644 --- a/src/ts/persona.ts +++ b/src/ts/persona.ts @@ -27,11 +27,9 @@ export async function selectUserImg() { export function saveUserPersona() { let db = get(DataBase) - db.personas[db.selectedPersona] = { - name: db.username, - icon: db.userIcon, - personaPrompt: db.personaPrompt - } + db.personas[db.selectedPersona].name = db.username; + db.personas[db.selectedPersona].icon = db.userIcon; + db.personas[db.selectedPersona].personaPrompt = db.personaPrompt; setDatabase(db) } diff --git a/src/ts/storage/database.ts b/src/ts/storage/database.ts index 7cfa0cc7..36ec1279 100644 --- a/src/ts/storage/database.ts +++ b/src/ts/storage/database.ts @@ -527,6 +527,7 @@ export interface Database{ personaPrompt:string name:string icon:string + largePortrait?:boolean }[] assetWidth:number animationSpeed:number