build-internal-chn-domains.ts 753 B

123456789101112131415161718192021
  1. import path from 'path';
  2. import fsp from 'fs/promises'
  3. import { parseFelixDnsmasq } from './lib/parse-dnsmasq';
  4. import { task } from './lib/trace-runner';
  5. import { compareAndWriteFile } from './lib/create-file';
  6. export const buildInternalChnDomains = task(__filename, async () => {
  7. const [result] = await Promise.all([
  8. parseFelixDnsmasq('https://raw.githubusercontent.com/felixonmars/dnsmasq-china-list/master/accelerated-domains.china.conf'),
  9. fsp.mkdir(path.resolve(__dirname, '../List/internal'), { recursive: true })
  10. ]);
  11. return compareAndWriteFile(
  12. result.map(line => `SUFFIX,${line}`),
  13. path.resolve(__dirname, '../List/internal/accelerated-china-domains.txt')
  14. );
  15. });
  16. if (import.meta.main) {
  17. buildInternalChnDomains();
  18. }