publisherLikes method

Future<Response> publisherLikes(
  1. Request req
)

Implementation

Future<shelf.Response> publisherLikes(shelf.Request req) async {
  final user = await _requireCurrentUser(req);
  final likes = user.likedPackages;
  final likedPackages = <Map<String, dynamic>>[];
  for (final packageName in likes) {
    final package = await metaRepo.query(packageName);
    if (package == null) continue;
    likedPackages.add(Package(
      name: package.name,
      description: package.versions.last.pubspec['description'],
      tags: _getPkgTags(package.versions.last.pubspec),
      latest: package.versions.last.version,
      updatedAt: package.updatedAt,
      plats: package.versions.last.plats,
      isDart3Compatible: package.versions.last.isDart3Compatible,
    ).toJson());
  }
  return _ok({
    'likes': likes,
    'likedPackages': likedPackages,
  });
}