annotations render title and link to file
This commit is contained in:
parent
29c4fc92de
commit
a3b8cd18e3
|
@ -52,6 +52,12 @@ const PluginView = () => {
|
||||||
}
|
}
|
||||||
}, [threads]);
|
}, [threads]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (activeAssistant) {
|
||||||
|
updateActiveAssistantFiles();
|
||||||
|
}
|
||||||
|
}, [activeAssistant]);
|
||||||
|
|
||||||
const fetchAssistants = async () => {
|
const fetchAssistants = async () => {
|
||||||
if (!openaiInstance) {
|
if (!openaiInstance) {
|
||||||
return;
|
return;
|
||||||
|
@ -91,18 +97,17 @@ const PluginView = () => {
|
||||||
const updateActiveAssistant = async (assistant: OpenAI.Beta.Assistant) => {
|
const updateActiveAssistant = async (assistant: OpenAI.Beta.Assistant) => {
|
||||||
if (plugin) {
|
if (plugin) {
|
||||||
plugin.settings.activeAssistant = assistant;
|
plugin.settings.activeAssistant = assistant;
|
||||||
const assistantFiles = await fetchAssistantFiles();
|
|
||||||
updateActiveAssistantFiles(assistantFiles);
|
|
||||||
plugin.saveSettings();
|
plugin.saveSettings();
|
||||||
setActiveAssistant(assistant);
|
setActiveAssistant(assistant);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const updateActiveAssistantFiles = (files: OpenAI.Files.FileObject[]) => {
|
const updateActiveAssistantFiles = async () => {
|
||||||
if (plugin) {
|
if (plugin) {
|
||||||
plugin.settings.activeAssistantFiles = files;
|
const activeFiles = await fetchAssistantFiles();
|
||||||
|
plugin.settings.activeAssistantFiles = activeFiles;
|
||||||
plugin.saveSettings();
|
plugin.saveSettings();
|
||||||
setActiveAssistantFiles(files);
|
setActiveAssistantFiles(activeFiles);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ import { Tooltip } from 'react-tooltip';
|
||||||
import Markdown from 'react-markdown';
|
import Markdown from 'react-markdown';
|
||||||
import { useApp } from '../AppView';
|
import { useApp } from '../AppView';
|
||||||
import { createNotice } from '@/utils/Logs';
|
import { createNotice } from '@/utils/Logs';
|
||||||
import { TFile } from 'obsidian';
|
import { TAbstractFile, TFile } from 'obsidian';
|
||||||
import { ThreadAnnotationFile } from '../types';
|
import { ThreadAnnotationFile } from '../types';
|
||||||
|
|
||||||
const override: CSSProperties = {
|
const override: CSSProperties = {
|
||||||
|
@ -111,10 +111,12 @@ const Chatbox = ({ annotationFiles, isResponding, messages }: ChatboxProps) => {
|
||||||
const handleAnnotationClick = () => {
|
const handleAnnotationClick = () => {
|
||||||
// open new tab and then navigate to file
|
// open new tab and then navigate to file
|
||||||
if (app && fileName) {
|
if (app && fileName) {
|
||||||
|
console.log('filename found')
|
||||||
const file =
|
const file =
|
||||||
app.vault.getAbstractFileByPath(
|
app.vault.getAbstractFileByPath(
|
||||||
fileName,
|
fileName,
|
||||||
);
|
);
|
||||||
|
console.log('file found', file, file instanceof TAbstractFile, file instanceof TFile)
|
||||||
if (file && file instanceof TFile) {
|
if (file && file instanceof TFile) {
|
||||||
app.workspace.getLeaf().openFile(file);
|
app.workspace.getLeaf().openFile(file);
|
||||||
}
|
}
|
||||||
|
@ -131,8 +133,8 @@ const Chatbox = ({ annotationFiles, isResponding, messages }: ChatboxProps) => {
|
||||||
>
|
>
|
||||||
[^{index}]
|
[^{index}]
|
||||||
</a>
|
</a>
|
||||||
<Tooltip id={`tooltip-${index}`} clickable>
|
<Tooltip id={`tooltip-${index}`} className="annotation-tooltip-container" clickable>
|
||||||
<div className="annotation-tooltip-container">
|
<div className="annotation-tooltip-content">
|
||||||
<strong>{fileName}</strong>
|
<strong>{fileName}</strong>
|
||||||
<Markdown>{quote}</Markdown>
|
<Markdown>{quote}</Markdown>
|
||||||
</div>
|
</div>
|
||||||
|
|
Loading…
Reference in New Issue