generateLock static method
Generate lock file from configuration
Implementation
static Future<void> generateLock({
String? configPath,
String? lockPath,
String? workingDirectory,
}) async {
final workDir = workingDirectory ?? Directory.current.path;
final configFile = configPath ?? path.join(workDir, defaultConfigFile);
final lockFile = lockPath ?? path.join(workDir, defaultLockFile);
// Load configuration
final config = await Config.load(configFile);
// Validate that all configuration entries have valid generators
AssetDiscoveryService.validateGenerators(config);
// Discover files based on configuration entries
final discoveredFiles = <FileConfig>[];
for (final entry in config.entries) {
final files = await AssetDiscoveryService.discoverFiles(entry, workDir);
discoveredFiles.addAll(files);
}
// Create and save lock file
final lock = LockFile(discoveredFiles);
await lock.save(lockFile);
}