How to use @laconia/event - 10 common examples

To help you get started, we’ve selected a few @laconia/event examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github laconiajs / laconia / packages / laconia-acceptance-test / src / disconnect-websocket.js View on Github external
// @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)
);
github laconiajs / laconia / packages / laconia-acceptance-test / src / connect-websocket.js View on Github external
// @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)
);
github laconiajs / laconia / packages / laconia-acceptance-test / src / accept-order.js View on Github external
// @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;
github laconiajs / laconia / packages / laconia-acceptance-test / src / disconnect-websocket.js View on Github external
const adapter = app => async (event, laconiaContext) => {
  await app(event.requestContext.connectionId, laconiaContext);
  return res("success", 200);
};
github laconiajs / laconia / packages / laconia-acceptance-test / src / accept-order.js View on Github external
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);
    }
  });
github laconiajs / laconia / packages / laconia-acceptance-test / src / connect-websocket.js View on Github external
const adapter = app => async (event, laconiaContext) => {
  await app(event.requestContext.connectionId, laconiaContext);
  return res("success", 200);
};
github laconiajs / laconia / packages / laconia-acceptance-test / src / accept-order.js View on Github external
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);
    }
  });
github laconiajs / laconia / packages / laconia-acceptance-test / src / accept-order.js View on Github external
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);
    }
  });
github laconiajs / laconia / packages / laconia-acceptance-test / src / notify-restaurant.js View on Github external
const adapter = app => (event, dependencies) => {
  const orderEvents = kinesis(event).records.map(r => r.jsonData);
  return app(orderEvents, dependencies);
};
github laconiajs / laconia / packages / laconia-adapter-api / src / ApiGatewayNameMappingErrorConverter.js View on Github external
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 {