diff --git a/src/index.ts b/src/index.ts index ab1b20f..fbd343a 100644 --- a/src/index.ts +++ b/src/index.ts @@ -7,6 +7,7 @@ let resolver: ResolverModule; export function setup(rm: ResolverModule) { addHandler("resolve", handleResolve); addHandler("register", handleRegister); + addHandler("getSupportedTlds", handleGetSupportedTlds); onmessage = handleMessage; resolver = rm; } @@ -42,4 +43,8 @@ async function handleResolve(aq: ActiveQuery) { aq.respond(ret); } +function handleGetSupportedTlds(aq: ActiveQuery) { + aq.respond(resolver.getSupportedTlds()); +} + export * from "./resolverRegistry.js"; diff --git a/src/resolverRegistry.ts b/src/resolverRegistry.ts index d167bd5..e4e4087 100644 --- a/src/resolverRegistry.ts +++ b/src/resolverRegistry.ts @@ -71,6 +71,14 @@ export class ResolverModule { return resolverError(err); } + return ret; + } + async getSupportedTlds(): Promise { + const [ret, err] = await callModule(this.domain, "getSupportedTlds"); + if (err) { + throw new Error(err); + } + return ret; } }