Intlayer Configurazione Documentazione

    Panoramica

    I file di configurazione di Intlayer consentono la personalizzazione di vari aspetti del plugin, come l'internazionalizzazione, il middleware e la gestione dei contenuti. Questo documento fornisce una descrizione dettagliata di ogni proprietà nella configurazione.


    Supporto ai File di Configurazione

    Intlayer accetta formati di file di configurazione JSON, JS, MJS e TS:

    • intlayer.config.ts
    • intlayer.config.js
    • intlayer.config.json
    • intlayer.config.cjs
    • intlayer.config.mjs
    • .intlayerrc

    Esempio di file di configurazione

    intlayer.config.ts
    import { Locales, type IntlayerConfig } from "intlayer";// Configurazione di esempioconst config: IntlayerConfig = {  internationalization: {    locales: [Locales.ENGLISH],  },  content: {    typesDir: "content/types",  },  middleware: {    noPrefix: false,  },};export default config;

    Riferimento alla Configurazione

    Le sezioni seguenti descrivono le varie impostazioni di configurazione disponibili per Intlayer.


    Configurazione dell'Internazionalizzazione

    Definisce le impostazioni relative all'internazionalizzazione, inclusi i locali disponibili e il locale predefinito per l'applicazione.

    Proprietà

    • locales:

      • Tipo: string[]
      • Predefinito: ['en']
      • Descrizione: L'elenco dei locali supportati nell'applicazione.
      • Esempio: ['en', 'fr', 'es']
    • requiredLocales:

      • Tipo: string[]
      • Predefinito: []
      • Descrizione: L'elenco dei locali richiesti nell'applicazione.
      • Esempio: []
      • Nota: Se vuoto, tutti i locali sono richiesti in modalità strict.
      • Nota: Assicurarsi che i locali richiesti siano anche definiti nel campo locales.
    • strictMode:

      • Tipo: string
      • Predefinito: inclusive
      • Descrizione: Garantisce implementazioni rigorose di contenuti internazionalizzati utilizzando TypeScript.
      • Nota: Se impostato su "strict", la funzione di traduzione t richiederà che ogni locale dichiarato sia definito. Se manca un locale o se un locale non è dichiarato nella configurazione, verrà generato un errore.
      • Nota: Se impostato su "inclusive", la funzione di traduzione t richiederà che ogni locale dichiarato sia definito. Se manca un locale, verrà generato un avviso. Tuttavia, accetterà se un locale non è dichiarato nella configurazione ma esiste.
      • Nota: Se impostato su "loose", la funzione di traduzione t accetterà qualsiasi locale esistente.
    • defaultLocale:

      • Tipo: string
      • Predefinito: 'en'
      • Descrizione: Il locale predefinito utilizzato come fallback se il locale richiesto non viene trovato.
      • Esempio: 'en'
      • Nota: Questo viene utilizzato per determinare il locale quando non è specificato nell'URL, nel cookie o nell'intestazione.

    Configurazione dell'Editor

    Definisce le impostazioni relative all'editor integrato, inclusi la porta del server e lo stato attivo.

    Proprietà

    • applicationURL:

      • Tipo: string
      • Predefinito: '*'
      • Descrizione: L'URL dell'applicazione. Utilizzato per limitare l'origine dell'editor per motivi di sicurezza.
      • Esempio:
        • '*'
        • 'http://localhost:3000'
        • 'https://example.com'
        • process.env.INTLAYER_EDITOR_URL
      • Nota: L'URL dell'applicazione. Utilizzato per limitare l'origine dell'editor per motivi di sicurezza. Se impostato su '*', l'editor è accessibile da qualsiasi origine.
    • port:

      • Tipo: number
      • Predefinito: 8000
      • Descrizione: La porta utilizzata dal server dell'editor visivo.
    • editorURL:

      • Tipo: string
      • Predefinito: 'http://localhost:8000'
      • Descrizione: L'URL del server dell'editor. Utilizzato per limitare l'origine dell'editor per motivi di sicurezza.
        • 'http://localhost:3000'
        • 'https://example.com'
        • process.env.INTLAYER_EDITOR_URL
        • ''*'
      • Nota: L'URL del server dell'editor da raggiungere dall'applicazione. Utilizzato per limitare le origini che possono interagire con l'applicazione per motivi di sicurezza. Se impostato su '*', l'editor è accessibile da qualsiasi origine. Dovrebbe essere impostato se la porta viene modificata o se l'editor è ospitato su un dominio diverso.
    • cmsURL:

      • Tipo: string
      • Predefinito: 'https://intlayer.org'
      • Descrizione: L'URL del CMS di Intlayer.
      • Esempio: 'https://intlayer.org'
      • Nota: L'URL del CMS di Intlayer.
    • backendURL:

      • Tipo: string
      • Predefinito: https://back.intlayer.org
      • Descrizione: L'URL del server backend.
      • Esempio: http://localhost:4000
    • enabled:

      • Tipo: boolean
      • Predefinito: true
      • Descrizione: Indica se l'applicazione interagisce con l'editor visivo.
      • Esempio: process.env.NODE_ENV !== 'production'
      • Nota: Se true, l'editor sarà in grado di interagire con l'applicazione. Se false, l'editor non sarà in grado di interagire con l'applicazione. In ogni caso, l'editor può essere abilitato solo dall'editor visivo. Disabilitare l'editor per ambienti specifici è un modo per rafforzare la sicurezza.
    • clientId:

      • Tipo: string | undefined
      • Predefinito: undefined
      • Descrizione: clientId e clientSecret consentono ai pacchetti Intlayer di autenticarsi con il backend utilizzando l'autenticazione oAuth2. Un token di accesso viene utilizzato per autenticare l'utente relativo al progetto. Per ottenere un token di accesso, vai su https://intlayer.org/dashboard/project e crea un account.
      • Esempio: true
      • Nota: Importante: il clientId e il clientSecret devono essere mantenuti segreti e non condivisi pubblicamente. Assicurati di conservarli in un luogo sicuro, come le variabili di ambiente.
    • clientSecret:

      • Tipo: string | undefined
      • Predefinito: undefined
      • Descrizione: clientId e clientSecret consentono ai pacchetti Intlayer di autenticarsi con il backend utilizzando l'autenticazione oAuth2. Un token di accesso viene utilizzato per autenticare l'utente relativo al progetto. Per ottenere un token di accesso, vai su https://intlayer.org/dashboard/project e crea un account.
      • Esempio: true
      • Nota: Importante: il clientId e il clientSecret devono essere mantenuti segreti e non condivisi pubblicamente. Assicurati di conservarli in un luogo sicuro, come le variabili di ambiente.
    • hotReload:

      • Tipo: boolean
      • Predefinito: false
      • Descrizione: Indica se l'applicazione deve ricaricare automaticamente le configurazioni dei locali quando viene rilevata una modifica.
      • Esempio: true
      • Nota: Ad esempio, quando viene aggiunto o aggiornato un nuovo dizionario, l'applicazione aggiornerà il contenuto da visualizzare nella pagina.
      • Nota: Poiché il ricaricamento automatico richiede una connessione continua al server, è disponibile solo per i clienti del piano enterprise.
    • dictionaryPriorityStrategy:

      • Tipo: string
      • Predefinito: 'local_first'
      • Descrizione: La strategia per dare priorità ai dizionari nel caso in cui siano presenti sia dizionari locali che remoti. Se impostato su 'distant_first', l'applicazione darà priorità ai dizionari remoti rispetto a quelli locali. Se impostato su 'local_first', l'applicazione darà priorità ai dizionari locali rispetto a quelli remoti.
      • Esempio: 'distant_first'

    ...

    Se hai un’idea per migliorare questa documentazione, non esitare a contribuire inviando una pull request su GitHub.

    Collegamento GitHub alla documentazione