createDefaultNavigationTemplates method

  1. @override
Future<void> createDefaultNavigationTemplates(
  1. String projectName
)
override

Implementation

@override
Future<void> createDefaultNavigationTemplates(String projectName) async {
  // Check if Clean Architecture structure exists to determine page location
  final cleanArchPagesDir = Directory(path.join(projectName, 'lib/presentation/pages'));

  String pagesPath;
  if (cleanArchPagesDir.existsSync()) {
    // Clean Architecture structure exists, use presentation/pages
    pagesPath = 'lib/presentation/pages';
  } else {
    // Regular structure, use pages
    pagesPath = 'lib/pages';
  }

  // Create directory if it doesn't exist
  final pagesDir = Directory(path.join(projectName, pagesPath));
  pagesDir.createSync(recursive: true);

  // Create sample pages with default navigation
  final homePageFile = File(path.join(projectName, '$pagesPath/home_page.dart'));
  homePageFile.writeAsStringSync(_generateDefaultHomePageContent());

  final aboutPageFile = File(path.join(projectName, '$pagesPath/about_page.dart'));
  aboutPageFile.writeAsStringSync(_generateDefaultAboutPageContent());

  final settingsPageFile = File(path.join(projectName, '$pagesPath/settings_page.dart'));
  settingsPageFile.writeAsStringSync(_generateDefaultSettingsPageContent());
}