// Feature flags compilati nel bundle. Modifica e ricostruisci (npm run build) per applicare. // Sotto-percorso pubblico del portale. '' = servito sulla radice. // Es. '/cards' → tutto risponde sotto https://host/cards/ (dietro reverse proxy). // Build-time: deve combaciare con basePath in next.config.ts (che lo importa da qui). export const BASE_PATH = '/cards'; export const EXTERNAL_LINK_ENABLED = true; // Mostra il bottone "Save as Factory Preset (dev)" nell'admin. // È una funzione developer: tienila a false in produzione, true solo sulla macchina // dove serve preparare/aggiornare il preset di fabbrica. // Il bottone "Factory Reset" e lo stato del preset restano comunque sempre visibili // nell'admin (operazione ammessa per chiunque abbia accesso a /cards/admin). // L'endpoint POST /api/admin/factory-preset resta sempre attivo: un developer // può creare il preset anche via curl, indipendentemente da questo flag. export const FACTORY_PRESET_SAVE_ENABLED = false; // Font di default se il portale non ne ha impostato uno. // Lascia stringa vuota per usare il font di sistema (Arial). // Per usare un font, scrivi il nome esatto del file presente in data/fonts/ (es. "Geist-Variable.woff2"). export const DEFAULT_FONT = ''; // Limiti caratteri per tutti i campi testuali compilabili dall'admin. // Validati lato server (app/api/cards/route.ts, app/api/portals/route.ts) e // usati lato client come maxLength + contatore (app/admin/page.tsx). export const TEXT_LIMITS = { card: { title: 200, shortDescription: 500, fullContent: 20_000, actionUrl: 2000, }, portal: { title: 200, welcomeText: 1000, }, } as const; // Dimensioni massime upload per famiglia di file (in byte). // Usati lato server in app/api/upload/route.ts; sforare → 413. // Nota: i video grandi vengono comunque transcodificati (può durare minuti). const MB = 1024 * 1024; export const UPLOAD_LIMITS = { image: 25 * MB, // 25 MB pdf: 20 * MB, // 20 MB (pdfjs lato browser non regge bene molto di più) video: 1024 * MB, // 1 GB font: 5 * MB, // 5 MB (i font web sono tipicamente 50-500 KB; cap di sicurezza) } as const;