forked from open-webui/open-webui
feat: ollamahub modelfile import
This commit is contained in:
parent
6df1b197aa
commit
cbcce68c61
3 changed files with 56 additions and 18 deletions
|
@ -103,7 +103,7 @@
|
|||
<a
|
||||
class=" w-fit text-sm px-3 py-2 border dark:border-gray-600 rounded-xl"
|
||||
type="button"
|
||||
href={`/modelfiles/edit/${modelfile.tagName}`}
|
||||
href={`/modelfiles/edit?tag=${modelfile.tagName}`}
|
||||
>
|
||||
Edit</a
|
||||
>
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
|
||||
import Advanced from '$lib/components/chat/Settings/Advanced.svelte';
|
||||
import { splitStream } from '$lib/utils';
|
||||
import { onMount, tick } from 'svelte';
|
||||
|
||||
let loading = false;
|
||||
|
||||
|
@ -209,6 +210,39 @@ SYSTEM """${system}"""`.replace(/^\s*\n/gm, '');
|
|||
loading = false;
|
||||
success = false;
|
||||
};
|
||||
|
||||
onMount(() => {
|
||||
window.addEventListener('message', async (event) => {
|
||||
if (
|
||||
!['https://ollamahub.com', 'https://www.ollamahub.com', 'http://localhost:5173'].includes(
|
||||
event.origin
|
||||
)
|
||||
)
|
||||
return;
|
||||
const modelfile = JSON.parse(event.data);
|
||||
console.log(modelfile);
|
||||
|
||||
imageUrl = modelfile.imageUrl;
|
||||
title = modelfile.title;
|
||||
await tick();
|
||||
tagName = `${modelfile.user.username}/${modelfile.tagName}`;
|
||||
desc = modelfile.desc;
|
||||
content = modelfile.content;
|
||||
suggestions =
|
||||
modelfile.suggestionPrompts.length != 0
|
||||
? modelfile.suggestionPrompts
|
||||
: [
|
||||
{
|
||||
content: ''
|
||||
}
|
||||
];
|
||||
|
||||
for (const category of modelfile.categories) {
|
||||
categories[category.toLowerCase()] = true;
|
||||
}
|
||||
});
|
||||
window.opener.postMessage('loaded', '*');
|
||||
});
|
||||
</script>
|
||||
|
||||
<div class="min-h-screen w-full flex justify-center dark:text-white">
|
||||
|
|
|
@ -50,8 +50,9 @@
|
|||
};
|
||||
|
||||
onMount(() => {
|
||||
tagName = $page.params.tag;
|
||||
tagName = $page.url.searchParams.get('tag');
|
||||
|
||||
if (tagName) {
|
||||
modelfile = $modelfiles.filter((modelfile) => modelfile.tagName === tagName)[0];
|
||||
|
||||
console.log(modelfile);
|
||||
|
@ -72,6 +73,9 @@
|
|||
for (const category of modelfile.categories) {
|
||||
categories[category.toLowerCase()] = true;
|
||||
}
|
||||
} else {
|
||||
goto('/modelfiles');
|
||||
}
|
||||
});
|
||||
|
||||
const saveModelfile = async (modelfile) => {
|
Loading…
Reference in a new issue