excecute method

  1. @override
Future<void> excecute()
override

Implementation

@override
Future<void> excecute() async {
  final lib = Directory('lib');
  if (lib.existsSync()) {
    final arch = findCurrentArchitecture();
    if (arch == null) {
      var choice = UserInput.menu(options: [
        "TDD+Clean Architecture - BLoC - REST API - Feature wise",
        // "MVC - GetX - REST API - Layer wise"
      ], promt: "Choose architecture pattern (example:1)");
      print("");
      blueLog("Initializing your project...");
      print("");
      switch (choice) {
        case 1:
          await _initArchitecture(
            structure: TddCleanStructure(),
            dependencies:
                "dartz flutter_bloc injectable freezed_annotation get_it dio intl",
            devDependencies:
                "build_runner freezed injectable_generator mocktail",
          );
          break;
        // case 2:
        //   await _initArchitecture(
        //     structure: MvcGetXStructure(),
        //     dependencies: "dartz get dio intl",
        //     devDependencies: "build_runner mocktail",
        //     runBuildRunner: false,
        //   );
        //   break;
        default:
          print("Choice not found");
          break;
      }
    } else {
      if (arch == "tdd-brf") {
        showWarning("tdd clean", "brf");
      } else if (arch == "mvc-grl") {
        showWarning('mvc', "grl");
      }
    }
  } else {
    redLog("[ERROR] lib folder not found");
  }
}