blob: fbdabcaf4afa8da532a782a62b473d71676e4b93 [file] [log] [blame]
import 'dart:async';
import 'dart:io';
import 'update_shared.dart';
const _blnsJsonRawUrl =
'https://github.com/minimaxir/big-list-of-naughty-strings/raw/master/blns.json';
const _blnsFilePath = 'test/blns.dart';
Future<void> main() async {
final json = (await downloadJson(_blnsJsonRawUrl) as List).cast<String>();
final blnsContent = StringBuffer('''
// GENERATED FILE. DO NOT EDIT.
//
// This file was generated from big-list-of-naughty-strings's JSON file:
// $_blnsJsonRawUrl
// at ${DateTime.now()} by the script, tool/update_blns.dart.
// ignore_for_file: text_direction_code_point_in_literal, use_raw_strings
// ignore_for_file: lines_longer_than_80_chars
''');
blnsContent.writeln('const blns = <String>[');
for (final str in json) {
final escaped = str
.replaceAll(r'\', r'\\')
.replaceAll("'", r"\'")
.replaceAll(r'$', r'\$');
blnsContent.writeln(" '$escaped',");
}
blnsContent.writeln('];');
File(_blnsFilePath).writeAsStringSync(blnsContent.toString());
}