mvcgen 0.1.20 → 0.1.21
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +13 -15
- data/lib/mvcgen/generator.rb +61 -1
- data/lib/mvcgen/version.rb +1 -1
- data/lib/templates/default/swift/Controllers/Login/ForgetPasswordVC.swift +32 -39
- data/lib/templates/default/swift/Controllers/Login/LoginVC.swift +21 -11
- data/lib/templates/default/swift/Controllers/Login/RegisterVC.swift +69 -59
- data/lib/templates/default/swift/Controllers/Notifications/Cells/NotificationCell.swift +28 -1
- data/lib/templates/default/swift/Controllers/Notifications/NotificationsVC.swift +17 -27
- data/lib/templates/default/swift/Controllers/OtherLogin/ForgetPasswordTVC.swift +9 -10
- data/lib/templates/default/swift/Controllers/OtherLogin/LoginTVC.swift +1 -1
- data/lib/templates/default/swift/Controllers/OtherLogin/OtherRegisterVC.swift +11 -10
- data/lib/templates/default/swift/Controllers/OtherLogin/SelectLanguageVC.swift +22 -21
- data/lib/templates/default/swift/Controllers/OtherLogin/TermsAndConditionsVC.swift +8 -7
- data/lib/templates/default/swift/Controllers/Profile/AboutUsVC.swift +23 -11
- data/lib/templates/default/swift/Controllers/Profile/Cells/AboutUsImageCell.swift +21 -5
- data/lib/templates/default/swift/Controllers/Profile/Cells/DescriptionCell.swift +10 -0
- data/lib/templates/default/swift/Controllers/Profile/Cells/DestinationCell.swift +5 -0
- data/lib/templates/default/swift/Controllers/Profile/Cells/FavoriteCollectionCell.swift +2 -0
- data/lib/templates/default/swift/Controllers/Profile/Cells/ImagesCollectionViewCell.swift +12 -0
- data/lib/templates/default/swift/Controllers/Profile/ProfileContainerVC.swift +18 -14
- data/lib/templates/default/swift/Controllers/Profile/ProfileTVC.swift +65 -85
- data/lib/templates/default/swift/Controllers/Tutorial/TutorialVC.swift +12 -9
- data/lib/templates/default/swift/Extensions/Buttons.swift +0 -12
- data/lib/templates/default/swift/Extensions/{ArrayDuplicates.swift → Utils+Array.swift} +1 -1
- data/lib/templates/default/swift/Extensions/{Images.swift → Utils+Images.swift} +8 -7
- data/lib/templates/default/swift/Extensions/Utils+String.swift +34 -0
- data/lib/templates/default/swift/Extensions/Utils+UIButton.swift +21 -0
- data/lib/templates/default/swift/Extensions/{UIColorExtensions.swift → Utils+UIColor.swift} +1 -1
- data/lib/templates/default/swift/Extensions/{TableViewEmptyView.swift → Utils+UITableView.swift} +1 -2
- data/lib/templates/default/swift/Extensions/Utils+UITextField.swift +22 -0
- data/lib/templates/default/swift/Extensions/{GradientView.swift → Utils+UIView.swift} +82 -2
- data/lib/templates/default/swift/Extensions/{TapEffectExtension.swift → Utils+UIViewController.swift} +18 -1
- data/lib/templates/default/swift/Helper/Utils.swift +1 -1
- data/lib/templates/default/swift/UI/Storyboards/Home.storyboard +4 -4
- data/lib/templates/default/swift/UI/Views/EmptyTableView/Xibs/EmptyTableLabelView.xib +1 -1
- metadata +11 -18
- data/lib/templates/default/swift/Assets.xcassets/alert_beach.imageset/Contents.json +0 -21
- data/lib/templates/default/swift/Assets.xcassets/alert_beach.imageset/icons8-beach-64.png +0 -0
- data/lib/templates/default/swift/Assets.xcassets/alert_nobaggage.imageset/Contents.json +0 -21
- data/lib/templates/default/swift/Assets.xcassets/alert_nobaggage.imageset/icons8-no-baggage-100.png +0 -0
- data/lib/templates/default/swift/Assets.xcassets/alert_signpost.imageset/Contents.json +0 -21
- data/lib/templates/default/swift/Assets.xcassets/alert_signpost.imageset/icons8-signpost-64.png +0 -0
- data/lib/templates/default/swift/Assets.xcassets/alert_sunbed.imageset/Contents.json +0 -21
- data/lib/templates/default/swift/Assets.xcassets/alert_sunbed.imageset/sunbed.png +0 -0
- data/lib/templates/default/swift/Extensions/HideKeyboard.swift +0 -22
- data/lib/templates/default/swift/Extensions/InnerShadowExtension.swift +0 -83
@@ -16,6 +16,7 @@ class TutorialVC: UIViewController {
|
|
16
16
|
|
17
17
|
override func viewDidLoad() {
|
18
18
|
super.viewDidLoad()
|
19
|
+
|
19
20
|
skipButton.isHidden = true
|
20
21
|
|
21
22
|
// Uncomment next line to setup `PaperOnboarding` from code
|
@@ -24,6 +25,7 @@ class TutorialVC: UIViewController {
|
|
24
25
|
}
|
25
26
|
|
26
27
|
private func setupPaperOnboardingView() {
|
28
|
+
|
27
29
|
let onboarding = PaperOnboarding()
|
28
30
|
onboarding.dataSource = self
|
29
31
|
onboarding.delegate = self
|
@@ -80,32 +82,33 @@ extension TutorialVC: PaperOnboardingDelegate {
|
|
80
82
|
extension TutorialVC: PaperOnboardingDataSource {
|
81
83
|
|
82
84
|
func onboardingItem(at index: Int) -> OnboardingItemInfo {
|
85
|
+
|
83
86
|
let titleFont = UIFont(name: "Quicksand-Bold", size: 30.0) ?? UIFont.boldSystemFont(ofSize: 30.0)
|
84
87
|
let descriptionFont = UIFont(name: "Quicksand-Medium", size: 22.0) ?? UIFont.systemFont(ofSize: 22.0)
|
85
|
-
let welcomeLabel =
|
88
|
+
let welcomeLabel = "WELCOME"
|
86
89
|
|
87
90
|
let list = [
|
88
|
-
OnboardingItemInfo(informationImage:
|
91
|
+
OnboardingItemInfo(informationImage: Asset.welcome_01.image,
|
89
92
|
title: welcomeLabel,
|
90
|
-
description:
|
93
|
+
description: "First tutorial message!",
|
91
94
|
pageIcon: UIImage(named: "Tick")!,
|
92
95
|
color: Colors.firstGradientColor,
|
93
96
|
titleColor: UIColor.white, descriptionColor: UIColor.white, titleFont: titleFont, descriptionFont: descriptionFont),
|
94
|
-
OnboardingItemInfo(informationImage:
|
97
|
+
OnboardingItemInfo(informationImage: Asset.welcome_02.image,
|
95
98
|
title: "",
|
96
|
-
description:
|
99
|
+
description: "Second tutorial message!",
|
97
100
|
pageIcon: UIImage(named: "Tick")!,
|
98
101
|
color: Colors.secondGradientColor,
|
99
102
|
titleColor: UIColor.white, descriptionColor: UIColor.white, titleFont: titleFont, descriptionFont: descriptionFont),
|
100
|
-
OnboardingItemInfo(informationImage:
|
103
|
+
OnboardingItemInfo(informationImage: Asset.welcome_03.image,
|
101
104
|
title: "",
|
102
|
-
description:
|
105
|
+
description: "Third tutorial message!",
|
103
106
|
pageIcon: UIImage(named: "Tick")!,
|
104
107
|
color: Colors.thirdGradientColor,
|
105
108
|
titleColor: UIColor.white, descriptionColor: UIColor.white, titleFont: titleFont, descriptionFont: descriptionFont),
|
106
|
-
OnboardingItemInfo(informationImage:
|
109
|
+
OnboardingItemInfo(informationImage: Asset.welcome_04.image,
|
107
110
|
title: "",
|
108
|
-
description:
|
111
|
+
description: "Final tutorial message!",
|
109
112
|
pageIcon: UIImage(named: "Tick")!,
|
110
113
|
color: Colors.textColor,
|
111
114
|
titleColor: UIColor.white, descriptionColor: UIColor.white, titleFont: titleFont, descriptionFont: descriptionFont),
|
@@ -96,15 +96,3 @@ class GradientButton: UIButton {
|
|
96
96
|
}
|
97
97
|
}
|
98
98
|
|
99
|
-
extension UIButton {
|
100
|
-
|
101
|
-
func addShadow(){
|
102
|
-
// Shadow and Radius
|
103
|
-
self.layer.shadowColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.15).cgColor
|
104
|
-
self.layer.shadowOffset = CGSize(width: 0.0, height: 2.0)
|
105
|
-
self.layer.shadowOpacity = 1.0
|
106
|
-
self.layer.shadowRadius = 0.0
|
107
|
-
self.layer.masksToBounds = false
|
108
|
-
}
|
109
|
-
}
|
110
|
-
|
@@ -1,5 +1,5 @@
|
|
1
1
|
//
|
2
|
-
// Images.swift
|
2
|
+
// Utils+Images.swift
|
3
3
|
// MVCGEN
|
4
4
|
//
|
5
5
|
// Created by Daniel Martinez on 23/7/18.
|
@@ -16,14 +16,15 @@
|
|
16
16
|
|
17
17
|
enum Asset: String {
|
18
18
|
case logo = "logo"
|
19
|
-
case banks = "Banks"
|
20
|
-
case hotels = "Hotels"
|
21
|
-
case key = "Key"
|
22
|
-
case shoppingCart = "Shopping-cart"
|
23
|
-
case stores = "Stores"
|
24
|
-
case wallet = "Wallet"
|
25
19
|
case tick = "Tick"
|
26
20
|
case userTestPhoto = "photo"
|
21
|
+
case notifications = "notificaciones"
|
22
|
+
case notification = "notification"
|
23
|
+
case back = "Back"
|
24
|
+
case welcome_01 = "Welcome_001"
|
25
|
+
case welcome_02 = "Welcome_002"
|
26
|
+
case welcome_03 = "Welcome_003"
|
27
|
+
case welcome_04 = "Welcome_004"
|
27
28
|
|
28
29
|
var image: Image {
|
29
30
|
let bundle = Bundle(for: BundleToken.self)
|
@@ -0,0 +1,34 @@
|
|
1
|
+
//
|
2
|
+
// Utils+String.swift
|
3
|
+
// MVCGEN
|
4
|
+
//
|
5
|
+
// Created by Daniel Martinez on 23/7/18.
|
6
|
+
// Copyright © 2018 Houlak. All rights reserved.
|
7
|
+
//
|
8
|
+
|
9
|
+
extension String {
|
10
|
+
|
11
|
+
func isEmail() -> Bool {
|
12
|
+
|
13
|
+
let __firstpart = "[A-Z0-9a-z]([A-Z0-9a-z._%+-]{0,30}[A-Z0-9a-z])?"
|
14
|
+
let __serverpart = "([A-Z0-9a-z]([A-Z0-9a-z-]{0,30}[A-Z0-9a-z])?\\.){1,5}"
|
15
|
+
let __emailRegex = __firstpart + "@" + __serverpart + "[A-Za-z]{2,8}"
|
16
|
+
let __emailPredicate = NSPredicate(format: "SELF MATCHES %@", __emailRegex)
|
17
|
+
|
18
|
+
return __emailPredicate.evaluate(with: self)
|
19
|
+
}
|
20
|
+
|
21
|
+
func isName() -> Bool {
|
22
|
+
|
23
|
+
let nameRegEx = "[A-Za-z\\s]+"
|
24
|
+
let nameTest = NSPredicate(format:"SELF MATCHES %@", nameRegEx)
|
25
|
+
return nameTest.evaluate(with: self)
|
26
|
+
}
|
27
|
+
|
28
|
+
func isPhone() -> Bool {
|
29
|
+
|
30
|
+
let phoneRegEx = "[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\s\\./0-9]*"
|
31
|
+
let phoneTest = NSPredicate(format:"SELF MATCHES %@", phoneRegEx)
|
32
|
+
return phoneTest.evaluate(with: self)
|
33
|
+
}
|
34
|
+
}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
//
|
2
|
+
// Utils+UIButton.swift
|
3
|
+
// MVCGEN
|
4
|
+
//
|
5
|
+
// Created by Daniel Martinez on 23/7/18.
|
6
|
+
// Copyright © 2018 Houlak. All rights reserved.
|
7
|
+
//
|
8
|
+
|
9
|
+
import UIKit
|
10
|
+
|
11
|
+
extension UIButton {
|
12
|
+
|
13
|
+
func addShadow(){
|
14
|
+
// Shadow and Radius
|
15
|
+
self.layer.shadowColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.15).cgColor
|
16
|
+
self.layer.shadowOffset = CGSize(width: 0.0, height: 2.0)
|
17
|
+
self.layer.shadowOpacity = 1.0
|
18
|
+
self.layer.shadowRadius = 0.0
|
19
|
+
self.layer.masksToBounds = false
|
20
|
+
}
|
21
|
+
}
|
data/lib/templates/default/swift/Extensions/{TableViewEmptyView.swift → Utils+UITableView.swift}
RENAMED
@@ -1,5 +1,5 @@
|
|
1
1
|
//
|
2
|
-
//
|
2
|
+
// Utils+UITableView.swift
|
3
3
|
// MVCGEN
|
4
4
|
//
|
5
5
|
// Created by Daniel Martinez on 23/7/18.
|
@@ -8,7 +8,6 @@
|
|
8
8
|
|
9
9
|
import UIKit
|
10
10
|
|
11
|
-
|
12
11
|
extension UITableView {
|
13
12
|
|
14
13
|
func setEmptyTableLabelView(message: String, emptyIcon: String) {
|
@@ -0,0 +1,22 @@
|
|
1
|
+
//
|
2
|
+
// Utils+UITextField.swift
|
3
|
+
// MVCGEN
|
4
|
+
//
|
5
|
+
// Created by Daniel Martinez on 23/7/18.
|
6
|
+
// Copyright © 2018 Houlak. All rights reserved.
|
7
|
+
//
|
8
|
+
|
9
|
+
extension UITextField {
|
10
|
+
|
11
|
+
func isEmail() -> Bool {
|
12
|
+
return self.text.isEmail()
|
13
|
+
}
|
14
|
+
|
15
|
+
func isName() -> Bool {
|
16
|
+
return self.text.isName()
|
17
|
+
}
|
18
|
+
|
19
|
+
func isPhone() -> Bool {
|
20
|
+
return self.text.isPhone()
|
21
|
+
}
|
22
|
+
}
|
@@ -1,13 +1,91 @@
|
|
1
1
|
//
|
2
|
-
//
|
2
|
+
// Utils+UIView.swift
|
3
3
|
// MVCGEN
|
4
4
|
//
|
5
5
|
// Created by Daniel Martinez on 23/7/18.
|
6
6
|
// Copyright © 2018 Houlak. All rights reserved.
|
7
7
|
//
|
8
8
|
|
9
|
-
import Foundation
|
10
9
|
import UIKit
|
10
|
+
import Foundation
|
11
|
+
|
12
|
+
// MARK: - Ineer Shadow View
|
13
|
+
|
14
|
+
extension UIView {
|
15
|
+
|
16
|
+
// different inner shadow styles
|
17
|
+
public enum innerShadowSide
|
18
|
+
{
|
19
|
+
case all, left, right, top, bottom, topAndLeft, topAndRight, bottomAndLeft, bottomAndRight, exceptLeft, exceptRight, exceptTop, exceptBottom
|
20
|
+
}
|
21
|
+
|
22
|
+
// define function to add inner shadow
|
23
|
+
public func addInnerShadow(onSide: innerShadowSide, shadowColor: UIColor, shadowSize: CGFloat, cornerRadius: CGFloat = 0.0, shadowOpacity: Float)
|
24
|
+
{
|
25
|
+
// define and set a shaow layer
|
26
|
+
let shadowLayer = CAShapeLayer()
|
27
|
+
shadowLayer.frame = bounds
|
28
|
+
shadowLayer.shadowColor = shadowColor.cgColor
|
29
|
+
shadowLayer.shadowOffset = CGSize(width: 0.0, height: 0.0)
|
30
|
+
shadowLayer.shadowOpacity = shadowOpacity
|
31
|
+
shadowLayer.shadowRadius = shadowSize
|
32
|
+
shadowLayer.fillRule = kCAFillRuleEvenOdd
|
33
|
+
|
34
|
+
// define shadow path
|
35
|
+
let shadowPath = CGMutablePath()
|
36
|
+
|
37
|
+
// define outer rectangle to restrict drawing area
|
38
|
+
let insetRect = bounds.insetBy(dx: -shadowSize * 2.0, dy: -shadowSize * 2.0)
|
39
|
+
|
40
|
+
// define inner rectangle for mask
|
41
|
+
let innerFrame: CGRect = { () -> CGRect in
|
42
|
+
switch onSide
|
43
|
+
{
|
44
|
+
case .all:
|
45
|
+
return CGRect(x: 0.0, y: 0.0, width: frame.size.width, height: frame.size.height)
|
46
|
+
case .left:
|
47
|
+
return CGRect(x: 0.0, y: -shadowSize * 2.0, width: frame.size.width + shadowSize * 2.0, height: frame.size.height + shadowSize * 4.0)
|
48
|
+
case .right:
|
49
|
+
return CGRect(x: -shadowSize * 2.0, y: -shadowSize * 2.0, width: frame.size.width + shadowSize * 2.0, height: frame.size.height + shadowSize * 4.0)
|
50
|
+
case .top:
|
51
|
+
return CGRect(x: -shadowSize * 2.0, y: 0.0, width: frame.size.width + shadowSize * 4.0, height: frame.size.height + shadowSize * 2.0)
|
52
|
+
case.bottom:
|
53
|
+
return CGRect(x: -shadowSize * 2.0, y: -shadowSize * 2.0, width: frame.size.width + shadowSize * 4.0, height: frame.size.height + shadowSize * 2.0)
|
54
|
+
case .topAndLeft:
|
55
|
+
return CGRect(x: 0.0, y: 0.0, width: frame.size.width + shadowSize * 2.0, height: frame.size.height + shadowSize * 2.0)
|
56
|
+
case .topAndRight:
|
57
|
+
return CGRect(x: -shadowSize * 2.0, y: 0.0, width: frame.size.width + shadowSize * 2.0, height: frame.size.height + shadowSize * 2.0)
|
58
|
+
case .bottomAndLeft:
|
59
|
+
return CGRect(x: 0.0, y: -shadowSize * 2.0, width: frame.size.width + shadowSize * 2.0, height: frame.size.height + shadowSize * 2.0)
|
60
|
+
case .bottomAndRight:
|
61
|
+
return CGRect(x: -shadowSize * 2.0, y: -shadowSize * 2.0, width: frame.size.width + shadowSize * 2.0, height: frame.size.height + shadowSize * 2.0)
|
62
|
+
case .exceptLeft:
|
63
|
+
return CGRect(x: -shadowSize * 2.0, y: 0.0, width: frame.size.width + shadowSize * 2.0, height: frame.size.height)
|
64
|
+
case .exceptRight:
|
65
|
+
return CGRect(x: 0.0, y: 0.0, width: frame.size.width + shadowSize * 2.0, height: frame.size.height)
|
66
|
+
case .exceptTop:
|
67
|
+
return CGRect(x: 0.0, y: -shadowSize * 2.0, width: frame.size.width, height: frame.size.height + shadowSize * 2.0)
|
68
|
+
case .exceptBottom:
|
69
|
+
return CGRect(x: 0.0, y: 0.0, width: frame.size.width, height: frame.size.height + shadowSize * 2.0)
|
70
|
+
}
|
71
|
+
}()
|
72
|
+
|
73
|
+
// add outer and inner rectangle to shadow path
|
74
|
+
shadowPath.addRect(insetRect)
|
75
|
+
shadowPath.addRect(innerFrame)
|
76
|
+
|
77
|
+
// set shadow path as show layer's
|
78
|
+
shadowLayer.path = shadowPath
|
79
|
+
|
80
|
+
// add shadow layer as a sublayer
|
81
|
+
layer.addSublayer(shadowLayer)
|
82
|
+
|
83
|
+
// hide outside drawing area
|
84
|
+
clipsToBounds = true
|
85
|
+
}
|
86
|
+
}
|
87
|
+
|
88
|
+
// MARK: - GrdientView
|
11
89
|
|
12
90
|
typealias GradientPoints = (startPoint: CGPoint, endPoint: CGPoint)
|
13
91
|
|
@@ -119,3 +197,5 @@ extension UIView {
|
|
119
197
|
}
|
120
198
|
|
121
199
|
}
|
200
|
+
|
201
|
+
|
@@ -1,5 +1,5 @@
|
|
1
1
|
//
|
2
|
-
//
|
2
|
+
// Utils+UIViewController.swift
|
3
3
|
// MVCGEN
|
4
4
|
//
|
5
5
|
// Created by Daniel Martinez on 23/7/18.
|
@@ -8,6 +8,8 @@
|
|
8
8
|
|
9
9
|
import UIKit
|
10
10
|
|
11
|
+
// MARK: - Animations
|
12
|
+
|
11
13
|
extension UIViewController {
|
12
14
|
|
13
15
|
func setUnselectedColors(backgroundView: UIView, label: UILabel) {
|
@@ -46,3 +48,18 @@ extension UIViewController {
|
|
46
48
|
viewToTransform.transform = CGAffineTransform.identity
|
47
49
|
}
|
48
50
|
}
|
51
|
+
|
52
|
+
// MARK: - Keyboard
|
53
|
+
|
54
|
+
extension UIViewController {
|
55
|
+
|
56
|
+
func hideKeyboardWhenTappedAround() {
|
57
|
+
let tap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(UIViewController.dismissKeyboard))
|
58
|
+
view.addGestureRecognizer(tap)
|
59
|
+
|
60
|
+
}
|
61
|
+
|
62
|
+
@objc func dismissKeyboard() {
|
63
|
+
view.endEditing(true)
|
64
|
+
}
|
65
|
+
}
|
@@ -34,7 +34,7 @@ struct Endpoints {
|
|
34
34
|
static let readNotifications = "read_notifications"
|
35
35
|
}
|
36
36
|
|
37
|
-
struct
|
37
|
+
struct ColorConstants {
|
38
38
|
static let firstGradientColor = UIColor(hex: "71F0DF")
|
39
39
|
static let secondGradientColor = UIColor(hex: "397EB7")
|
40
40
|
static let thirdGradientColor = UIColor(hex: "425893")
|
@@ -87,7 +87,7 @@
|
|
87
87
|
<scene sceneID="fZ6-KG-qSG">
|
88
88
|
<objects>
|
89
89
|
<navigationController id="zLo-6j-Dkc" sceneMemberID="viewController">
|
90
|
-
<tabBarItem key="tabBarItem" title="" image="
|
90
|
+
<tabBarItem key="tabBarItem" title="" image="calendar" largeContentSizeImage="calendar" selectedImage="calendar" id="ZtI-te-uZc" customClass="RAMAnimatedTabBarItem" customModule="RAMAnimatedTabBarController">
|
91
91
|
<userDefinedRuntimeAttributes>
|
92
92
|
<userDefinedRuntimeAttribute type="color" keyPath="textColor">
|
93
93
|
<color key="value" red="0.066666666669999999" green="0.1215686275" blue="0.43921568630000002" alpha="1" colorSpace="calibratedRGB"/>
|
@@ -1121,7 +1121,7 @@
|
|
1121
1121
|
<scene sceneID="wOq-72-WnN">
|
1122
1122
|
<objects>
|
1123
1123
|
<navigationController id="504-EG-qbw" sceneMemberID="viewController">
|
1124
|
-
<tabBarItem key="tabBarItem" title="" image="
|
1124
|
+
<tabBarItem key="tabBarItem" title="" image="calendar" largeContentSizeImage="calendar" selectedImage="calendar" id="w5N-vp-LZS" customClass="RAMAnimatedTabBarItem" customModule="RAMAnimatedTabBarController">
|
1125
1125
|
<inset key="largeContentSizeImageInsets" minX="0.0" minY="1" maxX="0.0" maxY="1"/>
|
1126
1126
|
<userDefinedRuntimeAttributes>
|
1127
1127
|
<userDefinedRuntimeAttribute type="color" keyPath="textColor">
|
@@ -1440,7 +1440,7 @@
|
|
1440
1440
|
<image name="Back" width="50" height="50"/>
|
1441
1441
|
<image name="baggage" width="29" height="23"/>
|
1442
1442
|
<image name="edit" width="35" height="35"/>
|
1443
|
-
<image name="
|
1443
|
+
<image name="calendar" width="30" height="25"/>
|
1444
1444
|
<image name="icons8-delete" width="100" height="100"/>
|
1445
1445
|
<image name="imageView:CwA-pU-e9P:image" width="20" height="20">
|
1446
1446
|
<mutableData key="keyedArchiveRepresentation">
|
@@ -1848,7 +1848,7 @@ AAAAAAAAAAAAAAAAAD3RA
|
|
1848
1848
|
</image>
|
1849
1849
|
<image name="no-fav" width="44" height="41"/>
|
1850
1850
|
<image name="notificaciones" width="130" height="88"/>
|
1851
|
-
<image name="
|
1851
|
+
<image name="calendar" width="34" height="27"/>
|
1852
1852
|
<image name="tabBarItem:gX4-gq-oKY:image" width="48" height="48">
|
1853
1853
|
<mutableData key="keyedArchiveRepresentation">
|
1854
1854
|
YnBsaXN0MDDUAQIDBAUGVVZYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3ASAAGGoK8QEgcI
|
@@ -41,7 +41,7 @@
|
|
41
41
|
<constraint firstAttribute="width" constant="45" id="zQZ-CB-Snb"/>
|
42
42
|
</constraints>
|
43
43
|
</imageView>
|
44
|
-
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="
|
44
|
+
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Please try searching by other words" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" minimumScaleFactor="0.5" adjustsFontForContentSizeCategory="YES" translatesAutoresizingMaskIntoConstraints="NO" id="n45-cG-wqU">
|
45
45
|
<rect key="frame" x="50" y="225" width="275" height="45"/>
|
46
46
|
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
47
47
|
<fontDescription key="fontDescription" name="Quicksand-Medium" family="Quicksand" pointSize="18"/>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mvcgen
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.21
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel Martinez
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-01-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -131,14 +131,6 @@ files:
|
|
131
131
|
- lib/templates/default/swift/Assets.xcassets/Welcome_003.imageset/Icons_NotATour_Welcome_003.pdf
|
132
132
|
- lib/templates/default/swift/Assets.xcassets/Welcome_004.imageset/Contents.json
|
133
133
|
- lib/templates/default/swift/Assets.xcassets/Welcome_004.imageset/Icons_NotATour_Welcome_004.pdf
|
134
|
-
- lib/templates/default/swift/Assets.xcassets/alert_beach.imageset/Contents.json
|
135
|
-
- lib/templates/default/swift/Assets.xcassets/alert_beach.imageset/icons8-beach-64.png
|
136
|
-
- lib/templates/default/swift/Assets.xcassets/alert_nobaggage.imageset/Contents.json
|
137
|
-
- lib/templates/default/swift/Assets.xcassets/alert_nobaggage.imageset/icons8-no-baggage-100.png
|
138
|
-
- lib/templates/default/swift/Assets.xcassets/alert_signpost.imageset/Contents.json
|
139
|
-
- lib/templates/default/swift/Assets.xcassets/alert_signpost.imageset/icons8-signpost-64.png
|
140
|
-
- lib/templates/default/swift/Assets.xcassets/alert_sunbed.imageset/Contents.json
|
141
|
-
- lib/templates/default/swift/Assets.xcassets/alert_sunbed.imageset/sunbed.png
|
142
134
|
- lib/templates/default/swift/Assets.xcassets/arrow.imageset/Contents.json
|
143
135
|
- lib/templates/default/swift/Assets.xcassets/arrow.imageset/arrow.pdf
|
144
136
|
- lib/templates/default/swift/Assets.xcassets/baggage.imageset/Contents.json
|
@@ -253,18 +245,19 @@ files:
|
|
253
245
|
- lib/templates/default/swift/Controllers/Profile/ProfileContainerVC.swift
|
254
246
|
- lib/templates/default/swift/Controllers/Profile/ProfileTVC.swift
|
255
247
|
- lib/templates/default/swift/Controllers/Tutorial/TutorialVC.swift
|
256
|
-
- lib/templates/default/swift/Extensions/ArrayDuplicates.swift
|
257
248
|
- lib/templates/default/swift/Extensions/Buttons.swift
|
258
249
|
- lib/templates/default/swift/Extensions/CustomCamera.swift
|
259
|
-
- lib/templates/default/swift/Extensions/GradientView.swift
|
260
|
-
- lib/templates/default/swift/Extensions/HideKeyboard.swift
|
261
|
-
- lib/templates/default/swift/Extensions/Images.swift
|
262
|
-
- lib/templates/default/swift/Extensions/InnerShadowExtension.swift
|
263
|
-
- lib/templates/default/swift/Extensions/TableViewEmptyView.swift
|
264
|
-
- lib/templates/default/swift/Extensions/TapEffectExtension.swift
|
265
|
-
- lib/templates/default/swift/Extensions/UIColorExtensions.swift
|
266
250
|
- lib/templates/default/swift/Extensions/UnderlinedTextView.swift
|
267
251
|
- lib/templates/default/swift/Extensions/UnderlinedWithIconTextField.swift
|
252
|
+
- lib/templates/default/swift/Extensions/Utils+Array.swift
|
253
|
+
- lib/templates/default/swift/Extensions/Utils+Images.swift
|
254
|
+
- lib/templates/default/swift/Extensions/Utils+String.swift
|
255
|
+
- lib/templates/default/swift/Extensions/Utils+UIButton.swift
|
256
|
+
- lib/templates/default/swift/Extensions/Utils+UIColor.swift
|
257
|
+
- lib/templates/default/swift/Extensions/Utils+UITableView.swift
|
258
|
+
- lib/templates/default/swift/Extensions/Utils+UITextField.swift
|
259
|
+
- lib/templates/default/swift/Extensions/Utils+UIView.swift
|
260
|
+
- lib/templates/default/swift/Extensions/Utils+UIViewController.swift
|
268
261
|
- lib/templates/default/swift/Helper/APIHelper.swift
|
269
262
|
- lib/templates/default/swift/Helper/APIManager.swift
|
270
263
|
- lib/templates/default/swift/Helper/APIRequestBody.swift
|