packages/contracts/src/schemas/settings.ts
Metadata
- Purpose: Shared contracts package with schemas, events, or OpenAPI artifacts.
- Domain:
shared-packages - Language:
ts - Bytes: 3128
- Lines: 96
- Content hash (short):
25634052 - Source (start): packages/contracts/src/schemas/settings.ts:1
- Source (end): packages/contracts/src/schemas/settings.ts:96
Indexed Symbols
No indexed functions/methods detected in this file.
Markdown Headings (if applicable)
No markdown headings detected.
Source Preview
import { z } from "zod";
const isoDateTime = z.string().datetime();
export const runtimeBehaviorSettingsSchema = z.object({
corsOrigins: z.array(z.string().min(1)).default([]),
requireWebhookSignatures: z.boolean().default(true),
githubWebhookEnabled: z.boolean().default(false),
trustProxy: z.boolean().default(true),
rateLimitEnabled: z.boolean().default(true),
rateLimitWindowMs: z.number().int().positive().default(60000),
rateLimitRequestsPerWindow: z.number().int().positive().default(1200)
});
export const oidcSettingsSchema = z.object({
enabled: z.boolean().default(true),
issuer: z.string().url(),
audience: z.string().min(1),
clientId: z.string().min(1).optional(),
jwksUrl: z.string().url().optional()
});
export const integrationProviderSettingsSchema = z.object({
github: z.object({
enabled: z.boolean().default(false)