list method
Lists the entries of directory absPath.
Implementation
@override
Future<List<WsEntry>> list(String absPath) async {
// `-Ap` lists dotfiles (minus . / ..) and appends `/` to directory names.
final r = _check(
await _run(
'ls -Ap -- ${_q(absPath)}',
windows: windowsListScript(absPath),
),
'list',
absPath,
);
final listing = _windows ? _fromBase64(r.stdoutText) : r.stdoutText;
final out = <WsEntry>[];
for (final raw in const LineSplitter().convert(listing)) {
final name = raw.trimRight();
if (name.isEmpty) continue;
final isDir = name.endsWith('/');
out.add(
WsEntry(
isDir ? name.substring(0, name.length - 1) : name,
isDir: isDir,
),
);
}
return out;
}