InKwon James Kim
5 years ago
20 changed files with 739 additions and 18 deletions
-
108GME Remit.xcodeproj/project.pbxproj
-
12GME Remit/Modules/RegisterModules/KYC/kycForm3/User Interface/View/kycForm3.storyboard
-
10GME Remit/Modules/RegisterModules/NewRegister/User Interface/View/NewRegister.storyboard
-
2GME Remit/Modules/RegisterModules/NewRegister/User Interface/View/NewRegisterViewController.swift
-
4GME Remit/Modules/RegisterModules/NewRegister/User Interface/Wireframe/NewRegisterWireframe.swift
-
3GME Remit/Modules/RegisterModules/NewRegisterStep1/User Interface/View/NewRegisterStep1.storyboard
-
40GME Remit/Modules/RegisterModules/NewRegisterStep2/User Interface/View/NewRegisterStep2.storyboard
-
26GME Remit/Modules/RegisterModules/NewRegisterStep2/User Interface/View/NewRegisterStep2ViewController.swift
-
30GME Remit/Modules/RegisterModules/NewRegisterStep3/Application Logic/Interactor/NewRegisterStep3Interactor.swift
-
15GME Remit/Modules/RegisterModules/NewRegisterStep3/Application Logic/Interactor/NewRegisterStep3InteractorIO.swift
-
13GME Remit/Modules/RegisterModules/NewRegisterStep3/Application Logic/Service/NewRegisterStep3Service.swift
-
11GME Remit/Modules/RegisterModules/NewRegisterStep3/Application Logic/Service/NewRegisterStep3ServiceType.swift
-
39GME Remit/Modules/RegisterModules/NewRegisterStep3/User Interface/Presenter/NewRegisterStep3Presenter.swift
-
275GME Remit/Modules/RegisterModules/NewRegisterStep3/User Interface/View/NewRegisterStep3.storyboard
-
91GME Remit/Modules/RegisterModules/NewRegisterStep3/User Interface/View/NewRegisterStep3ViewController.swift
-
42GME Remit/Modules/RegisterModules/NewRegisterStep3/User Interface/Wireframe/NewRegisterStep3Wireframe.swift
-
13GME Remit/Modules/RegisterModules/NewRegisterStep3/User Interface/Wireframe/NewRegisterStep3WireframeInput.swift
-
2GME Remit/Modules/SplashScreen/User Interface/View/SplashScreenViewController.swift
-
21GME Remit/Supported Files/Assets.xcassets/NewRegistration/call.imageset/Contents.json
-
BINGME Remit/Supported Files/Assets.xcassets/NewRegistration/call.imageset/call.png
@ -0,0 +1,30 @@ |
|||
// |
|||
// NewRegisterStep3Interactor.swift |
|||
// GME Remit |
|||
// |
|||
// Created by InKwon James Kim on 2019/12/03. |
|||
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. |
|||
// |
|||
|
|||
import Foundation |
|||
|
|||
class NewRegisterStep3Interactor { |
|||
|
|||
// MARK: Properties |
|||
|
|||
weak var output: NewRegisterStep3InteractorOutput? |
|||
private let service: NewRegisterStep3ServiceType |
|||
|
|||
// MARK: Initialization |
|||
|
|||
init(service: NewRegisterStep3ServiceType) { |
|||
self.service = service |
|||
} |
|||
|
|||
} |
|||
|
|||
// MARK: NewRegisterStep3 interactor input interface |
|||
|
|||
extension NewRegisterStep3Interactor: NewRegisterStep3InteractorInput { |
|||
|
|||
} |
@ -0,0 +1,15 @@ |
|||
// |
|||
// NewRegisterStep3InteractorIO.swift |
|||
// GME Remit |
|||
// |
|||
// Created by InKwon James Kim on 2019/12/03. |
|||
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. |
|||
// |
|||
|
|||
protocol NewRegisterStep3InteractorInput: class { |
|||
|
|||
} |
|||
|
|||
protocol NewRegisterStep3InteractorOutput: class { |
|||
|
|||
} |
@ -0,0 +1,13 @@ |
|||
// |
|||
// NewRegisterStep3Service.swift |
|||
// GME Remit |
|||
// |
|||
// Created by InKwon James Kim on 2019/12/03. |
|||
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. |
|||
// |
|||
|
|||
import Foundation |
|||
|
|||
class NewRegisterStep3Service: NewRegisterStep3ServiceType { |
|||
|
|||
} |
@ -0,0 +1,11 @@ |
|||
// |
|||
// NewRegisterStep3ServiceType.swift |
|||
// GME Remit |
|||
// |
|||
// Created by InKwon James Kim on 2019/12/03. |
|||
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. |
|||
// |
|||
|
|||
protocol NewRegisterStep3ServiceType: class { |
|||
|
|||
} |
@ -0,0 +1,39 @@ |
|||
// |
|||
// NewRegisterStep3Presenter.swift |
|||
// GME Remit |
|||
// |
|||
// Created by InKwon James Kim on 2019/12/03. |
|||
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. |
|||
// |
|||
|
|||
import RxSwift |
|||
import RxCocoa |
|||
|
|||
class NewRegisterStep3Presenter: ViewModelType { |
|||
var interactor: NewRegisterStep3InteractorInput? |
|||
var wireframe: NewRegisterStep3WireframeInput? |
|||
|
|||
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: NewRegisterStep3 interactor output interface |
|||
extension NewRegisterStep3Presenter: NewRegisterStep3InteractorOutput { |
|||
|
|||
} |
@ -0,0 +1,275 @@ |
|||
<?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> |
|||
<!--NewRegisterStep3--> |
|||
<scene sceneID="R60-Pu-Hpy"> |
|||
<objects> |
|||
<viewController storyboardIdentifier="NewRegisterStep3ViewController" title="NewRegisterStep3" id="HSb-ou-7T5" customClass="NewRegisterStep3ViewController" 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> |
|||
<scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" keyboardDismissMode="onDrag" translatesAutoresizingMaskIntoConstraints="NO" id="M8c-Mi-ase"> |
|||
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/> |
|||
<subviews> |
|||
<view contentMode="scaleToFill" placeholderIntrinsicWidth="375" placeholderIntrinsicHeight="447" translatesAutoresizingMaskIntoConstraints="NO" id="jWA-UF-Sha"> |
|||
<rect key="frame" x="0.0" y="0.0" width="375" height="497.5"/> |
|||
<subviews> |
|||
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="20" translatesAutoresizingMaskIntoConstraints="NO" id="gQK-Fd-sOJ"> |
|||
<rect key="frame" x="30" y="30" width="315" height="377.5"/> |
|||
<subviews> |
|||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Upload Pictures" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="a3p-P2-Ceh"> |
|||
<rect key="frame" x="0.0" y="0.0" width="315" height="20.5"/> |
|||
<fontDescription key="fontDescription" type="system" pointSize="17"/> |
|||
<nil key="textColor"/> |
|||
<nil key="highlightedColor"/> |
|||
</label> |
|||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="duk-DR-7jy"> |
|||
<rect key="frame" x="0.0" y="40.5" width="315" height="218"/> |
|||
<subviews> |
|||
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" distribution="fillEqually" spacing="30" translatesAutoresizingMaskIntoConstraints="NO" id="ptq-T7-eM6"> |
|||
<rect key="frame" x="0.0" y="0.0" width="315" height="218"/> |
|||
<subviews> |
|||
<view clipsSubviews="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="t68-8H-MjN" userLabel="ViewFront"> |
|||
<rect key="frame" x="0.0" y="0.0" width="315" height="94"/> |
|||
<subviews> |
|||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="4K1-dc-XGm"> |
|||
<rect key="frame" x="2" y="2" width="98" height="90"/> |
|||
<subviews> |
|||
<button opaque="NO" clipsSubviews="YES" contentMode="scaleAspectFit" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="mBW-7H-lkX"> |
|||
<rect key="frame" x="0.0" y="0.0" width="98" height="90"/> |
|||
<state key="normal" image="ic_camera"/> |
|||
</button> |
|||
</subviews> |
|||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
|||
<constraints> |
|||
<constraint firstAttribute="bottom" secondItem="mBW-7H-lkX" secondAttribute="bottom" id="6MC-hy-kfG"/> |
|||
<constraint firstItem="mBW-7H-lkX" firstAttribute="top" secondItem="4K1-dc-XGm" secondAttribute="top" id="7WX-xH-MIc"/> |
|||
<constraint firstAttribute="trailing" secondItem="mBW-7H-lkX" secondAttribute="trailing" id="FeB-uP-w30"/> |
|||
<constraint firstAttribute="width" constant="98" id="Hfh-3E-gMf"/> |
|||
<constraint firstItem="mBW-7H-lkX" firstAttribute="leading" secondItem="4K1-dc-XGm" secondAttribute="leading" id="dOI-Iw-Wax"/> |
|||
</constraints> |
|||
</view> |
|||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="5TQ-xY-8CD"> |
|||
<rect key="frame" x="102" y="2" width="211" height="90"/> |
|||
<subviews> |
|||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Passport" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="0l1-mD-dgz"> |
|||
<rect key="frame" x="8" y="27.5" width="195" height="35"/> |
|||
<constraints> |
|||
<constraint firstAttribute="height" constant="35" id="jGr-gE-Vtl"/> |
|||
</constraints> |
|||
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="14"/> |
|||
<color key="textColor" name="ThemeText"/> |
|||
<nil key="highlightedColor"/> |
|||
</label> |
|||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="right" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="dKL-fh-hso"> |
|||
<rect key="frame" x="8" y="65" width="58" height="24"/> |
|||
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="10"/> |
|||
<state key="normal" title="View Sample"> |
|||
<color key="titleColor" red="0.0" green="0.47843137250000001" blue="1" alpha="1" colorSpace="calibratedRGB"/> |
|||
</state> |
|||
</button> |
|||
</subviews> |
|||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
|||
<constraints> |
|||
<constraint firstAttribute="bottom" secondItem="dKL-fh-hso" secondAttribute="bottom" constant="1" id="CGp-hU-4mS"/> |
|||
<constraint firstItem="0l1-mD-dgz" firstAttribute="centerY" secondItem="5TQ-xY-8CD" secondAttribute="centerY" id="Zzk-eF-yG7"/> |
|||
<constraint firstItem="dKL-fh-hso" firstAttribute="leading" secondItem="5TQ-xY-8CD" secondAttribute="leading" constant="8" id="mMG-5N-Qoc"/> |
|||
<constraint firstAttribute="trailing" secondItem="0l1-mD-dgz" secondAttribute="trailing" constant="8" id="u1t-cr-4bh"/> |
|||
<constraint firstItem="0l1-mD-dgz" firstAttribute="leading" secondItem="5TQ-xY-8CD" secondAttribute="leading" constant="8" id="xrN-ZO-bkS"/> |
|||
</constraints> |
|||
</view> |
|||
</subviews> |
|||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
|||
<constraints> |
|||
<constraint firstItem="4K1-dc-XGm" firstAttribute="leading" secondItem="t68-8H-MjN" secondAttribute="leading" constant="2" id="09j-j1-KSs"/> |
|||
<constraint firstItem="5TQ-xY-8CD" firstAttribute="leading" secondItem="4K1-dc-XGm" secondAttribute="trailing" constant="2" id="8ag-sn-flm"/> |
|||
<constraint firstAttribute="bottom" secondItem="4K1-dc-XGm" secondAttribute="bottom" constant="2" id="Fv3-eT-UNu"/> |
|||
<constraint firstItem="4K1-dc-XGm" firstAttribute="top" secondItem="t68-8H-MjN" secondAttribute="top" constant="2" id="HAm-Yl-qTm"/> |
|||
<constraint firstAttribute="bottom" secondItem="5TQ-xY-8CD" secondAttribute="bottom" constant="2" id="dkG-bB-t9C"/> |
|||
<constraint firstAttribute="height" constant="94" id="g8v-07-TIb"/> |
|||
<constraint firstAttribute="trailing" secondItem="5TQ-xY-8CD" secondAttribute="trailing" constant="2" id="r3Y-FW-EZK"/> |
|||
<constraint firstItem="5TQ-xY-8CD" firstAttribute="top" secondItem="t68-8H-MjN" secondAttribute="top" constant="2" id="xFw-Sm-Kqf"/> |
|||
</constraints> |
|||
<userDefinedRuntimeAttributes> |
|||
<userDefinedRuntimeAttribute type="number" keyPath="cornerRadius"> |
|||
<integer key="value" value="10"/> |
|||
</userDefinedRuntimeAttribute> |
|||
</userDefinedRuntimeAttributes> |
|||
</view> |
|||
<view clipsSubviews="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="UcI-TZ-vhZ" userLabel="ViewBack"> |
|||
<rect key="frame" x="0.0" y="124" width="315" height="94"/> |
|||
<subviews> |
|||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="MAb-jJ-Np5"> |
|||
<rect key="frame" x="2" y="2" width="98" height="90"/> |
|||
<subviews> |
|||
<button opaque="NO" clipsSubviews="YES" contentMode="scaleAspectFit" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="sPR-Yj-N1a"> |
|||
<rect key="frame" x="0.0" y="0.0" width="98" height="90"/> |
|||
<state key="normal" image="ic_camera"/> |
|||
</button> |
|||
</subviews> |
|||
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
|||
<constraints> |
|||
<constraint firstAttribute="bottom" secondItem="sPR-Yj-N1a" secondAttribute="bottom" id="36z-ls-KuE"/> |
|||
<constraint firstItem="sPR-Yj-N1a" firstAttribute="leading" secondItem="MAb-jJ-Np5" secondAttribute="leading" id="Xlm-mG-SOT"/> |
|||
<constraint firstAttribute="trailing" secondItem="sPR-Yj-N1a" secondAttribute="trailing" id="eez-ea-zl8"/> |
|||
<constraint firstAttribute="width" constant="98" id="ewx-Nc-bKz"/> |
|||
<constraint firstItem="sPR-Yj-N1a" firstAttribute="top" secondItem="MAb-jJ-Np5" secondAttribute="top" id="yGv-g4-Ckb"/> |
|||
</constraints> |
|||
</view> |
|||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="oUO-c2-UZH"> |
|||
<rect key="frame" x="102" y="2" width="211" height="90"/> |
|||
<subviews> |
|||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="right" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="PYA-Hh-XIR"> |
|||
<rect key="frame" x="8" y="65" width="58" height="24"/> |
|||
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="10"/> |
|||
<state key="normal" title="View Sample"> |
|||
<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"> |
|||
<rect key="frame" x="8" y="27.5" width="195" height="35"/> |
|||
<constraints> |
|||
<constraint firstAttribute="height" constant="35" id="h6S-er-MeR"/> |
|||
</constraints> |
|||
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="14"/> |
|||
<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="gcF-1v-3iL" secondAttribute="trailing" constant="8" id="Oft-se-8HF"/> |
|||
<constraint firstItem="gcF-1v-3iL" firstAttribute="centerY" secondItem="oUO-c2-UZH" secondAttribute="centerY" id="eHQ-X5-0aC"/> |
|||
<constraint firstItem="PYA-Hh-XIR" firstAttribute="leading" secondItem="oUO-c2-UZH" secondAttribute="leading" constant="8" id="fbk-Ea-FDF"/> |
|||
<constraint firstAttribute="bottom" secondItem="PYA-Hh-XIR" secondAttribute="bottom" constant="1" id="tOG-Cz-DRC"/> |
|||
<constraint firstItem="gcF-1v-3iL" firstAttribute="leading" secondItem="oUO-c2-UZH" secondAttribute="leading" constant="8" id="vSc-JQ-JT5"/> |
|||
</constraints> |
|||
</view> |
|||
</subviews> |
|||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
|||
<constraints> |
|||
<constraint firstAttribute="bottom" secondItem="oUO-c2-UZH" secondAttribute="bottom" constant="2" id="3rI-JJ-rWi"/> |
|||
<constraint firstItem="oUO-c2-UZH" firstAttribute="leading" secondItem="MAb-jJ-Np5" secondAttribute="trailing" constant="2" id="Ibg-Jj-LlB"/> |
|||
<constraint firstItem="oUO-c2-UZH" firstAttribute="top" secondItem="UcI-TZ-vhZ" secondAttribute="top" constant="2" id="Zuo-BI-ta1"/> |
|||
<constraint firstAttribute="bottom" secondItem="MAb-jJ-Np5" secondAttribute="bottom" constant="2" id="pIy-Ij-DPU"/> |
|||
<constraint firstAttribute="height" constant="94" id="ty6-D7-TpI"/> |
|||
<constraint firstItem="MAb-jJ-Np5" firstAttribute="leading" secondItem="UcI-TZ-vhZ" secondAttribute="leading" constant="2" id="uWg-L7-jeM"/> |
|||
<constraint firstAttribute="trailing" secondItem="oUO-c2-UZH" secondAttribute="trailing" constant="2" id="vkh-lQ-QdT"/> |
|||
<constraint firstItem="MAb-jJ-Np5" firstAttribute="top" secondItem="UcI-TZ-vhZ" secondAttribute="top" constant="2" id="wGe-pB-khP"/> |
|||
</constraints> |
|||
<userDefinedRuntimeAttributes> |
|||
<userDefinedRuntimeAttribute type="number" keyPath="cornerRadius"> |
|||
<integer key="value" value="10"/> |
|||
</userDefinedRuntimeAttribute> |
|||
</userDefinedRuntimeAttributes> |
|||
</view> |
|||
</subviews> |
|||
</stackView> |
|||
</subviews> |
|||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
|||
<constraints> |
|||
<constraint firstItem="ptq-T7-eM6" firstAttribute="top" secondItem="duk-DR-7jy" secondAttribute="top" id="A0y-bB-EJz"/> |
|||
<constraint firstAttribute="bottom" secondItem="ptq-T7-eM6" secondAttribute="bottom" id="rhb-8k-q0U"/> |
|||
<constraint firstAttribute="trailing" secondItem="ptq-T7-eM6" secondAttribute="trailing" id="v6b-Sy-aCx"/> |
|||
<constraint firstItem="ptq-T7-eM6" firstAttribute="leading" secondItem="duk-DR-7jy" secondAttribute="leading" id="xZb-db-Euk"/> |
|||
</constraints> |
|||
</view> |
|||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="cEd-My-pP2"> |
|||
<rect key="frame" x="0.0" y="278.5" width="315" height="50"/> |
|||
<fontDescription key="fontDescription" type="system" pointSize="17"/> |
|||
<nil key="textColor"/> |
|||
<nil key="highlightedColor"/> |
|||
</label> |
|||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="yiP-RR-Uwk"> |
|||
<rect key="frame" x="0.0" y="348.5" width="315" height="29"/> |
|||
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Regular" family="San Francisco Display" pointSize="14"/> |
|||
<state key="normal" title="Terms and Conditions"> |
|||
<color key="titleColor" name="ThemeBlue"/> |
|||
</state> |
|||
</button> |
|||
</subviews> |
|||
</stackView> |
|||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="52r-RF-yfc"> |
|||
<rect key="frame" x="10" y="437.5" width="355" height="50"/> |
|||
<color key="backgroundColor" name="ThemeRed"/> |
|||
<constraints> |
|||
<constraint firstAttribute="height" constant="50" id="a5V-A0-LAl"/> |
|||
</constraints> |
|||
<fontDescription key="fontDescription" name="SanFranciscoDisplay-Medium" family="San Francisco Display" pointSize="17"/> |
|||
<state key="normal" title="Agree All Terms and Continue"> |
|||
<color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> |
|||
</state> |
|||
</button> |
|||
</subviews> |
|||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
|||
<constraints> |
|||
<constraint firstItem="gQK-Fd-sOJ" firstAttribute="top" secondItem="jWA-UF-Sha" secondAttribute="top" constant="30" id="8o0-5u-c0m"/> |
|||
<constraint firstItem="52r-RF-yfc" firstAttribute="top" secondItem="gQK-Fd-sOJ" secondAttribute="bottom" constant="30" id="GwC-6y-cjh"/> |
|||
<constraint firstItem="gQK-Fd-sOJ" firstAttribute="leading" secondItem="jWA-UF-Sha" secondAttribute="leading" constant="30" id="gwj-MO-l6O"/> |
|||
<constraint firstItem="52r-RF-yfc" firstAttribute="centerX" secondItem="jWA-UF-Sha" secondAttribute="centerX" id="sbS-Vu-0BW"/> |
|||
<constraint firstAttribute="trailing" secondItem="52r-RF-yfc" secondAttribute="trailing" constant="10" id="tdO-3s-sL9"/> |
|||
<constraint firstAttribute="bottom" secondItem="52r-RF-yfc" secondAttribute="bottom" constant="10" id="vwQ-IU-gvM"/> |
|||
<constraint firstAttribute="trailing" secondItem="gQK-Fd-sOJ" secondAttribute="trailing" constant="30" id="wZB-Ha-9jk"/> |
|||
<constraint firstItem="52r-RF-yfc" firstAttribute="leading" secondItem="jWA-UF-Sha" secondAttribute="leading" constant="10" id="zed-sS-ntU"/> |
|||
</constraints> |
|||
</view> |
|||
</subviews> |
|||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
|||
<constraints> |
|||
<constraint firstItem="jWA-UF-Sha" firstAttribute="leading" secondItem="M8c-Mi-ase" secondAttribute="leading" id="4k8-Ul-hqu"/> |
|||
<constraint firstItem="jWA-UF-Sha" firstAttribute="width" secondItem="M8c-Mi-ase" secondAttribute="width" id="CaU-nC-jAY"/> |
|||
<constraint firstAttribute="trailing" secondItem="jWA-UF-Sha" secondAttribute="trailing" id="Cvr-Jq-csl"/> |
|||
<constraint firstItem="jWA-UF-Sha" firstAttribute="top" secondItem="M8c-Mi-ase" secondAttribute="top" id="Moo-Tm-Jec"/> |
|||
<constraint firstAttribute="bottom" secondItem="jWA-UF-Sha" secondAttribute="bottom" id="crb-Zw-vNk"/> |
|||
</constraints> |
|||
</scrollView> |
|||
</subviews> |
|||
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
|||
<constraints> |
|||
<constraint firstItem="O1T-1R-Sun" firstAttribute="trailing" secondItem="M8c-Mi-ase" secondAttribute="trailing" id="1oD-eO-ZBb"/> |
|||
<constraint firstItem="M8c-Mi-ase" firstAttribute="top" secondItem="9Uc-9s-KgO" secondAttribute="top" id="4wF-P5-aID"/> |
|||
<constraint firstItem="M8c-Mi-ase" firstAttribute="leading" secondItem="9Uc-9s-KgO" secondAttribute="leading" id="DUe-2K-Fop"/> |
|||
<constraint firstItem="O1T-1R-Sun" firstAttribute="bottom" secondItem="M8c-Mi-ase" secondAttribute="bottom" id="Zje-bq-EMu"/> |
|||
</constraints> |
|||
<viewLayoutGuide key="safeArea" id="O1T-1R-Sun"/> |
|||
</view> |
|||
<connections> |
|||
<outlet property="continueButton" destination="52r-RF-yfc" id="f6g-cZ-92X"/> |
|||
</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_camera" width="100" height="90"/> |
|||
<namedColor name="ThemeBlue"> |
|||
<color red="0.18823529411764706" green="0.24313725490196078" blue="0.62352941176470589" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
|||
</namedColor> |
|||
<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> |
@ -0,0 +1,91 @@ |
|||
// |
|||
// NewRegisterStep3ViewController.swift |
|||
// GME Remit |
|||
// |
|||
// Created by InKwon James Kim on 2019/12/03. |
|||
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. |
|||
// |
|||
|
|||
import UIKit |
|||
import RxSwift |
|||
import RxCocoa |
|||
|
|||
class NewRegisterStep3ViewController: UIViewController { |
|||
|
|||
// MARK: Properties |
|||
var presenter: NewRegisterStep3Presenter! |
|||
weak var delegate: NewRegisterDelegate? |
|||
|
|||
private let disposeBag = DisposeBag() |
|||
// MARK: Computed Properties |
|||
|
|||
// MARK: IBOutlets |
|||
|
|||
@IBOutlet weak var continueButton: 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) |
|||
} |
|||
|
|||
// willMove -> It appears on the parent screen. |
|||
override func willMove(toParent parent: UIViewController?) { |
|||
print(#function) |
|||
if let `parent` = parent as UIViewController? { |
|||
print(parent) |
|||
} |
|||
} |
|||
|
|||
// It appears on the parent screen. -> didMove |
|||
override func didMove(toParent parent: UIViewController?) { |
|||
print(#function) |
|||
if let `parent` = parent as UIViewController? { |
|||
print(parent) |
|||
} |
|||
} |
|||
|
|||
// MARK: IBActions |
|||
|
|||
} |
|||
|
|||
// MARK: Other Functions |
|||
extension NewRegisterStep3ViewController { |
|||
|
|||
private func setup() { |
|||
setUI() |
|||
setBinding() |
|||
setUIBinding() |
|||
} |
|||
|
|||
private func setUI() { |
|||
continueButton.layer.cornerRadius = 5 |
|||
} |
|||
|
|||
private func setUIBinding() { |
|||
|
|||
} |
|||
|
|||
private func setBinding() { |
|||
let input = NewRegisterStep3Presenter.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) |
|||
} |
|||
} |
@ -0,0 +1,42 @@ |
|||
// |
|||
// NewRegisterStep3Wireframe.swift |
|||
// GME Remit |
|||
// |
|||
// Created by InKwon James Kim on 2019/12/03. |
|||
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. |
|||
// |
|||
|
|||
import UIKit |
|||
|
|||
class NewRegisterStep3Wireframe { |
|||
weak var view: UIViewController! |
|||
weak var delegate: NewRegisterDelegate? |
|||
} |
|||
|
|||
extension NewRegisterStep3Wireframe: NewRegisterStep3WireframeInput { |
|||
|
|||
var storyboardName: String {return "NewRegisterStep3"} |
|||
|
|||
func getMainView() -> UIViewController { |
|||
let service = NewRegisterStep3Service() |
|||
let interactor = NewRegisterStep3Interactor(service: service) |
|||
let presenter = NewRegisterStep3Presenter() |
|||
let viewController = viewControllerFromStoryboard(of: NewRegisterStep3ViewController.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() |
|||
} |
|||
} |
@ -0,0 +1,13 @@ |
|||
// |
|||
// NewRegisterStep3WireframeInput.swift |
|||
// GME Remit |
|||
// |
|||
// Created by InKwon James Kim on 2019/12/03. |
|||
//Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved. |
|||
// |
|||
|
|||
import Foundation |
|||
|
|||
protocol NewRegisterStep3WireframeInput: WireframeInput { |
|||
|
|||
} |
@ -0,0 +1,21 @@ |
|||
{ |
|||
"images" : [ |
|||
{ |
|||
"idiom" : "universal", |
|||
"filename" : "call.png", |
|||
"scale" : "1x" |
|||
}, |
|||
{ |
|||
"idiom" : "universal", |
|||
"scale" : "2x" |
|||
}, |
|||
{ |
|||
"idiom" : "universal", |
|||
"scale" : "3x" |
|||
} |
|||
], |
|||
"info" : { |
|||
"version" : 1, |
|||
"author" : "xcode" |
|||
} |
|||
} |
After Width: 25 | Height: 25 | Size: 1.3 KiB |
Write
Preview
Loading…
Cancel
Save
Reference in new issue