Files
/volume1{currentPath ? "/" + currentPath : ""}
fileInput.click()} class="text-xs font-medium text-primary-600 bg-primary-50 hover:bg-primary-100 px-3 py-1.5 rounded-lg transition-colors disabled:opacity-50" disabled={uploading} > {uploading ? "Uploading..." : "Upload"}
{#if error}
{error}
error = ""} class="text-rose-400 hover:text-rose-600 transition-colors">
{/if}
browse("")}>volume1
{#each crumbs as part, i}
browse(crumbs.slice(0, i + 1).join("/"))} >{part}
{/each} {#if currentPath}
Up
{/if}
{#if loading}
{#each Array(8) as _}
{/each}
{:else}
Name
Size
Actions
{#each entries as e}
{#if e.is_dir}
browse(currentPath ? `${currentPath}/${e.name}` : e.name)}>
{e.name}
{:else}
{e.name}
{/if}
{e.is_dir ? "—" : formatSize(e.size)}
{#if !e.is_dir}
handleDownload(e.name)} class="text-[11px] text-primary-500 hover:text-primary-700 font-medium transition-colors disabled:opacity-50" disabled={downloading}> {downloading ? "..." : "DL"}
{/if}
remove(e.name)}>Del
{/each} {#if entries.length === 0}
Empty directory
{/if}
{/if}