getListStyleMarker method

String getListStyleMarker (
  1. String type,
  2. int i
)

Returns marker for the specified type at index i.

Implementation

String getListStyleMarker(String type, int i) {
  switch (type) {
    case kCssListStyleTypeAlphaLower:
    case kCssListStyleTypeAlphaLatinLower:
      if (i >= 1 && i <= 26) {
        // the specs said it's unspecified after the 26th item
        // TODO: generate something like aa, ab, etc. when needed
        return '${String.fromCharCode(96 + i)}.';
      }
      return '';
    case kCssListStyleTypeAlphaUpper:
    case kCssListStyleTypeAlphaLatinUpper:
      if (i >= 1 && i <= 26) {
        // the specs said it's unspecified after the 26th item
        // TODO: generate something like AA, AB, etc. when needed
        return '${String.fromCharCode(64 + i)}.';
      }
      return '';
    case kCssListStyleTypeCircle:
      return '-';
    case kCssListStyleTypeDecimal:
      return '$i.';
    case kCssListStyleTypeDisc:
      return '•';
    case kCssListStyleTypeRomanLower:
      final roman = _getListStyleMarkerRoman(i)?.toLowerCase();
      return roman != null ? '$roman.' : '';
    case kCssListStyleTypeRomanUpper:
      final roman = _getListStyleMarkerRoman(i);
      return roman != null ? '$roman.' : '';
    case kCssListStyleTypeSquare:
      return '+';
  }

  return '';
}