optionaize api key hiding

This commit is contained in:
kwaroran
2024-08-24 15:49:41 +09:00
parent 7603c60134
commit 628b17510d
4 changed files with 19 additions and 12 deletions

View File

@@ -684,4 +684,5 @@ export const languageEnglish = {
useLegacyGUI: "Use Legacy GUI", useLegacyGUI: "Use Legacy GUI",
claudeCachingExperimental: "Claude Caching", claudeCachingExperimental: "Claude Caching",
openClose: "Open/Close", openClose: "Open/Close",
hideApiKeys: "Hide API Keys",
} }

View File

@@ -89,28 +89,28 @@
Google Bearer Token Google Bearer Token
{/if} {/if}
</span> </span>
<TextInput marginBottom={true} size={"sm"} placeholder="..." hideText bind:value={$DataBase.google.accessToken}/> <TextInput marginBottom={true} size={"sm"} placeholder="..." hideText={$DataBase.hideApiKey} bind:value={$DataBase.google.accessToken}/>
{#if $DataBase.google.projectId !== 'aigoogle'} {#if $DataBase.google.projectId !== 'aigoogle'}
<span class="text-textcolor">Google Project ID</span> <span class="text-textcolor">Google Project ID</span>
<TextInput marginBottom={true} size={"sm"} placeholder="..." hideText bind:value={$DataBase.google.projectId}/> <TextInput marginBottom={true} size={"sm"} placeholder="..." hideText={$DataBase.hideApiKey} bind:value={$DataBase.google.projectId}/>
{/if} {/if}
{/if} {/if}
{#if $DataBase.aiModel.startsWith('novellist') || $DataBase.subModel.startsWith('novellist')} {#if $DataBase.aiModel.startsWith('novellist') || $DataBase.subModel.startsWith('novellist')}
<span class="text-textcolor">NovelList {language.apiKey}</span> <span class="text-textcolor">NovelList {language.apiKey}</span>
<TextInput hideText marginBottom={true} size={"sm"} placeholder="..." bind:value={$DataBase.novellistAPI}/> <TextInput hideText={$DataBase.hideApiKey} marginBottom={true} size={"sm"} placeholder="..." bind:value={$DataBase.novellistAPI}/>
{/if} {/if}
{#if $DataBase.aiModel.startsWith('mancer') || $DataBase.subModel.startsWith('mancer')} {#if $DataBase.aiModel.startsWith('mancer') || $DataBase.subModel.startsWith('mancer')}
<span class="text-textcolor">Mancer {language.apiKey}</span> <span class="text-textcolor">Mancer {language.apiKey}</span>
<TextInput hideText marginBottom={true} size={"sm"} placeholder="..." bind:value={$DataBase.mancerHeader}/> <TextInput hideText={$DataBase.hideApiKey} marginBottom={true} size={"sm"} placeholder="..." bind:value={$DataBase.mancerHeader}/>
{/if} {/if}
{#if $DataBase.aiModel.startsWith('claude-') || $DataBase.subModel.startsWith('claude-')} {#if $DataBase.aiModel.startsWith('claude-') || $DataBase.subModel.startsWith('claude-')}
<span class="text-textcolor">Claude {language.apiKey}</span> <span class="text-textcolor">Claude {language.apiKey}</span>
<TextInput hideText marginBottom={true} size={"sm"} placeholder="..." bind:value={$DataBase.claudeAPIKey}/> <TextInput hideText={$DataBase.hideApiKey} marginBottom={true} size={"sm"} placeholder="..." bind:value={$DataBase.claudeAPIKey}/>
{/if} {/if}
{#if $DataBase.aiModel.startsWith('mistral') || $DataBase.subModel.startsWith('mistral')} {#if $DataBase.aiModel.startsWith('mistral') || $DataBase.subModel.startsWith('mistral')}
<span class="text-textcolor">Mistral {language.apiKey}</span> <span class="text-textcolor">Mistral {language.apiKey}</span>
<TextInput hideText marginBottom={true} size={"sm"} placeholder="..." bind:value={$DataBase.mistralKey}/> <TextInput hideText={$DataBase.hideApiKey} marginBottom={true} size={"sm"} placeholder="..." bind:value={$DataBase.mistralKey}/>
{/if} {/if}
{#if $DataBase.aiModel.startsWith('novelai') || $DataBase.subModel.startsWith('novelai')} {#if $DataBase.aiModel.startsWith('novelai') || $DataBase.subModel.startsWith('novelai')}
<span class="text-textcolor">NovelAI Bearer Token</span> <span class="text-textcolor">NovelAI Bearer Token</span>
@@ -120,7 +120,7 @@
<span class="text-textcolor mt-2">URL <Help key="forceUrl"/></span> <span class="text-textcolor mt-2">URL <Help key="forceUrl"/></span>
<TextInput marginBottom={false} size={"sm"} bind:value={$DataBase.forceReplaceUrl} placeholder="https//..." /> <TextInput marginBottom={false} size={"sm"} bind:value={$DataBase.forceReplaceUrl} placeholder="https//..." />
<span class="text-textcolor mt-4"> {language.proxyAPIKey}</span> <span class="text-textcolor mt-4"> {language.proxyAPIKey}</span>
<TextInput hideText marginBottom={false} size={"sm"} placeholder="leave it blank if it hasn't password" bind:value={$DataBase.proxyKey} /> <TextInput hideText={$DataBase.hideApiKey} marginBottom={false} size={"sm"} placeholder="leave it blank if it hasn't password" bind:value={$DataBase.proxyKey} />
<span class="text-textcolor mt-4"> {language.proxyRequestModel}</span> <span class="text-textcolor mt-4"> {language.proxyRequestModel}</span>
<SelectInput className="mt-2" bind:value={$DataBase.proxyRequestModel}> <SelectInput className="mt-2" bind:value={$DataBase.proxyRequestModel}>
<OptionInput value="">None</OptionInput> <OptionInput value="">None</OptionInput>
@@ -157,11 +157,11 @@
{/if} {/if}
{#if $DataBase.aiModel.startsWith('risullm')} {#if $DataBase.aiModel.startsWith('risullm')}
<span class="text-textcolor mt-4">Risu {language.apiKey}</span> <span class="text-textcolor mt-4">Risu {language.apiKey}</span>
<TextInput hideText marginBottom={false} size={"sm"} bind:value={$DataBase.proxyKey} /> <TextInput hideText={$DataBase.hideApiKey} marginBottom={false} size={"sm"} bind:value={$DataBase.proxyKey} />
{/if} {/if}
{#if $DataBase.aiModel.startsWith('cohere')} {#if $DataBase.aiModel.startsWith('cohere')}
<span class="text-textcolor mt-4">Cohere {language.apiKey}</span> <span class="text-textcolor mt-4">Cohere {language.apiKey}</span>
<TextInput hideText marginBottom={false} size={"sm"} bind:value={$DataBase.cohereAPIKey} /> <TextInput hideText={$DataBase.hideApiKey} marginBottom={false} size={"sm"} bind:value={$DataBase.cohereAPIKey} />
{/if} {/if}
{#if $DataBase.aiModel === 'ollama-hosted'} {#if $DataBase.aiModel === 'ollama-hosted'}
<span class="text-textcolor mt-4">Ollama URL</span> <span class="text-textcolor mt-4">Ollama URL</span>
@@ -172,7 +172,7 @@
{/if} {/if}
{#if $DataBase.aiModel === 'openrouter' || $DataBase.subModel === 'openrouter'} {#if $DataBase.aiModel === 'openrouter' || $DataBase.subModel === 'openrouter'}
<span class="text-textcolor mt-4">Openrouter Key</span> <span class="text-textcolor mt-4">Openrouter Key</span>
<TextInput hideText marginBottom={false} size={"sm"} bind:value={$DataBase.openrouterKey} /> <TextInput hideText={$DataBase.hideApiKey} marginBottom={false} size={"sm"} bind:value={$DataBase.openrouterKey} />
<span class="text-textcolor mt-4">Openrouter Model</span> <span class="text-textcolor mt-4">Openrouter Model</span>
{#await openRouterModels()} {#await openRouterModels()}
@@ -213,7 +213,7 @@
{#if $DataBase.aiModel.startsWith('gpt') || $DataBase.subModel.startsWith('gpt') {#if $DataBase.aiModel.startsWith('gpt') || $DataBase.subModel.startsWith('gpt')
|| $DataBase.aiModel.startsWith('instructgpt') || $DataBase.subModel.startsWith('instructgpt')} || $DataBase.aiModel.startsWith('instructgpt') || $DataBase.subModel.startsWith('instructgpt')}
<span class="text-textcolor">OpenAI {language.apiKey} <Help key="oaiapikey"/></span> <span class="text-textcolor">OpenAI {language.apiKey} <Help key="oaiapikey"/></span>
<TextInput hideText marginBottom={false} size={"sm"} bind:value={$DataBase.openAIKey} placeholder="sk-XXXXXXXXXXXXXXXXXXXX"/> <TextInput hideText={$DataBase.hideApiKey} marginBottom={false} size={"sm"} bind:value={$DataBase.openAIKey} placeholder="sk-XXXXXXXXXXXXXXXXXXXX"/>
{/if} {/if}
@@ -264,7 +264,7 @@
{#if $DataBase.aiModel.startsWith("horde") || $DataBase.subModel.startsWith("horde") } {#if $DataBase.aiModel.startsWith("horde") || $DataBase.subModel.startsWith("horde") }
<span class="text-textcolor">Horde {language.apiKey}</span> <span class="text-textcolor">Horde {language.apiKey}</span>
<TextInput hideText marginBottom={true} bind:value={$DataBase.hordeConfig.apiKey} /> <TextInput hideText={$DataBase.hideApiKey} marginBottom={true} bind:value={$DataBase.hordeConfig.apiKey} />
{/if} {/if}
{#if $DataBase.aiModel === 'textgen_webui' || $DataBase.subModel === 'textgen_webui' {#if $DataBase.aiModel === 'textgen_webui' || $DataBase.subModel === 'textgen_webui'
|| $DataBase.aiModel === 'mancer' || $DataBase.subModel === 'mancer'} || $DataBase.aiModel === 'mancer' || $DataBase.subModel === 'mancer'}

View File

@@ -310,6 +310,10 @@
<Check bind:check={$DataBase.useLegacyGUI} name={language.useLegacyGUI}/> <Check bind:check={$DataBase.useLegacyGUI} name={language.useLegacyGUI}/>
</div> </div>
<div class="flex items-center mt-2">
<Check bind:check={$DataBase.hideApiKey} name={language.hideApiKeys}/>
</div>
{#if $DataBase.useExperimental} {#if $DataBase.useExperimental}
<div class="flex items-center mt-2"> <div class="flex items-center mt-2">
<Check bind:check={$DataBase.useChatSticker} name={language.useChatSticker}/> <Check bind:check={$DataBase.useChatSticker} name={language.useChatSticker}/>

View File

@@ -428,6 +428,7 @@ export function setDatabase(data:Database){
negInputName: 'text', negInputName: 'text',
timeout: 30 timeout: 30
} }
data.hideApiKey ??= true
changeLanguage(data.language) changeLanguage(data.language)
DataBase.set(data) DataBase.set(data)
@@ -710,6 +711,7 @@ export interface Database{
comfyUiUrl: string comfyUiUrl: string
useLegacyGUI: boolean useLegacyGUI: boolean
claudeCachingExperimental: boolean claudeCachingExperimental: boolean
hideApiKey: boolean
} }
export interface customscript{ export interface customscript{