39 lines
No EOL
963 B
JavaScript
39 lines
No EOL
963 B
JavaScript
import { t as createWaitUntil } from "../_chunks/_utils.mjs";
|
|
import { r as wrapFetch, t as errorPlugin } from "../_chunks/_plugins.mjs";
|
|
|
|
//#region src/adapters/generic.ts
|
|
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();
|
|
}
|
|
};
|
|
|
|
//#endregion
|
|
export { FastResponse, FastURL, serve }; |