import 'dart:io'; import 'package:path/path.dart' as p; Future main() async { await fixBaseTags(); } /// Changes each sample's `` tag in index.html to /// `` /// /// For example, after building using `build_ci.dart, /// `../samples_index/public/web/navigation_and_routing/index.html` should /// contain ` Future fixBaseTags() async { print('currentDir = ${Directory.current.path}'); var builtSamplesDir = Directory(p.joinAll([ // Parent directory ...p.split(Directory.current.path), // path to built samples ...p.split('samples_index/public/web') ])); if (!await builtSamplesDir.exists()) { print('${builtSamplesDir.path} does not exist.'); exit(1); } await for (var builtSample in builtSamplesDir.list()) { if (builtSample is Directory) { var index = File(p.join(builtSample.path, 'index.html')); if (!await index.exists()) { throw ('no index.html file found in ${builtSample.path}'); } var sampleDirName = p.split(builtSample.path).last; if (await index.exists()) { final regex = RegExp(''); var contents = await index.readAsString(); if (!contents.contains(regex)) { continue; } var newContents = contents.replaceFirst( regex, ''); await index.writeAsString(newContents); } } } }