feat: init
This commit is contained in:
35
node_modules/srvx/dist/adapters/generic.mjs
generated
vendored
Normal file
35
node_modules/srvx/dist/adapters/generic.mjs
generated
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
import { t as createWaitUntil } from "../_chunks/_utils2.mjs";
|
||||
import { r as wrapFetch, t as errorPlugin } from "../_chunks/_plugins.mjs";
|
||||
const FastURL = URL;
|
||||
const FastResponse = Response;
|
||||
function serve(options) {
|
||||
return new GenericServer(options);
|
||||
}
|
||||
var GenericServer = class {
|
||||
runtime = "generic";
|
||||
options;
|
||||
fetch;
|
||||
#wait;
|
||||
constructor(options) {
|
||||
this.options = {
|
||||
...options,
|
||||
middleware: [...options.middleware || []]
|
||||
};
|
||||
for (const plugin of options.plugins || []) plugin(this);
|
||||
errorPlugin(this);
|
||||
this.#wait = createWaitUntil();
|
||||
const fetchHandler = wrapFetch(this);
|
||||
this.fetch = (request) => {
|
||||
Object.defineProperties(request, { waitUntil: { value: this.#wait.waitUntil } });
|
||||
return Promise.resolve(fetchHandler(request));
|
||||
};
|
||||
}
|
||||
serve() {}
|
||||
ready() {
|
||||
return Promise.resolve(this);
|
||||
}
|
||||
async close() {
|
||||
await this.#wait.wait();
|
||||
}
|
||||
};
|
||||
export { FastResponse, FastURL, serve };
|
||||
Reference in New Issue
Block a user