Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@ import SwiftUI

struct ChatCoordinatorView: View {

@StateObject private var model: ChatCoordinatorViewModel
@State private var model: ChatCoordinatorViewModel
@Environment(\.pageNavigation) private var pageNavigation
@Environment(\.chatActionProvider) private var chatActionProvider

init(data: ChatCoordinatorData) {
self._model = StateObject(wrappedValue: ChatCoordinatorViewModel(data: data))
self._model = State(wrappedValue: ChatCoordinatorViewModel(data: data))
}

var body: some View {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,35 +9,41 @@ struct ChatCoordinatorData: Hashable, Codable {
}

@MainActor
final class ChatCoordinatorViewModel: ObservableObject, ChatModuleOutput {
@Observable
final class ChatCoordinatorViewModel: ChatModuleOutput {

@ObservationIgnored
let chatId: String
@ObservationIgnored
let spaceId: String

@Published var objectToMessageSearchData: ObjectSearchWithMetaModuleData?
@Published var showEmojiData: MessageReactionPickerData?
@Published var showSyncStatusInfo = false
@Published var objectIconPickerData: ObjectIconPickerData?
@Published var linkToObjectData: LinkToObjectSearchModuleData?
@Published var showFilesPicker = false
@Published var showPhotosPicker = false
@Published var pushNotificationsAlertData: PushNotificationsAlertData?
@Published var showDisabledPushNotificationsAlert = false
@Published var photosItems: [PhotosPickerItem] = []
@Published var participantsReactionData: MessageParticipantsReactionData?
@Published var safariUrl: URL?
@Published var cameraData: SimpleCameraData?
@Published var showSpaceSettingsData: AccountInfo?
@Published var newLinkedObject: EditorScreenData?
@Published var spaceShareData: SpaceShareData?
@Published var qrCodeInviteLink: URL?

var objectToMessageSearchData: ObjectSearchWithMetaModuleData?
var showEmojiData: MessageReactionPickerData?
var showSyncStatusInfo = false
var objectIconPickerData: ObjectIconPickerData?
var linkToObjectData: LinkToObjectSearchModuleData?
var showFilesPicker = false
var showPhotosPicker = false
var pushNotificationsAlertData: PushNotificationsAlertData?
var showDisabledPushNotificationsAlert = false
var photosItems: [PhotosPickerItem] = []
var participantsReactionData: MessageParticipantsReactionData?
var safariUrl: URL?
var cameraData: SimpleCameraData?
var showSpaceSettingsData: AccountInfo?
var newLinkedObject: EditorScreenData?
var spaceShareData: SpaceShareData?
var qrCodeInviteLink: URL?

@ObservationIgnored
private var filesPickerData: FilesPickerData?
@ObservationIgnored
private var photosPickerData: ChatPhotosPickerData?

@ObservationIgnored
var pageNavigation: PageNavigation?

@Injected(\.objectActionsService)
@Injected(\.objectActionsService) @ObservationIgnored
private var objectActionsService: any ObjectActionsServiceProtocol

init(data: ChatCoordinatorData) {
Expand Down