35 lines
890 B
Swift
35 lines
890 B
Swift
//
|
|
// MessageModuleBuilder.swift
|
|
// PrivadoVPN
|
|
//
|
|
// Created by Zhandos Bolatbekov on 24.01.2021.
|
|
// Copyright © 2021 Privado LLC. All rights reserved.
|
|
//
|
|
|
|
import UIKit
|
|
|
|
protocol MessageModuleOutput: AnyObject {
|
|
func navigate(to route: Route)
|
|
func changeMessageVisibility(isHidden: Bool)
|
|
}
|
|
|
|
final class MessageModuleBuilder {
|
|
|
|
static func build(output: MessageModuleOutput?) -> UIView {
|
|
|
|
let view: UIView
|
|
|
|
if DeviceInfoProvider.isIPad {
|
|
let presenter = MessagePresenterIPAD(output: output)
|
|
view = MessageViewIPAD(output: presenter)
|
|
presenter.viewInput = view as? MessageViewIPAD
|
|
} else {
|
|
let presenter = MessagePresenter(output: output)
|
|
view = MessageView(output: presenter)
|
|
presenter.viewInput = view as? MessageView
|
|
}
|
|
|
|
return view
|
|
}
|
|
}
|