feat: allow file drop on path breadcrumb

This commit is contained in:
2025-09-20 23:54:27 +00:00
parent 0f5b1f79ff
commit 7eefe2b96e
5 changed files with 98 additions and 35 deletions

View File

@@ -5,6 +5,7 @@ import type {
} from "../functions"
import * as Err from "./error"
import type { FilePath, ReverseFilePath } from "./filesystem"
import { newDirectoryHandle } from "./filesystem"
type Directory = {
kind: "directory"
@@ -42,12 +43,20 @@ export async function fetch(
)
}
const path: ReverseFilePath = [{ id: directoryId, name: directory.name }]
const path: ReverseFilePath = [
{
handle: newDirectoryHandle(directoryId),
name: directory.name,
},
]
let parentDirId = directory.parentId
while (parentDirId) {
const parentDir = await ctx.db.get(parentDirId)
if (parentDir) {
path.push({ id: parentDir._id, name: parentDir.name })
path.push({
handle: newDirectoryHandle(parentDir._id),
name: parentDir.name,
})
parentDirId = parentDir.parentId
} else {
throw Err.create(Err.Code.Internal)