diff options
| author | Christian Cleberg <[email protected]> | 2026-04-20 13:04:57 -0500 |
|---|---|---|
| committer | Christian Cleberg <[email protected]> | 2026-04-20 13:04:57 -0500 |
| commit | 8b73fd9cd43753b36b3ab3ca5e4dc83a47ea3480 (patch) | |
| tree | 25658dbdc28775764f5745576c240efd38fd4685 /Hutch/Views/Repositories | |
| parent | d29fbef60abdffaee190b758530dde9212745ed2 (diff) | |
| download | hutch-8b73fd9cd43753b36b3ab3ca5e4dc83a47ea3480.tar.gz hutch-8b73fd9cd43753b36b3ab3ca5e4dc83a47ea3480.tar.bz2 hutch-8b73fd9cd43753b36b3ab3ca5e4dc83a47ea3480.zip | |
fix: add mark all read actions and avoid resending unchanged repo metadata
Diffstat (limited to 'Hutch/Views/Repositories')
| -rw-r--r-- | Hutch/Views/Repositories/RepositorySettingsViewModel.swift | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/Hutch/Views/Repositories/RepositorySettingsViewModel.swift b/Hutch/Views/Repositories/RepositorySettingsViewModel.swift index 6233bec..6ad6a78 100644 --- a/Hutch/Views/Repositories/RepositorySettingsViewModel.swift +++ b/Hutch/Views/Repositories/RepositorySettingsViewModel.swift @@ -166,10 +166,7 @@ final class RepositorySettingsViewModel { defer { isSavingMetadata = false } error = nil - let input: [String: any Sendable] = [ - "name": normalizedEditedName, - "description": normalizedEditedDescription - ] + let input = metadataInputForSave() do { return try await updateRepository(with: input) @@ -295,4 +292,18 @@ final class RepositorySettingsViewModel { RepositorySummary.displayBranchName(for: $0.name) == normalizedEditedHead }?.name } + + func metadataInputForSave() -> [String: any Sendable] { + var input: [String: any Sendable] = [:] + + if normalizedEditedName != repository.name { + input["name"] = normalizedEditedName + } + + if normalizedEditedDescription != (repository.description ?? "") { + input["description"] = normalizedEditedDescription.isEmpty ? Optional<String>.none as String? : normalizedEditedDescription + } + + return input + } } |
