mirror of
https://github.com/Dimillian/IceCubesApp.git
synced 2024-11-25 09:41:02 +00:00
Cleanup logout code
This commit is contained in:
parent
081442cfe9
commit
f54db5a43e
3 changed files with 3 additions and 17 deletions
|
@ -5,6 +5,7 @@ import Env
|
|||
import Models
|
||||
import SwiftUI
|
||||
import Timeline
|
||||
import Network
|
||||
|
||||
struct AccountSettingsView: View {
|
||||
@Environment(\.dismiss) private var dismiss
|
||||
|
@ -67,6 +68,8 @@ struct AccountSettingsView: View {
|
|||
Button(role: .destructive) {
|
||||
if let token = appAccount.oauthToken {
|
||||
Task {
|
||||
let client = Client(server: appAccount.server, oauthToken: token)
|
||||
await TimelineCache.shared.clearCache(for: client)
|
||||
if let sub = pushNotifications.subscriptions.first(where: { $0.account.token == token }) {
|
||||
await sub.deleteSubscription()
|
||||
}
|
||||
|
|
|
@ -39,13 +39,6 @@ public struct ListEditView: View {
|
|||
}
|
||||
}
|
||||
.listRowBackground(theme.primaryBackgroundColor)
|
||||
}.onDelete { indexes in
|
||||
if let index = indexes.first {
|
||||
Task {
|
||||
let account = viewModel.accounts[index]
|
||||
await viewModel.delete(account: account)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,14 +25,4 @@ public class ListEditViewModel: ObservableObject {
|
|||
isLoadingAccounts = false
|
||||
}
|
||||
}
|
||||
|
||||
func delete(account: Account) async {
|
||||
guard let client else { return }
|
||||
do {
|
||||
let response = try await client.delete(endpoint: Lists.updateAccounts(listId: list.id, accounts: [account.id]))
|
||||
if response?.statusCode == 200 {
|
||||
accounts.removeAll(where: { $0.id == account.id })
|
||||
}
|
||||
} catch {}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue