runCommand static method
void
runCommand()
Implementation
static void runCommand() {
bool isHelpCommand =
arguments.isEmpty ||
(arguments.length == 1 && (arguments[0] == 'help' || arguments[0] == '--help' || arguments[0] == '-help' || arguments[0] == '-h' || arguments[0] == 'h'));
bool isInitCommand = arguments.length == 1 && arguments[0] == 'init';
bool isSetupFlavorsCommand = arguments.length == 1 && arguments[0] == 'setup_flavors';
bool isSetupDeeplinkCommand = arguments.length == 1 && arguments[0] == 'setup_deeplink';
bool isSetupFirebaseManualCommand = arguments.length == 1 && arguments[0] == 'setup_firebase_manual';
bool isSetupFirebaseAutoCommand = arguments.length == 1 && arguments[0] == 'setup_firebase';
bool isCreateScreenCommand = arguments.length == 3 && arguments[0] == 'create' && arguments[1] == 'screen';
bool isCreateSubScreenCommand = arguments.length == 5 && arguments[0] == 'create' && arguments[1] == 'sub_screen' && arguments[3] == 'in';
bool isCreateBottomSheetCommand = arguments.length == 3 && arguments[0] == 'create' && arguments[1] == 'bs';
bool isCreateDialogCommand = arguments.length == 3 && arguments[0] == 'create' && arguments[1] == 'dialog';
bool isCreateEventCommand = arguments.length == 5 && arguments[0] == 'create' && arguments[1] == 'event' && arguments[3] == 'in';
if (arguments.any((element) => isInValidArgument(element)) && !isHelpCommand) {
print(
"\n ${ConsoleSymbols.error}Error: Invalid command format\n\n • Should be in lowercase only\n • Start with alphabet\n • No special characters allowed other then underscore (_)\n",
);
return;
}
if (isHelpCommand) {
// Show Help
_showHelp();
return;
}
if (isInitCommand) {
// Initialize Project
_initProject();
return;
}
if (isSetupFlavorsCommand) {
// Setup Product Flavors
_setupFlavors();
return;
}
if (isSetupDeeplinkCommand) {
// Setup Deep-Linking
_setupDeeplink();
return;
}
if (isSetupFirebaseManualCommand) {
// Setup Firebase Configs
_setupFirebase();
return;
}
if (isSetupFirebaseAutoCommand) {
// Setup Firebase Configs Automatically using FlutterFire CLI
setupFirebaseAuto();
return;
}
if (isCreateScreenCommand) {
// Create Screen
_pageName = arguments[2];
_createScreenStructure();
return;
}
if (isCreateSubScreenCommand) {
// Create Sub Screen
_pageName = arguments[2];
_parentPageName = arguments[4];
_createSubScreenStructure();
return;
}
if (isCreateBottomSheetCommand) {
// Create Bottom Sheet
_pageName = arguments[2];
_createBottomSheetStructure();
return;
}
if (isCreateDialogCommand) {
// Create Dialog
_pageName = arguments[2];
_createDialogStructure();
return;
}
if (isCreateEventCommand) {
// Create Bloc'sEvent
final String eventName = arguments[2];
final String pageName = arguments[4];
_createEvent(eventName, pageName);
return;
}
print('${ConsoleSymbols.error} Error: Unknown command.');
}