regxl
extension ChatView{ @MainActor class viewModel: ObservableObject{ private let sendMessageUseCase:SendMessages = SendMessages() private let disconnectMessageUseCase: DisconnectMessages = DisconnectMessages() private let retrieveMessagesUseCase: RetrieveMessages = RetrieveMessages() @Published var messages: [Message] = [] func retriveMessages() async{ do{ let messageFlow = try await retrieveMessagesUseCase.invoke() for await message in messageFlow{ } } catch{ print(error) } } func disconnect() async{ do{ try await disconnectMessageUseCase.invoke() }catch{ print(error) } } } }
A modern programming language that makes developers happier.