From a3b8cd18e37fbf62e53359607e7b38088cd9138f Mon Sep 17 00:00:00 2001 From: John Mavrick Date: Thu, 21 Dec 2023 17:57:50 -0800 Subject: [PATCH] annotations render title and link to file --- src/ui/PluginView.tsx | 15 ++++++++++----- src/ui/components/Chatbox.tsx | 8 +++++--- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/src/ui/PluginView.tsx b/src/ui/PluginView.tsx index ca51ebf..4bbc317 100644 --- a/src/ui/PluginView.tsx +++ b/src/ui/PluginView.tsx @@ -52,6 +52,12 @@ const PluginView = () => { } }, [threads]); + useEffect(() => { + if (activeAssistant) { + updateActiveAssistantFiles(); + } + }, [activeAssistant]); + const fetchAssistants = async () => { if (!openaiInstance) { return; @@ -91,18 +97,17 @@ const PluginView = () => { const updateActiveAssistant = async (assistant: OpenAI.Beta.Assistant) => { if (plugin) { plugin.settings.activeAssistant = assistant; - const assistantFiles = await fetchAssistantFiles(); - updateActiveAssistantFiles(assistantFiles); plugin.saveSettings(); setActiveAssistant(assistant); } }; - const updateActiveAssistantFiles = (files: OpenAI.Files.FileObject[]) => { + const updateActiveAssistantFiles = async () => { if (plugin) { - plugin.settings.activeAssistantFiles = files; + const activeFiles = await fetchAssistantFiles(); + plugin.settings.activeAssistantFiles = activeFiles; plugin.saveSettings(); - setActiveAssistantFiles(files); + setActiveAssistantFiles(activeFiles); } }; diff --git a/src/ui/components/Chatbox.tsx b/src/ui/components/Chatbox.tsx index 8212aeb..c2843a0 100644 --- a/src/ui/components/Chatbox.tsx +++ b/src/ui/components/Chatbox.tsx @@ -6,7 +6,7 @@ import { Tooltip } from 'react-tooltip'; import Markdown from 'react-markdown'; import { useApp } from '../AppView'; import { createNotice } from '@/utils/Logs'; -import { TFile } from 'obsidian'; +import { TAbstractFile, TFile } from 'obsidian'; import { ThreadAnnotationFile } from '../types'; const override: CSSProperties = { @@ -111,10 +111,12 @@ const Chatbox = ({ annotationFiles, isResponding, messages }: ChatboxProps) => { const handleAnnotationClick = () => { // open new tab and then navigate to file if (app && fileName) { + console.log('filename found') const file = app.vault.getAbstractFileByPath( fileName, ); + console.log('file found', file, file instanceof TAbstractFile, file instanceof TFile) if (file && file instanceof TFile) { app.workspace.getLeaf().openFile(file); } @@ -131,8 +133,8 @@ const Chatbox = ({ annotationFiles, isResponding, messages }: ChatboxProps) => { > [^{index}] - -
+ +
{fileName} {quote}