build-internal-chn-domains.js 839 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 { task } = require('./lib/trace-runner');
  6. const { compareAndWriteFile } = require('./lib/create-file');
  7. const buildInternalChnDomains = task(__filename, 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. return 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. buildInternalChnDomains();
  20. }