encode method

  1. @override
String encode(
  1. String source, {
  2. bool sanitized = true,
})
override

if sanitized is true, will run the sanitizedForEncoding function before encoding the string.

Implementation

@override
String encode(String source, {bool sanitized = true}) {
  if (sanitized) {
    source = sanitzeForEncoding(source);
  }
  final intList = <int>[];
  for (var i = 0; i < source.length / chunksPerInt; i++) {
    final stringChunk = source.substring(
        i * chunksPerInt, min(source.length, (i + 1) * chunksPerInt));

    final encodedString = encodeStringChunk(stringChunk);
    final byteList = _convertIntToByteList(encodedString);

    intList.addAll(byteList.sublist(0, _MAX_BITS_USED ~/ 8));
  }

  _removeTrailingZeroes(intList);

  return base64Encode(Uint8List.fromList(intList));
}