58 lines
2.0 KiB
Dart
58 lines
2.0 KiB
Dart
|
|
import 'dart:io';
|
|||
|
|
|
|||
|
|
/// さけのわ統一名称対応:displayData参照を更新
|
|||
|
|
///
|
|||
|
|
/// displayData.name → displayData.displayName
|
|||
|
|
/// displayData.brewery → displayData.displayBrewery
|
|||
|
|
/// displayData.prefecture → displayData.displayPrefecture
|
|||
|
|
void main() async {
|
|||
|
|
final libDir = Directory('lib');
|
|||
|
|
final dartFiles = <File>[];
|
|||
|
|
|
|||
|
|
// 全dartファイルを再帰的に検索
|
|||
|
|
await for (final entity in libDir.list(recursive: true)) {
|
|||
|
|
if (entity is File && entity.path.endsWith('.dart')) {
|
|||
|
|
dartFiles.add(entity);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
int totalFiles = 0;
|
|||
|
|
int totalReplacements = 0;
|
|||
|
|
|
|||
|
|
for (final file in dartFiles) {
|
|||
|
|
String content = await file.readAsString();
|
|||
|
|
String original = content;
|
|||
|
|
int fileReplacements = 0;
|
|||
|
|
|
|||
|
|
// 置換(順番重要:長いパターンから)
|
|||
|
|
// displayName が既に存在する場合はスキップ
|
|||
|
|
if (!content.contains('displayData.displayName')) {
|
|||
|
|
final nameCount = 'displayData.name'.allMatches(content).length;
|
|||
|
|
content = content.replaceAll('displayData.name', 'displayData.displayName');
|
|||
|
|
fileReplacements += nameCount;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!content.contains('displayData.displayBrewery')) {
|
|||
|
|
final breweryCount = 'displayData.brewery'.allMatches(content).length;
|
|||
|
|
content = content.replaceAll('displayData.brewery', 'displayData.displayBrewery');
|
|||
|
|
fileReplacements += breweryCount;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!content.contains('displayData.displayPrefecture')) {
|
|||
|
|
final prefectureCount = 'displayData.prefecture'.allMatches(content).length;
|
|||
|
|
content = content.replaceAll('displayData.prefecture', 'displayData.displayPrefecture');
|
|||
|
|
fileReplacements += prefectureCount;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 変更があった場合のみ保存
|
|||
|
|
if (content != original) {
|
|||
|
|
await file.writeAsString(content);
|
|||
|
|
totalFiles++;
|
|||
|
|
totalReplacements += fileReplacements;
|
|||
|
|
print('✅ ${file.path}: $fileReplacements 箇所更新');
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
print('\n🎉 完了: $totalFiles ファイル、合計 $totalReplacements 箇所を更新しました');
|
|||
|
|
}
|