]>
Commit | Line | Data |
---|---|---|
1 | import validator from 'validator' | |
2 | import { CONSTRAINTS_FIELDS } from '@server/initializers/constants' | |
3 | import { ClientLogLevel, ServerLogLevel } from '@shared/models' | |
4 | import { exists } from './misc' | |
5 | ||
6 | const serverLogLevels: Set<ServerLogLevel> = new Set([ 'debug', 'info', 'warn', 'error' ]) | |
7 | const clientLogLevels: Set<ClientLogLevel> = new Set([ 'warn', 'error' ]) | |
8 | ||
9 | function isValidLogLevel (value: any) { | |
10 | return exists(value) && serverLogLevels.has(value) | |
11 | } | |
12 | ||
13 | function isValidClientLogMessage (value: any) { | |
14 | return typeof value === 'string' && validator.isLength(value, CONSTRAINTS_FIELDS.LOGS.CLIENT_MESSAGE) | |
15 | } | |
16 | ||
17 | function isValidClientLogLevel (value: any) { | |
18 | return exists(value) && clientLogLevels.has(value) | |
19 | } | |
20 | ||
21 | function isValidClientLogStackTrace (value: any) { | |
22 | return typeof value === 'string' && validator.isLength(value, CONSTRAINTS_FIELDS.LOGS.CLIENT_STACK_TRACE) | |
23 | } | |
24 | ||
25 | function isValidClientLogMeta (value: any) { | |
26 | return typeof value === 'string' && validator.isLength(value, CONSTRAINTS_FIELDS.LOGS.CLIENT_META) | |
27 | } | |
28 | ||
29 | function isValidClientLogUserAgent (value: any) { | |
30 | return typeof value === 'string' && validator.isLength(value, CONSTRAINTS_FIELDS.LOGS.CLIENT_USER_AGENT) | |
31 | } | |
32 | ||
33 | // --------------------------------------------------------------------------- | |
34 | ||
35 | export { | |
36 | isValidLogLevel, | |
37 | isValidClientLogMessage, | |
38 | isValidClientLogStackTrace, | |
39 | isValidClientLogMeta, | |
40 | isValidClientLogLevel, | |
41 | isValidClientLogUserAgent | |
42 | } |