diff --git a/client/src/components/PromptsTab.tsx b/client/src/components/PromptsTab.tsx index c697d52..a8a079c 100644 --- a/client/src/components/PromptsTab.tsx +++ b/client/src/components/PromptsTab.tsx @@ -89,7 +89,10 @@ const PromptsTab = ({ { + clearPrompts(); + setSelectedPrompt(null); + }} setSelectedItem={(prompt) => { setSelectedPrompt(prompt); setPromptArgs({}); diff --git a/client/src/components/ResourcesTab.tsx b/client/src/components/ResourcesTab.tsx index ac9a824..c0f8203 100644 --- a/client/src/components/ResourcesTab.tsx +++ b/client/src/components/ResourcesTab.tsx @@ -104,7 +104,6 @@ const ResourcesTab = ({ if (selectedTemplate) { const uri = fillTemplate(selectedTemplate.uriTemplate, templateValues); readResource(uri); - setSelectedTemplate(null); // We don't have the full Resource object here, so we create a partial one setSelectedResource({ uri, name: uri } as Resource); } @@ -116,7 +115,13 @@ const ResourcesTab = ({ { + clearResources(); + // Condition to check if selected resource is not resource template's resource + if (!selectedTemplate) { + setSelectedResource(null); + } + }} setSelectedItem={(resource) => { setSelectedResource(resource); readResource(resource.uri); @@ -139,7 +144,14 @@ const ResourcesTab = ({ { + clearResourceTemplates(); + // Condition to check if selected resource is resource template's resource + if (selectedTemplate) { + setSelectedResource(null); + } + setSelectedTemplate(null); + }} setSelectedItem={(template) => { setSelectedTemplate(template); setSelectedResource(null);