naturalJoin function

String naturalJoin(
  1. List<String> items, {
  2. String locale = 'en',
  3. String delimiter = ', ',
  4. String lastDelimiterEn = ' and ',
  5. String lastDelimiterFr = ' et ',
})

Natural join with configurable separators.

Implementation

String naturalJoin(
  List<String> items, {
  String locale = 'en',
  String delimiter = ', ',
  String lastDelimiterEn = ' and ',
  String lastDelimiterFr = ' et ',
}) {
  if (items.isEmpty) return '';
  if (items.length == 1) return items.first;
  final lastDelim = locale.toLowerCase().startsWith('fr') ? lastDelimiterFr : lastDelimiterEn;
  return items.sublist(0, items.length - 1).join(delimiter) + lastDelim + items.last;
}