UNPKG

paradigm-channels

Version:
37 lines (25 loc) 1.64 kB
const Controller = require('./controller') const {dispatch} = require('structure-dispatcher') const cache = require('structure-cache-middleware').default const express = require('express') const router = express.Router() const createSchema = require('./schemas/create') const updateSchema = require('./schemas/update') const controller = new Controller() router.get(`/slug/:slug/rss`, cache(600), dispatch(controller, 'getRSS', {collectionName: false})) router.get(`/slug/:slug/resources/:resource`, cache(600), dispatch(controller, 'getResources', {collectionName: false})) router.get(`/slug/:slug/resources`, cache(600), dispatch(controller, 'getResources', {collectionName: false})) router.get(`/slug/:slug`, dispatch(controller, 'getBySlug')) router.get(`/:id/resources/:resource`, cache(600), dispatch(controller, 'getResources', {collectionName: false})) router.get(`/:id/resources`, cache(600), dispatch(controller, 'getResources', {collectionName: false})) router.get(`/:id`, dispatch(controller, 'getById')) router.get(`/`, dispatch(controller, 'getAll')) router.patch(`/:id`, updateSchema, dispatch(controller, 'updateById')) router.post(`/`, createSchema, dispatch(controller, 'create')) router.delete(`/:id`, dispatch(controller, 'deleteById')) module.exports = function routeInterface(options = {}) { return { routeName: 'channels', routes: router } }