build-internal-chn-domains.js 840 B

123456789101112131415161718192021222324
  1. // @ts-check
  2. const path = require('path');
  3. const fse = require('fs-extra');
  4. const { parseFelixDnsmasq } = require('./lib/parse-dnsmasq');
  5. const { runner } = require('./lib/trace-runner');
  6. const { compareAndWriteFile } = require('./lib/create-file');
  7. const buildInternalChnDomains = async () => {
  8. const [result] = await Promise.all([
  9. parseFelixDnsmasq('https://raw.githubusercontent.com/felixonmars/dnsmasq-china-list/master/accelerated-domains.china.conf'),
  10. fse.ensureDir(path.resolve(__dirname, '../List/internal'))
  11. ]);
  12. await compareAndWriteFile(
  13. result.map(line => `SUFFIX,${line}`),
  14. path.resolve(__dirname, '../List/internal/accelerated-china-domains.txt')
  15. );
  16. };
  17. module.exports.buildInternalChnDomains = buildInternalChnDomains;
  18. if (require.main === module) {
  19. runner(__filename, buildInternalChnDomains);
  20. }