feat(tree): persist custom node icons and animate folder expansion
This commit is contained in:
1 parent
4a8902a3f6
commit
0861be681b
18 files changed
+1056
-72
No files matched your search
@@ -8,7 +8,7 @@ import { editorCommands } from '../editor/shortcuts'
|
||||
import { refreshImages } from '../editor/livepreview'
|
||||
import { createEditorState, insertImageFiles, pasteImages, languageCompartment, pluginCompartment, pluginEditorExtensions, pluginLanguage, preferencesCompartment, previewCompartment, previewExtensions } from '../editor'
|
||||
import { handleShortcut, registerCommand } from './commands'
|
||||
import { api, ApiError, encodePath, type Entry } from './api'
|
||||
import { api, ApiError, encodePath, type Entry, type TreeIcon } from './api'
|
||||
import { drafts } from './drafts'
|
||||
import { refreshMetadata } from './metadata'
|
||||
import { connectEvents, type VaultEvent } from './events'
|
||||
@@ -663,6 +663,12 @@ async function withOp<T>(fn: () => Promise<T>): Promise<T> {
|
||||
}
|
||||
}
|
||||
|
||||
export async function saveTreeIcon(path: string, icon: TreeIcon | null) {
|
||||
await withOp(() => api.setTreeIcon(path, icon))
|
||||
try { await refreshTree() }
|
||||
catch (err) { toast('图标已保存,目录刷新失败:' + errorText(err)) }
|
||||
}
|
||||
|
||||
export async function createNote(dir: string) {
|
||||
const path = uniqueName(dir, '未命名', NOTE_EXT)
|
||||
ws.renaming = path
|
||||
|
||||
Reference in new issue
Block a user