Spaces:
Paused
Paused
| <script> | |
| import { toast } from 'svelte-sonner'; | |
| import { goto } from '$app/navigation'; | |
| import { onMount, getContext } from 'svelte'; | |
| const i18n = getContext('i18n'); | |
| import { page } from '$app/stores'; | |
| import { config, models, settings } from '$lib/stores'; | |
| import { getModelById, updateModelById } from '$lib/apis/models'; | |
| import { getModels } from '$lib/apis'; | |
| import ModelEditor from '$lib/components/workspace/Models/ModelEditor.svelte'; | |
| let model = null; | |
| onMount(async () => { | |
| const _id = $page.url.searchParams.get('id'); | |
| if (_id) { | |
| model = await getModelById(localStorage.token, _id).catch((e) => { | |
| return null; | |
| }); | |
| if (!model) { | |
| goto('/workspace/models'); | |
| } | |
| } else { | |
| goto('/workspace/models'); | |
| } | |
| }); | |
| const onSubmit = async (modelInfo) => { | |
| const res = await updateModelById(localStorage.token, modelInfo.id, modelInfo); | |
| if (res) { | |
| await models.set( | |
| await getModels( | |
| localStorage.token, | |
| $config?.features?.enable_direct_connections && ($settings?.directConnections ?? null) | |
| ) | |
| ); | |
| toast.success($i18n.t('Model updated successfully')); | |
| await goto('/workspace/models'); | |
| } | |
| }; | |
| </script> | |
| {#if model} | |
| <ModelEditor edit={true} {model} {onSubmit} /> | |
| {/if} | |