]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - server/helpers/utils.ts
Use typescript standard and lint all files
[github/Chocobozzz/PeerTube.git] / server / helpers / utils.ts
1 import * as express from 'express'
2
3 import { pseudoRandomBytes } from 'crypto'
4
5 import { logger } from './logger'
6
7 function badRequest (req: express.Request, res: express.Response, next: express.NextFunction) {
8 res.type('json').status(400).end()
9 }
10
11 function generateRandomString (size: number, callback: (err: Error, randomString?: string) => void) {
12 pseudoRandomBytes(size, function (err, raw) {
13 if (err) return callback(err)
14
15 callback(null, raw.toString('hex'))
16 })
17 }
18
19 function createEmptyCallback () {
20 return function (err) {
21 if (err) logger.error('Error in empty callback.', { error: err })
22 }
23 }
24
25 function getFormatedObjects (objects: any[], objectsTotal: number) {
26 const formatedObjects = []
27
28 objects.forEach(function (object) {
29 formatedObjects.push(object.toFormatedJSON())
30 })
31
32 return {
33 total: objectsTotal,
34 data: formatedObjects
35 }
36 }
37
38 // ---------------------------------------------------------------------------
39
40 export {
41 badRequest,
42 createEmptyCallback,
43 generateRandomString,
44 getFormatedObjects
45 }