ios/BitwardenShared/UI/Platform/ExtensionSetup/ExtensionSetupModule.swift
Eliot Williams 41d8e61a3b
BIT-1029: Never Lock, Events, & Routers (#401)
Co-authored-by: Jubie Alade <125899965+jubie-livefront@users.noreply.github.com>
Co-authored-by: Matt Czech <matt@livefront.com>
2024-01-31 15:43:53 -08:00

30 lines
953 B
Swift

import UIKit
// MARK: - ExtensionSetupModule
/// An object that builds coordinators for the extension setup flow.
@MainActor
protocol ExtensionSetupModule {
/// Initializes a coordinator for navigating between `ExtensionSetup` routes.
///
/// - Parameter stackNavigator: The stack navigator that will be used to navigate between routes.
/// - Returns: A coordinator that can navigate to `ExtensionSetupRoute`s.
///
func makeExtensionSetupCoordinator(
stackNavigator: StackNavigator
) -> AnyCoordinator<ExtensionSetupRoute, Void>
}
// MARK: - DefaultAppModule
extension DefaultAppModule: ExtensionSetupModule {
func makeExtensionSetupCoordinator(
stackNavigator: StackNavigator
) -> AnyCoordinator<ExtensionSetupRoute, Void> {
ExtensionSetupCoordinator(
appExtensionDelegate: appExtensionDelegate,
stackNavigator: stackNavigator
).asAnyCoordinator()
}
}