normalizeArchiveLookupPath function

String? normalizeArchiveLookupPath(
  1. String? rawPath
)

Normalizes a member lookup path: / separators, . segments dropped. Returns null when the path escapes via .. (omp's normalizeArchiveLookupPath).

Implementation

String? normalizeArchiveLookupPath(String? rawPath) {
  if (rawPath == null || rawPath.isEmpty) return '';
  final segments = rawPath.replaceAll('\\', '/').split('/');
  final normalizedSegments = <String>[];
  for (final segment in segments) {
    if (segment.isEmpty || segment == '.') continue;
    if (segment == '..') return null;
    normalizedSegments.add(segment);
  }
  return normalizedSegments.join('/');
}