diff --git a/client/src/App.tsx b/client/src/App.tsx index 12e9a7bd0..9c32f7ac4 100644 --- a/client/src/App.tsx +++ b/client/src/App.tsx @@ -893,8 +893,11 @@ const App = () => { setPromptContent(JSON.stringify(response, null, 2)); }; - const readResource = async (uri: string) => { - if (fetchingResources.has(uri) || resourceContentMap[uri]) { + const readResource = async (uri: string, force: boolean = false) => { + if (fetchingResources.has(uri)) { + return; + } + if (!force && resourceContentMap[uri]) { return; } @@ -1471,9 +1474,9 @@ const App = () => { setResourceTemplates([]); setNextResourceTemplateCursor(undefined); }} - readResource={(uri) => { + readResource={(uri, force) => { clearError("resources"); - readResource(uri); + readResource(uri, force); }} selectedResource={selectedResource} setSelectedResource={(resource) => { diff --git a/client/src/components/ResourcesTab.tsx b/client/src/components/ResourcesTab.tsx index 36e5cec8f..9f2774217 100644 --- a/client/src/components/ResourcesTab.tsx +++ b/client/src/components/ResourcesTab.tsx @@ -46,7 +46,7 @@ const ResourcesTab = ({ clearResources: () => void; listResourceTemplates: () => void; clearResourceTemplates: () => void; - readResource: (uri: string) => void; + readResource: (uri: string, force?: boolean) => void; selectedResource: Resource | null; setSelectedResource: (resource: Resource | null) => void; handleCompletion: ( @@ -229,7 +229,7 @@ const ResourcesTab = ({