// Import Live Grouper
import { createEvent } from 'dce-live-grouper';

// Import dce-reactkit
import { genRouteHandler, ParamType } from '../../../../dce-reactkit';

// Import types
import Router from '../../../types/Router';

/**
 * Endpoint for creating an event,
 * expects a JSON body containing CreateEventBody.
 * @param app the Express app which we are adding this endpoint to.
 */
const addCreateEventRoute = (
  router: Router,
) => {
  router.post(
    '/event',
    genRouteHandler({
      paramTypes: {
        createEventBody: ParamType.JSON,
      },
      handler: async ({ params }) => {
        const { createEventBody } = params;
        return createEvent(createEventBody);
      },
    }),
  );
};

export default addCreateEventRoute;
