createCleanPattern function
Future<void>
createCleanPattern(
)
Implementation
Future<void> createCleanPattern() async {
var canContinue = await createMain();
if (!canContinue) return;
var isServerProject = PubspecUtils.isServerProject;
if (!isServerProject) {
await installGet();
}
var initialDirs = [
// data
Directory(Structure.replaceAsExpected(path: 'lib/data/')),
Directory(Structure.replaceAsExpected(path: 'lib/data/mappers/')),
Directory(Structure.replaceAsExpected(path: 'lib/data/local/')),
Directory(Structure.replaceAsExpected(path: 'lib/data/remote/')),
Directory(Structure.replaceAsExpected(path: 'lib/data/repositories/')),
// di
Directory(Structure.replaceAsExpected(path: 'lib/di/')),
// domain
Directory(Structure.replaceAsExpected(path: 'lib/domain/')),
Directory(Structure.replaceAsExpected(path: 'lib/domain/entities/')),
Directory(Structure.replaceAsExpected(path: 'lib/domain/enums')),
Directory(Structure.replaceAsExpected(path: 'lib/domain/repositories/')),
Directory(Structure.replaceAsExpected(path: 'lib/domain/use_cases/')),
// presentation
Directory(Structure.replaceAsExpected(path: 'lib/presentation/')),
Directory(Structure.replaceAsExpected(path: 'lib/presentation/base/')),
Directory(Structure.replaceAsExpected(path: 'lib/presentation/resources/')),
Directory(Structure.replaceAsExpected(path: 'lib/presentation/routers/')),
Directory(Structure.replaceAsExpected(path: 'lib/presentation/views/')),
Directory(
Structure.replaceAsExpected(path: 'lib/presentation/views/screens/')),
Directory(
Structure.replaceAsExpected(path: 'lib/presentation/views/dialogs/')),
Directory(
Structure.replaceAsExpected(path: 'lib/presentation/views/widgets/')),
Directory(Structure.replaceAsExpected(path: 'lib/utils/')),
];
// init main.dart
ProviderMainSample(isServer: isServerProject).create();
// presentation
BaseScreenSample().create();
BaseControllerSample().create();
BaseStateSample().create();
UninitializedWidgetSample().create();
ErrorDialogSample().create();
LoadingDialogSample().create();
RouterSample().create();
// domain
IUseCaseSample().create();
ErrorEntitySample().create();
// data
// ErrorHandlerSample().create();
// di
DISample().create();
// init sample screen
await Future.wait([
CreateScreenCommand().execute(),
]);
createListDirectory(initialDirs);
LogService.success(Translation(LocaleKeys.sucess_clean_Pattern_generated));
}