execute method

  1. @override
Future<void> execute(
  1. AFCommandContext context
)
override

Implementation

@override
Future<void> execute(AFCommandContext context) async {

  final generator = context.generator;
  final args = context.parseArguments(
    command: this,
    unnamedCount: 1,
    named: {
      argStateView: generator.nameDefaultStateView,
      argTheme: generator.nameDefaultTheme,
      argParentTheme: generator.nameDefaultParentTheme,
      argParentThemeID: generator.nameDefaultParentThemeID,
      AFGenerateSubcommand.argMemberVariables: "",
      AFGenerateSubcommand.argResolveVariables: "",
      AFGenerateStateSubcommand.argNotSerial: "true",
      AFGenerateStateSubcommand.argNoReviseMethods: "false",
      argWithFlutterState: "false",
      argNoBackButton: "false",
    }
  );

  final uiName = args.accessUnnamedFirst;
  verifyMixedCase(uiName, "ui name");
  verifyNotOption(uiName);

  if(uiName.endsWith("Theme")) {
    createTheme(context, uiName, args);
  } else {
    createScreen(context, uiName, args);
  }

  // replace any default
  generator.finalizeAndWriteFiles(context);

}