refactor: Move getCustomToggles to parseKeyValue

This commit is contained in:
kwaroran
2024-05-27 11:50:44 +09:00
parent 1d5a829f88
commit 608dad465b
4 changed files with 21 additions and 23 deletions

View File

@@ -9,7 +9,7 @@
import LoreBook from "./LoreBook/LoreBookSetting.svelte";
import { alertConfirm, alertNormal, alertSelectChar, alertTOS, showHypaV2Alert } from "../../ts/alert";
import BarIcon from "./BarIcon.svelte";
import { findCharacterbyId, getAuthorNoteDefaultText, selectMultipleFile } from "../../ts/util";
import { findCharacterbyId, getAuthorNoteDefaultText, parseKeyValue, selectMultipleFile } from "../../ts/util";
import { onDestroy } from "svelte";
import {isEqual} from 'lodash'
import Help from "../Others/Help.svelte";
@@ -29,7 +29,6 @@
import { updateInlayScreen } from "src/ts/process/inlayScreen";
import { registerOnnxModel } from "src/ts/process/transformers";
import MultiLangInput from "../UI/GUI/MultiLangInput.svelte";
import { getCustomToggles } from "src/ts/process/prompt";
let subMenu = 0
@@ -248,7 +247,7 @@
<Check bind:check={$DataBase.jailbreakToggle} name={language.jailbreakToggle}/>
</div>
{#each getCustomToggles($DataBase.customPromptTemplateToggle) as toggle}
{#each parseKeyValue($DataBase.customPromptTemplateToggle) as toggle}
<div class="flex mt-2 items-center">
<Check check={$DataBase.globalChatVariables[`toggle_${toggle[0]}`] === '1'} name={toggle[1]} onChange={() => {
$DataBase.globalChatVariables[`toggle_${toggle[0]}`] = $DataBase.globalChatVariables[`toggle_${toggle[0]}`] === '1' ? '0' : '1'

View File

@@ -7,11 +7,10 @@
import { alertConfirm, alertError, alertSelect } from "src/ts/alert";
import { language } from "src/lang";
import Button from "../UI/GUI/Button.svelte";
import { findCharacterbyId } from "src/ts/util";
import { findCharacterbyId, parseKeyValue } from "src/ts/util";
import CheckInput from "../UI/GUI/CheckInput.svelte";
import { createMultiuserRoom } from "src/ts/sync/multiuser";
import { CurrentCharacter } from "src/ts/stores";
import { getCustomToggles } from "src/ts/process/prompt";
export let chara:character|groupChat
let editMode = false
</script>
@@ -111,7 +110,7 @@
<CheckInput bind:check={$DataBase.jailbreakToggle} name={language.jailbreakToggle}/>
</div>
{#each getCustomToggles($DataBase.customPromptTemplateToggle) as toggle}
{#each parseKeyValue($DataBase.customPromptTemplateToggle) as toggle}
<div class="flex mt-2 items-center">
<CheckInput check={$DataBase.globalChatVariables[`toggle_${toggle[0]}`] === '1'} name={toggle[1]} onChange={() => {
$DataBase.globalChatVariables[`toggle_${toggle[0]}`] = $DataBase.globalChatVariables[`toggle_${toggle[0]}`] === '1' ? '0' : '1'

View File

@@ -64,20 +64,3 @@ export async function tokenizePreset(prompts:PromptItem[], consti:boolean = fals
}
return total
}
export function getCustomToggles(template:string){
if(!template){
return []
}
const keyValue:[string, string][] = []
for(const line of template.split('\n')){
const [key, value] = line.split('=')
if(key && value){
keyValue.push([key, value])
}
}
return keyValue
}

View File

@@ -967,4 +967,21 @@ export const isKnownUri = (uri:string) => {
|| uri.startsWith('https://')
|| uri.startsWith('ccdefault:')
|| uri.startsWith('embeded://')
}
export function parseKeyValue(template:string){
if(!template){
return []
}
const keyValue:[string, string][] = []
for(const line of template.split('\n')){
const [key, value] = line.split('=')
if(key && value){
keyValue.push([key, value])
}
}
return keyValue
}