*Add dist
This commit is contained in:
parent
183199247d
commit
1fe0496312
|
@ -0,0 +1,2 @@
|
||||||
|
import type { ResolverModule } from "@lumeweb/resolver-common";
|
||||||
|
export declare function setup(rm: ResolverModule): void;
|
|
@ -0,0 +1,32 @@
|
||||||
|
import { addHandler, handleMessage } from "libkmodule";
|
||||||
|
import { register } from "@lumeweb/kernel-dns-client";
|
||||||
|
let resolver;
|
||||||
|
export function setup(rm) {
|
||||||
|
addHandler("resolve", handleResolve);
|
||||||
|
addHandler("register", handleRegister);
|
||||||
|
onmessage = handleMessage;
|
||||||
|
resolver = rm;
|
||||||
|
}
|
||||||
|
async function handleRegister(aq) {
|
||||||
|
await register();
|
||||||
|
aq.respond();
|
||||||
|
}
|
||||||
|
async function handleResolve(aq) {
|
||||||
|
if (!("domain" in aq.callerInput)) {
|
||||||
|
aq.reject("domain required");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let ret;
|
||||||
|
try {
|
||||||
|
ret = await resolver.resolve(aq.callerInput.domain, aq.callerInput?.options ?? {}, aq.callerInput?.bypassCache || false);
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
aq.reject(e);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (ret.error) {
|
||||||
|
aq.reject(ret.error);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
aq.respond(ret);
|
||||||
|
}
|
Loading…
Reference in New Issue