UNPKG

@maniwrld/marzjs

Version:

A powerful and easy-to-use Node.js client for interacting with Marzban's VPN management API. It supports popular protocols like Xray, V2Ray, and more.

34 lines (28 loc) 1.04 kB
const Joi = require('joi'); const adminSchema = Joi.object({ username: Joi.string().required(), is_sudo: Joi.boolean().required(), telegram_id: Joi.number().optional(), discord_webhook: Joi.string().allow(null, '').uri().optional().pattern(new RegExp('^https://discord.com')) }); const adminCreateSchema = adminSchema.keys({ password: Joi.string().min(8).required() }); const adminModifySchema = Joi.object({ password: Joi.string().min(8).optional(), is_sudo: Joi.boolean().required(), telegram_id: Joi.number().optional(), discord_webhook: Joi.string().allow(null, '').uri().optional().pattern(new RegExp('^https://discord.com')) }); const adminPartialModifySchema = Joi.object({ password: Joi.string().min(8).optional(), is_sudo: Joi.boolean().optional(), telegram_id: Joi.number().optional(), discord_webhook: Joi.string().allow(null, '').uri().optional().pattern(new RegExp('^https://discord.com')) }); module.exports = { adminSchema, adminCreateSchema, adminModifySchema, adminPartialModifySchema };