@scloud/lambda-api
Version:
Lambda handler for API Gateway proxy requests
16 lines • 3.78 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.ApiError = void 0;
class ApiError extends Error {
statusCode;
body;
constructor(statusCode, body) {
super(typeof body === 'string' ? body : JSON.stringify(body, null, 2));
this.statusCode = statusCode;
this.body = body;
// Required for instanceof to work properly
Object.setPrototypeOf(this, ApiError.prototype);
}
}
exports.ApiError = ApiError;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBd0RBLE1BQWEsUUFBUyxTQUFRLEtBQUs7SUFDakMsVUFBVSxDQUFTO0lBQ25CLElBQUksQ0FBVTtJQUVkLFlBQVksVUFBa0IsRUFBRSxJQUFhO1FBQzNDLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkUsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFFakIsMkNBQTJDO1FBQzNDLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsRCxDQUFDO0NBQ0Y7QUFaRCw0QkFZQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7IEFQSUdhdGV3YXlQcm94eUV2ZW50IH0gZnJvbSBcImF3cy1sYW1iZGFcIjtcbmltcG9ydCB6IGZyb20gXCJ6b2QvdjRcIjtcblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0PEIgPSBhbnk+IHtcbiAgbWV0aG9kOiBzdHJpbmcsXG4gIHBhdGg6IHN0cmluZyxcbiAgcXVlcnk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIGhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIGNvb2tpZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIHBhdGhQYXJhbWV0ZXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICBib2R5OiBCO1xuICBjb250ZXh0OiB7XG4gICAgZXZlbnQ6IEFQSUdhdGV3YXlQcm94eUV2ZW50O1xuICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgfSxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXNwb25zZTxCID0gYW55PiB7XG4gIHN0YXR1c0NvZGU/OiBudW1iZXI7XG4gIGhlYWRlcnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICBjb29raWVzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgYm9keT86IEI7XG59XG5cbnR5cGUgQW55U2NoZW1hID0gei5ab2RUeXBlPGFueSwgYW55LCBhbnk+O1xuZXhwb3J0IGludGVyZmFjZSBIYW5kbGVyPFNSZXEgZXh0ZW5kcyBBbnlTY2hlbWEgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQsIFNSZXMgZXh0ZW5kcyBBbnlTY2hlbWEgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ+IHtcbiAgcmVxdWVzdD86IHtcbiAgICBib2R5PzogU1JlcTtcbiAgICBoZWFkZXJzPzogei5ab2RPYmplY3Q8YW55PjtcbiAgICBjb29raWVzPzogei5ab2RPYmplY3Q8YW55PjtcbiAgICBwYXRoUGFyYW1ldGVycz86IHouWm9kT2JqZWN0PGFueT47XG4gICAgcXVlcnk/OiB6LlpvZE9iamVjdDxhbnk+O1xuICB9O1xuICByZXNwb25zZT86IHtcbiAgICBib2R5PzogU1JlcztcbiAgICBoZWFkZXJzPzogei5ab2RPYmplY3Q8YW55PjtcbiAgICBjb29raWVzPzogei5ab2RPYmplY3Q8YW55PjtcbiAgfTtcbiAgaGFuZGxlcjogKHJlcXVlc3Q6IFJlcXVlc3Q8ei5pbmZlcjxTUmVxPj4pID0+IFByb21pc2U8UmVzcG9uc2U8ei5pbmZlcjxTUmVzPj4+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJvdXRlIHtcbiAgR0VUPzogSGFuZGxlcjx1bmRlZmluZWQsIEFueVNjaGVtYT47XG4gIFBPU1Q/OiBIYW5kbGVyPEFueVNjaGVtYSwgQW55U2NoZW1hPjtcbiAgUFVUPzogSGFuZGxlcjxBbnlTY2hlbWEsIEFueVNjaGVtYT47XG4gIERFTEVURT86IEhhbmRsZXI8dW5kZWZpbmVkLCBBbnlTY2hlbWE+O1xuICBQQVRDSD86IEhhbmRsZXI8dW5kZWZpbmVkLCBBbnlTY2hlbWE+O1xuICBPUFRJT05TPzogSGFuZGxlcjx1bmRlZmluZWQsIEFueVNjaGVtYT47XG4gIEhFQUQ/OiBIYW5kbGVyPHVuZGVmaW5lZCwgQW55U2NoZW1hPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSb3V0ZXMge1xuICBbcGF0aDogc3RyaW5nXTogUm91dGU7XG59XG5cbmV4cG9ydCBjbGFzcyBBcGlFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgc3RhdHVzQ29kZTogbnVtYmVyO1xuICBib2R5OiB1bmtub3duO1xuXG4gIGNvbnN0cnVjdG9yKHN0YXR1c0NvZGU6IG51bWJlciwgYm9keTogdW5rbm93bikge1xuICAgIHN1cGVyKHR5cGVvZiBib2R5ID09PSAnc3RyaW5nJyA/IGJvZHkgOiBKU09OLnN0cmluZ2lmeShib2R5LCBudWxsLCAyKSk7XG4gICAgdGhpcy5zdGF0dXNDb2RlID0gc3RhdHVzQ29kZTtcbiAgICB0aGlzLmJvZHkgPSBib2R5O1xuXG4gICAgLy8gUmVxdWlyZWQgZm9yIGluc3RhbmNlb2YgdG8gd29yayBwcm9wZXJseVxuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLCBBcGlFcnJvci5wcm90b3R5cGUpO1xuICB9XG59XG4iXX0=
;