Manos Chorianopoulos

CouponViewController redesign part1

...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
7 <key>Pods-SwiftWarplyFramework.xcscheme_^#shared#^_</key> 7 <key>Pods-SwiftWarplyFramework.xcscheme_^#shared#^_</key>
8 <dict> 8 <dict>
9 <key>orderHint</key> 9 <key>orderHint</key>
10 - <integer>1</integer> 10 + <integer>0</integer>
11 </dict> 11 </dict>
12 </dict> 12 </dict>
13 </dict> 13 </dict>
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
7 <key>SwiftWarplyFramework.xcscheme_^#shared#^_</key> 7 <key>SwiftWarplyFramework.xcscheme_^#shared#^_</key>
8 <dict> 8 <dict>
9 <key>orderHint</key> 9 <key>orderHint</key>
10 - <integer>0</integer> 10 + <integer>1</integer>
11 </dict> 11 </dict>
12 </dict> 12 </dict>
13 </dict> 13 </dict>
......
...@@ -30,8 +30,11 @@ import UIKit ...@@ -30,8 +30,11 @@ import UIKit
30 @IBOutlet weak var favoriteImage: UIImageView! 30 @IBOutlet weak var favoriteImage: UIImageView!
31 @IBOutlet weak var shareImage: UIImageView! 31 @IBOutlet weak var shareImage: UIImageView!
32 32
33 + @IBOutlet weak var merchantNameLabel: UILabel!
33 @IBOutlet weak var titleLabel: UILabel! 34 @IBOutlet weak var titleLabel: UILabel!
34 @IBOutlet weak var subtitleLabel: UILabel! 35 @IBOutlet weak var subtitleLabel: UILabel!
36 + @IBOutlet weak var expirationView: UIView!
37 + @IBOutlet weak var expirationImage: UIImageView!
35 @IBOutlet weak var expirationLabel: UILabel! 38 @IBOutlet weak var expirationLabel: UILabel!
36 @IBOutlet weak var detailsLabel: UILabel! 39 @IBOutlet weak var detailsLabel: UILabel!
37 40
...@@ -90,9 +93,19 @@ import UIKit ...@@ -90,9 +93,19 @@ import UIKit
90 super.viewDidLoad() 93 super.viewDidLoad()
91 94
92 // Show navigation bar for this screen (with back button) 95 // Show navigation bar for this screen (with back button)
93 - self.navigationController?.setNavigationBarHidden(false, animated: false) 96 + // self.navigationController?.setNavigationBarHidden(false, animated: false)
94 - setBackButton() 97 + // setBackButton()
95 - setNavigationTitle("Προσφορά") 98 + // setNavigationTitle("Προσφορά")
99 +
100 + self.navigationController?.setNavigationBarHidden(true, animated: false)
101 + addFloatingBackButton()
102 +
103 + for label in [merchantNameLabel, titleLabel, subtitleLabel, expirationLabel, detailsLabel] {
104 + label?.setContentHuggingPriority(.defaultHigh, for: .vertical)
105 + }
106 +
107 +
108 + couponImage.backgroundColor = UIColor(rgb: 0x00A3E033)
96 109
97 infoView.backgroundColor = UIColor(rgb: 0xFFFFFF) 110 infoView.backgroundColor = UIColor(rgb: 0xFFFFFF)
98 infoView.layer.cornerRadius = 10.0 111 infoView.layer.cornerRadius = 10.0
...@@ -106,6 +119,7 @@ import UIKit ...@@ -106,6 +119,7 @@ import UIKit
106 couponQRArrowImage.image = UIImage(named: "arrow_down", in: Bundle.frameworkResourceBundle, compatibleWith: nil) 119 couponQRArrowImage.image = UIImage(named: "arrow_down", in: Bundle.frameworkResourceBundle, compatibleWith: nil)
107 couponQRImage.image = UIImage(named: "barcode_2", in: Bundle.frameworkResourceBundle, compatibleWith: nil) 120 couponQRImage.image = UIImage(named: "barcode_2", in: Bundle.frameworkResourceBundle, compatibleWith: nil)
108 termsButtonArrowImage.image = UIImage(named: "arrow_down", in: Bundle.frameworkResourceBundle, compatibleWith: nil) 121 termsButtonArrowImage.image = UIImage(named: "arrow_down", in: Bundle.frameworkResourceBundle, compatibleWith: nil)
122 + expirationImage.image = UIImage(named: "clock", in: Bundle.frameworkResourceBundle, compatibleWith: nil)
109 123
110 infoLabel.font = UIFont(name: "PingLCG-Regular", size: 13) 124 infoLabel.font = UIFont(name: "PingLCG-Regular", size: 13)
111 infoLabel.textColor = UIColor(rgb: 0x020E1C) 125 infoLabel.textColor = UIColor(rgb: 0x020E1C)
...@@ -125,27 +139,33 @@ import UIKit ...@@ -125,27 +139,33 @@ import UIKit
125 couponQRContentHeightConstraint.constant = 0 139 couponQRContentHeightConstraint.constant = 0
126 couponQRContentView.isHidden = true 140 couponQRContentView.isHidden = true
127 141
128 - termsButtonTitleLabel.font = UIFont(name: "PingLCG-Bold", size: 16) 142 + expirationView.backgroundColor = UIColor(rgb: 0xDDEFFB)
129 - termsButtonTitleLabel.textColor = UIColor(rgb: 0x020E1C) 143 + expirationView.layer.cornerRadius = 6.0
130 - termsButtonTitleLabel.text = "Όροι Χρήσης" 144 + expirationView.layer.borderWidth = 1.0
145 + expirationView.layer.borderColor = UIColor(rgb: 0xCCE9FB).cgColor
146 +
147 + termsButtonTitleLabel.font = UIFont(name: "PingLCG-Bold", size: 15)
148 + termsButtonTitleLabel.textColor = UIColor(rgb: 0x5C6369)
149 + // termsButtonTitleLabel.text = "Όροι Χρήσης"
150 + termsButtonTitleLabel.text = "Offer terms of use"
131 termsButton.addTarget(self, action: #selector(toggleTerms), for: .touchUpInside) 151 termsButton.addTarget(self, action: #selector(toggleTerms), for: .touchUpInside)
132 termsLabelHeight.constant = 0 152 termsLabelHeight.constant = 0
133 153
134 - mapButton.titleLabel?.font = UIFont(name: "PingLCG-Bold", size: 16) 154 + mapButton.titleLabel?.font = UIFont(name: "PingLCG-Regular", size: 16)
135 - mapButton.setTitle("Καταστήματα κοντά μου", for: .normal) 155 + // mapButton.setTitle("Καταστήματα κοντά μου", for: .normal)
156 + mapButton.setTitle("Store near me", for: .normal)
136 mapButton.setTitleColor(UIColor(rgb: 0xFFFFFF), for: .normal) 157 mapButton.setTitleColor(UIColor(rgb: 0xFFFFFF), for: .normal)
137 mapButton.setTitleColor(UIColor(rgb: 0xFFFFFF), for: .highlighted) 158 mapButton.setTitleColor(UIColor(rgb: 0xFFFFFF), for: .highlighted)
138 - mapButton.layer.cornerRadius = 4.0 159 + mapButton.layer.cornerRadius = mapButton.bounds.height / 2
139 - mapButton.backgroundColor = UIColor(rgb: 0x000F1E) 160 + mapButton.backgroundColor = UIColor(rgb: 0x00A3E0)
140 - 161 +
141 - websiteButton.titleLabel?.font = UIFont(name: "PingLCG-Bold", size: 16) 162 + websiteButton.titleLabel?.font = UIFont(name: "PingLCG-Regular", size: 16)
142 - websiteButton.setTitle("Δες το website", for: .normal) 163 + // websiteButton.setTitle("Δες το website", for: .normal)
143 - websiteButton.setTitleColor(UIColor(rgb: 0x000F1E), for: .normal) 164 + websiteButton.setTitle("View website", for: .normal)
144 - websiteButton.setTitleColor(UIColor(rgb: 0x000F1E), for: .highlighted) 165 + websiteButton.setTitleColor(UIColor(rgb: 0x002430), for: .normal)
145 - websiteButton.backgroundColor = .clear 166 + websiteButton.setTitleColor(UIColor(rgb: 0x002430), for: .highlighted)
146 - websiteButton.layer.borderWidth = 1 167 + websiteButton.backgroundColor = UIColor(rgb: 0xDDEFFB)
147 - websiteButton.layer.borderColor = UIColor(rgb: 0x000F1E).cgColor 168 + websiteButton.layer.cornerRadius = websiteButton.bounds.height / 2
148 - websiteButton.layer.cornerRadius = 4.0
149 169
150 // Configure the view with coupon data 170 // Configure the view with coupon data
151 if let couponData = coupon { 171 if let couponData = coupon {
...@@ -153,6 +173,29 @@ import UIKit ...@@ -153,6 +173,29 @@ import UIKit
153 } 173 }
154 } 174 }
155 175
176 + public override func viewDidLayoutSubviews() {
177 + super.viewDidLayoutSubviews()
178 + mapButton.layer.cornerRadius = mapButton.bounds.height / 2
179 + websiteButton.layer.cornerRadius = websiteButton.bounds.height / 2
180 +
181 + couponImage.addDashedBorder(
182 + color: UIColor(rgb: 0x00A3E033),
183 + lineWidth: 1,
184 + dash: 3,
185 + gap: 3
186 + )
187 + }
188 +
189 + public override func viewWillAppear(_ animated: Bool) {
190 + super.viewWillAppear(animated)
191 + self.navigationController?.setNavigationBarHidden(true, animated: animated)
192 + }
193 +
194 + public override func viewWillDisappear(_ animated: Bool) {
195 + super.viewWillDisappear(animated)
196 + self.navigationController?.setNavigationBarHidden(false, animated: animated)
197 + }
198 +
156 // MARK: - Image Loading Helper 199 // MARK: - Image Loading Helper
157 200
158 private func loadRemoteImage(_ urlString: String, into imageView: UIImageView) { 201 private func loadRemoteImage(_ urlString: String, into imageView: UIImageView) {
...@@ -177,24 +220,34 @@ import UIKit ...@@ -177,24 +220,34 @@ import UIKit
177 // Favorite — default to not favorite for now 220 // Favorite — default to not favorite for now
178 favoriteImage.image = UIImage(named: "favorite2_empty", in: Bundle.frameworkResourceBundle, compatibleWith: nil) 221 favoriteImage.image = UIImage(named: "favorite2_empty", in: Bundle.frameworkResourceBundle, compatibleWith: nil)
179 222
223 + merchantNameLabel.font = UIFont(name: "PingLCG-Bold", size: 15)
224 + merchantNameLabel.textColor = UIColor(rgb: 0x9BA1A6)
225 + merchantNameLabel.text = coupon.couponset_data?._merchant?._name
226 +
180 // Title — from couponset_data name 227 // Title — from couponset_data name
181 titleLabel.font = UIFont(name: "PingLCG-Bold", size: 24) 228 titleLabel.font = UIFont(name: "PingLCG-Bold", size: 24)
182 - titleLabel.textColor = UIColor(rgb: 0xF2709D) 229 + titleLabel.textColor = UIColor(rgb: 0x000F1E)
183 titleLabel.text = coupon.couponset_data?._name ?? "" 230 titleLabel.text = coupon.couponset_data?._name ?? ""
184 231
185 // Subtitle — from couponset_data short_description 232 // Subtitle — from couponset_data short_description
186 subtitleLabel.font = UIFont(name: "PingLCG-Regular", size: 18) 233 subtitleLabel.font = UIFont(name: "PingLCG-Regular", size: 18)
187 - subtitleLabel.textColor = UIColor(rgb: 0x020E1C) 234 + subtitleLabel.textColor = UIColor(rgb: 0x000F1E)
188 subtitleLabel.text = coupon.couponset_data?._short_description ?? "" 235 subtitleLabel.text = coupon.couponset_data?._short_description ?? ""
189 236
190 // Expiration — already formatted as "dd/MM/yyyy" by CouponItemModel 237 // Expiration — already formatted as "dd/MM/yyyy" by CouponItemModel
191 - expirationLabel.font = UIFont(name: "PingLCG-Regular", size: 14) 238 + expirationLabel.font = UIFont(name: "PingLCG-Bold", size: 13)
192 - expirationLabel.textColor = UIColor(rgb: 0x020E1C) 239 + expirationLabel.textColor = UIColor(rgb: 0x002430)
193 if let expiration = coupon.expiration, !expiration.isEmpty { 240 if let expiration = coupon.expiration, !expiration.isEmpty {
194 - expirationLabel.text = "Η προσφορά ισχύει έως " + expiration 241 + // TODO: FIX date format
242 + expirationLabel.text = "Valid until " + expiration
195 } else { 243 } else {
196 expirationLabel.text = "" 244 expirationLabel.text = ""
197 } 245 }
246 + // if let expiration = coupon.expiration, !expiration.isEmpty {
247 + // expirationLabel.text = "Η προσφορά ισχύει έως " + expiration
248 + // } else {
249 + // expirationLabel.text = ""
250 + // }
198 251
199 // Description — from couponset_data description 252 // Description — from couponset_data description
200 setupExpandableDetails(with: coupon) 253 setupExpandableDetails(with: coupon)
...@@ -215,8 +268,8 @@ import UIKit ...@@ -215,8 +268,8 @@ import UIKit
215 couponQRTitleLabel.text = "Barcode Κουπονιού" 268 couponQRTitleLabel.text = "Barcode Κουπονιού"
216 269
217 // Terms — from couponset_data terms 270 // Terms — from couponset_data terms
218 - termsLabel.font = UIFont(name: "PingLCG-Regular", size: 16) 271 + termsLabel.font = UIFont(name: "PingLCG-Regular", size: 15)
219 - termsLabel.textColor = UIColor(rgb: 0x020E1C) 272 + termsLabel.textColor = UIColor(rgb: 0x5C6369)
220 let termsText = coupon.couponset_data?._terms ?? "" 273 let termsText = coupon.couponset_data?._terms ?? ""
221 termsLabel.text = termsText.isEmpty ? "Δεν υπάρχουν διαθέσιμοι όροι χρήσης." : termsText 274 termsLabel.text = termsText.isEmpty ? "Δεν υπάρχουν διαθέσιμοι όροι χρήσης." : termsText
222 } 275 }
...@@ -243,8 +296,8 @@ import UIKit ...@@ -243,8 +296,8 @@ import UIKit
243 fullDetailsText = "" 296 fullDetailsText = ""
244 } 297 }
245 298
246 - detailsLabel.font = UIFont(name: "PingLCG-Regular", size: 18) 299 + detailsLabel.font = UIFont(name: "PingLCG-Regular", size: 16)
247 - detailsLabel.textColor = UIColor(rgb: 0x020E1C) 300 + detailsLabel.textColor = UIColor(rgb: 0x5C6369)
248 301
249 updateDetailsText() 302 updateDetailsText()
250 303
...@@ -257,8 +310,11 @@ import UIKit ...@@ -257,8 +310,11 @@ import UIKit
257 if isDetailsExpanded { 310 if isDetailsExpanded {
258 // Show full text with "Λιγότερα" 311 // Show full text with "Λιγότερα"
259 if (shouldTruncaitDetails) { 312 if (shouldTruncaitDetails) {
260 - let fullTextWithLess = fullDetailsText + " Λιγότερα" 313 + // let fullTextWithLess = fullDetailsText + " Λιγότερα"
261 - let attributedString = createAttributedString(text: fullTextWithLess, linkText: "Λιγότερα") 314 + // let attributedString = createAttributedString(text: fullTextWithLess, linkText: "Λιγότερα")
315 +
316 + let fullTextWithLess = fullDetailsText + " View less"
317 + let attributedString = createAttributedString(text: fullTextWithLess, linkText: "View less")
262 detailsLabel.attributedText = attributedString 318 detailsLabel.attributedText = attributedString
263 } else { 319 } else {
264 detailsLabel.text = fullDetailsText 320 detailsLabel.text = fullDetailsText
...@@ -266,8 +322,11 @@ import UIKit ...@@ -266,8 +322,11 @@ import UIKit
266 detailsLabel.numberOfLines = 0 322 detailsLabel.numberOfLines = 0
267 } else { 323 } else {
268 // Calculate approximate characters for 4 lines and truncate if needed 324 // Calculate approximate characters for 4 lines and truncate if needed
325 + // let truncatedText = getTruncatedTextForFourLines()
326 + // let attributedString = createAttributedString(text: truncatedText, linkText: "Περισσότερα")
327 +
269 let truncatedText = getTruncatedTextForFourLines() 328 let truncatedText = getTruncatedTextForFourLines()
270 - let attributedString = createAttributedString(text: truncatedText, linkText: "Περισσότερα") 329 + let attributedString = createAttributedString(text: truncatedText, linkText: "View more")
271 detailsLabel.attributedText = attributedString 330 detailsLabel.attributedText = attributedString
272 detailsLabel.numberOfLines = 4 331 detailsLabel.numberOfLines = 4
273 } 332 }
...@@ -281,7 +340,8 @@ import UIKit ...@@ -281,7 +340,8 @@ import UIKit
281 let charactersPerLine = Int(labelWidth / averageCharWidth) 340 let charactersPerLine = Int(labelWidth / averageCharWidth)
282 let maxCharactersFor4Lines = charactersPerLine * 4 341 let maxCharactersFor4Lines = charactersPerLine * 4
283 342
284 - let moreText = " Περισσότερα" 343 + // let moreText = " Περισσότερα"
344 + let moreText = " View more"
285 let ellipsis = "..." 345 let ellipsis = "..."
286 let reservedCharacters = ellipsis.count + moreText.count + 15 346 let reservedCharacters = ellipsis.count + moreText.count + 15
287 347
...@@ -306,14 +366,14 @@ import UIKit ...@@ -306,14 +366,14 @@ import UIKit
306 366
307 // Regular text attributes 367 // Regular text attributes
308 let regularAttributes: [NSAttributedString.Key: Any] = [ 368 let regularAttributes: [NSAttributedString.Key: Any] = [
309 - .font: UIFont(name: "PingLCG-Regular", size: 18) ?? UIFont.systemFont(ofSize: 18), 369 + .font: UIFont(name: "PingLCG-Regular", size: 16) ?? UIFont.systemFont(ofSize: 16),
310 - .foregroundColor: UIColor(rgb: 0x020E1C) 370 + .foregroundColor: UIColor(rgb: 0x5C6369)
311 ] 371 ]
312 372
313 // Link text attributes (blue color) 373 // Link text attributes (blue color)
314 let linkAttributes: [NSAttributedString.Key: Any] = [ 374 let linkAttributes: [NSAttributedString.Key: Any] = [
315 - .font: UIFont(name: "PingLCG-Regular", size: 18) ?? UIFont.systemFont(ofSize: 18), 375 + .font: UIFont(name: "PingLCG-Bold", size: 16) ?? UIFont.systemFont(ofSize: 16),
316 - .foregroundColor: UIColor(rgb: 0x00A8E8) // Blue color 376 + .foregroundColor: UIColor(rgb: 0x1D2023) // Blue color
317 ] 377 ]
318 378
319 // Apply regular attributes to entire text 379 // Apply regular attributes to entire text
......
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
4 <dependencies> 4 <dependencies>
5 <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="24504"/> 5 <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="24504"/>
6 <capability name="Safe area layout guides" minToolsVersion="9.0"/> 6 <capability name="Safe area layout guides" minToolsVersion="9.0"/>
7 - <capability name="System colors in document resources" minToolsVersion="11.0"/>
8 <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> 7 <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
9 </dependencies> 8 </dependencies>
10 <objects> 9 <objects>
...@@ -30,12 +29,15 @@ ...@@ -30,12 +29,15 @@
30 <outlet property="couponQRImage" destination="Z9w-Ue-Lij" id="cIj-vB-EMz"/> 29 <outlet property="couponQRImage" destination="Z9w-Ue-Lij" id="cIj-vB-EMz"/>
31 <outlet property="couponQRTitleLabel" destination="NZj-6a-KB7" id="Yr1-32-jxM"/> 30 <outlet property="couponQRTitleLabel" destination="NZj-6a-KB7" id="Yr1-32-jxM"/>
32 <outlet property="detailsLabel" destination="X7C-0H-IhU" id="fvt-P2-urI"/> 31 <outlet property="detailsLabel" destination="X7C-0H-IhU" id="fvt-P2-urI"/>
33 - <outlet property="expirationLabel" destination="HLR-Nk-7Gm" id="sRz-Ot-p9b"/> 32 + <outlet property="expirationImage" destination="4eM-RK-Ea8" id="gmz-mL-1T1"/>
33 + <outlet property="expirationLabel" destination="Tmg-cP-HoT" id="VUg-g6-08K"/>
34 + <outlet property="expirationView" destination="UAA-HC-ugR" id="pqO-u1-BUY"/>
34 <outlet property="favoriteImage" destination="1Kx-s2-p1l" id="kMd-LA-04k"/> 35 <outlet property="favoriteImage" destination="1Kx-s2-p1l" id="kMd-LA-04k"/>
35 <outlet property="infoImage" destination="tFA-1H-T5S" id="Pat-1s-nbE"/> 36 <outlet property="infoImage" destination="tFA-1H-T5S" id="Pat-1s-nbE"/>
36 <outlet property="infoLabel" destination="K34-LM-bC1" id="wIV-dh-aQs"/> 37 <outlet property="infoLabel" destination="K34-LM-bC1" id="wIV-dh-aQs"/>
37 <outlet property="infoView" destination="89U-JU-Imv" id="w8A-vj-7Lb"/> 38 <outlet property="infoView" destination="89U-JU-Imv" id="w8A-vj-7Lb"/>
38 <outlet property="mapButton" destination="j1U-rV-0FP" id="K5C-V5-ejo"/> 39 <outlet property="mapButton" destination="j1U-rV-0FP" id="K5C-V5-ejo"/>
40 + <outlet property="merchantNameLabel" destination="pox-mq-9AA" id="XP5-vR-AQx"/>
39 <outlet property="shareImage" destination="WjF-6P-8Wn" id="f7E-u8-Efc"/> 41 <outlet property="shareImage" destination="WjF-6P-8Wn" id="f7E-u8-Efc"/>
40 <outlet property="subtitleLabel" destination="VJr-Mc-WMf" id="D5i-m9-5pG"/> 42 <outlet property="subtitleLabel" destination="VJr-Mc-WMf" id="D5i-m9-5pG"/>
41 <outlet property="termsButton" destination="Id4-Xw-01i" id="rZ1-hr-bSI"/> 43 <outlet property="termsButton" destination="Id4-Xw-01i" id="rZ1-hr-bSI"/>
...@@ -61,7 +63,7 @@ ...@@ -61,7 +63,7 @@
61 <rect key="frame" x="0.0" y="0.0" width="393" height="734"/> 63 <rect key="frame" x="0.0" y="0.0" width="393" height="734"/>
62 <subviews> 64 <subviews>
63 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="qrm-40-JLT" userLabel="Scroll Content View"> 65 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="qrm-40-JLT" userLabel="Scroll Content View">
64 - <rect key="frame" x="0.0" y="0.0" width="393" height="1177"/> 66 + <rect key="frame" x="0.0" y="0.0" width="393" height="1224.3333333333333"/>
65 <subviews> 67 <subviews>
66 <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="Xiw-td-OMd" userLabel="Coupon Image View"> 68 <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="Xiw-td-OMd" userLabel="Coupon Image View">
67 <rect key="frame" x="0.0" y="0.0" width="393" height="211"/> 69 <rect key="frame" x="0.0" y="0.0" width="393" height="211"/>
...@@ -70,6 +72,12 @@ ...@@ -70,6 +72,12 @@
70 <constraint firstAttribute="height" constant="211" id="fMe-eO-hFu"/> 72 <constraint firstAttribute="height" constant="211" id="fMe-eO-hFu"/>
71 </constraints> 73 </constraints>
72 </imageView> 74 </imageView>
75 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="pox-mq-9AA" userLabel="Merchant Name Label">
76 + <rect key="frame" x="24" y="235" width="273" height="20.333333333333343"/>
77 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
78 + <nil key="textColor"/>
79 + <nil key="highlightedColor"/>
80 + </label>
73 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="89U-JU-Imv" userLabel="Info View"> 81 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="89U-JU-Imv" userLabel="Info View">
74 <rect key="frame" x="239" y="17" width="138" height="20.666666666666671"/> 82 <rect key="frame" x="239" y="17" width="138" height="20.666666666666671"/>
75 <subviews> 83 <subviews>
...@@ -98,7 +106,7 @@ ...@@ -98,7 +106,7 @@
98 </constraints> 106 </constraints>
99 </view> 107 </view>
100 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="u54-xs-f5a" userLabel="Title Label"> 108 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="u54-xs-f5a" userLabel="Title Label">
101 - <rect key="frame" x="24" y="234" width="249" height="20.333333333333343"/> 109 + <rect key="frame" x="24" y="274.33333333333331" width="345" height="20.333333333333314"/>
102 <fontDescription key="fontDescription" type="system" pointSize="17"/> 110 <fontDescription key="fontDescription" type="system" pointSize="17"/>
103 <nil key="textColor"/> 111 <nil key="textColor"/>
104 <nil key="highlightedColor"/> 112 <nil key="highlightedColor"/>
...@@ -112,45 +120,67 @@ ...@@ -112,45 +120,67 @@
112 </constraints> 120 </constraints>
113 </imageView> 121 </imageView>
114 <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="WjF-6P-8Wn" userLabel="Share Image View"> 122 <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="WjF-6P-8Wn" userLabel="Share Image View">
115 - <rect key="frame" x="335" y="228" width="40" height="40"/> 123 + <rect key="frame" x="321" y="224" width="48" height="48"/>
116 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> 124 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
117 <constraints> 125 <constraints>
118 - <constraint firstAttribute="height" constant="40" id="Hb1-K6-gef"/> 126 + <constraint firstAttribute="height" constant="48" id="Hb1-K6-gef"/>
119 - <constraint firstAttribute="width" constant="40" id="fIZ-xu-SFW"/> 127 + <constraint firstAttribute="width" constant="48" id="fIZ-xu-SFW"/>
120 </constraints> 128 </constraints>
121 </imageView> 129 </imageView>
122 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="VJr-Mc-WMf" userLabel="Subtitle Label"> 130 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="VJr-Mc-WMf" userLabel="Subtitle Label">
123 - <rect key="frame" x="24" y="254.33333333333334" width="345" height="20.333333333333343"/> 131 + <rect key="frame" x="24" y="304.66666666666669" width="345" height="20.333333333333314"/>
124 - <fontDescription key="fontDescription" type="system" pointSize="17"/>
125 - <nil key="textColor"/>
126 - <nil key="highlightedColor"/>
127 - </label>
128 - <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="HLR-Nk-7Gm" userLabel="Expiration Label">
129 - <rect key="frame" x="24" y="288.66666666666669" width="345" height="20.333333333333314"/>
130 <fontDescription key="fontDescription" type="system" pointSize="17"/> 132 <fontDescription key="fontDescription" type="system" pointSize="17"/>
131 <nil key="textColor"/> 133 <nil key="textColor"/>
132 <nil key="highlightedColor"/> 134 <nil key="highlightedColor"/>
133 </label> 135 </label>
136 + <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="UAA-HC-ugR" userLabel="Expiration View">
137 + <rect key="frame" x="24" y="347" width="76.333333333333329" height="34.333333333333314"/>
138 + <subviews>
139 + <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="4eM-RK-Ea8" userLabel="Expiration Image">
140 + <rect key="frame" x="10" y="10.333333333333314" width="14" height="14"/>
141 + <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
142 + <constraints>
143 + <constraint firstAttribute="width" constant="14" id="9Ue-xi-UMb"/>
144 + <constraint firstAttribute="height" constant="14" id="ABs-vb-mU6"/>
145 + </constraints>
146 + </imageView>
147 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Tmg-cP-HoT" userLabel="Expiration Label">
148 + <rect key="frame" x="28.000000000000004" y="6.9999999999999982" width="41.333333333333343" height="20.333333333333329"/>
149 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
150 + <nil key="textColor"/>
151 + <nil key="highlightedColor"/>
152 + </label>
153 + </subviews>
154 + <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
155 + <constraints>
156 + <constraint firstItem="4eM-RK-Ea8" firstAttribute="centerY" secondItem="UAA-HC-ugR" secondAttribute="centerY" id="ISd-iY-iBi"/>
157 + <constraint firstAttribute="trailing" secondItem="Tmg-cP-HoT" secondAttribute="trailing" constant="7" id="MoA-y4-soR"/>
158 + <constraint firstItem="Tmg-cP-HoT" firstAttribute="top" secondItem="UAA-HC-ugR" secondAttribute="top" constant="7" id="PpE-ps-7BW"/>
159 + <constraint firstAttribute="bottom" secondItem="Tmg-cP-HoT" secondAttribute="bottom" constant="7" id="ZUR-aj-Dwo"/>
160 + <constraint firstItem="Tmg-cP-HoT" firstAttribute="leading" secondItem="4eM-RK-Ea8" secondAttribute="trailing" constant="4" id="djk-Om-fZS"/>
161 + <constraint firstItem="4eM-RK-Ea8" firstAttribute="leading" secondItem="UAA-HC-ugR" secondAttribute="leading" constant="10" id="tjR-b3-maN"/>
162 + </constraints>
163 + </view>
134 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="X7C-0H-IhU" userLabel="Details Label"> 164 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="X7C-0H-IhU" userLabel="Details Label">
135 - <rect key="frame" x="24" y="329" width="345" height="20.333333333333314"/> 165 + <rect key="frame" x="24" y="418.33333333333337" width="345" height="20.333333333333314"/>
136 <fontDescription key="fontDescription" type="system" pointSize="17"/> 166 <fontDescription key="fontDescription" type="system" pointSize="17"/>
137 <nil key="textColor"/> 167 <nil key="textColor"/>
138 <nil key="highlightedColor"/> 168 <nil key="highlightedColor"/>
139 </label> 169 </label>
140 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ElJ-Te-N4M" userLabel="CouponCodeContainerView"> 170 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ElJ-Te-N4M" userLabel="CouponCodeContainerView">
141 - <rect key="frame" x="24" y="383.33333333333331" width="345" height="134.33333333333331"/> 171 + <rect key="frame" x="24" y="478.66666666666657" width="345" height="134.33333333333331"/>
142 <subviews> 172 <subviews>
143 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="cTO-BG-Gzi" userLabel="CouponCodeHeaderView"> 173 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="cTO-BG-Gzi" userLabel="CouponCodeHeaderView">
144 <rect key="frame" x="0.0" y="0.0" width="345" height="54.333333333333336"/> 174 <rect key="frame" x="0.0" y="0.0" width="345" height="54.333333333333336"/>
145 <subviews> 175 <subviews>
146 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="lEF-bh-hOi" userLabel="CouponCodeTitleLabel"> 176 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="lEF-bh-hOi" userLabel="CouponCodeTitleLabel">
147 - <rect key="frame" x="17" y="17.000000000000057" width="277" height="20.333333333333329"/> 177 + <rect key="frame" x="17" y="17" width="277" height="20.333333333333329"/>
148 <fontDescription key="fontDescription" type="system" pointSize="17"/> 178 <fontDescription key="fontDescription" type="system" pointSize="17"/>
149 <nil key="textColor"/> 179 <nil key="textColor"/>
150 <nil key="highlightedColor"/> 180 <nil key="highlightedColor"/>
151 </label> 181 </label>
152 <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="YoJ-w2-mm9" userLabel="CouponCodeArrowImage"> 182 <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="YoJ-w2-mm9" userLabel="CouponCodeArrowImage">
153 - <rect key="frame" x="311" y="20.666666666666686" width="13" height="13"/> 183 + <rect key="frame" x="311" y="20.666666666666742" width="13" height="13"/>
154 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> 184 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
155 <constraints> 185 <constraints>
156 <constraint firstAttribute="width" constant="13" id="627-N9-Nwq"/> 186 <constraint firstAttribute="width" constant="13" id="627-N9-Nwq"/>
...@@ -181,7 +211,7 @@ ...@@ -181,7 +211,7 @@
181 </constraints> 211 </constraints>
182 </view> 212 </view>
183 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="wT1-HY-mg9" userLabel="CouponCodeContentView"> 213 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="wT1-HY-mg9" userLabel="CouponCodeContentView">
184 - <rect key="frame" x="0.0" y="54.333333333333314" width="345" height="80"/> 214 + <rect key="frame" x="0.0" y="54.333333333333371" width="345" height="80"/>
185 <subviews> 215 <subviews>
186 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="2Fn-5d-j8v" userLabel="CouponCodeValueLabel"> 216 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="2Fn-5d-j8v" userLabel="CouponCodeValueLabel">
187 <rect key="frame" x="16.999999999999996" y="26" width="56.666666666666657" height="28"/> 217 <rect key="frame" x="16.999999999999996" y="26" width="56.666666666666657" height="28"/>
...@@ -190,7 +220,7 @@ ...@@ -190,7 +220,7 @@
190 <nil key="highlightedColor"/> 220 <nil key="highlightedColor"/>
191 </label> 221 </label>
192 <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="AXc-Yh-5Ek" userLabel="CopyButtonImage"> 222 <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="AXc-Yh-5Ek" userLabel="CopyButtonImage">
193 - <rect key="frame" x="84.666666666666671" y="23.666666666666742" width="33" height="33"/> 223 + <rect key="frame" x="84.666666666666671" y="23.666666666666629" width="33" height="33"/>
194 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> 224 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
195 <constraints> 225 <constraints>
196 <constraint firstAttribute="height" constant="33" id="7ds-Ao-fBn"/> 226 <constraint firstAttribute="height" constant="33" id="7ds-Ao-fBn"/>
...@@ -234,7 +264,7 @@ ...@@ -234,7 +264,7 @@
234 </constraints> 264 </constraints>
235 </view> 265 </view>
236 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Cwz-uh-Zn5" userLabel="CouponQRContainerView"> 266 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Cwz-uh-Zn5" userLabel="CouponQRContainerView">
237 - <rect key="frame" x="24" y="540.66666666666663" width="345" height="305"/> 267 + <rect key="frame" x="24" y="636" width="345" height="305"/>
238 <subviews> 268 <subviews>
239 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="eEy-8l-te2" userLabel="CouponQRHeaderView"> 269 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="eEy-8l-te2" userLabel="CouponQRHeaderView">
240 <rect key="frame" x="0.0" y="0.0" width="345" height="55"/> 270 <rect key="frame" x="0.0" y="0.0" width="345" height="55"/>
...@@ -308,8 +338,24 @@ ...@@ -308,8 +338,24 @@
308 <constraint firstAttribute="bottom" secondItem="xqU-7k-Vxg" secondAttribute="bottom" id="wUN-aQ-c9t"/> 338 <constraint firstAttribute="bottom" secondItem="xqU-7k-Vxg" secondAttribute="bottom" id="wUN-aQ-c9t"/>
309 </constraints> 339 </constraints>
310 </view> 340 </view>
341 + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="j1U-rV-0FP" userLabel="MapButton">
342 + <rect key="frame" x="24" y="970" width="345" height="55"/>
343 + <constraints>
344 + <constraint firstAttribute="height" constant="55" id="BZv-RS-JfU"/>
345 + </constraints>
346 + <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
347 + <state key="normal" title="Button"/>
348 + </button>
349 + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="t8z-s1-rIA" userLabel="WebsiteButton">
350 + <rect key="frame" x="24" y="1038" width="345" height="55"/>
351 + <constraints>
352 + <constraint firstAttribute="height" constant="55" id="EUh-DN-fJh"/>
353 + </constraints>
354 + <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
355 + <state key="normal" title="Button"/>
356 + </button>
311 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="HAh-BZ-4Ka" userLabel="TermsButtonView"> 357 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="HAh-BZ-4Ka" userLabel="TermsButtonView">
312 - <rect key="frame" x="23.999999999999993" y="895.66666666666663" width="123.33333333333331" height="35"/> 358 + <rect key="frame" x="135" y="1119" width="123.33333333333331" height="35"/>
313 <subviews> 359 <subviews>
314 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Όροι Χρήσης" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6Vj-gt-dKJ" userLabel="TermsButtonTitleLabel"> 360 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Όροι Χρήσης" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6Vj-gt-dKJ" userLabel="TermsButtonTitleLabel">
315 <rect key="frame" x="0.0" y="5" width="101.33333333333333" height="25"/> 361 <rect key="frame" x="0.0" y="5" width="101.33333333333333" height="25"/>
...@@ -318,7 +364,7 @@ ...@@ -318,7 +364,7 @@
318 <nil key="highlightedColor"/> 364 <nil key="highlightedColor"/>
319 </label> 365 </label>
320 <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="C8k-TU-LiL" userLabel="TermsButtonArrowImage"> 366 <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="C8k-TU-LiL" userLabel="TermsButtonArrowImage">
321 - <rect key="frame" x="109.33333333333334" y="15.000000000000114" width="9" height="5"/> 367 + <rect key="frame" x="109.33333333333334" y="15" width="9" height="5"/>
322 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> 368 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
323 <constraints> 369 <constraints>
324 <constraint firstAttribute="height" constant="5" id="ERb-FD-j0Y"/> 370 <constraint firstAttribute="height" constant="5" id="ERb-FD-j0Y"/>
...@@ -349,7 +395,7 @@ ...@@ -349,7 +395,7 @@
349 </constraints> 395 </constraints>
350 </view> 396 </view>
351 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Ak8-Tc-k8X" userLabel="TermsLabel"> 397 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Ak8-Tc-k8X" userLabel="TermsLabel">
352 - <rect key="frame" x="24" y="940.66666666666674" width="345" height="20.333333333333371"/> 398 + <rect key="frame" x="24" y="1164" width="345" height="20.333333333333258"/>
353 <constraints> 399 <constraints>
354 <constraint firstAttribute="height" constant="20.329999999999998" id="ZA1-TX-m9Y"/> 400 <constraint firstAttribute="height" constant="20.329999999999998" id="ZA1-TX-m9Y"/>
355 </constraints> 401 </constraints>
...@@ -357,65 +403,57 @@ ...@@ -357,65 +403,57 @@
357 <nil key="textColor"/> 403 <nil key="textColor"/>
358 <nil key="highlightedColor"/> 404 <nil key="highlightedColor"/>
359 </label> 405 </label>
360 - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="j1U-rV-0FP" userLabel="MapButton">
361 - <rect key="frame" x="24" y="1001" width="345" height="55"/>
362 - <constraints>
363 - <constraint firstAttribute="height" constant="55" id="BZv-RS-JfU"/>
364 - </constraints>
365 - <state key="normal" title="Button"/>
366 - <buttonConfiguration key="configuration" style="plain" title="Button"/>
367 - </button>
368 - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="t8z-s1-rIA" userLabel="WebsiteButton">
369 - <rect key="frame" x="24" y="1076" width="345" height="55"/>
370 - <constraints>
371 - <constraint firstAttribute="height" constant="55" id="EUh-DN-fJh"/>
372 - </constraints>
373 - <state key="normal" title="Button"/>
374 - <buttonConfiguration key="configuration" style="plain" title="Button"/>
375 - </button>
376 </subviews> 406 </subviews>
377 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> 407 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
378 <constraints> 408 <constraints>
379 <constraint firstItem="t8z-s1-rIA" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="0ws-pJ-lPS"/> 409 <constraint firstItem="t8z-s1-rIA" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="0ws-pJ-lPS"/>
380 - <constraint firstItem="1Kx-s2-p1l" firstAttribute="leading" secondItem="u54-xs-f5a" secondAttribute="trailing" constant="11" id="22w-QH-w0I"/>
381 <constraint firstItem="Cwz-uh-Zn5" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="2Cq-bG-OqH"/> 410 <constraint firstItem="Cwz-uh-Zn5" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="2Cq-bG-OqH"/>
382 - <constraint firstItem="HLR-Nk-7Gm" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="3IS-pt-47I"/> 411 + <constraint firstItem="pox-mq-9AA" firstAttribute="top" secondItem="Xiw-td-OMd" secondAttribute="bottom" constant="24" id="3n0-8Q-gTS"/>
383 - <constraint firstItem="HAh-BZ-4Ka" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="3wX-re-5mu"/> 412 + <constraint firstItem="UAA-HC-ugR" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="9NB-IU-2Bh"/>
384 - <constraint firstItem="WjF-6P-8Wn" firstAttribute="top" secondItem="Xiw-td-OMd" secondAttribute="bottom" constant="17" id="DTU-uH-exC"/> 413 + <constraint firstItem="WjF-6P-8Wn" firstAttribute="top" secondItem="Xiw-td-OMd" secondAttribute="bottom" constant="13" id="DTU-uH-exC"/>
385 <constraint firstItem="Xiw-td-OMd" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" id="GFv-Mo-QN0"/> 414 <constraint firstItem="Xiw-td-OMd" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" id="GFv-Mo-QN0"/>
386 <constraint firstAttribute="trailing" secondItem="t8z-s1-rIA" secondAttribute="trailing" constant="24" id="Hel-rG-nvJ"/> 415 <constraint firstAttribute="trailing" secondItem="t8z-s1-rIA" secondAttribute="trailing" constant="24" id="Hel-rG-nvJ"/>
387 <constraint firstItem="VJr-Mc-WMf" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="Hoa-qW-OtC"/> 416 <constraint firstItem="VJr-Mc-WMf" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="Hoa-qW-OtC"/>
388 <constraint firstItem="89U-JU-Imv" firstAttribute="top" secondItem="qrm-40-JLT" secondAttribute="top" constant="17" id="JQF-r7-v7p"/> 417 <constraint firstItem="89U-JU-Imv" firstAttribute="top" secondItem="qrm-40-JLT" secondAttribute="top" constant="17" id="JQF-r7-v7p"/>
418 + <constraint firstAttribute="trailing" secondItem="u54-xs-f5a" secondAttribute="trailing" constant="24" id="Kez-LB-yrq"/>
389 <constraint firstAttribute="trailing" secondItem="Cwz-uh-Zn5" secondAttribute="trailing" constant="24" id="MCe-c8-R0P"/> 419 <constraint firstAttribute="trailing" secondItem="Cwz-uh-Zn5" secondAttribute="trailing" constant="24" id="MCe-c8-R0P"/>
390 <constraint firstAttribute="trailing" secondItem="89U-JU-Imv" secondAttribute="trailing" constant="16" id="QJ1-AA-bn9"/> 420 <constraint firstAttribute="trailing" secondItem="89U-JU-Imv" secondAttribute="trailing" constant="16" id="QJ1-AA-bn9"/>
391 <constraint firstItem="u54-xs-f5a" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="ScM-kH-ZEe"/> 421 <constraint firstItem="u54-xs-f5a" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="ScM-kH-ZEe"/>
392 - <constraint firstItem="VJr-Mc-WMf" firstAttribute="top" secondItem="u54-xs-f5a" secondAttribute="bottom" id="Ssw-da-ntM"/> 422 + <constraint firstItem="VJr-Mc-WMf" firstAttribute="top" secondItem="u54-xs-f5a" secondAttribute="bottom" constant="10" id="Ssw-da-ntM"/>
393 - <constraint firstItem="HAh-BZ-4Ka" firstAttribute="top" secondItem="Cwz-uh-Zn5" secondAttribute="bottom" constant="50" id="Su5-M8-vrC"/> 423 + <constraint firstItem="HAh-BZ-4Ka" firstAttribute="top" secondItem="t8z-s1-rIA" secondAttribute="bottom" constant="26" id="Su5-M8-vrC"/>
394 <constraint firstAttribute="trailing" secondItem="Xiw-td-OMd" secondAttribute="trailing" id="TGH-lz-pn5"/> 424 <constraint firstAttribute="trailing" secondItem="Xiw-td-OMd" secondAttribute="trailing" id="TGH-lz-pn5"/>
425 + <constraint firstItem="HAh-BZ-4Ka" firstAttribute="centerX" secondItem="qrm-40-JLT" secondAttribute="centerX" id="YTm-hC-NCZ"/>
395 <constraint firstItem="ElJ-Te-N4M" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="abd-4G-pI5"/> 426 <constraint firstItem="ElJ-Te-N4M" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="abd-4G-pI5"/>
396 <constraint firstItem="Xiw-td-OMd" firstAttribute="top" secondItem="qrm-40-JLT" secondAttribute="top" id="ajI-sR-3Pt"/> 427 <constraint firstItem="Xiw-td-OMd" firstAttribute="top" secondItem="qrm-40-JLT" secondAttribute="top" id="ajI-sR-3Pt"/>
397 <constraint firstAttribute="trailing" secondItem="j1U-rV-0FP" secondAttribute="trailing" constant="24" id="bBU-zw-nbU"/> 428 <constraint firstAttribute="trailing" secondItem="j1U-rV-0FP" secondAttribute="trailing" constant="24" id="bBU-zw-nbU"/>
398 - <constraint firstAttribute="bottom" secondItem="t8z-s1-rIA" secondAttribute="bottom" constant="46" id="bBi-iY-kAp"/>
399 <constraint firstItem="WjF-6P-8Wn" firstAttribute="leading" secondItem="1Kx-s2-p1l" secondAttribute="trailing" constant="11" id="bI6-jl-1U8"/> 429 <constraint firstItem="WjF-6P-8Wn" firstAttribute="leading" secondItem="1Kx-s2-p1l" secondAttribute="trailing" constant="11" id="bI6-jl-1U8"/>
400 <constraint firstAttribute="trailing" secondItem="X7C-0H-IhU" secondAttribute="trailing" constant="24" id="cXA-ke-cJ7"/> 430 <constraint firstAttribute="trailing" secondItem="X7C-0H-IhU" secondAttribute="trailing" constant="24" id="cXA-ke-cJ7"/>
401 <constraint firstItem="X7C-0H-IhU" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="d5O-SJ-gva"/> 431 <constraint firstItem="X7C-0H-IhU" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="d5O-SJ-gva"/>
402 - <constraint firstAttribute="trailing" secondItem="HLR-Nk-7Gm" secondAttribute="trailing" constant="24" id="eDk-HB-bk1"/> 432 + <constraint firstItem="X7C-0H-IhU" firstAttribute="top" secondItem="UAA-HC-ugR" secondAttribute="bottom" constant="37" id="eWb-gJ-A7o"/>
433 + <constraint firstItem="u54-xs-f5a" firstAttribute="top" secondItem="pox-mq-9AA" secondAttribute="bottom" constant="19" id="eeF-wJ-dof"/>
403 <constraint firstAttribute="trailing" secondItem="ElJ-Te-N4M" secondAttribute="trailing" constant="24" id="f9R-SZ-ReV"/> 434 <constraint firstAttribute="trailing" secondItem="ElJ-Te-N4M" secondAttribute="trailing" constant="24" id="f9R-SZ-ReV"/>
404 - <constraint firstItem="j1U-rV-0FP" firstAttribute="top" secondItem="Ak8-Tc-k8X" secondAttribute="bottom" constant="40" id="gym-1h-ewZ"/>
405 - <constraint firstItem="HLR-Nk-7Gm" firstAttribute="top" secondItem="VJr-Mc-WMf" secondAttribute="bottom" constant="14" id="hfN-OE-fbk"/>
406 <constraint firstItem="Ak8-Tc-k8X" firstAttribute="top" secondItem="HAh-BZ-4Ka" secondAttribute="bottom" constant="9.9999999999998863" id="i4i-57-H76"/> 435 <constraint firstItem="Ak8-Tc-k8X" firstAttribute="top" secondItem="HAh-BZ-4Ka" secondAttribute="bottom" constant="9.9999999999998863" id="i4i-57-H76"/>
407 <constraint firstItem="j1U-rV-0FP" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="jac-wq-3ZZ"/> 436 <constraint firstItem="j1U-rV-0FP" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="jac-wq-3ZZ"/>
408 - <constraint firstItem="ElJ-Te-N4M" firstAttribute="top" secondItem="X7C-0H-IhU" secondAttribute="bottom" constant="34" id="jpp-m0-Hqs"/> 437 + <constraint firstItem="ElJ-Te-N4M" firstAttribute="top" secondItem="X7C-0H-IhU" secondAttribute="bottom" constant="40" id="jpp-m0-Hqs"/>
409 - <constraint firstItem="t8z-s1-rIA" firstAttribute="top" secondItem="j1U-rV-0FP" secondAttribute="bottom" constant="20" id="lPW-dz-sru"/> 438 + <constraint firstItem="t8z-s1-rIA" firstAttribute="top" secondItem="j1U-rV-0FP" secondAttribute="bottom" constant="13" id="lPW-dz-sru"/>
410 - <constraint firstItem="X7C-0H-IhU" firstAttribute="top" secondItem="HLR-Nk-7Gm" secondAttribute="bottom" constant="20" id="mg0-Su-33x"/> 439 + <constraint firstAttribute="bottom" secondItem="Ak8-Tc-k8X" secondAttribute="bottom" constant="40" id="lPv-0M-v4h"/>
440 + <constraint firstItem="WjF-6P-8Wn" firstAttribute="leading" secondItem="pox-mq-9AA" secondAttribute="trailing" constant="24" id="lgg-ay-v4j"/>
411 <constraint firstAttribute="trailing" secondItem="Ak8-Tc-k8X" secondAttribute="trailing" constant="24" id="oCu-13-6UV"/> 441 <constraint firstAttribute="trailing" secondItem="Ak8-Tc-k8X" secondAttribute="trailing" constant="24" id="oCu-13-6UV"/>
412 - <constraint firstAttribute="trailing" secondItem="WjF-6P-8Wn" secondAttribute="trailing" constant="18" id="qhV-dn-76R"/> 442 + <constraint firstItem="pox-mq-9AA" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="oER-m6-5cM"/>
443 + <constraint firstAttribute="trailing" secondItem="WjF-6P-8Wn" secondAttribute="trailing" constant="24" id="qhV-dn-76R"/>
413 <constraint firstItem="Cwz-uh-Zn5" firstAttribute="top" secondItem="ElJ-Te-N4M" secondAttribute="bottom" constant="23" id="sxz-YM-etJ"/> 444 <constraint firstItem="Cwz-uh-Zn5" firstAttribute="top" secondItem="ElJ-Te-N4M" secondAttribute="bottom" constant="23" id="sxz-YM-etJ"/>
445 + <constraint firstItem="UAA-HC-ugR" firstAttribute="top" secondItem="VJr-Mc-WMf" secondAttribute="bottom" constant="22" id="tdz-Pj-5Sm"/>
446 + <constraint firstItem="j1U-rV-0FP" firstAttribute="top" secondItem="Cwz-uh-Zn5" secondAttribute="bottom" constant="29" id="u0z-wP-RQB"/>
414 <constraint firstItem="Ak8-Tc-k8X" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="v9m-et-nFd"/> 447 <constraint firstItem="Ak8-Tc-k8X" firstAttribute="leading" secondItem="qrm-40-JLT" secondAttribute="leading" constant="24" id="v9m-et-nFd"/>
415 - <constraint firstItem="u54-xs-f5a" firstAttribute="top" secondItem="Xiw-td-OMd" secondAttribute="bottom" constant="23" id="w3l-OQ-ddG"/>
416 <constraint firstAttribute="trailing" secondItem="VJr-Mc-WMf" secondAttribute="trailing" constant="24" id="wJA-JP-ZWT"/> 448 <constraint firstAttribute="trailing" secondItem="VJr-Mc-WMf" secondAttribute="trailing" constant="24" id="wJA-JP-ZWT"/>
417 <constraint firstItem="1Kx-s2-p1l" firstAttribute="top" secondItem="Xiw-td-OMd" secondAttribute="bottom" constant="17" id="zNT-Y8-JpJ"/> 449 <constraint firstItem="1Kx-s2-p1l" firstAttribute="top" secondItem="Xiw-td-OMd" secondAttribute="bottom" constant="17" id="zNT-Y8-JpJ"/>
418 </constraints> 450 </constraints>
451 + <variation key="default">
452 + <mask key="subviews">
453 + <exclude reference="89U-JU-Imv"/>
454 + <exclude reference="1Kx-s2-p1l"/>
455 + </mask>
456 + </variation>
419 </view> 457 </view>
420 </subviews> 458 </subviews>
421 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> 459 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
...@@ -430,7 +468,7 @@ ...@@ -430,7 +468,7 @@
430 <viewLayoutGuide key="frameLayoutGuide" id="zwi-OX-nWJ"/> 468 <viewLayoutGuide key="frameLayoutGuide" id="zwi-OX-nWJ"/>
431 </scrollView> 469 </scrollView>
432 </subviews> 470 </subviews>
433 - <color key="backgroundColor" red="0.94901960784313721" green="0.94901960784313721" blue="0.94901960784313721" alpha="1" colorSpace="calibratedRGB"/> 471 + <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
434 <constraints> 472 <constraints>
435 <constraint firstAttribute="bottom" secondItem="YpC-uS-mhw" secondAttribute="bottom" id="8Cp-bx-YIo"/> 473 <constraint firstAttribute="bottom" secondItem="YpC-uS-mhw" secondAttribute="bottom" id="8Cp-bx-YIo"/>
436 <constraint firstItem="YpC-uS-mhw" firstAttribute="top" secondItem="XaT-fU-eNh" secondAttribute="top" id="FzN-9C-IcE"/> 474 <constraint firstItem="YpC-uS-mhw" firstAttribute="top" secondItem="XaT-fU-eNh" secondAttribute="top" id="FzN-9C-IcE"/>
...@@ -441,7 +479,7 @@ ...@@ -441,7 +479,7 @@
441 </view> 479 </view>
442 </subviews> 480 </subviews>
443 <viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/> 481 <viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/>
444 - <color key="backgroundColor" systemColor="systemBackgroundColor"/> 482 + <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
445 <constraints> 483 <constraints>
446 <constraint firstAttribute="trailing" secondItem="XaT-fU-eNh" secondAttribute="trailing" id="8CQ-aq-Ezd"/> 484 <constraint firstAttribute="trailing" secondItem="XaT-fU-eNh" secondAttribute="trailing" id="8CQ-aq-Ezd"/>
447 <constraint firstItem="XaT-fU-eNh" firstAttribute="top" secondItem="fnl-2z-Ty3" secondAttribute="top" id="DIL-gG-nA2"/> 485 <constraint firstItem="XaT-fU-eNh" firstAttribute="top" secondItem="fnl-2z-Ty3" secondAttribute="top" id="DIL-gG-nA2"/>
...@@ -451,9 +489,4 @@ ...@@ -451,9 +489,4 @@
451 <point key="canvasLocation" x="12" y="-11"/> 489 <point key="canvasLocation" x="12" y="-11"/>
452 </view> 490 </view>
453 </objects> 491 </objects>
454 - <resources>
455 - <systemColor name="systemBackgroundColor">
456 - <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
457 - </systemColor>
458 - </resources>
459 </document> 492 </document>
......