Spaces:
Sleeping
Sleeping
File size: 1,109 Bytes
4c025e9 |
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 |
const Joi = require('joi');
// 用户验证模式
const userSchema = Joi.object({
username: Joi.string().required().min(3).max(30),
password: Joi.string().required().min(6),
});
// 分类验证模式
const categorySchema = Joi.object({
name: Joi.string().required().min(1).max(30),
color: Joi.string().pattern(new RegExp('^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$')),
});
// 提示词验证模式
const promptSchema = Joi.object({
title: Joi.string().required().min(1).max(100),
content: Joi.string().required(),
tags: Joi.array().items(Joi.string()),
});
// 提示词组验证模式
const promptGroupSchema = Joi.object({
name: Joi.string().required().min(1).max(100),
description: Joi.string().allow('', null),
category: Joi.string().pattern(new RegExp('^[0-9a-fA-F]{24}$')),
});
// DSL文件验证模式
const dslFileSchema = Joi.object({
name: Joi.string().required(),
fileData: Joi.string().required(),
mimeType: Joi.string(),
});
module.exports = {
userSchema,
categorySchema,
promptSchema,
promptGroupSchema,
dslFileSchema,
}; |