49 lines
1.0 KiB
JavaScript
Raw Normal View History

'use strict';
2021-11-03 19:31:57 +01:00
const { yup, validateYupSchema } = require('@strapi/utils');
2021-08-31 15:48:14 +02:00
const constants = require('../services/constants');
const apiTokenCreationSchema = yup
.object()
.shape({
name: yup
.string()
.min(1)
.required(),
description: yup.string().optional(),
type: yup
.string()
2021-08-31 15:48:14 +02:00
.oneOf(Object.values(constants.API_TOKEN_TYPE))
.required(),
permissions: yup
.array()
.of(yup.string())
.nullable(),
})
.noUnknown();
const apiTokenUpdateSchema = yup
.object()
.shape({
name: yup
.string()
.min(1)
.notNull(),
description: yup.string().nullable(),
type: yup
.string()
.oneOf(Object.values(constants.API_TOKEN_TYPE))
.notNull(),
permissions: yup
.array()
.of(yup.string())
.nullable(),
2022-08-18 12:00:47 +02:00
lastUsed: yup.date().nullable(),
})
.noUnknown();
module.exports = {
2021-11-03 19:31:57 +01:00
validateApiTokenCreationInput: validateYupSchema(apiTokenCreationSchema),
validateApiTokenUpdateInput: validateYupSchema(apiTokenUpdateSchema),
};