createCubitClass function
void
createCubitClass(
- String cubitName, {
- bool useFreezed = false,
})
Implementation
void createCubitClass(String cubitName, {bool useFreezed = false}) {
final cubitPath = path.join('lib', 'features', cubitName.toLowerCase());
final cubitNameCapitalized = _toPascalCase(cubitName.toLowerCase());
final cubitFilePath = path.join(cubitPath,
'${cubitName.toLowerCase()}_cubit.dart');
final stateFilePath = path.join(cubitPath,
'${cubitName.toLowerCase()}_state.dart');
// Check if cubit files already exist
if (File(cubitFilePath).existsSync() || File(stateFilePath).existsSync()) {
print("Cubit files for $cubitNameCapitalized already exist!");
return;
}
// Ensure the feature directory exists
Directory(cubitPath).createSync(recursive: true);
if (useFreezed) {
_createFreezedCubitFiles(cubitName, cubitNameCapitalized, cubitFilePath, stateFilePath);
} else {
_createRegularCubitFiles(cubitName, cubitNameCapitalized, cubitFilePath, stateFilePath);
}
print("Cubit files created for $cubitNameCapitalized${useFreezed ? ' (with Freezed)' : ''}!");
}