import SwiftUI struct AddPublicInstanceButton: View { @ObservedObject private var accounts = AccountsModel.shared @State private var id = UUID().uuidString var body: some View { if let account = accounts.current, let app = account.app, account.isPublic, !account.isPublicAddedToCustom { Button { _ = InstancesModel.shared.add(app: app, name: "", url: account.urlString) regenerateID() } label: { Label(String(format: "Add %@", account.urlString), systemImage: "plus") } .id(id) } } private func regenerateID() { id = UUID().uuidString } } struct AddPublicInstanceButton_Previews: PreviewProvider { static var previews: some View { AddPublicInstanceButton() } }