// // Copyright 2022-2024 New Vector Ltd. // // SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial // Please see LICENSE files in the repository root for full details. // import Foundation class ServiceLocator { private(set) static var shared = ServiceLocator() private init() { } private(set) var userIndicatorController: UserIndicatorControllerProtocol! func register(userIndicatorController: UserIndicatorControllerProtocol) { self.userIndicatorController = userIndicatorController } private(set) var settings: AppSettings! func register(appSettings: AppSettings) { settings = appSettings } private(set) var analytics: AnalyticsService! func register(analytics: AnalyticsService) { self.analytics = analytics } private(set) var bugReportService: BugReportServiceProtocol! func register(bugReportService: BugReportServiceProtocol) { self.bugReportService = bugReportService } }