/**
 * 个性特征模型
 *
 */
import { z } from "zod";

import { numberOr } from "../nullable-defaults";

export const PERSONALITY_TRAITS_DEFAULTS = {
  cheerful: 0.5,
  caring: 0.5,
  playful: 0.5,
  serious: 0.5,
  romantic: 0.5,
} as const;

export const PersonalityTraitsSchema = z
  .object({
    cheerful: numberOr(0.5),
    caring: numberOr(0.5),
    playful: numberOr(0.5),
    serious: numberOr(0.5),
    romantic: numberOr(0.5),
  })
  .readonly();

export type PersonalityTraitsInput = z.input<typeof PersonalityTraitsSchema>;
export type PersonalityTraitsData = z.output<typeof PersonalityTraitsSchema>;

export type PersonalityTraits = PersonalityTraitsData;
