account for setting a default config and unset the rest
This commit is contained in:
parent
4d873ae75e
commit
9f75f2a9fc
|
@ -8,7 +8,6 @@
|
|||
|
||||
export let config
|
||||
export let disabled
|
||||
export let budibaseAIDefault
|
||||
|
||||
export let editHandler
|
||||
export let deleteHandler
|
||||
|
@ -33,6 +32,7 @@
|
|||
<Label>{config.name}</Label>
|
||||
</div>
|
||||
<div class="controls">
|
||||
{#if config.name !== "Budibase AI"}
|
||||
<Icon
|
||||
on:click={editHandler}
|
||||
color="var(--grey-6)"
|
||||
|
@ -47,11 +47,15 @@
|
|||
hoverable
|
||||
name="Delete"
|
||||
/>
|
||||
{/if}
|
||||
{#if config.active}
|
||||
<div class="tag active">Activated</div>
|
||||
{:else if !config.active}
|
||||
<div class="tag disabled">Disabled</div>
|
||||
{/if}
|
||||
{#if config.isDefault}
|
||||
<div class="tag default">Default</div>
|
||||
{/if}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -63,7 +67,7 @@
|
|||
border-radius: 4px;
|
||||
cursor: pointer;
|
||||
display: grid;
|
||||
grid-template-columns: 6% 1fr 20%;
|
||||
grid-template-columns: 6% 1fr auto;
|
||||
grid-gap: 20px;
|
||||
align-items: center;
|
||||
}
|
||||
|
@ -109,15 +113,18 @@
|
|||
align-items: center;
|
||||
gap: 8px;
|
||||
font-size: 12px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.default {
|
||||
background: var(--grey-6);
|
||||
}
|
||||
|
||||
.active {
|
||||
border-radius: 5px;
|
||||
background: var(--spectrum-global-color-green-600);
|
||||
}
|
||||
|
||||
.disabled {
|
||||
border-radius: 5px;
|
||||
background: var(--spectrum-global-color-red-600);
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -65,7 +65,7 @@
|
|||
<Label size="M">Default Model</Label>
|
||||
{#if config.provider !== Providers.Custom.name}
|
||||
<Select
|
||||
placeholder={config.provider ? "Choose an option" : "Select a provider first"}
|
||||
placeholder={config.provider ? "Choose an option" : "Select a provider"}
|
||||
bind:value={config.defaultModel}
|
||||
options={config.provider ? Providers[config.provider].models : []}
|
||||
/>
|
||||
|
|
|
@ -55,6 +55,14 @@
|
|||
}
|
||||
}
|
||||
} else {
|
||||
// We don't store the default BB AI config in the DB
|
||||
delete fullAIConfig.config.budibase_ai
|
||||
// unset the default value from other configs if default is set
|
||||
if (editingAIConfig.isDefault) {
|
||||
for (let key in fullAIConfig.config) {
|
||||
fullAIConfig.config[key].isDefault = false
|
||||
}
|
||||
}
|
||||
// Add new or update existing custom AI Config
|
||||
fullAIConfig.config[id] = editingAIConfig
|
||||
}
|
||||
|
@ -102,8 +110,6 @@
|
|||
})
|
||||
</script>
|
||||
|
||||
<!-- svelte-ignore a11y-no-static-element-interactions -->
|
||||
<!-- svelte-ignore a11y-click-events-have-key-events -->
|
||||
<Modal bind:this={modal}>
|
||||
<AIConfigModal
|
||||
saveHandler={saveConfig}
|
||||
|
|
|
@ -2,4 +2,8 @@
|
|||
export let height
|
||||
export let width
|
||||
</script>
|
||||
<svg fill="#000000" {width} {height} viewBox="0 0 24 24" role="img" xmlns="http://www.w3.org/2000/svg"><title>OpenAI icon</title><path d="M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9847 0 0 0-3.9977 2.9 6.0462 6.0462 0 0 0 .7427 7.0966 5.98 5.98 0 0 0 .511 4.9107 6.051 6.051 0 0 0 6.5146 2.9001A5.9847 5.9847 0 0 0 13.2599 24a6.0557 6.0557 0 0 0 5.7718-4.2058 5.9894 5.9894 0 0 0 3.9977-2.9001 6.0557 6.0557 0 0 0-.7475-7.0729zm-9.022 12.6081a4.4755 4.4755 0 0 1-2.8764-1.0408l.1419-.0804 4.7783-2.7582a.7948.7948 0 0 0 .3927-.6813v-6.7369l2.02 1.1686a.071.071 0 0 1 .038.052v5.5826a4.504 4.504 0 0 1-4.4945 4.4944zm-9.6607-4.1254a4.4708 4.4708 0 0 1-.5346-3.0137l.142.0852 4.783 2.7582a.7712.7712 0 0 0 .7806 0l5.8428-3.3685v2.3324a.0804.0804 0 0 1-.0332.0615L9.74 19.9502a4.4992 4.4992 0 0 1-6.1408-1.6464zM2.3408 7.8956a4.485 4.485 0 0 1 2.3655-1.9728V11.6a.7664.7664 0 0 0 .3879.6765l5.8144 3.3543-2.0201 1.1685a.0757.0757 0 0 1-.071 0l-4.8303-2.7865A4.504 4.504 0 0 1 2.3408 7.872zm16.5963 3.8558L13.1038 8.364 15.1192 7.2a.0757.0757 0 0 1 .071 0l4.8303 2.7913a4.4944 4.4944 0 0 1-.6765 8.1042v-5.6772a.79.79 0 0 0-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759 0 0 0-.7854 0L9.409 9.2297V6.8974a.0662.0662 0 0 1 .0284-.0615l4.8303-2.7866a4.4992 4.4992 0 0 1 6.6802 4.66zM8.3065 12.863l-2.02-1.1638a.0804.0804 0 0 1-.038-.0567V6.0742a4.4992 4.4992 0 0 1 7.3757-3.4537l-.142.0805L8.704 5.459a.7948.7948 0 0 0-.3927.6813zm1.0976-2.3654l2.602-1.4998 2.6069 1.4998v2.9994l-2.5974 1.4997-2.6067-1.4997Z"/></svg>
|
||||
<svg fill="#000000" {width} {height} viewBox="0 0 24 24" role="img" xmlns="http://www.w3.org/2000/svg">
|
||||
<title>OpenAI icon</title>
|
||||
<path
|
||||
d="M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9847 0 0 0-3.9977 2.9 6.0462 6.0462 0 0 0 .7427 7.0966 5.98 5.98 0 0 0 .511 4.9107 6.051 6.051 0 0 0 6.5146 2.9001A5.9847 5.9847 0 0 0 13.2599 24a6.0557 6.0557 0 0 0 5.7718-4.2058 5.9894 5.9894 0 0 0 3.9977-2.9001 6.0557 6.0557 0 0 0-.7475-7.0729zm-9.022 12.6081a4.4755 4.4755 0 0 1-2.8764-1.0408l.1419-.0804 4.7783-2.7582a.7948.7948 0 0 0 .3927-.6813v-6.7369l2.02 1.1686a.071.071 0 0 1 .038.052v5.5826a4.504 4.504 0 0 1-4.4945 4.4944zm-9.6607-4.1254a4.4708 4.4708 0 0 1-.5346-3.0137l.142.0852 4.783 2.7582a.7712.7712 0 0 0 .7806 0l5.8428-3.3685v2.3324a.0804.0804 0 0 1-.0332.0615L9.74 19.9502a4.4992 4.4992 0 0 1-6.1408-1.6464zM2.3408 7.8956a4.485 4.485 0 0 1 2.3655-1.9728V11.6a.7664.7664 0 0 0 .3879.6765l5.8144 3.3543-2.0201 1.1685a.0757.0757 0 0 1-.071 0l-4.8303-2.7865A4.504 4.504 0 0 1 2.3408 7.872zm16.5963 3.8558L13.1038 8.364 15.1192 7.2a.0757.0757 0 0 1 .071 0l4.8303 2.7913a4.4944 4.4944 0 0 1-.6765 8.1042v-5.6772a.79.79 0 0 0-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759 0 0 0-.7854 0L9.409 9.2297V6.8974a.0662.0662 0 0 1 .0284-.0615l4.8303-2.7866a4.4992 4.4992 0 0 1 6.6802 4.66zM8.3065 12.863l-2.02-1.1638a.0804.0804 0 0 1-.038-.0567V6.0742a4.4992 4.4992 0 0 1 7.3757-3.4537l-.142.0805L8.704 5.459a.7948.7948 0 0 0-.3927.6813zm1.0976-2.3654l2.602-1.4998 2.6069 1.4998v2.9994l-2.5974 1.4997-2.6067-1.4997Z"/>
|
||||
</svg>
|
|
@ -17,12 +17,14 @@ export enum StaticQuotaName {
|
|||
CREATORS = "creators",
|
||||
USER_GROUPS = "userGroups",
|
||||
PLUGINS = "plugins",
|
||||
AI_CUSTOM_CONFIGS = "aiCustomConfigs",
|
||||
}
|
||||
|
||||
export enum MonthlyQuotaName {
|
||||
QUERIES = "queries",
|
||||
AUTOMATIONS = "automations",
|
||||
DAY_PASSES = "dayPasses",
|
||||
BUDIBASE_AI_CREDITS = "budibaseAICredits"
|
||||
}
|
||||
|
||||
export enum ConstantQuotaName {
|
||||
|
@ -62,6 +64,7 @@ export type MonthlyQuotas = {
|
|||
[MonthlyQuotaName.QUERIES]: Quota
|
||||
[MonthlyQuotaName.AUTOMATIONS]: Quota
|
||||
[MonthlyQuotaName.DAY_PASSES]: Quota
|
||||
[MonthlyQuotaName.BUDIBASE_AI_CREDITS]: Quota
|
||||
}
|
||||
|
||||
export type StaticQuotas = {
|
||||
|
@ -71,6 +74,7 @@ export type StaticQuotas = {
|
|||
[StaticQuotaName.CREATORS]: Quota
|
||||
[StaticQuotaName.USER_GROUPS]: Quota
|
||||
[StaticQuotaName.PLUGINS]: Quota
|
||||
[StaticQuotaName.AI_CUSTOM_CONFIGS]: Quota
|
||||
}
|
||||
|
||||
export type ConstantQuotas = {
|
||||
|
|
Loading…
Reference in New Issue