paradigm-core
Version:
Paradigm Core Modules
37 lines (26 loc) • 1.46 kB
JavaScript
const {
Dispatcher: {dispatch}
} = require('structure-core')
const Controller = require('./controller')
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`, dispatch(controller, 'getRSS', {collectionName: false}))
router.get(`/slug/:slug/resources/:resource`, dispatch(controller, 'getResources', {collectionName: false}))
router.get(`/slug/:slug/resources`, dispatch(controller, 'getResources', {collectionName: false}))
router.get(`/slug/:slug`, dispatch(controller, 'getBySlug'))
router.get(`/:id/resources/:resource`, dispatch(controller, 'getResources', {collectionName: false}))
router.get(`/:id/resources`, 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
}
}