diff --git a/src/lib/components/chat/ModelSelector/ModelItem.svelte b/src/lib/components/chat/ModelSelector/ModelItem.svelte index b15041b08c..dad2ab33e5 100644 --- a/src/lib/components/chat/ModelSelector/ModelItem.svelte +++ b/src/lib/components/chat/ModelSelector/ModelItem.svelte @@ -33,6 +33,7 @@ export let selectionOnly = false; export let onClick: () => void = () => {}; + export let onEdit: () => void = () => {}; $: localizedDescription = resolveLocalizedModelDescription(item.model, $i18n.language); @@ -304,6 +305,7 @@ model={item.model} {pinModelHandler} {deleteModelHandler} + {onEdit} copyLinkHandler={() => { copyLinkHandler(item.model); }} diff --git a/src/lib/components/chat/ModelSelector/ModelItemMenu.svelte b/src/lib/components/chat/ModelSelector/ModelItemMenu.svelte index 57fd390f6a..acf546d5f6 100644 --- a/src/lib/components/chat/ModelSelector/ModelItemMenu.svelte +++ b/src/lib/components/chat/ModelSelector/ModelItemMenu.svelte @@ -20,6 +20,7 @@ export let pinModelHandler: (modelId: string) => void = () => {}; export let copyLinkHandler: Function = () => {}; export let deleteModelHandler: Function = () => {}; + export let onEdit: () => void = () => {}; export let onClose: Function = () => {}; @@ -30,6 +31,7 @@ bind:show align="end" sideOffset={-2} + contentClass="model-selector-child-menu" onOpenChange={(state) => { if (state === false) { onClose(); @@ -61,6 +63,7 @@ showSettings.set({ tab: 'admin:models', state: { id: model?.id ?? null } }); } show = false; + onEdit(); }} > diff --git a/src/lib/components/chat/ModelSelector/Selector.svelte b/src/lib/components/chat/ModelSelector/Selector.svelte index c235cff80c..81b4f28b2a 100644 --- a/src/lib/components/chat/ModelSelector/Selector.svelte +++ b/src/lib/components/chat/ModelSelector/Selector.svelte @@ -810,6 +810,7 @@ let deleteModelTarget: any = null; const deleteModelHandler = async (model: any) => { + show = false; deleteModelTarget = model; showDeleteConfirm = true; }; @@ -1108,6 +1109,9 @@ onClick={() => { selectItem(item, index); }} + onEdit={() => { + show = false; + }} /> {/each}