checkForAlreadyExists method
void
checkForAlreadyExists(
- String moduleName,
- bool wrapWithModuleFolder,
- String? name
)
Implementation
void checkForAlreadyExists(String moduleName, bool wrapWithModuleFolder, String? name) {
var newFileModel = Structure.model(
name,
'page',
wrapWithModuleFolder,
on: onCommand,
folderName: wrapWithModuleFolder ? moduleName : null,
);
// Use full page folder path: lib/presentation/<module>/<name>
var path = Structure.replaceAsExpected(path: newFileModel.path!);
if (Directory(path).existsSync()) {
final menu = Menu(
[
LocaleKeys.options_yes.tr,
LocaleKeys.options_no.tr,
LocaleKeys.options_rename.tr,
],
title: Translation(LocaleKeys.ask_existing_page.trArgs([name])).toString(),
);
final result = menu.choose();
if (result.index == 0) {
_writeFiles(moduleName, path, name!, overwrite: true);
} else if (result.index == 2) {
var newName = ask(LocaleKeys.ask_new_page_name.tr);
checkForAlreadyExists(moduleName, wrapWithModuleFolder, newName.trim().snakeCase);
}
} else {
Directory(path).createSync(recursive: true); // Fix: Ensure the subdirectory is created
_writeFiles(moduleName, path, name!, overwrite: false);
}
}