// // SendMoneyCodeWireframe.swift // GME Remit // // Created by gme_2 on 27/02/2019. //Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. // import UIKit enum CodeType { case sendMoney case editProfile } class SendMoneyCodeWireframe { weak var view: UIViewController! var completion: ((String) -> Void)? var request: OTPProtocol? private var type: CodeType = .sendMoney private var newValue: String? } extension SendMoneyCodeWireframe: SendMoneyCodeWireframeInput { var storyboardName: String {return "SendMoneyCode"} func getMainView() -> UIViewController { let service = SendMoneyCodeService() let interactor = SendMoneyCodeInteractor(service: service, request: self.request) let presenter = SendMoneyCodePresenter() let viewController = viewControllerFromStoryboard(of: SendMoneyCodeViewController.self) viewController.newValue = self.newValue viewController.completion = self.completion viewController.presenter = presenter viewController.type = type interactor.output = presenter presenter.interactor = interactor presenter.wireframe = self presenter.view = viewController self.view = viewController return viewController } func open( type: CodeType = .sendMoney, newValue: String, requestmodel: OTPProtocol?, completion: @escaping (String) -> Void, source: UIViewController ) { self.newValue = newValue self.type = type self.completion = completion self.request = requestmodel self.openMainView(source: source) } }