diff --git a/src/lib/Setting/Pages/OtherBotSettings.svelte b/src/lib/Setting/Pages/OtherBotSettings.svelte index d098445a..0c12e40b 100644 --- a/src/lib/Setting/Pages/OtherBotSettings.svelte +++ b/src/lib/Setting/Pages/OtherBotSettings.svelte @@ -4,14 +4,14 @@ import Help from "src/lib/Others/Help.svelte"; import { selectSingleFile } from "src/ts/util"; import { DataBase } from "src/ts/storage/database"; - import { isTauri } from "src/ts/storage/globalApi"; + import { isTauri, saveAsset } from "src/ts/storage/globalApi"; import NumberInput from "src/lib/UI/GUI/NumberInput.svelte"; import TextInput from "src/lib/UI/GUI/TextInput.svelte"; import SelectInput from "src/lib/UI/GUI/SelectInput.svelte"; import OptionInput from "src/lib/UI/GUI/OptionInput.svelte"; import SliderInput from "src/lib/UI/GUI/SliderInput.svelte"; import Button from "src/lib/UI/GUI/Button.svelte"; - import { convertToBase64 } from "src/ts/process/uinttobase64"; + import { getCharImage } from "src/ts/characters";

{language.otherBots}

@@ -83,11 +83,8 @@ {$DataBase.NAIImgConfig.noise} - base image - - If empty, a profile picture is sent. - - + const saveId = await saveAsset(img.data) + $DataBase.NAIImgConfig.image = saveId + }}> + {#if $DataBase.NAIImgConfig.image === ''} +
+ {:else} + {#await getCharImage($DataBase.NAIImgConfig.image, 'css')} +
+ {:then im} +
+ {/await} + {/if} + + {/if} Width diff --git a/src/ts/process/stableDiff.ts b/src/ts/process/stableDiff.ts index 262fbb14..2752ecd6 100644 --- a/src/ts/process/stableDiff.ts +++ b/src/ts/process/stableDiff.ts @@ -6,7 +6,6 @@ import { globalFetch, readImage } from "../storage/globalApi" import { CharEmotion } from "../stores" import type { OpenAIChat } from "." import { processZip } from "./processzip" -import { convertToBase64 } from "./uinttobase64" import type { List } from "lodash" import { generateRandomSeed } from "./generateSeed" export async function stableDiff(currentChar:character,prompt:string){ @@ -186,10 +185,9 @@ export async function stableDiff(currentChar:character,prompt:string){ const charimg = currentChar.image; const img = await readImage(charimg) - const base64 = await convertToBase64(img); - base64img = base64.split('base64,')[1]; - }else{ - base64img = db.NAIImgConfig.image.split('base64,')[1]; + base64img = Buffer.from(img).toString('base64'); + } else{ + base64img = Buffer.from(await readImage(db.NAIImgConfig.image)).toString('base64'); } let randomseed = generateRandomSeed(10); diff --git a/src/ts/process/uinttobase64.ts b/src/ts/process/uinttobase64.ts deleted file mode 100644 index 230d911a..00000000 --- a/src/ts/process/uinttobase64.ts +++ /dev/null @@ -1,17 +0,0 @@ -export async function convertToBase64(data: Uint8Array): Promise { - return new Promise((resolve, reject) => { - const blob = new Blob([data]); - const reader = new FileReader(); - - reader.onloadend = function() { - const base64String = reader.result as string; - resolve(base64String); - }; - - reader.onerror = function(error) { - reject(error); - }; - - reader.readAsDataURL(blob); - }); -} \ No newline at end of file