{#if !isRunning}
File browser unavailable Start the capsule to browse its filesystem
{:else}
(pathInputFocused = true)} onblur={() => (pathInputFocused = false)} onkeydown={handleKeydown} placeholder="Enter path..." spellcheck="false" autocomplete="off" class="flex-1 bg-transparent font-mono text-meta text-[var(--color-text-primary)] outline-none placeholder:text-[var(--color-text-muted)]" />
{#each breadcrumbs() as crumb, i} {#if i > 0} {/if} {/each}
{#if dirLoading}
Loading...
{:else if dirError}
{dirError}
{:else if entries.length === 0}
Nothing here yet
{:else} {#each sortedEntries as entry, idx (entry.path)} {/each} {/if}
{#if !dirLoading && !dirError && entries.length > 0}
{#if dirCount > 0} {dirCount} dir{dirCount !== 1 ? 's' : ''} {/if} {#if fileCount > 0} {fileCount} file{fileCount !== 1 ? 's' : ''} {/if}
{/if}
{#if !selectedFile}
No file selected Choose a file from the tree, or enter a path directly
{:else}
{#if isBinaryFile(selectedFile.name) || isFileTooLarge(selectedFile.size)} {:else} {/if} {selectedFile.path} {#if extLabel(selectedFile.name)} {extLabel(selectedFile.name)} {/if}
{formatFileSize(selectedFile.size)}
{#if fileLoading}
Reading file...
{:else if fileError}
{fileError}
{:else if isBinaryFile(selectedFile.name) || isFileTooLarge(selectedFile.size) || (selectedFile && fileContent === null && !fileLoading)}
{#if isFileTooLarge(selectedFile.size)} {:else} {/if}
{#if isFileTooLarge(selectedFile.size)} Too large to preview {formatFileSize(selectedFile.size)} — preview limit is 10 MB {:else} Binary file Cannot display as text — download to view {/if}
{:else if fileContent !== null}
{#each previewLines.lines as line, i}
{i + 1}{#if highlightedTokens && highlightedTokens[i]}{#each highlightedTokens[i] as token}{token.content}{/each}{:else}{line || ' '}{/if}
{/each}
{#if previewLines.truncated}
Showing {MAX_PREVIEW_LINES.toLocaleString()} of {previewLines.totalLines.toLocaleString()} lines
{/if} {/if}
{/if}
{/if}