diff options
| author | Christian Cleberg <[email protected]> | 2026-04-13 20:07:53 -0500 |
|---|---|---|
| committer | Christian Cleberg <[email protected]> | 2026-04-13 20:07:53 -0500 |
| commit | 312e535f400f31714b3750de5222a1f6a8e5bcda (patch) | |
| tree | dfa0d9dfcfd08187befa79cf5d8afc4da9fef860 /Hutch/Views/Repositories/RepositoryListViewModel.swift | |
| parent | fe1ccc69661603d419a642a450e4ac9e1258adb0 (diff) | |
| download | hutch-312e535f400f31714b3750de5222a1f6a8e5bcda.tar.gz hutch-312e535f400f31714b3750de5222a1f6a8e5bcda.tar.bz2 hutch-312e535f400f31714b3750de5222a1f6a8e5bcda.zip | |
fix: sonarqube code smell fixesv3.1.4
Diffstat (limited to 'Hutch/Views/Repositories/RepositoryListViewModel.swift')
| -rw-r--r-- | Hutch/Views/Repositories/RepositoryListViewModel.swift | 95 |
1 files changed, 39 insertions, 56 deletions
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 } } |
