write static method

Future<Directory> write(
  1. SetupConfig config
)

Write a complete docs/ folder. Existing files are overwritten so the guide always reflects the current configuration.

Implementation

static Future<Directory> write(SetupConfig config) async {
  final Directory dir = Directory(docsDir(config));
  if (!dir.existsSync()) {
    await dir.create(recursive: true);
  }

  final List<_DocPage> pages = _buildPages(config);

  for (final _DocPage page in pages) {
    final File f = File(p.join(dir.path, page.filename));
    await f.writeAsString(page.content);
    verbose('Wrote ${page.filename}');
  }

  final File index = File(p.join(dir.path, 'README.md'));
  await index.writeAsString(_buildIndex(config, pages));

  return dir;
}