FileTree

@Composable
fun FileTree(nodes: List<FileNode>, modifier: Modifier = Modifier, selectedPath: String? = null, expanded: Set<String> = nodes.filter { it.isFolder }.map { it.path }.toSet(), onSelect: (FileNode) -> Unit? = null)(source)

A project tree (AI Elements <FileTree>): folders expand in place, files get type icons, the selectedPath is highlighted. expanded paths start open (default: top-level folders).