selectProjectDir static method
Future<void>
selectProjectDir(
- CommandLogger logger,
- ProjectLaunch projectSetup,
- String? foundProjectDir
Implementation
static Future<void> selectProjectDir(
final CommandLogger logger,
final ProjectLaunch projectSetup,
final String? foundProjectDir,
) async {
final specifiedProjectDir = projectSetup.projectDir;
if (specifiedProjectDir != null) {
if (_validateProjectDir(logger, specifiedProjectDir)) {
return;
}
}
if (foundProjectDir != null) {
if (_validateProjectDir(logger, foundProjectDir)) {
projectSetup.projectDir = p.relative(foundProjectDir);
logger.info('Found project directory: ${projectSetup.projectDir}');
return;
}
}
do {
final projectDir = await logger.input(
'Enter the project directory',
);
if (projectDir.isEmpty) {
logger.error('Project directory is required.');
continue;
}
if (_validateProjectDir(logger, projectDir)) {
projectSetup.projectDir = projectDir;
return;
}
logProjectDirIsNotAServerpodServerDirectory(logger, projectDir);
} while (true);
}