-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathreleases.js
51 lines (48 loc) · 1.24 KB
/
releases.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
import releases from '../controllers/releases';
import { validate } from '../lib/tokens';
import { isAdmin } from '../lib/auth';
const routes = (fastify) => {
fastify.get(
'/releases/range/:offset/:limit/:order',
releases.getRange,
);
fastify.get(
'/releases/unpublished/:offset/:limit/:order',
releases.getUnpublished,
);
fastify.get(
'/releases/:limit/:order',
releases.getWithLimitAndOrder,
);
fastify.get('/releases/count/published', releases.countPublished);
fastify.get('/releases/count', releases.count);
fastify.get('/releases/:limit', releases.getWithLimit);
fastify.get('/releases', releases.get);
fastify.get('/release/:slug', releases.getOneBySlug);
fastify.post(
'/release',
{ beforeHandler: [validate, isAdmin] },
releases.create,
);
fastify.patch(
'/release',
{ beforeHandler: [validate, isAdmin] },
releases.update,
);
fastify.patch(
'/release/publish',
{ beforeHandler: [validate, isAdmin] },
releases.publish,
);
fastify.patch(
'/release/unpublish',
{ beforeHandler: [validate, isAdmin] },
releases.unpublish,
);
fastify.delete(
'/release',
{ beforeHandler: [validate, isAdmin] },
releases.del,
);
};
export default routes;