- {#if !blankMessage && !$HideIconStore}
- {#if DBState.db.characters[$selectedCharID]?.chaId === "§playground"}
-
- {#if name === 'assistant'}
-
- {:else}
-
- {/if}
-
- {:else}
- {#await img}
-
- {:then m}
- {#if largePortrait && (!DBState.db.roundIcons)}
-
- {:else}
-
- {/if}
- {/await}
- {/if}
- {/if}
-
-
- {#if DBState.db.characters[$selectedCharID]?.chaId === "§playground" && !blankMessage}
-
- {name === 'assistant' ? 'Assistant' : 'User'}
- {
- DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage].message[idx].role = DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage].message[idx].role === 'char' ? 'user' : 'char'
- DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage] = DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage]
- }}>
-
- {:else if !blankMessage && !$HideIconStore}
-
{name}
- {/if}
-
-
{statusMessage}
- {#if DBState.db.useChatCopy && !blankMessage}
-
{
- window.navigator.clipboard.writeText(msgDisplay).then(() => {
- setStatusMessage(language.copied)
- })
- }}>
-
-
- {/if}
- {#if idx > -1}
- {#if DBState.db.characters[$selectedCharID].type !== 'group' && DBState.db.characters[$selectedCharID].ttsMode !== 'none' && (DBState.db.characters[$selectedCharID].ttsMode)}
-
{
- return sayTTS(null, message)
- }}>
-
-
- {/if}
- {#if !$ConnectionOpenStore}
-
{
- if(!editMode){
- editMode = true
- }
- else{
- editMode = false
- edit()
- }
- }}>
-
-
-
rm(e, false)} use:longpress={(e) => rm(e, true)}>
-
-
- {/if}
- {/if}
- {#if DBState.db.translator !== '' && !blankMessage}
-
{
- translated = !translated
- }}>
-
-
- {/if}
- {#if rerollIcon || altGreeting}
- {#if DBState.db.swipe || altGreeting}
-
-
-
-
-
-
- {:else}
-
-
-
- {/if}
- {/if}
-
-
- {#if messageGenerationInfo && DBState.db.requestInfoInsideChat}
-
- {
- alertRequestData({
- genInfo: messageGenerationInfo,
- idx: idx,
- })
- }}
- >
-
-
- {capitalize(getModelShortName(messageGenerationInfo.model))}
-
-
-
+
+{#snippet genInfo()}
+ {#if messageGenerationInfo && DBState.db.requestInfoInsideChat}
+
+ {
+ alertRequestData({
+ genInfo: messageGenerationInfo,
+ idx: idx,
+ })
+ }}
+ >
+
+
+ {capitalize(getModelShortName(messageGenerationInfo.model))}
+
+
+
+ {/if}
+{/snippet}
+
+{#snippet textBox()}
+ {#if editMode}
+ {
+ editMode = false
+ }} />
+ {:else if blankMessage}
+
+ {language.noMessage}
+
+ {:else}
+
+
+ {
+ if(DBState.db.clickToEdit && idx > -1){
+ editMode = true
+ }
+ }}
+ style:font-size="{0.875 * (DBState.db.zoomsize / 100)}rem"
+ style:line-height="{(DBState.db.lineHeight ?? 1.25) * (DBState.db.zoomsize / 100)}rem"
+ >
+ {#key $ReloadGUIPointer}
+ {#await markParsing(msgDisplay, character, 'normal', idx, translated)}
+ {@html lastParsed}
+ {:then md}
+ {@html md}
+ {/await}
+ {/key}
+
+ {/if}
+{/snippet}
+
+{#snippet icons(options:{applyTextColors?:boolean} = {})}
+
+
{statusMessage}
+ {#if DBState.db.useChatCopy && !blankMessage}
+
{
+ window.navigator.clipboard.writeText(msgDisplay).then(() => {
+ setStatusMessage(language.copied)
+ })
+ }}>
+
+
+ {/if}
+ {#if idx > -1}
+ {#if DBState.db.characters[$selectedCharID].type !== 'group' && DBState.db.characters[$selectedCharID].ttsMode !== 'none' && (DBState.db.characters[$selectedCharID].ttsMode)}
+
{
+ return sayTTS(null, message)
+ }}>
+
+
{/if}
- {#if editMode}
-
{
- editMode = false
- }} />
- {:else if blankMessage}
-
- {language.noMessage}
-
- {:else}
-
- {
- if(DBState.db.clickToEdit && idx > -1){
+
+ {#if !$ConnectionOpenStore}
+ {
+ if(!editMode){
editMode = true
}
- }}
- style:font-size="{0.875 * (DBState.db.zoomsize / 100)}rem"
- style:line-height="{(DBState.db.lineHeight ?? 1.25) * (DBState.db.zoomsize / 100)}rem"
- >
- {#key $ReloadGUIPointer}
- {#await markParsing(msgDisplay, character, 'normal', idx, translated)}
- {@html lastParsed}
- {:then md}
- {@html md}
- {/await}
- {/key}
-
+ else{
+ editMode = false
+ edit()
+ }
+ }}>
+
+
+ rm(e, false)} use:longpress={(e) => rm(e, true)}>
+
+
{/if}
-
+ {/if}
+ {#if DBState.db.translator !== '' && !blankMessage}
+ {
+ translated = !translated
+ }}>
+
+
+ {/if}
+ {#if rerollIcon || altGreeting}
+ {#if DBState.db.swipe || altGreeting}
+
+
+
+
+
+
+ {:else}
+
+
+
+ {/if}
+ {/if}
+
+{/snippet}
+{#snippet icon(options:{rounded?:boolean,styleFix?:string} = {})}
+ {#if !blankMessage && !$HideIconStore}
+ {#if DBState.db.characters[$selectedCharID]?.chaId === "§playground"}
+
+ {#if name === 'assistant'}
+
+ {:else}
+
+ {/if}
+
+ {:else}
+ {#await img}
+
+ {:then m}
+ {#if largePortrait && (!options?.rounded)}
+
+ {:else}
+
+ {/if}
+ {/await}
+ {/if}
+ {/if}
+{/snippet}
+
+
+
+ {#if DBState.db.theme === 'mobilechat' && !blankMessage}
+
+ {#if role !== 'user'}
+ {@render icon({rounded: true})}
+ {/if}
+
+
{@render textBox()}
+ {#if DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage].message[idx]?.time}
+
+ {new Intl.DateTimeFormat(undefined, {
+ hour: '2-digit',
+ minute: '2-digit',
+ second: '2-digit',
+ month: '2-digit',
+ day: '2-digit',
+ hour12: false
+ }).format(DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage].message[idx].time)}
+
+ {/if}
+
+ {#if role === 'user'}
+ {@render icon({rounded: true})}
+ {/if}
+
+ {:else if DBState.db.theme === 'cardboard' && !blankMessage}
+
+
+
+
+
+ {@render icon({rounded: false, styleFix:'height:100%;width:100%;'})}
+
+
{name}
+
+
+ {#if editMode}
+
+ {:else}
+
+ {@render textBox()}
+
+ {/if}
+
+
+
+ {@render icons({applyTextColors: false})}
+
+
+ {:else}
+ {@render icon({rounded: DBState.db.roundIcons})}
+
+
+ {#if DBState.db.characters[$selectedCharID]?.chaId === "§playground" && !blankMessage}
+
+ {name === 'assistant' ? 'Assistant' : 'User'}
+ {
+ DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage].message[idx].role = DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage].message[idx].role === 'char' ? 'user' : 'char'
+ DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage] = DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage]
+ }}>
+
+ {:else if !blankMessage && !$HideIconStore}
+
{name}
+ {/if}
+ {@render icons()}
+
+ {@render genInfo()}
+ {@render textBox()}
+
+ {/if}
diff --git a/src/lib/ChatScreens/ChatScreen.svelte b/src/lib/ChatScreens/ChatScreen.svelte
index 5acc9194..2f4acba4 100644
--- a/src/lib/ChatScreens/ChatScreen.svelte
+++ b/src/lib/ChatScreens/ChatScreen.svelte
@@ -35,19 +35,6 @@
{#if $ShowVN}
-{:else if DBState.db.theme === ''}
-
-
-
-
- {#if $selectedCharID >= 0}
- {#if DBState.db.characters[$selectedCharID].viewScreen !== 'none' && (DBState.db.characters[$selectedCharID].type === 'group' || (!DBState.db.characters[$selectedCharID].inlayViewScreen))}
-
- {/if}
- {/if}
- 2 ? `${externalStyles}`: ''} bind:openChatList bind:openModuleList/>
-
-
{:else if DBState.db.theme === 'waifu'}
@@ -81,6 +68,19 @@
{/if}
{/if}
+{:else}
+
+
+
+
+ {#if $selectedCharID >= 0}
+ {#if DBState.db.characters[$selectedCharID].viewScreen !== 'none' && (DBState.db.characters[$selectedCharID].type === 'group' || (!DBState.db.characters[$selectedCharID].inlayViewScreen))}
+
+ {/if}
+ {/if}
+ 2 ? `${externalStyles}`: ''} bind:openChatList bind:openModuleList/>
+
+
{/if}
{#if openChatList}
{openChatList = false}}/>
diff --git a/src/lib/Playground/PlaygroundImageGen.svelte b/src/lib/Playground/PlaygroundImageGen.svelte
index ca2244e7..59d27fc7 100644
--- a/src/lib/Playground/PlaygroundImageGen.svelte
+++ b/src/lib/Playground/PlaygroundImageGen.svelte
@@ -1,49 +1,34 @@
-
-
-{language.imageGeneration}
-
-Prompt
-
-
-
-Neg. Prompt
-
-
-
-{#if img}
- Generated
-
-
-
-{/if}
-
- {#if generating}
-
- {:else}
- Generate
- {/if}
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+ Card Title
+
+
+
+
+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptates rerum quisquam, temporibus quasi distinctio magnam.
+
+
+
+
+
+ Learn More
+
+
+
+
+ 5 min read
+
+
+
+
\ No newline at end of file
diff --git a/src/lib/Setting/Pages/DisplaySettings.svelte b/src/lib/Setting/Pages/DisplaySettings.svelte
index 49b3ad4c..c41cc439 100644
--- a/src/lib/Setting/Pages/DisplaySettings.svelte
+++ b/src/lib/Setting/Pages/DisplaySettings.svelte
@@ -53,7 +53,10 @@
Standard Risu
Waifulike
- WaifuCut
+
+ Mobile Chat
+ CardBoard
+