handleGuide function

Future<void> handleGuide(
  1. Map<String, dynamic> args,
  2. Map<String, dynamic> flags
)

Implementation

Future<void> handleGuide(
  Map<String, dynamic> args,
  Map<String, dynamic> flags,
) async {
  final SetupConfig? config = await ProjectConfigLoader.load();
  if (config == null) {
    ProjectConfigLoader.printMissingConfigHelp();
    return;
  }

  final File guide = await SetupGuidance.writeProjectGuide(config);
  final Directory docs = await DocsGenerator.write(config);
  success('Wrote setup guide: ${guide.path}');
  success('Wrote docs folder: ${docs.path}');

  if (flags['print'] == true) {
    print('');
    print(await guide.readAsString());
    return;
  }

  print('');
  UserPrompt.printList(<String>[
    'Open guide: oracular open guide',
    'Open docs: oracular open docs',
    'Open app folder: oracular open app',
    if (config.useFirebase) 'Open Firebase: oracular open firebase',
    if (config.createServer) 'Open server folder: oracular open server',
  ]);
}