Documentation
¶
Index ¶
- type AliasSaver
- type BrowserAliasSaveErrMsg
- type BrowserAliasSavedMsg
- type BrowserCancelMsg
- type BrowserDirSelectErrMsg
- type BrowserDirSelectedMsg
- type DirLister
- type FileBrowserModel
- func NewFileBrowser(startPath string, lister DirLister) FileBrowserModel
- func NewFileBrowserWithAlias(startPath string, lister DirLister, checker PathChecker, aliasStore AliasSaver, ...) FileBrowserModel
- func NewFileBrowserWithChecker(startPath string, lister DirLister, checker PathChecker) FileBrowserModel
- type GitRootResolver
- type PathChecker
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AliasSaver ¶
AliasSaver abstracts alias persistence for the file browser.
type BrowserAliasSaveErrMsg ¶
type BrowserAliasSaveErrMsg struct {
Err error
}
BrowserAliasSaveErrMsg is emitted when alias saving fails.
type BrowserAliasSavedMsg ¶
BrowserAliasSavedMsg is emitted when an alias has been saved from the file browser.
type BrowserCancelMsg ¶
type BrowserCancelMsg struct{}
BrowserCancelMsg is emitted when the user cancels the file browser with Esc (no filter active).
type BrowserDirSelectErrMsg ¶
BrowserDirSelectErrMsg is emitted when a directory selection fails (e.g., directory no longer exists).
type BrowserDirSelectedMsg ¶
type BrowserDirSelectedMsg struct {
Path string
}
BrowserDirSelectedMsg is emitted when the user selects the current directory via Space or Enter on the "." entry.
type DirLister ¶
type DirLister interface {
ListDirectories(path string, showHidden bool) ([]browser.DirEntry, error)
}
DirLister abstracts directory listing for testability.
type FileBrowserModel ¶
type FileBrowserModel struct {
// contains filtered or unexported fields
}
FileBrowserModel is the Bubble Tea model for the file browser view.
func NewFileBrowser ¶
func NewFileBrowser(startPath string, lister DirLister) FileBrowserModel
NewFileBrowser creates a FileBrowserModel starting at the given path.
func NewFileBrowserWithAlias ¶
func NewFileBrowserWithAlias(startPath string, lister DirLister, checker PathChecker, aliasStore AliasSaver, resolveGit GitRootResolver) FileBrowserModel
NewFileBrowserWithAlias creates a FileBrowserModel with alias and git root resolution support.
func NewFileBrowserWithChecker ¶
func NewFileBrowserWithChecker(startPath string, lister DirLister, checker PathChecker) FileBrowserModel
NewFileBrowserWithChecker creates a FileBrowserModel with a custom path checker for testability.
func (FileBrowserModel) Init ¶
func (m FileBrowserModel) Init() tea.Cmd
Init satisfies the tea.Model interface.
func (FileBrowserModel) View ¶
func (m FileBrowserModel) View() string
View renders the file browser.
type GitRootResolver ¶
GitRootResolver resolves a directory to its git repository root. Returns the original directory if not in a git repo.
type PathChecker ¶
PathChecker verifies a directory path exists on disk.