feat: Cloudflare Turnstile (register + contact) + captcha altyapısı
- Turnstile widget bileşeni (public site key gömülü, VITE_TURNSTILE_SITE_KEY ile override) - register: signUp.email'e x-captcha-response header'ı - contact: token body'de; ContactService Cloudflare siteverify ile doğrular (TURNSTILE_SECRET_KEY yoksa atlanır), contact.dto'ya turnstileToken - @sase/config: TURNSTILE_SECRET_KEY env (opsiyonel) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -16,6 +16,9 @@ export const envSchema = z.object({
|
||||
GOOGLE_CLIENT_ID: z.string().optional(),
|
||||
GOOGLE_CLIENT_SECRET: z.string().optional(),
|
||||
|
||||
// Cloudflare Turnstile (captcha) — tanımlı değilse captcha atlanır
|
||||
TURNSTILE_SECRET_KEY: z.string().optional(),
|
||||
|
||||
MINIO_ENDPOINT: z.string(),
|
||||
MINIO_ACCESS_KEY: z.string(),
|
||||
MINIO_SECRET_KEY: z.string(),
|
||||
|
||||
Reference in New Issue
Block a user