Refactor: continues to rewrite to TS

This commit is contained in:
SukkaW
2023-11-15 16:26:46 +08:00
parent ec338a659f
commit 99589cf2fc
32 changed files with 258 additions and 471 deletions

View File

@@ -0,0 +1,17 @@
import tldts from 'tldts';
import { createCache } from './cache-apply';
import { PublicSuffixList } from 'gorhill-publicsuffixlist';
const cache = createCache('cached-tld-parse', true);
const sharedConfig = { allowPrivateDomains: true };
export const parse = (domain: string) => cache.sync(domain, () => tldts.parse(domain, sharedConfig));
let gothillGetDomainCache: ReturnType<typeof createCache> | null = null;
export const createCachedGorhillGetDomain = (gorhill: PublicSuffixList) => {
return (domain: string) => {
gothillGetDomainCache ??= createCache('cached-gorhill-get-domain', true);
return gothillGetDomainCache.sync(domain, () => gorhill.getDomain(domain[0] === '.' ? domain.slice(1) : domain))
};
};