mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-10 01:43:43 +00:00
41 lines
1.4 KiB
TypeScript
41 lines
1.4 KiB
TypeScript
import { body, param } from 'express-validator';
|
|
import { OntimeView } from 'ontime-types';
|
|
|
|
import { requestValidationFunction } from '../validation-utils/validationFunction.js';
|
|
|
|
/**
|
|
* validate array of URL preset objects
|
|
*/
|
|
export const validateNewPreset = [
|
|
body().isObject().withMessage('No data found in request'),
|
|
body('enabled').isBoolean(),
|
|
body('alias').isString().trim().notEmpty(),
|
|
body('target').isString().trim().notEmpty().isIn(Object.values(OntimeView)),
|
|
body('search').isString().trim(),
|
|
body('displayInNav').isBoolean(),
|
|
|
|
// options are currently only provided for cuesheet presets
|
|
body('options').optional().isObject(),
|
|
body('options.*').isString().trim(),
|
|
|
|
requestValidationFunction,
|
|
];
|
|
|
|
export const validateUpdatePreset = [
|
|
param('alias').isString().trim().notEmpty(),
|
|
body().isObject().withMessage('No data found in request'),
|
|
body('enabled').isBoolean(),
|
|
body('alias').isString().trim().notEmpty(),
|
|
body('target').isString().trim().notEmpty().isIn(Object.values(OntimeView)),
|
|
body('search').isString().trim(),
|
|
body('displayInNav').isBoolean(),
|
|
|
|
// options are currently only provided for cuesheet presets
|
|
body('options').optional().isObject(),
|
|
body('options.*').isString().trim(),
|
|
|
|
requestValidationFunction,
|
|
];
|
|
|
|
export const validatePresetParam = [param('alias').isString().trim().notEmpty(), requestValidationFunction];
|