Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
// @ts-check
const laconia = require("@laconia/core");
const { res } = require("@laconia/event").apigateway;
const DynamoDbWebSocketServer = require("./DynamoDbWebSocketServer");
const app = async (connectionId, { webSocketServer }) => {
return webSocketServer.removeConnection(connectionId);
};
const adapter = app => async (event, laconiaContext) => {
await app(event.requestContext.connectionId, laconiaContext);
return res("success", 200);
};
exports.handler = laconia(adapter(app)).register(
"webSocketServer",
() => new DynamoDbWebSocketServer(process.env.CONNECTION_TABLE_NAME)
);
// @ts-check
const laconia = require("@laconia/core");
const { res } = require("@laconia/event").apigateway;
const DynamoDbWebSocketServer = require("./DynamoDbWebSocketServer");
const app = async (connectionId, { webSocketServer }) => {
return webSocketServer.addConnection(connectionId);
};
const adapter = app => async (event, laconiaContext) => {
await app(event.requestContext.connectionId, laconiaContext);
return res("success", 200);
};
exports.handler = laconia(adapter(app)).register(
"webSocketServer",
() => new DynamoDbWebSocketServer(process.env.CONNECTION_TABLE_NAME)
);
// @ts-check
const laconia = require("@laconia/core");
const { req, res } = require("@laconia/event").apigateway;
const KinesisOrderStream = require("./KinesisOrderStream");
const instances = ({ env }) => ({
orderStream: new KinesisOrderStream(env.ORDER_STREAM_NAME)
});
const withCors = next => async (...args) => {
const response = await next(...args);
response.headers["Access-Control-Allow-Origin"] = "*";
return response;
};
const adapter = app =>
withCors(async (event, dependencies) => {
try {
const id = req(event).params.id;
const adapter = app => async (event, laconiaContext) => {
await app(event.requestContext.connectionId, laconiaContext);
return res("success", 200);
};
withCors(async (event, dependencies) => {
try {
const id = req(event).params.id;
const output = await app(id, dependencies);
return res(output);
} catch (err) {
return res(err.message, 500);
}
});
const adapter = app => async (event, laconiaContext) => {
await app(event.requestContext.connectionId, laconiaContext);
return res("success", 200);
};
withCors(async (event, dependencies) => {
try {
const id = req(event).params.id;
const output = await app(id, dependencies);
return res(output);
} catch (err) {
return res(err.message, 500);
}
});
withCors(async (event, dependencies) => {
try {
const id = req(event).params.id;
const output = await app(id, dependencies);
return res(output);
} catch (err) {
return res(err.message, 500);
}
});
const adapter = app => (event, dependencies) => {
const orderEvents = kinesis(event).records.map(r => r.jsonData);
return app(orderEvents, dependencies);
};
const { res } = require("@laconia/event").apigateway;
const getMappingEntries = mappings =>
mappings instanceof Map ? mappings.entries() : Object.entries(mappings);
const getMappingResponse = (mappings, error) => {
let mappingResponse = {};
for (const [errorRegex, mapping] of getMappingEntries(mappings)) {
if (error.name.match(errorRegex)) {
mappingResponse = mapping(error);
break;
}
}
return mappingResponse;
};
module.exports = class ApiGatewayNameMappingErrorConverter {