summaryrefslogtreecommitdiff
path: root/Hutch/Views/Repositories
diff options
context:
space:
mode:
Diffstat (limited to 'Hutch/Views/Repositories')
-rw-r--r--Hutch/Views/Repositories/HgRepositorySettingsViewModel.swift6
-rw-r--r--Hutch/Views/Repositories/RepositoryACLView.swift13
-rw-r--r--Hutch/Views/Repositories/RepositoryRowView.swift19
3 files changed, 23 insertions, 15 deletions
diff --git a/Hutch/Views/Repositories/HgRepositorySettingsViewModel.swift b/Hutch/Views/Repositories/HgRepositorySettingsViewModel.swift
index 7b8d7f7..6df40db 100644
--- a/Hutch/Views/Repositories/HgRepositorySettingsViewModel.swift
+++ b/Hutch/Views/Repositories/HgRepositorySettingsViewModel.swift
@@ -261,11 +261,7 @@ final class HgRepositorySettingsViewModel {
}
newACLEntity = ""
} catch {
- if error.matchesGraphQLErrorClassification(.serviceNotProvisioned) {
- self.error = error.userFacingMessage
- } else {
- self.error = error.userFacingMessage
- }
+ self.error = error.userFacingMessage
}
}
diff --git a/Hutch/Views/Repositories/RepositoryACLView.swift b/Hutch/Views/Repositories/RepositoryACLView.swift
index 29ded84..ede770c 100644
--- a/Hutch/Views/Repositories/RepositoryACLView.swift
+++ b/Hutch/Views/Repositories/RepositoryACLView.swift
@@ -51,8 +51,6 @@ struct RepositoryACLView: View {
@ViewBuilder
private func content(_ viewModel: RepositoryACLViewModel) -> some View {
- @Bindable var vm = viewModel
-
Group {
if viewModel.isLoading && !viewModel.hasEntries && viewModel.loadError == nil {
SRHTLoadingStateView(message: "Loading access…")
@@ -98,7 +96,12 @@ struct RepositoryACLView: View {
}
}
}
- .srhtErrorBanner(error: $vm.error)
+ .srhtErrorBanner(
+ error: Binding(
+ get: { viewModel.error },
+ set: { viewModel.error = $0 }
+ )
+ )
.alert("Remove Access?", isPresented: Binding(
get: { pendingDeletion != nil },
set: { isPresented in
@@ -107,7 +110,9 @@ struct RepositoryACLView: View {
}
}
)) {
- Button("Cancel", role: .cancel) {}
+ Button("Cancel", role: .cancel) {
+ /* Dismiss only; removal is confirmed separately. */
+ }
Button("Remove Access", role: .destructive) {
guard let entry = pendingDeletion else { return }
Task {
diff --git a/Hutch/Views/Repositories/RepositoryRowView.swift b/Hutch/Views/Repositories/RepositoryRowView.swift
index afbd740..a2d120b 100644
--- a/Hutch/Views/Repositories/RepositoryRowView.swift
+++ b/Hutch/Views/Repositories/RepositoryRowView.swift
@@ -17,9 +17,6 @@ struct RepositoryRowView: View {
RepositoryForgeBadge(service: repository.service)
- if buildStatus != .none {
- RepositoryBuildStatusIndicator(status: buildStatus)
- }
VisibilityBadge(visibility: repository.visibility)
}
@@ -44,9 +41,19 @@ struct RepositoryRowView: View {
Spacer()
- Text(repository.updated.relativeDescription)
- .font(.caption)
- .foregroundStyle(.tertiary)
+ HStack(spacing: 6) {
+ ZStack {
+ if buildStatus != .none {
+ RepositoryBuildStatusIndicator(status: buildStatus)
+ }
+ }
+ .frame(width: 8, height: 8)
+ .accessibilityHidden(buildStatus == .none)
+
+ Text(repository.updated.relativeDescription)
+ .font(.caption)
+ .foregroundStyle(.tertiary)
+ }
}
}
.padding(.vertical, 2)