Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 

40 Zeilen
1.5 KiB

  1. // Feature flags compilati nel bundle. Modifica e ricostruisci (npm run build) per applicare.
  2. export const EXTERNAL_LINK_ENABLED = true;
  3. // Mostra la sezione "Factory Preset" (salva preset + factory reset) nell'admin.
  4. // Funzione developer: tienila a false in produzione, true solo quando serve
  5. // preparare/distribuire un preset standard. Gli endpoint API restano comunque attivi.
  6. export const FACTORY_RESET_ENABLED = false;
  7. // Font di default se il portale non ne ha impostato uno.
  8. // Lascia stringa vuota per usare il font di sistema (Arial).
  9. // Per usare un font, scrivi il nome esatto del file presente in data/fonts/ (es. "Geist-Variable.woff2").
  10. export const DEFAULT_FONT = '';
  11. // Limiti caratteri per tutti i campi testuali compilabili dall'admin.
  12. // Validati lato server (app/api/cards/route.ts, app/api/portals/route.ts) e
  13. // usati lato client come maxLength + contatore (app/admin/page.tsx).
  14. export const TEXT_LIMITS = {
  15. card: {
  16. title: 200,
  17. shortDescription: 500,
  18. fullContent: 20_000,
  19. actionUrl: 2000,
  20. },
  21. portal: {
  22. title: 200,
  23. welcomeText: 1000,
  24. },
  25. } as const;
  26. // Dimensioni massime upload per famiglia di file (in byte).
  27. // Usati lato server in app/api/upload/route.ts; sforare → 413.
  28. // Nota: i video grandi vengono comunque transcodificati (può durare minuti).
  29. const MB = 1024 * 1024;
  30. export const UPLOAD_LIMITS = {
  31. image: 25 * MB, // 25 MB
  32. pdf: 20 * MB, // 20 MB (pdfjs lato browser non regge bene molto di più)
  33. video: 1024 * MB, // 1 GB
  34. } as const;