generateCompleteSetup method
Generates complete localization setup for a Flutter project
Implementation
Future<void> generateCompleteSetup({
required List<String> supportedLanguages,
required Map<String, Map<String, dynamic>> translations,
bool generateExtensions = true,
bool updatePubspec = true,
bool generateL10nYaml = true,
}) async {
if (verbose) {
print('🏗️ Generating complete localization setup...');
}
// Ensure output directory exists
final outputDir = Directory(outputDirectory);
if (!outputDir.existsSync()) {
outputDir.createSync(recursive: true);
}
// Generate ARB files for each language
await _generateArbFiles(translations);
// Generate l10n.yaml configuration
if (generateL10nYaml) {
await _generateL10nYaml(supportedLanguages);
}
// Update pubspec.yaml with necessary dependencies
if (updatePubspec) {
await _updatePubspecYaml();
}
// Generate helper extensions and utilities
if (generateExtensions) {
await _generateHelperExtensions(supportedLanguages);
await _generateLocalizationHelpers();
}
// Generate app localization delegate
await _generateAppLocalizationDelegate(supportedLanguages);
// Generate example main.dart updates
await _generateMainDartExample(supportedLanguages);
if (verbose) {
print('✅ Complete localization setup generated successfully!');
}
}