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.

56 lines
1.3 KiB

  1. //
  2. // CouponBoxWireframe.swift
  3. // GME Remit
  4. //
  5. // Created by Jeongbae Kong on 03/12/2019.
  6. //Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
  7. //
  8. import UIKit
  9. class CouponBoxWireframe {
  10. weak var view: UIViewController!
  11. weak var output: CouponBoxWireframeOutput?
  12. private var model: [CouponBoxModel]?
  13. private weak var delegate: CouponBoxDelegate?
  14. }
  15. extension CouponBoxWireframe: CouponBoxWireframeInput {
  16. var storyboardName: String {return "CouponBox"}
  17. func getMainView() -> UIViewController {
  18. let service = CouponBoxService()
  19. let interactor = CouponBoxInteractor(service: service)
  20. // , model: model)
  21. let presenter = CouponBoxPresenter()
  22. let viewController = viewControllerFromStoryboard(of: CouponBoxViewController.self)
  23. output = presenter
  24. viewController.presenter = presenter
  25. viewController.delegate = delegate
  26. interactor.output = presenter
  27. presenter.interactor = interactor
  28. presenter.wireframe = self
  29. presenter.view = viewController
  30. view = viewController
  31. return viewController
  32. }
  33. func openWith(
  34. delegate: CouponBoxDelegate?,
  35. model: [CouponBoxModel]?,
  36. source: UIViewController
  37. ) {
  38. self.delegate = delegate
  39. self.model = model
  40. let vc = getMainView()
  41. source.present(vc, animated: true, completion: nil)
  42. }
  43. }