You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

35 rivejä
1.2 KiB

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