|
- // 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 "Salva stato attuale come Factory Preset" 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
- } as const;
|