tryDecodeExactSourceMetadata function

EmbeddedExactSource? tryDecodeExactSourceMetadata(
  1. String text
)

Decodes the final valid exact-source trailer, if present.

Implementation

EmbeddedExactSource? tryDecodeExactSourceMetadata(String text) {
  final runes = text.runes.toList(growable: false);
  if (runes.isEmpty || runes.last != _exactSourceEndTag) return null;

  var start = runes.length - 2;
  while (start >= 0 && runes[start] != _exactSourceStartTag) {
    start -= 1;
  }
  if (start < 0) return null;

  final payloadUnits = <int>[];
  for (var i = start + 1; i < runes.length - 1; i++) {
    final rune = runes[i];
    if (rune < 0xE0020 || rune > 0xE007E) return null;
    payloadUnits.add(rune - 0xE0000);
  }

  final payload = String.fromCharCodes(payloadUnits);
  if (!payload.startsWith(_exactSourceMagic)) return null;

  final body = payload.substring(_exactSourceMagic.length);
  final renderedSplit = body.lastIndexOf(':');
  if (renderedSplit <= 0 || renderedSplit == body.length - 1) return null;
  final sourceSplit = body.lastIndexOf(':', renderedSplit - 1);
  if (sourceSplit <= 0 || sourceSplit == renderedSplit - 1) return null;

  final encoded = body.substring(0, sourceSplit);
  final sourceChecksumText = body.substring(sourceSplit + 1, renderedSplit);
  final renderedChecksumText = body.substring(renderedSplit + 1);
  final checksumPattern = RegExp(r'^[0-9a-f]{8}$');
  if (!checksumPattern.hasMatch(sourceChecksumText) ||
      !checksumPattern.hasMatch(renderedChecksumText)) {
    return null;
  }

  try {
    final padded = encoded.padRight(
      encoded.length + ((4 - encoded.length % 4) % 4),
      '=',
    );
    final bytes = Uint8List.fromList(base64Url.decode(padded));
    if (_fnv1a32(bytes).toRadixString(16).padLeft(8, '0') !=
        sourceChecksumText) {
      return null;
    }
    final source = _stringFromUtf16Le(bytes);
    final visible = String.fromCharCodes(runes.sublist(0, start));
    if (_fnv1a32(_stringToUtf16Le(visible)).toRadixString(16).padLeft(8, '0') !=
        renderedChecksumText) {
      return null;
    }
    return EmbeddedExactSource(
      visibleText: visible,
      originalSource: source,
    );
  } on FormatException {
    return null;
  } on StateError {
    return null;
  }
}