@fdm-monster/server
Version:
FDM Monster is a bulk OctoPrint, Klipper, PrusaLink and BambuLab manager to set up, configure and monitor 3D printers. Our aim is to provide neat overview over your farm.
30 lines (29 loc) • 1.42 kB
JavaScript
import { AppConstants } from "../../server.constants.js";
import { ROLES } from "../../constants/authorization.constants.js";
import { z } from "zod";
//#region src/controllers/validation/user-controller.validation.ts
const roleNameSchema = z.enum([
ROLES.ADMIN,
ROLES.OPERATOR,
ROLES.GUEST
]);
const registerUserSchema = z.object({
username: z.string().min(AppConstants.DEFAULT_USERNAME_MINLEN).nonempty(),
password: z.string().min(AppConstants.DEFAULT_PASSWORD_MINLEN).nonempty()
});
const changePasswordSchema = z.object({
oldPassword: z.string().nonempty(),
newPassword: z.string().min(AppConstants.DEFAULT_PASSWORD_MINLEN).nonempty()
});
const registerUserWithRolesSchema = z.object({
username: z.string().min(AppConstants.DEFAULT_USERNAME_MINLEN).nonempty(),
password: z.string().min(AppConstants.DEFAULT_PASSWORD_MINLEN).nonempty(),
roles: z.array(roleNameSchema)
});
const setUserRolesSchema = z.object({ roles: z.array(roleNameSchema) });
const usernameSchema = z.object({ username: z.string().min(AppConstants.DEFAULT_USERNAME_MINLEN).nonempty() });
const isVerifiedSchema = z.object({ isVerified: z.boolean() });
const isRootUserSchema = z.object({ isRootUser: z.boolean() });
//#endregion
export { changePasswordSchema, isRootUserSchema, isVerifiedSchema, registerUserSchema, registerUserWithRolesSchema, setUserRolesSchema, usernameSchema };
//# sourceMappingURL=user-controller.validation.js.map