{ if(e.origin.startsWith("https://sv.risuai.xyz") || e.origin.startsWith("http://127.0.0.1")){ if(e.data.msg.data.vaild && $alertStore.type === 'login'){ $alertStore = { type: 'none', msg: JSON.stringify(e.data.msg) } } } }}> {#if $alertStore.type !== 'none' && $alertStore.type !== 'toast' && $alertStore.type !== 'cardexport' && $alertStore.type !== 'branches' && $alertStore.type !== 'selectModule' && $alertStore.type !== 'pukmakkurit'}
{#if $alertStore.type === 'error'}

Error

{:else if $alertStore.type === 'ask'}

Confirm

{:else if $alertStore.type === 'selectChar'}

Select

{:else if $alertStore.type === 'input'}

Input

{/if} {#if $alertStore.type === 'markdown'} {#await ParseMarkdown($alertStore.msg) then msg} {@html msg} {/await} {:else if $alertStore.type === 'tos'} {:else if $alertStore.type !== 'select' && $alertStore.type !== 'requestdata' && $alertStore.type !== 'addchar' && $alertStore.type !== 'hypaV2' && $alertStore.type !== 'chatOptions'} {$alertStore.msg} {#if $alertStore.submsg} {$alertStore.submsg} {/if} {/if} {#if $alertStore.type === 'ask'}
{:else if $alertStore.type === 'tos'}
{:else if $alertStore.type === 'select'} {#each $alertStore.msg.split('||') as n, i} {/each} {:else if $alertStore.type === 'error' || $alertStore.type === 'normal' || $alertStore.type === 'markdown'} {:else if $alertStore.type === 'input'} {:else if $alertStore.type === 'login'}
{:else if $alertStore.type === 'selectChar'}
{#each DBState.db.characters as char, i} {#if char.type !== 'group'} {#if char.image} {#await getCharImage(DBState.db.characters[i].image, 'css')} { //@ts-ignore alertStore.set({type: 'none',msg: char.chaId}) }}> {:then im} { //@ts-ignore alertStore.set({type: 'none',msg: char.chaId}) }} additionalStyle={im} /> {/await} {:else} { //@ts-ignore alertStore.set({type: 'none',msg: char.chaId}) }}> {/if} {/if} {/each}
{:else if $alertStore.type === 'requestdata'}
{#if generationInfoMenuIndex === 0}
{language.inputTokens} {$alertGenerationInfoStore.genInfo.inputTokens ?? '?'} {language.tokens} {language.outputTokens} {$alertGenerationInfoStore.genInfo.outputTokens ?? '?'} {language.tokens} {language.maxContextSize} {$alertGenerationInfoStore.genInfo.maxContext ?? '?'} {language.tokens}
{language.tokenWarning} {/if} {#if generationInfoMenuIndex === 1}
Index {$alertGenerationInfoStore.idx} Model {$alertGenerationInfoStore.genInfo.model} ID {DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage].message[$alertGenerationInfoStore.idx].chatId ?? "None"} GenID {$alertGenerationInfoStore.genInfo.generationId} Saying {DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage].message[$alertGenerationInfoStore.idx].saying} Size {JSON.stringify(DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage].message[$alertGenerationInfoStore.idx]).length} Bytes Time {(new Date(DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage].message[$alertGenerationInfoStore.idx].time ?? 0)).toLocaleString()} Tokens {#await tokenize(DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage].message[$alertGenerationInfoStore.idx].data)} Loading {:then tokens} {tokens} {/await}
{/if} {#if generationInfoMenuIndex === 2} {#await getFetchData($alertStore.msg) then data} {#if !data} {language.errors.requestLogRemoved} {language.errors.requestLogRemovedDesc} {:else}

URL

{data.url}

Request Body

{beautifyJSON(data.body)}

Response

{beautifyJSON(data.response)} {/if} {/await} {/if} {:else if $alertStore.type === 'hypaV2'}
{#if generationInfoMenuIndex === 0}
{#each DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage].hypaV2Data.chunks as chunk, i} {/each}
{:else} {#each DBState.db.characters[$selectedCharID].chats[DBState.db.characters[$selectedCharID].chatPage].hypaV2Data.mainChunks as chunk, i}
{#if i === 0} Active {:else} Inactive {/if}
{/each} {/if} {:else if $alertStore.type === 'addchar'}
{:else if $alertStore.type === 'chatOptions'}

{language.chatOptions}

{#if DBState.db.useExperimental} {/if}
{/if}
{:else if $alertStore.type === 'cardexport'}
{ e.stopPropagation() onclick(e) }}>

{language.shareExport}

{language.type} {#if cardExportType === ''} {#if $alertStore.submsg === 'module'} {language.risuMDesc} {:else if $alertStore.submsg === 'preset'} {language.risupresetDesc} {#if cardExportType2 === 'preset' && (DBState.db.botPresets[DBState.db.botPresetsId].image || DBState.db.botPresets[DBState.db.botPresetsId].regex?.length > 0)} Use RisuRealm to share the preset. Preset with image or regexes cannot be exported for now. {/if} {:else} {language.ccv3Desc} {#if cardExportType2 !== 'charx' && cardExportType2 !== 'charxJpeg' && isCharacterHasAssets(DBState.db.characters[$selectedCharID])} {language.notCharxWarn} {/if} {/if} {:else if cardExportType === 'json'} {language.jsonDesc} {:else if cardExportType === 'ccv2'} {language.ccv2Desc} {language.v2Warning} {:else} {language.realmDesc} {/if}
{#if $alertStore.submsg === 'preset'} {:else if $alertStore.submsg === 'module'} {:else} {/if}
{#if $alertStore.submsg === '' && cardExportType === ''} {language.format} CHARX CHARX-JPEG PNG JSON {/if}
{:else if $alertStore.type === 'toast'}
{ alertStore.set({ type: 'none', msg: '' }) }} >{$alertStore.msg}
{:else if $alertStore.type === 'selectModule'} { alertStore.set({ type: 'none', msg: d }) }} /> {:else if $alertStore.type === 'pukmakkurit'}

{language.preview}

{:else if $alertStore.type === 'branches'}
{#if branchHover !== null}
{branchHover.content}
{/if}
{#each getChatBranches() as obj}
{ if(branchHover === null){ const char = getCurrentCharacter() branchHover = { x: obj.x, y: obj.y, content: char.chats[obj.chatId].message[obj.y - 1].data } } }} onclick={() => { if(branchHover === null){ const char = getCurrentCharacter() branchHover = { x: obj.x, y: obj.y, content: char.chats[obj.chatId].message[obj.y - 1].data } } }} onmouseleave={() => { branchHover = null }} >
{#if obj.connectX === obj.x} {#if obj.multiChild}
{:else}
{/if} {:else if obj.connectX !== -1}
{/if} {/each}
{/if} {#if $alertStore.type === "hypaV3"} {/if}