@geek-fun/serverless-adapter
Version:
Adapter for web frame work express, koa, springboot to run in serverless function as backend of apigateway cross multi cloud provider like aliyun, huawei
29 lines (28 loc) • 947 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.constructFramework = void 0;
const koa_1 = __importDefault(require("koa"));
const serverlessResponse_1 = __importDefault(require("./serverlessResponse"));
// eslint-disable-next-line
const callableFn = (callback) => {
return async (request) => {
const response = new serverlessResponse_1.default(request);
callback(request, response);
return response;
};
};
const constructFramework = (app) => {
if (app instanceof koa_1.default) {
return callableFn(app.callback());
}
else if (typeof app === 'function') {
return callableFn(app);
}
else {
throw new Error(`Unsupported framework ${app}`);
}
};
exports.constructFramework = constructFramework;