edgespec
Version:
Write Winter-CG compatible routes with filesystem routing and tons of features
40 lines (34 loc) • 1.24 kB
JavaScript
;
var http = require('http');
var nodeUtils = require('@edge-runtime/node-utils');
var primitives = require('@edge-runtime/primitives');
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
var http__default = /*#__PURE__*/_interopDefault(http);
var primitives__default = /*#__PURE__*/_interopDefault(primitives);
// src/adapters/node.ts
var dependencies = {
...primitives__default.default,
Uint8Array
};
var transformToNodeBuilder = (options) => nodeUtils.buildToNodeHandler(dependencies, options);
// src/adapters/node.ts
var getNodeHandler = (edgeSpec, { port, middleware = [] }) => {
const transformToNode = transformToNodeBuilder({
defaultOrigin: `http://localhost${port ? `:${port}` : ""}`
});
return transformToNode(
(req) => edgeSpec.makeRequest(req, {
middleware
})
);
};
var startServer = async (edgeSpec, opts) => {
const server = http__default.default.createServer(getNodeHandler(edgeSpec, opts));
const { port } = opts;
await new Promise((resolve) => server.listen(port, resolve));
return server;
};
exports.getNodeHandler = getNodeHandler;
exports.startServer = startServer;
//# sourceMappingURL=node.cjs.map
//# sourceMappingURL=node.cjs.map