generaltranslation@7.8.0
Panoramica
In generaltranslation@7.8.0 introduciamo funzionalità di formattazione delle liste che gettano le basi per i prossimi componenti e metodi. Questa release aggiunge formatListToParts() sia alla classe GT che come funzione autonoma.
Motivazione
Gli elenchi di elementi richiedono una formattazione corretta e sensibile alle impostazioni locali. In particolare, volevamo aggiungere la possibilità di unire più elementi (non solo stringhe) in un elenco formattato. Questo ci permette di creare facilmente elenchi di dati arbitrari, come elementi JSX.
Utilizzo
La nuova funzione formatListToParts() mantiene i tipi originali degli elementi dell’elenco e inserisce i separatori appropriati in base alla locale:
import { GT, formatListToParts } from 'generaltranslation'
const gt = new GT({ locales: ['en'] })
// Tipi di dati misti
gt.formatListToParts(['apple', 42, { type: 'fruit' }])
// Restituisce: ['apple', ', ', 42, ', and ', { type: 'fruit' }]
// Funzione autonoma
formatListToParts(['red', 'green', 'blue'], {
locales: ['es'],
type: 'disjunction',
})
// Restituisce: ['red', ', ', 'green', ' o ', 'blue']Sono supportati diversi tipi e stili di liste:
// Disgiunzione (o)
gt.formatListToParts(['A', 'B', 'C'], { type: 'disjunction' })
// Restituisce: ['A', ', ', 'B', ', or ', 'C']
// Stile abbreviato
gt.formatListToParts(['first', 'second'], { style: 'short' })
// Restituisce: ['first', ' & ', 'second']
// Formattazione di unità
gt.formatListToParts(['1km', '2mi'], { type: 'unit' })
// Restituisce: ['1km', ', ', '2mi']Fondamenta per i componenti
Questa funzionalità pone le basi per il futuro componente <List/> e per i metodi msg.list() / gt.list(), che forniranno interfacce React per la formattazione delle liste.