| import { z } from "zod"; |
| import { env } from "$env/dynamic/private"; |
| import JSON5 from "json5"; |
|
|
| |
| export const usageLimitsSchema = z |
| .object({ |
| conversations: z.coerce.number().optional(), |
| messages: z.coerce.number().optional(), |
| assistants: z.coerce.number().optional(), |
| messageLength: z.coerce.number().optional(), |
| messagesPerMinute: z |
| .preprocess((val) => { |
| if (val === undefined) { |
| return env.RATE_LIMIT; |
| } |
| return val; |
| }, z.coerce.number().optional()) |
| .optional(), |
| tools: z.coerce.number().optional(), |
| }) |
| .optional(); |
|
|
| export const usageLimits = usageLimitsSchema.parse(JSON5.parse(env.USAGE_LIMITS)); |
|
|