You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

48 lines
1.3 KiB

  1. //
  2. // SelectPaymentWireframe.swift
  3. // GME Remit
  4. //
  5. // Created by InKwon Devik Kim on 30/04/2019.
  6. //Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
  7. //
  8. import UIKit
  9. import PanModal
  10. class SelectPaymentWireframe {
  11. weak var view: UIViewController!
  12. weak var delegate: SelectPaymentDelegate?
  13. private var models: [Account]?
  14. }
  15. extension SelectPaymentWireframe: SelectPaymentWireframeInput {
  16. var storyboardName: String {return "SelectPayment"}
  17. func getMainView() -> UIViewController {
  18. let service = SelectPaymentService()
  19. let interactor = SelectPaymentInteractor(service: service, models: self.models)
  20. let presenter = SelectPaymentPresenter()
  21. let viewController = viewControllerFromStoryboard(of: SelectPaymentViewController.self)
  22. viewController.presenter = presenter
  23. viewController.delegate = self.delegate
  24. interactor.output = presenter
  25. presenter.interactor = interactor
  26. presenter.wireframe = self
  27. presenter.view = viewController
  28. self.view = viewController
  29. return viewController
  30. }
  31. func openSelectPaymentUsingPanModal(with models: [Account]?, in source: UIViewController?) {
  32. self.models = models
  33. guard let vc = self.getMainView() as? SelectPaymentViewController else { return }
  34. source?.presentPanModal(vc)
  35. }
  36. }