IdeApp constructor
IdeApp({
- required Workspace workspace,
- required TerminalDriver terminal,
- HighlighterRegistry? registry,
- AgentBackend? agentBackend,
- AiProvider? aiProvider,
- String? aiModel,
- CommandShield? shield,
- CommandSyntax? commandSyntax,
- TokenTheme theme = TokenTheme.dark,
Implementation
IdeApp({
required Workspace workspace,
required TerminalDriver terminal,
HighlighterRegistry? registry,
AgentBackend? agentBackend,
AiProvider? aiProvider,
String? aiModel,
CommandShield? shield,
CommandSyntax? commandSyntax,
this.theme = TokenTheme.dark,
}) : _workspace = workspace,
rootPath = workspace.rootPath,
_terminal = terminal,
_registry = registry ?? HighlighterRegistry(),
_tree = FileTree(
workspace.rootPath,
lister: (path) async => [
for (final e in await workspace.list(path))
DirEntry(e.name, isDir: e.isDir),
],
),
_commandRunner = workspace.commandRunner,
_agentBackend = agentBackend,
_aiProvider = aiProvider,
_aiModel = aiModel,
_shield = shield ?? CommandShield(),
_commandSyntax = commandSyntax ?? CommandSyntax.bash;