ratatui_toolkit/widgets/file_system_tree/constructors/
new.rs

1use anyhow::Result;
2use std::path::PathBuf;
3
4use crate::widgets::file_system_tree::{FileSystemTree, FileSystemTreeConfig};
5use ratatui::widgets::Block;
6
7impl<'a> FileSystemTree<'a> {
8    pub fn new(root_path: PathBuf) -> Result<Self> {
9        let config = FileSystemTreeConfig::default();
10        let nodes = Self::load_directory(&root_path, &config)?;
11
12        Ok(Self {
13            root_path,
14            nodes,
15            config,
16            block: None,
17        })
18    }
19
20    pub fn block(mut self, block: Block<'a>) -> Self {
21        self.block = Some(block);
22        self
23    }
24}