createPage method

Future<void> createPage()

Implementation

Future<void> createPage() async {
  for (String screen in CliDataProvider.instance.args.sublist(2)) {
    bool screenExist = await checkDirectoryExist(
        "${Directory.current.path}${Constants.screensDirectoryPath}\\$screen"
            .actualPath());
    if (screenExist) {
      throw CliException(
          message:
              "${"${Constants.screensDirectoryPath}\\$screen".actualPath()} already exist");
    }
  }

  print('Choose the type of screen you want to create:');
  print('1) Blank Screen');
  print('2) Listing Screen');
  print('3) Grid Screen');
  String option = ask(
    "\nWhich type of screen do you want to create: ",
    defaultValue: '1',
    validator: Ask.integer,
  );

  CreateCommand createScreen;
  switch (option) {
    case '1':
      createScreen = BlocBlankScreen();
    case '2':
      createScreen = BlocListingScreen();
    case '3':
      createScreen = BlocGridScreen();
    default:
      createScreen = BlocBlankScreen();
  }
  await createScreen.execute();
}