MESSENGER-3671 Merge FOSS 1.9.8

Conflicts:
 - CommonConfiguration.swift
 - BuildSettings.swift
 - Generated/images.Swift
 - RoomMemberDetailsViewController.m
 - LiveLocationSharingViewModell
-  PinCodeEnterViewController.m
This commit is contained in:
Frank Rotermund
2022-10-05 15:47:27 +02:00
744 changed files with 6999 additions and 3819 deletions
@@ -14,11 +14,10 @@
// limitations under the License.
//
import SwiftUI
import CommonKit
import SwiftUI
final class OnboardingUseCaseSelectionCoordinator: Coordinator, Presentable {
// MARK: - Properties
// MARK: Private
@@ -50,6 +49,7 @@ final class OnboardingUseCaseSelectionCoordinator: Coordinator, Presentable {
}
// MARK: - Public
func start() {
MXLog.debug("[OnboardingUseCaseSelectionCoordinator] did start.")
onboardingUseCaseViewModel.completion = { [weak self] result in
@@ -63,7 +63,7 @@ final class OnboardingUseCaseSelectionCoordinator: Coordinator, Presentable {
}
func toPresentable() -> UIViewController {
return self.onboardingUseCaseHostingController
onboardingUseCaseHostingController
}
/// Stops any ongoing activities in the coordinator.
@@ -1,4 +1,4 @@
//
//
// Copyright 2021 New Vector Ltd
//
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -37,7 +37,7 @@ enum MockOnboardingUseCaseSelectionScreenState: MockScreenState, CaseIterable {
}
/// Generate the view struct for the screen state.
var screenView: ([Any], AnyView) {
var screenView: ([Any], AnyView) {
let viewModel = OnboardingUseCaseViewModel()
// can simulate service and viewModel actions here if needs be.
@@ -1,4 +1,4 @@
//
//
// Copyright 2021 New Vector Ltd
//
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -20,10 +20,6 @@ import Foundation
// MARK: View model
enum OnboardingUseCaseStateAction {
case viewAction(OnboardingUseCaseViewAction)
}
enum OnboardingUseCaseViewModelResult {
case personalMessaging
case workMessaging
@@ -16,12 +16,9 @@
import SwiftUI
typealias OnboardingUseCaseViewModelType = StateStoreViewModel<OnboardingUseCaseViewState,
OnboardingUseCaseStateAction,
OnboardingUseCaseViewAction>
typealias OnboardingUseCaseViewModelType = StateStoreViewModel<OnboardingUseCaseViewState, OnboardingUseCaseViewAction>
class OnboardingUseCaseViewModel: OnboardingUseCaseViewModelType, OnboardingUseCaseViewModelProtocol {
// MARK: - Properties
// MARK: Private
@@ -44,8 +41,4 @@ class OnboardingUseCaseViewModel: OnboardingUseCaseViewModelType, OnboardingUseC
completion?(result)
}
}
override class func reducer(state: inout OnboardingUseCaseViewState, action: OnboardingUseCaseStateAction) {
// There is no mutable state to reduce :)
}
}
@@ -1,4 +1,4 @@
//
//
// Copyright 2021 New Vector Ltd
//
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -17,7 +17,6 @@
import Foundation
protocol OnboardingUseCaseViewModelProtocol {
var completion: ((OnboardingUseCaseViewModelResult) -> Void)? { get set }
var context: OnboardingUseCaseViewModelType.Context { get }
}
@@ -14,8 +14,8 @@
// limitations under the License.
//
import XCTest
import RiotSwiftUI
import XCTest
class OnboardingUseCaseUITests: MockScreenTestCase {
// The view has no parameters or changing state to test.
@@ -1,4 +1,4 @@
//
//
// Copyright 2021 New Vector Ltd
//
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -1,4 +1,4 @@
//
//
// Copyright 2021 New Vector Ltd
//
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -18,7 +18,6 @@ import SwiftUI
/// A button used for the Use Case selection.
struct OnboardingUseCaseButton: View {
// MARK: Private
@Environment(\.theme) private var theme
@@ -1,4 +1,4 @@
//
//
// Copyright 2021 New Vector Ltd
//
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -18,7 +18,6 @@ import SwiftUI
/// The screen shown to a new user to select their use case for the app.
struct OnboardingUseCaseSelectionScreen: View {
// MARK: - Properties
// MARK: Private