updateRoutes method
void
updateRoutes(
- String name
)
Implementation
void updateRoutes(String name) {
final routesFile = File('lib/routes/app_routes.dart');
if (!routesFile.existsSync()) {
// Create a new routes file with a template
final templateContent = '''
import 'package:get/get.dart';
/// Add Next import
class AppRoutes {
/// Auto Create By
/// Flutter helper package
/// www.webspec.in
/// Add Next String
static List<GetPage> pages = [
/// Add Next Route
];
}
''';
routesFile.writeAsStringSync(templateContent);
print('Routes file created: ${routesFile.path}');
}
final routeName = '${_camelCase(name)}Screen';
final routePath = '/${_camelCase(name)}Screen'; final bindingClass = '${_capitalize(name)}Binding()';
final pageClass = '${_capitalize(name)}Screen()';
final importStatements = '''
import '../presentation/${name}/screen/${name}Screen.dart';
import '../presentation/${name}/binding/${name}Binding.dart';
/// Add Next import
''';
final routeStringDefinition = '''
static const String $routeName = '$routePath';
/// Add Next String
'''; final routeDefinition = '''
GetPage(
name: '${routePath}',
page: () => ${pageClass},
binding: ${bindingClass},
),
/// Add Next Route
''';
var content = routesFile.readAsStringSync();
// Check if the route already exists
if (content.contains("name: $routePath")) {
print('Route already exists.');
return;
}
// Update imports
if (content.contains('/// Add Next import')) {
content = content.replaceFirst('/// Add Next import', importStatements);
} else {
print('Import placeholder not found.');
}
// Update route strings
if (content.contains('/// Add Next String')) {
content =
content.replaceFirst('/// Add Next String', routeStringDefinition);
} else {
print('Route string placeholder not found.');
}
// Update routes list
if (content.contains('/// Add Next Route')) {
content = content.replaceFirst('/// Add Next Route', routeDefinition);
} else {
print('Routes definition not found in the file.');
}
routesFile.writeAsStringSync(content);
print('Routes updated: ${routesFile.path}');
}