From 312e535f400f31714b3750de5222a1f6a8e5bcda Mon Sep 17 00:00:00 2001 From: Christian Cleberg Date: Mon, 13 Apr 2026 20:07:53 -0500 Subject: fix: sonarqube code smell fixes --- .../Repositories/RepositoryListViewModel.swift | 95 +++++++++------------- 1 file changed, 39 insertions(+), 56 deletions(-) (limited to 'Hutch/Views/Repositories/RepositoryListViewModel.swift') diff --git a/Hutch/Views/Repositories/RepositoryListViewModel.swift b/Hutch/Views/Repositories/RepositoryListViewModel.swift index 1e830bb..61053a0 100644 --- a/Hutch/Views/Repositories/RepositoryListViewModel.swift +++ b/Hutch/Views/Repositories/RepositoryListViewModel.swift @@ -397,15 +397,17 @@ final class RepositoryListViewModel { func repositorySummary(service: SRHTService) -> RepositorySummary { RepositorySummary( - id: id, - rid: rid, - service: service, - name: name, - description: description, - visibility: visibility, - updated: updated, - owner: owner, - head: head + fields: .init( + id: id, + rid: rid, + service: service, + name: name, + description: description, + visibility: visibility, + updated: updated, + owner: owner, + head: head + ) ) } } @@ -422,15 +424,17 @@ final class RepositoryListViewModel { func repositorySummary(service: SRHTService) -> RepositorySummary { RepositorySummary( - id: id, - rid: rid, - service: service, - name: name, - description: description, - visibility: visibility, - updated: updated, - owner: owner, - head: tip.map { Reference(name: $0.branch, target: nil) } + fields: .init( + id: id, + rid: rid, + service: service, + name: name, + description: description, + visibility: visibility, + updated: updated, + owner: owner, + head: tip.map { Reference(name: $0.branch, target: nil) } + ) ) } } @@ -463,17 +467,7 @@ final class RepositoryListViewModel { } if useCache && cursor == nil { - switch service { - case .git: - let result = try await client.executeAndCache( - service: service, - query: Self.gitQuery, - variables: variables.isEmpty ? nil : variables, - responseType: RepositoriesResponse.self, - cacheKey: cacheKey(for: service) - ) - return result.repositories ?? Self.emptyPage - case .hg: + if service == .hg { let hgVariables = cursor.map { ["cursor": $0 as any Sendable] } let result = try await client.executeAndCache( service: service, @@ -497,27 +491,17 @@ final class RepositoryListViewModel { } ?? [], cursor: result.repositories?.cursor ) - default: - let result = try await client.executeAndCache( - service: service, - query: Self.gitQuery, - variables: variables.isEmpty ? nil : variables, - responseType: RepositoriesResponse.self, - cacheKey: cacheKey(for: service) - ) - return result.repositories ?? Self.emptyPage } + let result = try await client.executeAndCache( + service: service, + query: Self.gitQuery, + variables: variables.isEmpty ? nil : variables, + responseType: RepositoriesResponse.self, + cacheKey: cacheKey(for: service) + ) + return result.repositories ?? Self.emptyPage } else { - switch service { - case .git: - let result = try await client.execute( - service: service, - query: Self.gitQuery, - variables: variables.isEmpty ? nil : variables, - responseType: RepositoriesResponse.self - ) - return result.repositories ?? Self.emptyPage - case .hg: + if service == .hg { let hgVariables = cursor.map { ["cursor": $0 as any Sendable] } let result = try await client.execute( service: service, @@ -540,15 +524,14 @@ final class RepositoryListViewModel { } ?? [], cursor: result.repositories?.cursor ) - default: - let result = try await client.execute( - service: service, - query: Self.gitQuery, - variables: variables.isEmpty ? nil : variables, - responseType: RepositoriesResponse.self - ) - return result.repositories ?? Self.emptyPage } + let result = try await client.execute( + service: service, + query: Self.gitQuery, + variables: variables.isEmpty ? nil : variables, + responseType: RepositoriesResponse.self + ) + return result.repositories ?? Self.emptyPage } } -- cgit v1.2.3