generaltranslation@7.8.0
Vue d’ensemble
Dans generaltranslation@7.8.0, nous introduisons des fonctionnalités de formatage de listes qui posent les bases de futurs composants et méthodes. Cette version ajoute formatListToParts() à la fois à la classe GT et en tant que fonction autonome.
Motivation
Les listes d’éléments nécessitent un formatage correct tenant compte de la locale. Plus précisément, nous voulions ajouter la possibilité de combiner plusieurs éléments (pas seulement des chaînes de caractères) dans une liste formatée. Cela nous prépare idéalement à créer des listes de données arbitraires, comme des éléments JSX.
Utilisation
La nouvelle fonction formatListToParts() préserve les types d’éléments de liste d’origine tout en insérant des séparateurs adaptés à la locale :
import { GT, formatListToParts } from 'generaltranslation'
const gt = new GT({ locales: ['en'] })
// Types de données mixtes
gt.formatListToParts(['apple', 42, { type: 'fruit' }])
// Renvoie : ['apple', ', ', 42, ', and ', { type: 'fruit' }]
// Fonction autonome
formatListToParts(['red', 'green', 'blue'], {
locales: ['es'],
type: 'disjunction',
})
// Renvoie : ['red', ', ', 'green', ' o ', 'blue']Plusieurs types et styles de listes sont pris en charge :
// Disjonction (ou)
gt.formatListToParts(['A', 'B', 'C'], { type: 'disjunction' })
// Retourne : ['A', ', ', 'B', ', or ', 'C']
// Style court
gt.formatListToParts(['first', 'second'], { style: 'short' })
// Retourne : ['first', ' & ', 'second']
// Formatage d'unités
gt.formatListToParts(['1km', '2mi'], { type: 'unit' })
// Retourne : ['1km', ', ', '2mi']Base pour les composants
Cette fonctionnalité prépare le terrain pour le futur composant <List/> et les méthodes msg.list() / gt.list(), qui fourniront des interfaces React pour le formatage de listes.