Browse Source

add step4, step5

pull/1/head
InKwon James Kim 5 years ago
parent
commit
4c6979d88c
  1. 216
      GME Remit.xcodeproj/project.pbxproj
  2. BIN
      GME Remit/.DS_Store
  3. 303
      GME Remit/Modules/RegisterModules/NewRegister/User Interface/View/NewRegister.storyboard
  4. 38
      GME Remit/Modules/RegisterModules/NewRegister/User Interface/Wireframe/NewRegisterWireframe.swift
  5. 2
      GME Remit/Modules/RegisterModules/NewRegisterStep2/User Interface/View/NewRegisterStep2.storyboard
  6. 2
      GME Remit/Modules/RegisterModules/NewRegisterStep2/User Interface/View/NewRegisterStep2ViewController.swift
  7. 4
      GME Remit/Modules/RegisterModules/NewRegisterStep3/User Interface/View/NewRegisterStep3.storyboard
  8. 5
      GME Remit/Modules/RegisterModules/NewRegisterStep3/User Interface/View/NewRegisterStep3ViewController.swift
  9. 30
      GME Remit/Modules/RegisterModules/NewRegisterStep4/Application Logic/Interactor/NewRegisterStep4Interactor.swift
  10. 15
      GME Remit/Modules/RegisterModules/NewRegisterStep4/Application Logic/Interactor/NewRegisterStep4InteractorIO.swift
  11. 13
      GME Remit/Modules/RegisterModules/NewRegisterStep4/Application Logic/Service/NewRegisterStep4Service.swift
  12. 11
      GME Remit/Modules/RegisterModules/NewRegisterStep4/Application Logic/Service/NewRegisterStep4ServiceType.swift
  13. 39
      GME Remit/Modules/RegisterModules/NewRegisterStep4/User Interface/Presenter/NewRegisterStep4Presenter.swift
  14. 128
      GME Remit/Modules/RegisterModules/NewRegisterStep4/User Interface/View/NewRegisterStep4.storyboard
  15. 79
      GME Remit/Modules/RegisterModules/NewRegisterStep4/User Interface/View/NewRegisterStep4ViewController.swift
  16. 42
      GME Remit/Modules/RegisterModules/NewRegisterStep4/User Interface/Wireframe/NewRegisterStep4Wireframe.swift
  17. 13
      GME Remit/Modules/RegisterModules/NewRegisterStep4/User Interface/Wireframe/NewRegisterStep4WireframeInput.swift
  18. 30
      GME Remit/Modules/RegisterModules/NewRegisterStep5/Application Logic/Interactor/NewRegisterStep5Interactor.swift
  19. 15
      GME Remit/Modules/RegisterModules/NewRegisterStep5/Application Logic/Interactor/NewRegisterStep5InteractorIO.swift
  20. 13
      GME Remit/Modules/RegisterModules/NewRegisterStep5/Application Logic/Service/NewRegisterStep5Service.swift
  21. 11
      GME Remit/Modules/RegisterModules/NewRegisterStep5/Application Logic/Service/NewRegisterStep5ServiceType.swift
  22. 39
      GME Remit/Modules/RegisterModules/NewRegisterStep5/User Interface/Presenter/NewRegisterStep5Presenter.swift
  23. 194
      GME Remit/Modules/RegisterModules/NewRegisterStep5/User Interface/View/NewRegisterStep5.storyboard
  24. 84
      GME Remit/Modules/RegisterModules/NewRegisterStep5/User Interface/View/NewRegisterStep5ViewController.swift
  25. 42
      GME Remit/Modules/RegisterModules/NewRegisterStep5/User Interface/Wireframe/NewRegisterStep5Wireframe.swift
  26. 13
      GME Remit/Modules/RegisterModules/NewRegisterStep5/User Interface/Wireframe/NewRegisterStep5WireframeInput.swift
  27. 2
      GME Remit/Modules/RemittanceModules/InboundModules/InboundPennyTestSubmit/User Interface/View/InboundPennyTestSubmit.storyboard

216
GME Remit.xcodeproj/project.pbxproj

@ -554,6 +554,24 @@
73EC6C18236984B200060448 /* InternationalTopupWireframeInput.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73EC6C0E236984B100060448 /* InternationalTopupWireframeInput.swift */; };
73EC6C19236984B200060448 /* InternationalTopupViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73EC6C10236984B100060448 /* InternationalTopupViewController.swift */; };
73EC6C1A236984B200060448 /* InternationalTopup.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 73EC6C11236984B100060448 /* InternationalTopup.storyboard */; };
73F77275239749DF00E22A82 /* NewRegisterStep4ServiceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F77267239749DF00E22A82 /* NewRegisterStep4ServiceType.swift */; };
73F77276239749DF00E22A82 /* NewRegisterStep4Service.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F77268239749DF00E22A82 /* NewRegisterStep4Service.swift */; };
73F77277239749DF00E22A82 /* NewRegisterStep4InteractorIO.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F7726A239749DF00E22A82 /* NewRegisterStep4InteractorIO.swift */; };
73F77278239749DF00E22A82 /* NewRegisterStep4Interactor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F7726B239749DF00E22A82 /* NewRegisterStep4Interactor.swift */; };
73F77279239749DF00E22A82 /* NewRegisterStep4Presenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F7726E239749DF00E22A82 /* NewRegisterStep4Presenter.swift */; };
73F7727A239749DF00E22A82 /* NewRegisterStep4Wireframe.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F77270239749DF00E22A82 /* NewRegisterStep4Wireframe.swift */; };
73F7727B239749DF00E22A82 /* NewRegisterStep4WireframeInput.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F77271239749DF00E22A82 /* NewRegisterStep4WireframeInput.swift */; };
73F7727C239749DF00E22A82 /* NewRegisterStep4ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F77273239749DF00E22A82 /* NewRegisterStep4ViewController.swift */; };
73F7727D239749DF00E22A82 /* NewRegisterStep4.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 73F77274239749DF00E22A82 /* NewRegisterStep4.storyboard */; };
73F7729223976CC800E22A82 /* NewRegisterStep5ServiceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F7728423976CC800E22A82 /* NewRegisterStep5ServiceType.swift */; };
73F7729323976CC800E22A82 /* NewRegisterStep5Service.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F7728523976CC800E22A82 /* NewRegisterStep5Service.swift */; };
73F7729423976CC800E22A82 /* NewRegisterStep5InteractorIO.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F7728723976CC800E22A82 /* NewRegisterStep5InteractorIO.swift */; };
73F7729523976CC800E22A82 /* NewRegisterStep5Interactor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F7728823976CC800E22A82 /* NewRegisterStep5Interactor.swift */; };
73F7729623976CC800E22A82 /* NewRegisterStep5Presenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F7728B23976CC800E22A82 /* NewRegisterStep5Presenter.swift */; };
73F7729723976CC800E22A82 /* NewRegisterStep5Wireframe.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F7728D23976CC800E22A82 /* NewRegisterStep5Wireframe.swift */; };
73F7729823976CC800E22A82 /* NewRegisterStep5WireframeInput.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F7728E23976CC800E22A82 /* NewRegisterStep5WireframeInput.swift */; };
73F7729923976CC800E22A82 /* NewRegisterStep5.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 73F7729023976CC800E22A82 /* NewRegisterStep5.storyboard */; };
73F7729A23976CC800E22A82 /* NewRegisterStep5ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73F7729123976CC800E22A82 /* NewRegisterStep5ViewController.swift */; };
73FDCE1D225C167700CC6912 /* KeyChain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73FDCE1C225C167700CC6912 /* KeyChain.swift */; };
73FE8837228A4A8C00A5EB56 /* OrderHistoryModuleInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73FE8824228A4A8C00A5EB56 /* OrderHistoryModuleInterface.swift */; };
73FE8838228A4A8C00A5EB56 /* OrderHistoryService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73FE8828228A4A8C00A5EB56 /* OrderHistoryService.swift */; };
@ -2948,6 +2966,24 @@
73EC6C0E236984B100060448 /* InternationalTopupWireframeInput.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = InternationalTopupWireframeInput.swift; sourceTree = "<group>"; };
73EC6C10236984B100060448 /* InternationalTopupViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = InternationalTopupViewController.swift; sourceTree = "<group>"; };
73EC6C11236984B100060448 /* InternationalTopup.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = InternationalTopup.storyboard; sourceTree = "<group>"; };
73F77267239749DF00E22A82 /* NewRegisterStep4ServiceType.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep4ServiceType.swift; sourceTree = "<group>"; };
73F77268239749DF00E22A82 /* NewRegisterStep4Service.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep4Service.swift; sourceTree = "<group>"; };
73F7726A239749DF00E22A82 /* NewRegisterStep4InteractorIO.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep4InteractorIO.swift; sourceTree = "<group>"; };
73F7726B239749DF00E22A82 /* NewRegisterStep4Interactor.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep4Interactor.swift; sourceTree = "<group>"; };
73F7726E239749DF00E22A82 /* NewRegisterStep4Presenter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep4Presenter.swift; sourceTree = "<group>"; };
73F77270239749DF00E22A82 /* NewRegisterStep4Wireframe.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep4Wireframe.swift; sourceTree = "<group>"; };
73F77271239749DF00E22A82 /* NewRegisterStep4WireframeInput.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep4WireframeInput.swift; sourceTree = "<group>"; };
73F77273239749DF00E22A82 /* NewRegisterStep4ViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep4ViewController.swift; sourceTree = "<group>"; };
73F77274239749DF00E22A82 /* NewRegisterStep4.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = NewRegisterStep4.storyboard; sourceTree = "<group>"; };
73F7728423976CC800E22A82 /* NewRegisterStep5ServiceType.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep5ServiceType.swift; sourceTree = "<group>"; };
73F7728523976CC800E22A82 /* NewRegisterStep5Service.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep5Service.swift; sourceTree = "<group>"; };
73F7728723976CC800E22A82 /* NewRegisterStep5InteractorIO.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep5InteractorIO.swift; sourceTree = "<group>"; };
73F7728823976CC800E22A82 /* NewRegisterStep5Interactor.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep5Interactor.swift; sourceTree = "<group>"; };
73F7728B23976CC800E22A82 /* NewRegisterStep5Presenter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep5Presenter.swift; sourceTree = "<group>"; };
73F7728D23976CC800E22A82 /* NewRegisterStep5Wireframe.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep5Wireframe.swift; sourceTree = "<group>"; };
73F7728E23976CC800E22A82 /* NewRegisterStep5WireframeInput.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep5WireframeInput.swift; sourceTree = "<group>"; };
73F7729023976CC800E22A82 /* NewRegisterStep5.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = NewRegisterStep5.storyboard; sourceTree = "<group>"; };
73F7729123976CC800E22A82 /* NewRegisterStep5ViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NewRegisterStep5ViewController.swift; sourceTree = "<group>"; };
73FDCE1C225C167700CC6912 /* KeyChain.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = KeyChain.swift; sourceTree = "<group>"; };
73FE8824228A4A8C00A5EB56 /* OrderHistoryModuleInterface.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OrderHistoryModuleInterface.swift; sourceTree = "<group>"; };
73FE8828228A4A8C00A5EB56 /* OrderHistoryService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OrderHistoryService.swift; sourceTree = "<group>"; };
@ -5869,6 +5905,8 @@
735F68E62394CD6B00A2DBC8 /* NewRegisterStep1 */,
737FB6592395EF3500EA4AED /* NewRegisterStep2 */,
737FB6762396363000EA4AED /* NewRegisterStep3 */,
73F77263239749DF00E22A82 /* NewRegisterStep4 */,
73F7728023976CC800E22A82 /* NewRegisterStep5 */,
D96A4FE12146625C00CFD507 /* Register */,
04E36E0421AE585100783685 /* PennyTestSubmit */,
043770D221AD04240005B22D /* PennyTest */,
@ -8630,6 +8668,166 @@
path = LocalTopup;
sourceTree = "<group>";
};
73F77263239749DF00E22A82 /* NewRegisterStep4 */ = {
isa = PBXGroup;
children = (
73F77264239749DF00E22A82 /* Application Logic */,
73F7726C239749DF00E22A82 /* User Interface */,
);
path = NewRegisterStep4;
sourceTree = "<group>";
};
73F77264239749DF00E22A82 /* Application Logic */ = {
isa = PBXGroup;
children = (
73F77265239749DF00E22A82 /* Model */,
73F77266239749DF00E22A82 /* Service */,
73F77269239749DF00E22A82 /* Interactor */,
);
path = "Application Logic";
sourceTree = "<group>";
};
73F77265239749DF00E22A82 /* Model */ = {
isa = PBXGroup;
children = (
);
path = Model;
sourceTree = "<group>";
};
73F77266239749DF00E22A82 /* Service */ = {
isa = PBXGroup;
children = (
73F77267239749DF00E22A82 /* NewRegisterStep4ServiceType.swift */,
73F77268239749DF00E22A82 /* NewRegisterStep4Service.swift */,
);
path = Service;
sourceTree = "<group>";
};
73F77269239749DF00E22A82 /* Interactor */ = {
isa = PBXGroup;
children = (
73F7726A239749DF00E22A82 /* NewRegisterStep4InteractorIO.swift */,
73F7726B239749DF00E22A82 /* NewRegisterStep4Interactor.swift */,
);
path = Interactor;
sourceTree = "<group>";
};
73F7726C239749DF00E22A82 /* User Interface */ = {
isa = PBXGroup;
children = (
73F7726D239749DF00E22A82 /* Presenter */,
73F7726F239749DF00E22A82 /* Wireframe */,
73F77272239749DF00E22A82 /* View */,
);
path = "User Interface";
sourceTree = "<group>";
};
73F7726D239749DF00E22A82 /* Presenter */ = {
isa = PBXGroup;
children = (
73F7726E239749DF00E22A82 /* NewRegisterStep4Presenter.swift */,
);
path = Presenter;
sourceTree = "<group>";
};
73F7726F239749DF00E22A82 /* Wireframe */ = {
isa = PBXGroup;
children = (
73F77270239749DF00E22A82 /* NewRegisterStep4Wireframe.swift */,
73F77271239749DF00E22A82 /* NewRegisterStep4WireframeInput.swift */,
);
path = Wireframe;
sourceTree = "<group>";
};
73F77272239749DF00E22A82 /* View */ = {
isa = PBXGroup;
children = (
73F77273239749DF00E22A82 /* NewRegisterStep4ViewController.swift */,
73F77274239749DF00E22A82 /* NewRegisterStep4.storyboard */,
);
path = View;
sourceTree = "<group>";
};
73F7728023976CC800E22A82 /* NewRegisterStep5 */ = {
isa = PBXGroup;
children = (
73F7728123976CC800E22A82 /* Application Logic */,
73F7728923976CC800E22A82 /* User Interface */,
);
path = NewRegisterStep5;
sourceTree = "<group>";
};
73F7728123976CC800E22A82 /* Application Logic */ = {
isa = PBXGroup;
children = (
73F7728223976CC800E22A82 /* Model */,
73F7728323976CC800E22A82 /* Service */,
73F7728623976CC800E22A82 /* Interactor */,
);
path = "Application Logic";
sourceTree = "<group>";
};
73F7728223976CC800E22A82 /* Model */ = {
isa = PBXGroup;
children = (
);
path = Model;
sourceTree = "<group>";
};
73F7728323976CC800E22A82 /* Service */ = {
isa = PBXGroup;
children = (
73F7728423976CC800E22A82 /* NewRegisterStep5ServiceType.swift */,
73F7728523976CC800E22A82 /* NewRegisterStep5Service.swift */,
);
path = Service;
sourceTree = "<group>";
};
73F7728623976CC800E22A82 /* Interactor */ = {
isa = PBXGroup;
children = (
73F7728723976CC800E22A82 /* NewRegisterStep5InteractorIO.swift */,
73F7728823976CC800E22A82 /* NewRegisterStep5Interactor.swift */,
);
path = Interactor;
sourceTree = "<group>";
};
73F7728923976CC800E22A82 /* User Interface */ = {
isa = PBXGroup;
children = (
73F7728A23976CC800E22A82 /* Presenter */,
73F7728C23976CC800E22A82 /* Wireframe */,
73F7728F23976CC800E22A82 /* View */,
);
path = "User Interface";
sourceTree = "<group>";
};
73F7728A23976CC800E22A82 /* Presenter */ = {
isa = PBXGroup;
children = (
73F7728B23976CC800E22A82 /* NewRegisterStep5Presenter.swift */,
);
path = Presenter;
sourceTree = "<group>";
};
73F7728C23976CC800E22A82 /* Wireframe */ = {
isa = PBXGroup;
children = (
73F7728D23976CC800E22A82 /* NewRegisterStep5Wireframe.swift */,
73F7728E23976CC800E22A82 /* NewRegisterStep5WireframeInput.swift */,
);
path = Wireframe;
sourceTree = "<group>";
};
73F7728F23976CC800E22A82 /* View */ = {
isa = PBXGroup;
children = (
73F7729023976CC800E22A82 /* NewRegisterStep5.storyboard */,
73F7729123976CC800E22A82 /* NewRegisterStep5ViewController.swift */,
);
path = View;
sourceTree = "<group>";
};
73F7C592234C4FCB00176856 /* PowerCallModules */ = {
isa = PBXGroup;
children = (
@ -13938,6 +14136,7 @@
D93C28A122000D640079BF03 /* iPad_transkey_alnum_cap_20.png in Resources */,
D93C2BA622000D660079BF03 /* transkey_input_eng_7.png in Resources */,
D93C2AF822000D650079BF03 /* transkey_navi_next_indonesian.png in Resources */,
73F7729923976CC800E22A82 /* NewRegisterStep5.storyboard in Resources */,
D93C276222000D630079BF03 /* iPhone_transkey_alnum_eng_1.png in Resources */,
D93C284122000D640079BF03 /* iPad_transkey_all_delete.png in Resources */,
D93C26D522000D630079BF03 /* iPhone_transkey_landscape_alnum_cmd_4_atm.png in Resources */,
@ -14610,6 +14809,7 @@
D93C297322000D650079BF03 /* iPhone_transkey_landscape_number_cmd_10_japanese_down.png in Resources */,
D93C2B2C22000D650079BF03 /* iPad_transkey_landscape_number_cmd_2_indonesian_down.png in Resources */,
D93C26EF22000D630079BF03 /* iPhone_transkey_landscape_alnum_cap_18.png in Resources */,
73F7727D239749DF00E22A82 /* NewRegisterStep4.storyboard in Resources */,
D93C284322000D640079BF03 /* iPad_transkey_number_key_8.png in Resources */,
D93C29CF22000D650079BF03 /* iPhone_transkey_number_cmd_10_thai.png in Resources */,
D93C279222000D630079BF03 /* iPhone_transkey_alnum_sym_12.png in Resources */,
@ -15576,6 +15776,7 @@
730D788B227A94E1007E517E /* RewardServiceType.swift in Sources */,
73A621662330AD20000FFB5B /* RecentHistoriesWireframe.swift in Sources */,
730197A122535135001954AB /* kycForm3ModuleInterface.swift in Sources */,
73F7727A239749DF00E22A82 /* NewRegisterStep4Wireframe.swift in Sources */,
9FD260F81FD00458007A511D /* AppDelegate.swift in Sources */,
D903113E214786EA00AD5BA9 /* ForgotPasswordService.swift in Sources */,
7301979222535135001954AB /* KycWireframeInput.swift in Sources */,
@ -15590,6 +15791,7 @@
73B4C8C022A5F2440078D495 /* SelectCouponInteractor.swift in Sources */,
7389600C22C2F208003FEA90 /* TablePresenterService.swift in Sources */,
D903113C214786EA00AD5BA9 /* ForgotPasswordModuleInterface.swift in Sources */,
73F77275239749DF00E22A82 /* NewRegisterStep4ServiceType.swift in Sources */,
730D78BD227A94F2007E517E /* SearchAddressViewInterface.swift in Sources */,
736A8C462277EB2A00337A50 /* BiometricNotificationWireframeInput.swift in Sources */,
BEC9B003224FC49C00A2DA06 /* BiometricAuthenticationWireframeInput.swift in Sources */,
@ -15762,7 +15964,9 @@
D903113F214786EA00AD5BA9 /* ForgotPasswordInteractor.swift in Sources */,
73157BA422DC1EEC009B836F /* PopupNotificationViewController.swift in Sources */,
D962230C212BD7A100B7A115 /* Array+Ext.swift in Sources */,
73F7727C239749DF00E22A82 /* NewRegisterStep4ViewController.swift in Sources */,
73157B9B22DC1EEC009B836F /* PopupNotificationModuleInterface.swift in Sources */,
73F7729623976CC800E22A82 /* NewRegisterStep5Presenter.swift in Sources */,
D96848CE212D419400EF12B1 /* ApiServiceType.swift in Sources */,
737FB68B2396363100EA4AED /* NewRegisterStep3Interactor.swift in Sources */,
043770EA21AD04240005B22D /* PennyTestInteractor.swift in Sources */,
@ -15788,6 +15992,7 @@
736A8C432277EB2A00337A50 /* BiometricNotificationInteractor.swift in Sources */,
D95B5E3921311057000C0B33 /* GmeContactsModuleInterface.swift in Sources */,
7313872322E68F4C0095ACEB /* ScrollableSegmentedControl.swift in Sources */,
73F7729223976CC800E22A82 /* NewRegisterStep5ServiceType.swift in Sources */,
73AEFF712334A13100A967FB /* TransactionHistoryGroupServiceType.swift in Sources */,
733A3B9B23554DAF00E6B87E /* RechargePaymentPresenter.swift in Sources */,
D922D98921351AAE00D43053 /* SendMoneyExchangeRatePresenter.swift in Sources */,
@ -15842,6 +16047,7 @@
BEC9AFFF224FC49C00A2DA06 /* BiometricAuthenticationInteractorIO.swift in Sources */,
73185314230E19DD00BA9AE3 /* ValidateAccountRequest.swift in Sources */,
D9B7ADF32130048E009B0564 /* ExchangeRatesInteractorIO.swift in Sources */,
73F7727B239749DF00E22A82 /* NewRegisterStep4WireframeInput.swift in Sources */,
73911157237A6DB400697D27 /* InboundAccountsServiceType.swift in Sources */,
73B6D6922306430200A0CB6E /* FetchRecipientsModel.swift in Sources */,
D922D98421351AAE00D43053 /* SendMoneyExchangeRateModuleInterface.swift in Sources */,
@ -15861,6 +16067,7 @@
73B4C8C122A5F2440078D495 /* SelectCouponPresenter.swift in Sources */,
D922D9662135145F00D43053 /* SendMoneyParentInteractorIO.swift in Sources */,
D92B802B2140C3CB00A25B26 /* MainWireframeInput.swift in Sources */,
73F7729A23976CC800E22A82 /* NewRegisterStep5ViewController.swift in Sources */,
9FA00FBE1FEE69AF0049753E /* UIView+Ext.swift in Sources */,
730D78B5227A94F2007E517E /* JusoContainer.swift in Sources */,
739045B82378FC9500CD5D8A /* AddInboundAccountWireframe.swift in Sources */,
@ -15930,6 +16137,7 @@
D950BEDA21549242008367A1 /* HomeViewController.swift in Sources */,
FF6E7D9821BF951D00A003B9 /* AppUpdateWireframeInput.swift in Sources */,
D96A4FDE21460B4A00CFD507 /* SplashScreenViewController.swift in Sources */,
73F7729523976CC800E22A82 /* NewRegisterStep5Interactor.swift in Sources */,
D9DC107921639078008F3C51 /* MessageComposeServiceType.swift in Sources */,
73911179237AA3C300697D27 /* InboundPennyTestSubmitService.swift in Sources */,
D92B80252140C3CB00A25B26 /* MainModuleInterface.swift in Sources */,
@ -15951,6 +16159,7 @@
73A6213E2330742C000FFB5B /* DomesticRemitWireframeInputOutput.swift in Sources */,
734BF6872353F7D8004E8D60 /* PhoneCardRechargeWireframe.swift in Sources */,
73469F982293C1B00062946B /* SelectPaymentModuleInterface.swift in Sources */,
73F7729723976CC800E22A82 /* NewRegisterStep5Wireframe.swift in Sources */,
042E6EFD203EAF95004667A1 /* SideMenuViewController.swift in Sources */,
73AEFF792334A13100A967FB /* TransactionHistoryGroupViewModel.swift in Sources */,
731B2832238BAC5600B392A5 /* DeleteInbound.swift in Sources */,
@ -15973,6 +16182,7 @@
735F68F82394CD6B00A2DBC8 /* NewRegisterStep1ServiceType.swift in Sources */,
735F68FE2394CD6B00A2DBC8 /* NewRegisterStep1WireframeInput.swift in Sources */,
738714B5237CE86E0038FCB1 /* InboundReceiptInteractor.swift in Sources */,
73F77278239749DF00E22A82 /* NewRegisterStep4Interactor.swift in Sources */,
D922D9692135145F00D43053 /* SendMoneyParentWireframeInput.swift in Sources */,
D946719821426DFB003924DB /* LoginInteractor.swift in Sources */,
04546C4120329A36007EFE15 /* AboutGMEViewController.swift in Sources */,
@ -15998,6 +16208,7 @@
7391117F237AA3C300697D27 /* InboundPennyTestSubmitWireframeInput.swift in Sources */,
73549BB8236FDD5600AD75D2 /* RechargeHistoryWireframe.swift in Sources */,
D922D9652135145F00D43053 /* SendMoneyParentInteractor.swift in Sources */,
73F7729423976CC800E22A82 /* NewRegisterStep5InteractorIO.swift in Sources */,
73157BA222DC1EEC009B836F /* PopupNotificationWireframeInput.swift in Sources */,
73071ACB2296CF9B008840FD /* HotLineWireframe.swift in Sources */,
7301978F22535135001954AB /* KycInteractorIO.swift in Sources */,
@ -16009,6 +16220,7 @@
730197AB22535135001954AB /* kycForm3ViewController.swift in Sources */,
73976D202331B4F4003CF5E1 /* UIImageView+Ext.swift in Sources */,
0496B84F1FE7DFCD0044810E /* String+Ext.swift in Sources */,
73F7729323976CC800E22A82 /* NewRegisterStep5Service.swift in Sources */,
735F68E32394A76800A2DBC8 /* NewRegisterViewController.swift in Sources */,
D9B7ADF52130048E009B0564 /* ExchangeRatesPresenter.swift in Sources */,
73A6E20422CEE51600E9BC68 /* BadgeLabel.swift in Sources */,
@ -16109,6 +16321,7 @@
D950BED421549242008367A1 /* HomeInteractorIO.swift in Sources */,
73FE8840228A4A8C00A5EB56 /* OrderHistoryViewController.swift in Sources */,
D922D98D21351AAE00D43053 /* SendMoneyExchangeRateViewInterface.swift in Sources */,
73F77276239749DF00E22A82 /* NewRegisterStep4Service.swift in Sources */,
73195AB622FD14D500151434 /* SetupRecipientInteractor.swift in Sources */,
7389600A22C2F208003FEA90 /* TablePresenterModuleInterface.swift in Sources */,
733D910222EEB658006B5E80 /* kycForm1WireframeOutput.swift in Sources */,
@ -16197,6 +16410,7 @@
739A7785228BB2B40018A1A9 /* DetailOrderInteractorIO.swift in Sources */,
73B6D68A2306406D00A0CB6E /* AgentModel.swift in Sources */,
73EC6C16236984B200060448 /* InternationalTopupPresenter.swift in Sources */,
73F77277239749DF00E22A82 /* NewRegisterStep4InteractorIO.swift in Sources */,
730D78B7227A94F2007E517E /* SearchAddressService.swift in Sources */,
D92B80272140C3CB00A25B26 /* MainServiceType.swift in Sources */,
73549BB6236FDD5600AD75D2 /* RechargeHistoryPresenter.swift in Sources */,
@ -16216,6 +16430,7 @@
73BCCDD3228993040057B161 /* RewardGroupInteractorIO.swift in Sources */,
D95B7047213FB5F10053CC3D /* WebLinksViewController.swift in Sources */,
73071AAB2296BE6C008840FD /* HotLine.swift in Sources */,
73F7729823976CC800E22A82 /* NewRegisterStep5WireframeInput.swift in Sources */,
73071AC82296CF9B008840FD /* HotLineInteractor.swift in Sources */,
738714BB237CE86E0038FCB1 /* InboundReceiptViewController.swift in Sources */,
D92E656A222620A0004D1B3D /* SendMoneyCodeInteractorIO.swift in Sources */,
@ -16281,6 +16496,7 @@
73195AB822FD14D500151434 /* SetupRecipientWireframe.swift in Sources */,
D9DC108021639078008F3C51 /* MessageComposeViewController.swift in Sources */,
7301979D22535135001954AB /* kycForm1WireframeInput.swift in Sources */,
73F77279239749DF00E22A82 /* NewRegisterStep4Presenter.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};

BIN
GME Remit/.DS_Store

303
GME Remit/Modules/RegisterModules/NewRegister/User Interface/View/NewRegister.storyboard

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="15505" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="Icx-Ri-Xne">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<device id="retina4_0" orientation="portrait" appearance="light"/>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15510"/>
@ -12,6 +12,9 @@
<array key="SanFranciscoDisplay-Medium.otf">
<string>SanFranciscoDisplay-Medium</string>
</array>
<array key="SanFranciscoDisplay-Regular.otf">
<string>SanFranciscoDisplay-Regular</string>
</array>
</customFonts>
<scenes>
<!--NewRegister-->
@ -19,94 +22,219 @@
<objects>
<viewController storyboardIdentifier="NewRegisterViewController" title="NewRegister" id="HSb-ou-7T5" customClass="NewRegisterViewController" customModule="GME_Remit" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="9Uc-9s-KgO">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<rect key="frame" x="0.0" y="0.0" width="320" height="568"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="PtY-N9-vct">
<rect key="frame" x="0.0" y="44" width="375" height="110"/>
<rect key="frame" x="0.0" y="44" width="320" height="108"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="yuy-WN-CNw">
<rect key="frame" x="30" y="30" width="50" height="50"/>
<color key="backgroundColor" name="ThemeBlue"/>
<constraints>
<constraint firstAttribute="width" constant="50" id="CzA-tY-CIT"/>
<constraint firstAttribute="height" constant="50" id="wm6-Zt-5iz"/>
</constraints>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="14"/>
<state key="normal" title="Step 1">
<color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</state>
<connections>
<action selector="touchStepButtom:" destination="HSb-ou-7T5" eventType="touchUpInside" id="v2w-Qk-qyk"/>
</connections>
</button>
<button opaque="NO" tag="1" contentMode="scaleToFill" enabled="NO" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="evZ-O2-BrJ">
<rect key="frame" x="162.5" y="30" width="50" height="50"/>
<color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<stackView opaque="NO" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="LIs-r4-vhW">
<rect key="frame" x="20" y="20" width="280" height="35"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="yuy-WN-CNw">
<rect key="frame" x="0.0" y="0.0" width="35" height="35"/>
<color key="backgroundColor" name="ThemeBlue"/>
<constraints>
<constraint firstAttribute="width" constant="35" id="H4w-Kt-VKU"/>
<constraint firstAttribute="height" constant="35" id="sa4-aQ-hFX"/>
</constraints>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="15"/>
<state key="normal" title="1">
<color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</state>
<connections>
<action selector="touchStepButtom:" destination="HSb-ou-7T5" eventType="touchUpInside" id="v2w-Qk-qyk"/>
</connections>
</button>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="kaH-VB-BAK">
<rect key="frame" x="35" y="0.0" width="27" height="35"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="4dx-dw-3Tr">
<rect key="frame" x="0.0" y="16.5" width="27" height="2"/>
<color key="backgroundColor" name="ThemeSeparate"/>
<constraints>
<constraint firstAttribute="height" constant="2" id="9y0-PX-ZIs"/>
</constraints>
</view>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstItem="4dx-dw-3Tr" firstAttribute="centerY" secondItem="kaH-VB-BAK" secondAttribute="centerY" id="3lI-bn-SyV"/>
<constraint firstItem="4dx-dw-3Tr" firstAttribute="centerX" secondItem="kaH-VB-BAK" secondAttribute="centerX" id="TER-wG-54j"/>
<constraint firstAttribute="trailing" secondItem="4dx-dw-3Tr" secondAttribute="trailing" id="Xfl-sT-cl9"/>
<constraint firstItem="4dx-dw-3Tr" firstAttribute="leading" secondItem="kaH-VB-BAK" secondAttribute="leading" id="ZSd-kw-oqG"/>
</constraints>
</view>
<button opaque="NO" tag="1" contentMode="scaleToFill" enabled="NO" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="evZ-O2-BrJ">
<rect key="frame" x="62" y="0.0" width="35" height="35"/>
<color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="15"/>
<state key="normal" title="2">
<color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</state>
<connections>
<action selector="touchStepButtom:" destination="HSb-ou-7T5" eventType="touchUpInside" id="nzi-Hd-zUQ"/>
</connections>
</button>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="rqk-dx-qaH">
<rect key="frame" x="97" y="0.0" width="26.5" height="35"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Zg2-UP-QLG">
<rect key="frame" x="0.0" y="16.5" width="26.5" height="2"/>
<color key="backgroundColor" name="ThemeSeparate"/>
<constraints>
<constraint firstAttribute="height" constant="2" id="r90-SF-6EX"/>
</constraints>
</view>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstItem="Zg2-UP-QLG" firstAttribute="centerY" secondItem="rqk-dx-qaH" secondAttribute="centerY" id="7Ad-h0-q0M"/>
<constraint firstItem="Zg2-UP-QLG" firstAttribute="leading" secondItem="rqk-dx-qaH" secondAttribute="leading" id="Gwd-dt-7B6"/>
<constraint firstAttribute="trailing" secondItem="Zg2-UP-QLG" secondAttribute="trailing" id="PMw-W1-agZ"/>
<constraint firstItem="Zg2-UP-QLG" firstAttribute="centerX" secondItem="rqk-dx-qaH" secondAttribute="centerX" id="dRp-QP-01B"/>
</constraints>
</view>
<button opaque="NO" tag="2" contentMode="scaleToFill" enabled="NO" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="mK0-xl-sty">
<rect key="frame" x="123.5" y="0.0" width="35" height="35"/>
<color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="15"/>
<state key="normal" title="3">
<color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</state>
<connections>
<action selector="touchStepButtom:" destination="HSb-ou-7T5" eventType="touchUpInside" id="Olw-I9-NhM"/>
</connections>
</button>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="vII-7h-01O">
<rect key="frame" x="158.5" y="0.0" width="26" height="35"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Kb7-fL-GzB">
<rect key="frame" x="0.0" y="16.5" width="26" height="2"/>
<color key="backgroundColor" name="ThemeSeparate"/>
<constraints>
<constraint firstAttribute="height" constant="2" id="7JK-qw-HXb"/>
</constraints>
</view>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstItem="Kb7-fL-GzB" firstAttribute="leading" secondItem="vII-7h-01O" secondAttribute="leading" id="EUZ-A8-WS3"/>
<constraint firstAttribute="trailing" secondItem="Kb7-fL-GzB" secondAttribute="trailing" id="M3t-nb-Lqq"/>
<constraint firstItem="Kb7-fL-GzB" firstAttribute="centerX" secondItem="vII-7h-01O" secondAttribute="centerX" id="hX1-sr-L22"/>
<constraint firstItem="Kb7-fL-GzB" firstAttribute="centerY" secondItem="vII-7h-01O" secondAttribute="centerY" id="hky-6g-p0X"/>
</constraints>
</view>
<button opaque="NO" tag="3" contentMode="scaleToFill" enabled="NO" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="vbA-rh-NqH">
<rect key="frame" x="184.5" y="0.0" width="35" height="35"/>
<color key="backgroundColor" white="0.66666666669999997" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="15"/>
<state key="normal" title="4">
<color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</state>
<connections>
<action selector="touchStepButtom:" destination="HSb-ou-7T5" eventType="touchUpInside" id="I5x-0a-vBA"/>
</connections>
</button>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="xaW-uB-q4a">
<rect key="frame" x="219.5" y="0.0" width="25.5" height="35"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="bG5-mc-550">
<rect key="frame" x="0.0" y="16.5" width="25.5" height="2"/>
<color key="backgroundColor" name="ThemeSeparate"/>
<constraints>
<constraint firstAttribute="height" constant="2" id="b1e-7A-eFd"/>
</constraints>
</view>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstItem="bG5-mc-550" firstAttribute="centerX" secondItem="xaW-uB-q4a" secondAttribute="centerX" id="44l-l8-NYD"/>
<constraint firstItem="bG5-mc-550" firstAttribute="centerY" secondItem="xaW-uB-q4a" secondAttribute="centerY" id="Nfv-b1-eer"/>
<constraint firstItem="bG5-mc-550" firstAttribute="leading" secondItem="xaW-uB-q4a" secondAttribute="leading" id="RQd-u7-ouO"/>
<constraint firstAttribute="trailing" secondItem="bG5-mc-550" secondAttribute="trailing" id="W23-tx-Cza"/>
</constraints>
</view>
<button opaque="NO" tag="4" contentMode="scaleToFill" enabled="NO" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="8VZ-qS-uVO">
<rect key="frame" x="245" y="0.0" width="35" height="35"/>
<color key="backgroundColor" white="0.66666666669999997" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="15"/>
<state key="normal" title="5">
<color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</state>
<connections>
<action selector="touchStepButtom:" destination="HSb-ou-7T5" eventType="touchUpInside" id="mPn-Wq-Sq7"/>
</connections>
</button>
</subviews>
<constraints>
<constraint firstAttribute="height" constant="50" id="2gr-dA-uWT"/>
<constraint firstAttribute="width" constant="50" id="v6I-ox-378"/>
<constraint firstItem="kaH-VB-BAK" firstAttribute="width" secondItem="xaW-uB-q4a" secondAttribute="width" multiplier="1.04" id="7bH-N1-pmW"/>
<constraint firstItem="kaH-VB-BAK" firstAttribute="width" secondItem="rqk-dx-qaH" secondAttribute="width" id="8Ti-BH-UjI"/>
<constraint firstItem="yuy-WN-CNw" firstAttribute="width" secondItem="mK0-xl-sty" secondAttribute="width" id="MfA-3P-LWf"/>
<constraint firstItem="yuy-WN-CNw" firstAttribute="width" secondItem="vbA-rh-NqH" secondAttribute="width" id="TQZ-l9-lM4"/>
<constraint firstItem="kaH-VB-BAK" firstAttribute="width" secondItem="vII-7h-01O" secondAttribute="width" multiplier="1.04" id="iTE-NP-O8Q"/>
<constraint firstItem="yuy-WN-CNw" firstAttribute="width" secondItem="8VZ-qS-uVO" secondAttribute="width" id="nhX-Ig-f4s"/>
<constraint firstItem="yuy-WN-CNw" firstAttribute="width" secondItem="evZ-O2-BrJ" secondAttribute="width" id="tkM-uJ-nzQ"/>
</constraints>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="14"/>
<state key="normal" title="Step2">
<color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</state>
<connections>
<action selector="touchStepButtom:" destination="HSb-ou-7T5" eventType="touchUpInside" id="nzi-Hd-zUQ"/>
</connections>
</button>
<button opaque="NO" tag="2" contentMode="scaleToFill" enabled="NO" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="mK0-xl-sty">
<rect key="frame" x="295" y="30" width="50" height="50"/>
<color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstAttribute="height" constant="50" id="EqB-YD-Ll7"/>
<constraint firstAttribute="width" constant="50" id="fLk-Oo-lU8"/>
</constraints>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="14"/>
<state key="normal" title="Step3">
<color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</state>
<connections>
<action selector="touchStepButtom:" destination="HSb-ou-7T5" eventType="touchUpInside" id="Olw-I9-NhM"/>
</connections>
</button>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="6Kk-9D-9Ly">
<rect key="frame" x="80" y="54" width="82.5" height="2"/>
<color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstAttribute="height" constant="2" id="TIM-yU-glp"/>
</constraints>
</view>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="cp1-OO-lBV">
<rect key="frame" x="212.5" y="54" width="82.5" height="2"/>
<color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstAttribute="height" constant="2" id="nrf-sv-TBn"/>
</constraints>
</view>
</stackView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Personal Information" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" minimumScaleFactor="0.5" translatesAutoresizingMaskIntoConstraints="NO" id="8f2-5L-Ga0">
<rect key="frame" x="5" y="60" width="65" height="28"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="12"/>
<color key="textColor" name="ThemeText"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Bank Informaton" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" minimumScaleFactor="0.5" translatesAutoresizingMaskIntoConstraints="NO" id="seW-FC-zhm">
<rect key="frame" x="75" y="60" width="48.5" height="28"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="12"/>
<color key="textColor" name="ThemeText"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Upload Pictures" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" minimumScaleFactor="0.5" translatesAutoresizingMaskIntoConstraints="NO" id="BfC-V2-5BA">
<rect key="frame" x="128.5" y="60" width="65" height="28"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="12"/>
<color key="textColor" name="ThemeText"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Auto Debit" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" minimumScaleFactor="0.5" translatesAutoresizingMaskIntoConstraints="NO" id="u6g-KV-rmR">
<rect key="frame" x="198.5" y="60" width="46.5" height="28"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="12"/>
<color key="textColor" name="ThemeText"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Penny Test" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" minimumScaleFactor="0.5" translatesAutoresizingMaskIntoConstraints="NO" id="cP8-4z-GXQ">
<rect key="frame" x="250" y="60" width="65" height="14"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="12"/>
<color key="textColor" name="ThemeText"/>
<nil key="highlightedColor"/>
</label>
</subviews>
<color key="backgroundColor" name="ThemeMainBackground"/>
<constraints>
<constraint firstItem="evZ-O2-BrJ" firstAttribute="top" secondItem="PtY-N9-vct" secondAttribute="top" constant="30" id="1tz-Xy-9LU"/>
<constraint firstItem="mK0-xl-sty" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="evZ-O2-BrJ" secondAttribute="trailing" constant="30" id="1uN-IX-V6D"/>
<constraint firstItem="evZ-O2-BrJ" firstAttribute="centerX" secondItem="PtY-N9-vct" secondAttribute="centerX" id="Af2-jq-SdJ"/>
<constraint firstItem="mK0-xl-sty" firstAttribute="leading" secondItem="cp1-OO-lBV" secondAttribute="trailing" id="Drm-jH-Xrl"/>
<constraint firstItem="6Kk-9D-9Ly" firstAttribute="leading" secondItem="yuy-WN-CNw" secondAttribute="trailing" id="HD0-t2-VPm"/>
<constraint firstItem="mK0-xl-sty" firstAttribute="centerY" secondItem="evZ-O2-BrJ" secondAttribute="centerY" id="HJY-Xc-XHc"/>
<constraint firstItem="cp1-OO-lBV" firstAttribute="centerY" secondItem="mK0-xl-sty" secondAttribute="centerY" id="Jqb-Xc-2B1"/>
<constraint firstItem="6Kk-9D-9Ly" firstAttribute="centerY" secondItem="yuy-WN-CNw" secondAttribute="centerY" id="O9b-tL-YdW"/>
<constraint firstItem="yuy-WN-CNw" firstAttribute="leading" secondItem="PtY-N9-vct" secondAttribute="leading" constant="30" id="PxL-Yc-70l"/>
<constraint firstItem="evZ-O2-BrJ" firstAttribute="centerY" secondItem="PtY-N9-vct" secondAttribute="centerY" id="RVs-Tb-Fs8"/>
<constraint firstItem="yuy-WN-CNw" firstAttribute="centerY" secondItem="evZ-O2-BrJ" secondAttribute="centerY" id="ddO-BP-KNH"/>
<constraint firstAttribute="bottom" secondItem="evZ-O2-BrJ" secondAttribute="bottom" constant="30" id="hjZ-ao-Nq1"/>
<constraint firstItem="evZ-O2-BrJ" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="yuy-WN-CNw" secondAttribute="trailing" constant="30" id="iGZ-3J-RqP"/>
<constraint firstAttribute="trailing" secondItem="mK0-xl-sty" secondAttribute="trailing" constant="30" id="rzD-f5-7fl"/>
<constraint firstItem="cp1-OO-lBV" firstAttribute="leading" secondItem="evZ-O2-BrJ" secondAttribute="trailing" id="shS-Q4-T10"/>
<constraint firstItem="evZ-O2-BrJ" firstAttribute="leading" secondItem="6Kk-9D-9Ly" secondAttribute="trailing" id="tXA-rz-4U7"/>
<constraint firstItem="seW-FC-zhm" firstAttribute="top" secondItem="LIs-r4-vhW" secondAttribute="bottom" constant="5" id="0eS-NM-CBT"/>
<constraint firstAttribute="trailing" secondItem="LIs-r4-vhW" secondAttribute="trailing" constant="20" id="1Ov-zl-tQY"/>
<constraint firstItem="8f2-5L-Ga0" firstAttribute="centerX" secondItem="yuy-WN-CNw" secondAttribute="centerX" id="2mI-d2-wZF"/>
<constraint firstItem="u6g-KV-rmR" firstAttribute="leading" secondItem="BfC-V2-5BA" secondAttribute="trailing" constant="5" id="3ea-9R-jyZ"/>
<constraint firstAttribute="bottom" secondItem="BfC-V2-5BA" secondAttribute="bottom" constant="20" id="6gM-lG-eMU"/>
<constraint firstItem="LIs-r4-vhW" firstAttribute="centerX" secondItem="PtY-N9-vct" secondAttribute="centerX" id="Cbh-yA-rzf"/>
<constraint firstItem="seW-FC-zhm" firstAttribute="leading" secondItem="8f2-5L-Ga0" secondAttribute="trailing" constant="5" id="Eud-Lt-8qI"/>
<constraint firstItem="BfC-V2-5BA" firstAttribute="centerX" secondItem="mK0-xl-sty" secondAttribute="centerX" id="FgP-1S-a6O"/>
<constraint firstItem="seW-FC-zhm" firstAttribute="centerX" secondItem="evZ-O2-BrJ" secondAttribute="centerX" id="GI8-0k-OxH"/>
<constraint firstItem="cP8-4z-GXQ" firstAttribute="top" secondItem="LIs-r4-vhW" secondAttribute="bottom" constant="5" id="Jcm-0j-FDj"/>
<constraint firstAttribute="trailing" secondItem="cP8-4z-GXQ" secondAttribute="trailing" constant="5" id="NbU-CK-6Yl"/>
<constraint firstItem="cP8-4z-GXQ" firstAttribute="leading" secondItem="u6g-KV-rmR" secondAttribute="trailing" constant="5" id="POf-jS-r22"/>
<constraint firstItem="u6g-KV-rmR" firstAttribute="top" secondItem="LIs-r4-vhW" secondAttribute="bottom" constant="5" id="R8v-Ky-9Oa"/>
<constraint firstItem="LIs-r4-vhW" firstAttribute="leading" secondItem="PtY-N9-vct" secondAttribute="leading" constant="20" id="TDi-sI-Z6m"/>
<constraint firstItem="LIs-r4-vhW" firstAttribute="top" secondItem="PtY-N9-vct" secondAttribute="top" constant="20" id="Tr6-pA-DBp"/>
<constraint firstItem="8f2-5L-Ga0" firstAttribute="leading" secondItem="PtY-N9-vct" secondAttribute="leading" constant="5" id="YNL-YU-ThZ"/>
<constraint firstItem="u6g-KV-rmR" firstAttribute="centerX" secondItem="vbA-rh-NqH" secondAttribute="centerX" id="hAv-7g-wCD"/>
<constraint firstItem="cP8-4z-GXQ" firstAttribute="centerX" secondItem="8VZ-qS-uVO" secondAttribute="centerX" id="juj-MV-4FG"/>
<constraint firstItem="BfC-V2-5BA" firstAttribute="leading" secondItem="seW-FC-zhm" secondAttribute="trailing" constant="5" id="snw-je-QyH"/>
<constraint firstItem="8f2-5L-Ga0" firstAttribute="top" secondItem="LIs-r4-vhW" secondAttribute="bottom" constant="5" id="w7Q-2E-4RR"/>
<constraint firstItem="BfC-V2-5BA" firstAttribute="top" secondItem="LIs-r4-vhW" secondAttribute="bottom" constant="5" id="wrk-Ke-Hfa"/>
</constraints>
</view>
<view opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="nOZ-1k-J0A">
<rect key="frame" x="10" y="164" width="355" height="493"/>
<rect key="frame" x="10" y="162" width="300" height="396"/>
<color key="backgroundColor" name="ThemeMainBackground"/>
</view>
</subviews>
@ -125,20 +253,27 @@
<navigationItem key="navigationItem" id="Zkq-b2-U5b">
<barButtonItem key="rightBarButtonItem" image="call" id="NVw-pn-UlX">
<color key="tintColor" name="ThemeRed"/>
<connections>
<action selector="touchCallButton:" destination="HSb-ou-7T5" id="hxA-3x-tJx"/>
</connections>
</barButtonItem>
</navigationItem>
<connections>
<outlet property="containerView" destination="nOZ-1k-J0A" id="IQm-3S-6nX"/>
<outlet property="step1Button" destination="yuy-WN-CNw" id="0YR-ok-glW"/>
<outlet property="step1ToStep2Line" destination="6Kk-9D-9Ly" id="ePM-94-PX2"/>
<outlet property="step1ToStep2Line" destination="kaH-VB-BAK" id="Keb-XI-2m6"/>
<outlet property="step2Button" destination="evZ-O2-BrJ" id="Vgz-Me-HYB"/>
<outlet property="step2ToStep3Line" destination="cp1-OO-lBV" id="eSL-uX-yGV"/>
<outlet property="step2ToStep3Line" destination="rqk-dx-qaH" id="nR0-Tq-CQs"/>
<outlet property="step3Button" destination="mK0-xl-sty" id="OmQ-Hv-pLG"/>
<outlet property="step3ToStep4Line" destination="vII-7h-01O" id="HN0-Ae-jy7"/>
<outlet property="step4Button" destination="vbA-rh-NqH" id="a1S-RY-sog"/>
<outlet property="step4ToStep5Line" destination="xaW-uB-q4a" id="Vmi-5f-APC"/>
<outlet property="step5Button" destination="8VZ-qS-uVO" id="KDx-Z7-HeN"/>
</connections>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="8je-5K-XuW" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="847.20000000000005" y="231.63418290854574"/>
<point key="canvasLocation" x="845.625" y="231.33802816901408"/>
</scene>
<!--Navigation Controller-->
<scene sceneID="kRm-Sb-V1n">
@ -146,7 +281,7 @@
<navigationController automaticallyAdjustsScrollViewInsets="NO" id="Icx-Ri-Xne" sceneMemberID="viewController">
<toolbarItems/>
<navigationBar key="navigationBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="aoy-UZ-irb">
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
<rect key="frame" x="0.0" y="0.0" width="320" height="44"/>
<autoresizingMask key="autoresizingMask"/>
</navigationBar>
<nil name="viewControllers"/>
@ -170,9 +305,15 @@
<namedColor name="ThemeRed">
<color red="0.92941176470588238" green="0.10588235294117647" blue="0.14117647058823529" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor>
<namedColor name="ThemeSeparate">
<color red="0.82400000095367432" green="0.82400000095367432" blue="0.82400000095367432" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor>
<namedColor name="ThemeSubBackground">
<color red="0.93300002813339233" green="0.93300002813339233" blue="0.93300002813339233" alpha="1" colorSpace="custom" customColorSpace="displayP3"/>
</namedColor>
<namedColor name="ThemeText">
<color red="0.28999999165534973" green="0.28999999165534973" blue="0.28999999165534973" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor>
</resources>
<color key="tintColor" red="0.78177064659999995" green="0.55228364470000002" blue="0.018981300289999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</document>

38
GME Remit/Modules/RegisterModules/NewRegister/User Interface/Wireframe/NewRegisterWireframe.swift

@ -14,6 +14,11 @@ class NewRegisterWireframe {
weak var view: UIViewController!
private var stepper: BehaviorSubject<NewRegisterViewController.Step>?
private var step1VC: UIViewController!
private var step2VC: UIViewController!
private var step3VC: UIViewController!
private var step4VC: UIViewController!
private var step5VC: UIViewController!
}
extension NewRegisterWireframe: NewRegisterWireframeInput {
@ -21,6 +26,12 @@ extension NewRegisterWireframe: NewRegisterWireframeInput {
var storyboardName: String {return "NewRegister"}
func getMainView() -> UIViewController {
step1VC = NewRegisterStep1Wireframe().getMainView(with: self)
step2VC = NewRegisterStep2Wireframe().getMainView(with: self)
step3VC = NewRegisterStep3Wireframe().getMainView(with: self)
step4VC = NewRegisterStep4Wireframe().getMainView(with: self)
step5VC = NewRegisterStep5Wireframe().getMainView(with: self)
let service = NewRegisterService()
let interactor = NewRegisterInteractor(service: service)
let presenter = NewRegisterPresenter()
@ -40,15 +51,26 @@ extension NewRegisterWireframe: NewRegisterWireframeInput {
func moveStep(to step: NewRegisterViewController.Step) {
switch step {
case .first:
let step1 = NewRegisterStep1Wireframe().getMainView(with: self)
move(step1)
case .second:
let step2 = NewRegisterStep2Wireframe().getMainView(with: self)
move(step2)
case .first: move(step1VC)
case .second: move(step2VC)
case .third: move(step3VC)
case .fourth: move(step4VC)
case .fifth: move(step5VC)
case .finish:
let step3 = NewRegisterStep3Wireframe().getMainView(with: self)
move(step3)
let message = """
Thank you for registering for GME.
We are verifying your information.
Once approved, you will receive SMS.
"""
view.alertWithOk(
type: .success,
message: message,
title: "Success",
okTitle: "Ok"
) {[weak self] in
self?.view.navigationController?.popToRootViewController(animated: false)
}
}
}

2
GME Remit/Modules/RegisterModules/NewRegisterStep2/User Interface/View/NewRegisterStep2.storyboard

@ -199,7 +199,7 @@
<constraint firstAttribute="height" constant="25" id="vdz-2a-a3X"/>
</constraints>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="252" verticalHuggingPriority="251" text="Identifying information (Optional)" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fEg-Ei-Y2n">
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="252" verticalHuggingPriority="251" text="Another ID (Optional)" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fEg-Ei-Y2n">
<rect key="frame" x="30" y="0.0" width="285" height="25"/>
<constraints>
<constraint firstAttribute="height" constant="25" id="APB-bI-Sjx"/>

2
GME Remit/Modules/RegisterModules/NewRegisterStep2/User Interface/View/NewRegisterStep2ViewController.swift

@ -92,7 +92,7 @@ extension NewRegisterStep2ViewController {
countinueButton.rx.tap.bind { [weak self] in
guard let `self` = self else { return }
self.delegate?.newRegister(self, currentStep: .second, nextStep: .finish)
self.delegate?.newRegister(self, currentStep: .second, nextStep: .third)
}.disposed(by: disposeBag)
}

4
GME Remit/Modules/RegisterModules/NewRegisterStep3/User Interface/View/NewRegisterStep3.storyboard

@ -143,7 +143,7 @@
<color key="titleColor" red="0.0" green="0.47843137250000001" blue="1" alpha="1" colorSpace="calibratedRGB"/>
</state>
</button>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Alien Registration Card" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gcF-1v-3iL">
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Another ID (Optional)" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gcF-1v-3iL">
<rect key="frame" x="8" y="27.5" width="195" height="35"/>
<constraints>
<constraint firstAttribute="height" constant="35" id="h6S-er-MeR"/>
@ -251,7 +251,7 @@
<viewLayoutGuide key="safeArea" id="O1T-1R-Sun"/>
</view>
<connections>
<outlet property="continueButton" destination="52r-RF-yfc" id="f6g-cZ-92X"/>
<outlet property="continueButton" destination="52r-RF-yfc" id="McL-uI-VXf"/>
</connections>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="8je-5K-XuW" userLabel="First Responder" sceneMemberID="firstResponder"/>

5
GME Remit/Modules/RegisterModules/NewRegisterStep3/User Interface/View/NewRegisterStep3ViewController.swift

@ -71,7 +71,10 @@ extension NewRegisterStep3ViewController {
}
private func setUIBinding() {
continueButton.rx.tap.bind { [weak self] in
guard let `self` = self else {return}
self.delegate?.newRegister(self, currentStep: .third, nextStep: .fourth)
}.disposed(by: disposeBag)
}
private func setBinding() {

30
GME Remit/Modules/RegisterModules/NewRegisterStep4/Application Logic/Interactor/NewRegisterStep4Interactor.swift

@ -0,0 +1,30 @@
//
// NewRegisterStep4Interactor.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import Foundation
class NewRegisterStep4Interactor {
// MARK: Properties
weak var output: NewRegisterStep4InteractorOutput?
private let service: NewRegisterStep4ServiceType
// MARK: Initialization
init(service: NewRegisterStep4ServiceType) {
self.service = service
}
}
// MARK: NewRegisterStep4 interactor input interface
extension NewRegisterStep4Interactor: NewRegisterStep4InteractorInput {
}

15
GME Remit/Modules/RegisterModules/NewRegisterStep4/Application Logic/Interactor/NewRegisterStep4InteractorIO.swift

@ -0,0 +1,15 @@
//
// NewRegisterStep4InteractorIO.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
protocol NewRegisterStep4InteractorInput: class {
}
protocol NewRegisterStep4InteractorOutput: class {
}

13
GME Remit/Modules/RegisterModules/NewRegisterStep4/Application Logic/Service/NewRegisterStep4Service.swift

@ -0,0 +1,13 @@
//
// NewRegisterStep4Service.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import Foundation
class NewRegisterStep4Service: NewRegisterStep4ServiceType {
}

11
GME Remit/Modules/RegisterModules/NewRegisterStep4/Application Logic/Service/NewRegisterStep4ServiceType.swift

@ -0,0 +1,11 @@
//
// NewRegisterStep4ServiceType.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
protocol NewRegisterStep4ServiceType: class {
}

39
GME Remit/Modules/RegisterModules/NewRegisterStep4/User Interface/Presenter/NewRegisterStep4Presenter.swift

@ -0,0 +1,39 @@
//
// NewRegisterStep4Presenter.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import RxSwift
import RxCocoa
class NewRegisterStep4Presenter: ViewModelType {
var interactor: NewRegisterStep4InteractorInput?
var wireframe: NewRegisterStep4WireframeInput?
struct Input {}
struct Output {
let isError: Driver<Error>
let isProgress: Driver<Bool>
}
private let disposeBag = DisposeBag()
private let progressLinker = PublishSubject<Bool>()
private let errorLinker = PublishSubject<Error>()
func transform(input: Input) -> Output {
return Output(
isError: errorLinker.asDriverOnErrorJustComplete(),
isProgress: progressLinker.asDriverOnErrorJustComplete()
)
}
}
// MARK: NewRegisterStep4 interactor output interface
extension NewRegisterStep4Presenter: NewRegisterStep4InteractorOutput {
}

128
GME Remit/Modules/RegisterModules/NewRegisterStep4/User Interface/View/NewRegisterStep4.storyboard

@ -0,0 +1,128 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="15505" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="HSb-ou-7T5">
<device id="retina4_0" orientation="portrait" appearance="light"/>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15510"/>
<capability name="Named colors" minToolsVersion="9.0"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<customFonts key="customFonts">
<array key="SanFranciscoDisplay-Medium.otf">
<string>SanFranciscoDisplay-Medium</string>
</array>
</customFonts>
<scenes>
<!--NewRegisterStep4-->
<scene sceneID="R60-Pu-Hpy">
<objects>
<viewController storyboardIdentifier="NewRegisterStep4ViewController" title="NewRegisterStep4" id="HSb-ou-7T5" customClass="NewRegisterStep4ViewController" customModule="GME_Remit" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="9Uc-9s-KgO">
<rect key="frame" x="0.0" y="0.0" width="320" height="568"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Gv7-tx-oNi">
<rect key="frame" x="0.0" y="0.0" width="320" height="568"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="30" translatesAutoresizingMaskIntoConstraints="NO" id="z64-2n-bWJ">
<rect key="frame" x="20" y="20" width="280" height="430"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="WqX-aD-QAZ">
<rect key="frame" x="0.0" y="0.0" width="280" height="150"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="ic_mobile" translatesAutoresizingMaskIntoConstraints="NO" id="7lH-1R-zSW">
<rect key="frame" x="115" y="100" width="50" height="50"/>
<constraints>
<constraint firstAttribute="height" constant="50" id="KI8-d5-ZbC"/>
<constraint firstAttribute="width" constant="50" id="Xjb-ab-sMs"/>
</constraints>
</imageView>
</subviews>
<color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstItem="7lH-1R-zSW" firstAttribute="centerX" secondItem="WqX-aD-QAZ" secondAttribute="centerX" id="17J-B1-Hy4"/>
<constraint firstItem="7lH-1R-zSW" firstAttribute="top" secondItem="WqX-aD-QAZ" secondAttribute="top" constant="100" id="jDF-wu-Ouq"/>
<constraint firstAttribute="bottom" secondItem="7lH-1R-zSW" secondAttribute="bottom" id="xjO-WM-0Cf"/>
</constraints>
</view>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="253" verticalHuggingPriority="254" text="Do you have a phone number registered with Alien Registration Card under your name?" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Eg4-JX-YyB">
<rect key="frame" x="0.0" y="180" width="280" height="66.5"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="19"/>
<color key="textColor" name="ThemeText"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" text="" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Rld-Ke-qAw">
<rect key="frame" x="0.0" y="276.5" width="280" height="153.5"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="19"/>
<color key="textColor" name="ThemeText"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</stackView>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" distribution="fillEqually" spacing="8" translatesAutoresizingMaskIntoConstraints="NO" id="3jy-Ts-86z">
<rect key="frame" x="10" y="460" width="300" height="108"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" verticalHuggingPriority="251" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="m6E-gE-jCo">
<rect key="frame" x="0.0" y="0.0" width="300" height="50"/>
<color key="backgroundColor" name="ThemeRed"/>
<constraints>
<constraint firstAttribute="height" constant="50" id="PyZ-Vh-GAJ"/>
</constraints>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="17"/>
<state key="normal" title="Yes">
<color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</state>
</button>
<button opaque="NO" contentMode="scaleToFill" verticalHuggingPriority="251" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="nNm-Ke-eRh">
<rect key="frame" x="0.0" y="58" width="300" height="50"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="17"/>
<state key="normal" title="No">
<color key="titleColor" name="ThemeRed"/>
</state>
</button>
</subviews>
</stackView>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstItem="3jy-Ts-86z" firstAttribute="leading" secondItem="Gv7-tx-oNi" secondAttribute="leading" constant="10" id="RtO-gc-1ud"/>
<constraint firstItem="z64-2n-bWJ" firstAttribute="top" secondItem="Gv7-tx-oNi" secondAttribute="top" constant="20" id="gVe-Hf-c38"/>
<constraint firstAttribute="trailing" secondItem="3jy-Ts-86z" secondAttribute="trailing" constant="10" id="gzp-dJ-PJg"/>
<constraint firstAttribute="bottom" secondItem="3jy-Ts-86z" secondAttribute="bottom" id="h0F-si-gMV"/>
<constraint firstAttribute="trailing" secondItem="z64-2n-bWJ" secondAttribute="trailing" constant="20" id="lnX-US-OjB"/>
<constraint firstItem="3jy-Ts-86z" firstAttribute="top" secondItem="z64-2n-bWJ" secondAttribute="bottom" constant="10" id="owi-qq-K2E"/>
<constraint firstItem="z64-2n-bWJ" firstAttribute="leading" secondItem="Gv7-tx-oNi" secondAttribute="leading" constant="20" id="x3a-uN-eMb"/>
</constraints>
</view>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstItem="O1T-1R-Sun" firstAttribute="trailing" secondItem="Gv7-tx-oNi" secondAttribute="trailing" id="GB2-ZV-x7s"/>
<constraint firstItem="O1T-1R-Sun" firstAttribute="bottom" secondItem="Gv7-tx-oNi" secondAttribute="bottom" id="NOp-4g-nzd"/>
<constraint firstItem="Gv7-tx-oNi" firstAttribute="leading" secondItem="O1T-1R-Sun" secondAttribute="leading" id="nkR-hb-7jT"/>
<constraint firstItem="Gv7-tx-oNi" firstAttribute="top" secondItem="O1T-1R-Sun" secondAttribute="top" id="v2e-C6-HOA"/>
</constraints>
<viewLayoutGuide key="safeArea" id="O1T-1R-Sun"/>
</view>
<connections>
<outlet property="noButton" destination="nNm-Ke-eRh" id="whr-vZ-nLu"/>
<outlet property="yesButton" destination="m6E-gE-jCo" id="DHz-tb-kZ0"/>
</connections>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="8je-5K-XuW" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="-91" y="233"/>
</scene>
</scenes>
<resources>
<image name="ic_mobile" width="48" height="48"/>
<namedColor name="ThemeRed">
<color red="0.92941176470588238" green="0.10588235294117647" blue="0.14117647058823529" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor>
<namedColor name="ThemeText">
<color red="0.28999999165534973" green="0.28999999165534973" blue="0.28999999165534973" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor>
</resources>
<color key="tintColor" red="0.78177064659999995" green="0.55228364470000002" blue="0.018981300289999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</document>

79
GME Remit/Modules/RegisterModules/NewRegisterStep4/User Interface/View/NewRegisterStep4ViewController.swift

@ -0,0 +1,79 @@
//
// NewRegisterStep4ViewController.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import UIKit
import RxSwift
import RxCocoa
class NewRegisterStep4ViewController: UIViewController {
// MARK: Properties
var presenter: NewRegisterStep4Presenter!
weak var delegate: NewRegisterDelegate?
private let disposeBag = DisposeBag()
// MARK: Computed Properties
// MARK: IBOutlets
@IBOutlet weak var yesButton: UIButton!
@IBOutlet weak var noButton: UIButton!
// MARK: VC's Life cycle
override func viewDidLoad() {
super.viewDidLoad()
setup()
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
}
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
}
// MARK: IBActions
}
// MARK: Other Functions
extension NewRegisterStep4ViewController {
private func setup() {
setUI()
setBinding()
setUIBinding()
}
private func setUI() {
yesButton.layer.cornerRadius = 5
noButton.layer.cornerRadius = 5
}
private func setUIBinding() {
noButton.rx.tap.bind {[weak self] in
guard let `self` = self else { return }
self.delegate?.newRegister(self, currentStep: .fourth, nextStep: .fifth)
}.disposed(by: disposeBag)
}
private func setBinding() {
let input = NewRegisterStep4Presenter.Input()
let output = presenter.transform(input: input)
output.isError
.drive(
onNext: { self.alert(type: .error, message: $0.localizedDescription) }
).disposed(by: disposeBag)
output.isProgress
.drive(
onNext: { $0 ? self.showProgressHud() : self.hideProgressHud() }
).disposed(by: disposeBag)
}
}

42
GME Remit/Modules/RegisterModules/NewRegisterStep4/User Interface/Wireframe/NewRegisterStep4Wireframe.swift

@ -0,0 +1,42 @@
//
// NewRegisterStep4Wireframe.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import UIKit
class NewRegisterStep4Wireframe {
weak var view: UIViewController!
weak var delegate: NewRegisterDelegate?
}
extension NewRegisterStep4Wireframe: NewRegisterStep4WireframeInput {
var storyboardName: String {return "NewRegisterStep4"}
func getMainView() -> UIViewController {
let service = NewRegisterStep4Service()
let interactor = NewRegisterStep4Interactor(service: service)
let presenter = NewRegisterStep4Presenter()
let viewController = viewControllerFromStoryboard(of: NewRegisterStep4ViewController.self)
viewController.presenter = presenter
viewController.delegate = delegate
interactor.output = presenter
presenter.interactor = interactor
presenter.wireframe = self
view = viewController
return viewController
}
func getMainView(with delegate: NewRegisterDelegate?) -> UIViewController {
self.delegate = delegate
return getMainView()
}
}

13
GME Remit/Modules/RegisterModules/NewRegisterStep4/User Interface/Wireframe/NewRegisterStep4WireframeInput.swift

@ -0,0 +1,13 @@
//
// NewRegisterStep4WireframeInput.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import Foundation
protocol NewRegisterStep4WireframeInput: WireframeInput {
}

30
GME Remit/Modules/RegisterModules/NewRegisterStep5/Application Logic/Interactor/NewRegisterStep5Interactor.swift

@ -0,0 +1,30 @@
//
// NewRegisterStep5Interactor.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import Foundation
class NewRegisterStep5Interactor {
// MARK: Properties
weak var output: NewRegisterStep5InteractorOutput?
private let service: NewRegisterStep5ServiceType
// MARK: Initialization
init(service: NewRegisterStep5ServiceType) {
self.service = service
}
}
// MARK: NewRegisterStep5 interactor input interface
extension NewRegisterStep5Interactor: NewRegisterStep5InteractorInput {
}

15
GME Remit/Modules/RegisterModules/NewRegisterStep5/Application Logic/Interactor/NewRegisterStep5InteractorIO.swift

@ -0,0 +1,15 @@
//
// NewRegisterStep5InteractorIO.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
protocol NewRegisterStep5InteractorInput: class {
}
protocol NewRegisterStep5InteractorOutput: class {
}

13
GME Remit/Modules/RegisterModules/NewRegisterStep5/Application Logic/Service/NewRegisterStep5Service.swift

@ -0,0 +1,13 @@
//
// NewRegisterStep5Service.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import Foundation
class NewRegisterStep5Service: NewRegisterStep5ServiceType {
}

11
GME Remit/Modules/RegisterModules/NewRegisterStep5/Application Logic/Service/NewRegisterStep5ServiceType.swift

@ -0,0 +1,11 @@
//
// NewRegisterStep5ServiceType.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
protocol NewRegisterStep5ServiceType: class {
}

39
GME Remit/Modules/RegisterModules/NewRegisterStep5/User Interface/Presenter/NewRegisterStep5Presenter.swift

@ -0,0 +1,39 @@
//
// NewRegisterStep5Presenter.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import RxSwift
import RxCocoa
class NewRegisterStep5Presenter: ViewModelType {
var interactor: NewRegisterStep5InteractorInput?
var wireframe: NewRegisterStep5WireframeInput?
struct Input {}
struct Output {
let isError: Driver<Error>
let isProgress: Driver<Bool>
}
private let disposeBag = DisposeBag()
private let progressLinker = PublishSubject<Bool>()
private let errorLinker = PublishSubject<Error>()
func transform(input: Input) -> Output {
return Output(
isError: errorLinker.asDriverOnErrorJustComplete(),
isProgress: progressLinker.asDriverOnErrorJustComplete()
)
}
}
// MARK: NewRegisterStep5 interactor output interface
extension NewRegisterStep5Presenter: NewRegisterStep5InteractorOutput {
}

194
GME Remit/Modules/RegisterModules/NewRegisterStep5/User Interface/View/NewRegisterStep5.storyboard

@ -0,0 +1,194 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="15505" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="HSb-ou-7T5">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15510"/>
<capability name="Named colors" minToolsVersion="9.0"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<customFonts key="customFonts">
<array key="SanFranciscoDisplay-Medium.otf">
<string>SanFranciscoDisplay-Medium</string>
</array>
<array key="SanFranciscoDisplay-Regular.otf">
<string>SanFranciscoDisplay-Regular</string>
</array>
</customFonts>
<scenes>
<!--NewRegisterStep5-->
<scene sceneID="R60-Pu-Hpy">
<objects>
<viewController storyboardIdentifier="NewRegisterStep5ViewController" title="NewRegisterStep5" id="HSb-ou-7T5" customClass="NewRegisterStep5ViewController" customModule="GME_Remit" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="9Uc-9s-KgO">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="21" translatesAutoresizingMaskIntoConstraints="NO" id="mYY-6S-tFg">
<rect key="frame" x="10" y="10" width="355" height="647"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" alignment="center" translatesAutoresizingMaskIntoConstraints="NO" id="brK-q5-jZ9">
<rect key="frame" x="0.0" y="0.0" width="355" height="75"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="jMj-MF-tek">
<rect key="frame" x="108.5" y="0.0" width="138.5" height="50"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="sh" translatesAutoresizingMaskIntoConstraints="NO" id="hqn-fe-Jau">
<rect key="frame" x="0.0" y="0.0" width="50" height="50"/>
<constraints>
<constraint firstAttribute="width" constant="50" id="n0s-Nn-Uyg"/>
<constraint firstAttribute="height" constant="50" id="wF2-wI-0Ay"/>
</constraints>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="253" text="Shin han" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="olI-P7-Pht">
<rect key="frame" x="60" y="0.0" width="78.5" height="50"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="20"/>
<color key="textColor" name="ThemeText"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</stackView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="252" verticalHuggingPriority="254" text="110223458044" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumScaleFactor="0.5" translatesAutoresizingMaskIntoConstraints="NO" id="0at-QE-L9N">
<rect key="frame" x="111" y="50" width="133.5" height="25"/>
<constraints>
<constraint firstAttribute="height" constant="25" id="PF8-6w-AMC"/>
</constraints>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="20"/>
<color key="textColor" name="ThemeText"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</stackView>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="X6V-DC-MAf">
<rect key="frame" x="0.0" y="96" width="355" height="55"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="254" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="3" baselineAdjustment="alignBaselines" minimumScaleFactor="0.5" translatesAutoresizingMaskIntoConstraints="NO" id="Lfa-ho-fpD">
<rect key="frame" x="20" y="0.0" width="315" height="55"/>
<constraints>
<constraint firstAttribute="height" constant="55" id="B5q-qZ-by1"/>
</constraints>
<string key="text">We have sent 1 KRW to your Bank Account,
Please check the statement and
enter the 4 digit number display after GME.</string>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="15"/>
<color key="textColor" name="ThemeText"/>
<nil key="highlightedColor"/>
</label>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstAttribute="trailing" secondItem="Lfa-ho-fpD" secondAttribute="trailing" constant="20" id="3pv-QA-L3u"/>
<constraint firstItem="Lfa-ho-fpD" firstAttribute="leading" secondItem="X6V-DC-MAf" secondAttribute="leading" constant="20" id="Thk-DZ-sJn"/>
<constraint firstItem="Lfa-ho-fpD" firstAttribute="top" secondItem="X6V-DC-MAf" secondAttribute="top" id="ZpQ-ou-4J5"/>
<constraint firstAttribute="bottom" secondItem="Lfa-ho-fpD" secondAttribute="bottom" id="gpD-5C-4ti"/>
</constraints>
</view>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="abK-iI-6ao">
<rect key="frame" x="0.0" y="172" width="355" height="75"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="5" translatesAutoresizingMaskIntoConstraints="NO" id="pLp-eL-Nn2">
<rect key="frame" x="20" y="0.0" width="315" height="75"/>
<subviews>
<stackView opaque="NO" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="E3g-BD-aRn">
<rect key="frame" x="0.0" y="0.0" width="315" height="25"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="252" verticalHuggingPriority="253" text="Deposit Reference" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="XbJ-eo-D2f">
<rect key="frame" x="0.0" y="0.0" width="315" height="25"/>
<constraints>
<constraint firstAttribute="height" constant="25" id="uS9-5j-wGk"/>
</constraints>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="17"/>
<color key="textColor" name="ThemeText"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</stackView>
<stackView opaque="NO" contentMode="scaleToFill" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="bs0-gQ-7pF">
<rect key="frame" x="0.0" y="30" width="315" height="45"/>
<subviews>
<textField opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="252" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" placeholder="1234" textAlignment="center" minimumFontSize="17" clearButtonMode="whileEditing" translatesAutoresizingMaskIntoConstraints="NO" id="ymm-Zi-y9T">
<rect key="frame" x="0.0" y="0.0" width="247" height="45"/>
<color key="textColor" name="ThemeText"/>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="17"/>
<textInputTraits key="textInputTraits" keyboardType="numberPad"/>
</textField>
<button opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="252" verticalHuggingPriority="251" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="IXD-9h-aLl">
<rect key="frame" x="257" y="0.0" width="58" height="45"/>
<constraints>
<constraint firstAttribute="height" constant="45" id="CEj-M5-nVa"/>
</constraints>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="17"/>
<state key="normal" title="Resend">
<color key="titleColor" name="ThemeRed"/>
</state>
</button>
</subviews>
</stackView>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</stackView>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstAttribute="trailing" secondItem="pLp-eL-Nn2" secondAttribute="trailing" constant="20" id="RpM-o0-iMC"/>
<constraint firstItem="pLp-eL-Nn2" firstAttribute="top" secondItem="abK-iI-6ao" secondAttribute="top" id="XQ5-2z-fWv"/>
<constraint firstAttribute="bottom" secondItem="pLp-eL-Nn2" secondAttribute="bottom" id="m9z-Cv-Ksi"/>
<constraint firstItem="pLp-eL-Nn2" firstAttribute="leading" secondItem="abK-iI-6ao" secondAttribute="leading" constant="20" id="rhj-mz-lk1"/>
</constraints>
</view>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="gnV-ZM-b6s">
<rect key="frame" x="0.0" y="268" width="355" height="50"/>
<color key="backgroundColor" name="ThemeRed"/>
<constraints>
<constraint firstAttribute="height" constant="50" id="r7i-qB-8Jy"/>
</constraints>
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="17"/>
<state key="normal" title="Submit">
<color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
</state>
</button>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="YpU-Qn-Xp2">
<rect key="frame" x="0.0" y="339" width="355" height="308"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</stackView>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstItem="O1T-1R-Sun" firstAttribute="trailing" secondItem="mYY-6S-tFg" secondAttribute="trailing" constant="10" id="4M2-af-zzU"/>
<constraint firstItem="mYY-6S-tFg" firstAttribute="leading" secondItem="O1T-1R-Sun" secondAttribute="leading" constant="10" id="tJf-Q6-s6p"/>
<constraint firstItem="mYY-6S-tFg" firstAttribute="top" secondItem="O1T-1R-Sun" secondAttribute="top" constant="10" id="wGE-DR-3Wk"/>
<constraint firstItem="O1T-1R-Sun" firstAttribute="bottom" secondItem="mYY-6S-tFg" secondAttribute="bottom" constant="10" id="ycA-PN-jy7"/>
</constraints>
<viewLayoutGuide key="safeArea" id="O1T-1R-Sun"/>
</view>
<connections>
<outlet property="bankAccountLabel" destination="0at-QE-L9N" id="lQp-sv-UuX"/>
<outlet property="bankImageView" destination="hqn-fe-Jau" id="ruS-Vo-68D"/>
<outlet property="bankNameLabel" destination="olI-P7-Pht" id="gKh-JS-ceT"/>
<outlet property="codeTextField" destination="ymm-Zi-y9T" id="QTs-sP-eZj"/>
<outlet property="depositLabel" destination="XbJ-eo-D2f" id="gLk-1n-SLy"/>
<outlet property="resendButton" destination="IXD-9h-aLl" id="bu3-uA-OhK"/>
<outlet property="submitButton" destination="gnV-ZM-b6s" id="dP3-ty-W7D"/>
</connections>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="8je-5K-XuW" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="-91" y="233"/>
</scene>
</scenes>
<resources>
<image name="sh" width="100" height="66"/>
<namedColor name="ThemeRed">
<color red="0.92941176470588238" green="0.10588235294117647" blue="0.14117647058823529" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor>
<namedColor name="ThemeText">
<color red="0.28999999165534973" green="0.28999999165534973" blue="0.28999999165534973" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</namedColor>
</resources>
<color key="tintColor" red="0.78177064659999995" green="0.55228364470000002" blue="0.018981300289999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</document>

84
GME Remit/Modules/RegisterModules/NewRegisterStep5/User Interface/View/NewRegisterStep5ViewController.swift

@ -0,0 +1,84 @@
//
// NewRegisterStep5ViewController.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import UIKit
import RxSwift
import RxCocoa
class NewRegisterStep5ViewController: UIViewController {
// MARK: Properties
var presenter: NewRegisterStep5Presenter!
weak var delegate: NewRegisterDelegate?
private let disposeBag = DisposeBag()
// MARK: Computed Properties
// MARK: IBOutlets
@IBOutlet weak var bankImageView: UIImageView!
@IBOutlet weak var bankNameLabel: UILabel!
@IBOutlet weak var bankAccountLabel: UILabel!
@IBOutlet weak var depositLabel: UILabel!
@IBOutlet weak var codeTextField: UITextField!
@IBOutlet weak var resendButton: UIButton!
@IBOutlet weak var submitButton: UIButton!
// MARK: VC's Life cycle
override func viewDidLoad() {
super.viewDidLoad()
setup()
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
}
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
}
// MARK: IBActions
}
// MARK: Other Functions
extension NewRegisterStep5ViewController {
private func setup() {
setUI()
setBinding()
setUIBinding()
}
private func setUI() {
submitButton.layer.cornerRadius = 5
}
private func setUIBinding() {
submitButton.rx.tap.bind {[weak self] in
guard let `self` = self else {return}
self.delegate?.newRegister(self, currentStep: .third, nextStep: .finish)
}.disposed(by: disposeBag)
}
private func setBinding() {
let input = NewRegisterStep5Presenter.Input()
let output = presenter.transform(input: input)
output.isError
.drive(
onNext: { self.alert(type: .error, message: $0.localizedDescription) }
).disposed(by: disposeBag)
output.isProgress
.drive(
onNext: { $0 ? self.showProgressHud() : self.hideProgressHud() }
).disposed(by: disposeBag)
}
}

42
GME Remit/Modules/RegisterModules/NewRegisterStep5/User Interface/Wireframe/NewRegisterStep5Wireframe.swift

@ -0,0 +1,42 @@
//
// NewRegisterStep5Wireframe.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import UIKit
class NewRegisterStep5Wireframe {
weak var view: UIViewController!
weak var delegate: NewRegisterDelegate?
}
extension NewRegisterStep5Wireframe: NewRegisterStep5WireframeInput {
var storyboardName: String {return "NewRegisterStep5"}
func getMainView() -> UIViewController {
let service = NewRegisterStep5Service()
let interactor = NewRegisterStep5Interactor(service: service)
let presenter = NewRegisterStep5Presenter()
let viewController = viewControllerFromStoryboard(of: NewRegisterStep5ViewController.self)
viewController.presenter = presenter
viewController.delegate = delegate
interactor.output = presenter
presenter.interactor = interactor
presenter.wireframe = self
view = viewController
return viewController
}
func getMainView(with delegate: NewRegisterDelegate?) -> UIViewController {
self.delegate = delegate
return getMainView()
}
}

13
GME Remit/Modules/RegisterModules/NewRegisterStep5/User Interface/Wireframe/NewRegisterStep5WireframeInput.swift

@ -0,0 +1,13 @@
//
// NewRegisterStep5WireframeInput.swift
// GME Remit
//
// Created by InKwon James Kim on 2019/12/04.
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
//
import Foundation
protocol NewRegisterStep5WireframeInput: WireframeInput {
}

2
GME Remit/Modules/RemittanceModules/InboundModules/InboundPennyTestSubmit/User Interface/View/InboundPennyTestSubmit.storyboard

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="15505" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="9ZW-c2-LfR">
<device id="retina4_7" orientation="portrait" appearance="dark"/>
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15510"/>

Loading…
Cancel
Save