From deb25dd76e3605e555fc4fa027644f6291c0842d Mon Sep 17 00:00:00 2001 From: hansolnoh95 Date: Mon, 27 Dec 2021 21:44:47 +0900 Subject: [PATCH] =?UTF-8?q?:bug:=201=EC=B0=A8=20QA=20=EB=8C=80=EB=9E=B5=20?= =?UTF-8?q?=EC=99=84=EB=A3=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Configuration/KeyChainStorage.swift | 4 + .../Cells/DetailReviewTableViewCell.swift | 65 +++++++++++++-- .../Cells/PhotoCollectionViewCell.swift | 19 +++-- .../CafeDetailViewController.swift | 74 ++++++++++++++++-- .../ViewControllers/LoginViewController.swift | 3 + .../SplashViewController.swift | 3 + .../Map/Cells/PinPopupTableViewCell.swift | 5 ++ .../Map/Cells/TermsGeneralTableViewCell.swift | 4 +- .../CreateCategoryViewController.swift | 2 +- .../ViewControllers/MapViewController.swift | 18 ++--- .../PinPopupViewController.swift | 53 ++++++++++--- .../ViewControllers/TermsViewController.swift | 2 +- .../Map/Views/CafeDetailPopupView.swift | 3 + .../ViewControllers/TagViewController.swift | 6 ++ .../NewReviewPhotoCollectionViewCell.swift | 2 +- .../WriteReviewViewController.swift | 14 ++-- .../checkboxActive.imageset/Contents.json | 8 +- .../checkboxActive.png | Bin 678 -> 345 bytes .../checkboxActive@2x.png | Bin 1158 -> 515 bytes .../checkboxActive@3x.png | Bin 1561 -> 617 bytes .../checkboxInactive.imageset/Contents.json | 8 +- .../checkboxInactive.png | Bin 555 -> 318 bytes .../checkboxInactive@2x.png | Bin 998 -> 514 bytes .../checkboxInactive@3x.png | Bin 1392 -> 642 bytes .../colorchipSelected2.imageset/Contents.json | 12 +-- .../colorchipSelected2.png | Bin 690 -> 695 bytes .../colorchipSelected2@2x.png | Bin 1170 -> 1204 bytes .../colorchipSelected2@3x.png | Bin 1648 -> 1666 bytes .../iconCafeMenu.imageset/Contents.json | 12 +-- .../iconCafeMenu.imageset/iconCafeMenu.png | Bin 251 -> 231 bytes .../iconCafeMenu.imageset/iconCafeMenu@2x.png | Bin 304 -> 293 bytes .../iconCafeMenu.imageset/iconCafeMenu@3x.png | Bin 339 -> 358 bytes .../iconInsta.imageset/Contents.json | 12 +-- .../iconInsta.imageset/iconInsta.png | Bin 323 -> 261 bytes .../iconInsta.imageset/iconInsta@2x.png | Bin 504 -> 373 bytes .../iconInsta.imageset/iconInsta@3x.png | Bin 743 -> 486 bytes .../iconTime.imageset/Contents.json | 10 +-- .../iconTime.imageset/iconTime.png | Bin 333 -> 308 bytes .../iconTime.imageset/iconTime@2x.png | Bin 486 -> 483 bytes .../iconTime.imageset/iconTime@3x.png | Bin 669 -> 635 bytes 40 files changed, 263 insertions(+), 76 deletions(-) diff --git a/CA-PIN_IOS/CA-PIN_IOS/Configuration/KeyChainStorage.swift b/CA-PIN_IOS/CA-PIN_IOS/Configuration/KeyChainStorage.swift index 8fb3ed0..c6a97e0 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Configuration/KeyChainStorage.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Configuration/KeyChainStorage.swift @@ -18,4 +18,8 @@ enum KeychainStorage { static var userCafeTI: String { return "userCafeTI" } + + static var nickname: String { + return "nickname" + } } diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/CafeDetail/Cells/DetailReviewTableViewCell.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/CafeDetail/Cells/DetailReviewTableViewCell.swift index 1460ad5..873df3e 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/CafeDetail/Cells/DetailReviewTableViewCell.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/CafeDetail/Cells/DetailReviewTableViewCell.swift @@ -9,6 +9,7 @@ import UIKit import SnapKit import Then +import SwiftKeychainWrapper // MARK: - DetailReviewTableViewCell class DetailReviewTableViewCell: UITableViewCell { @@ -64,6 +65,7 @@ class DetailReviewTableViewCell: UITableViewCell { override func prepareForReuse() { super.prepareForReuse() profileImageView.image = nil + reviewModel = nil } } @@ -208,10 +210,57 @@ extension DetailReviewTableViewCell { // 서현이가 썼어요 ~ @objc func editButtonClicked() { - let reportPopUpVC = ReportReviewPopUpViewController() - reportPopUpVC.modalPresentationStyle = .overCurrentContext - reportPopUpVC.reviewId = self.reviewId - self.rootViewController?.present(reportPopUpVC, animated: translatesAutoresizingMaskIntoConstraints, completion: nil) + if let model = reviewModel { + if model.writer.nickname == KeychainWrapper.standard.string(forKey: KeychainStorage.nickname) { + let alertController: UIAlertController + alertController = UIAlertController(title: "리뷰 편집", message: nil, preferredStyle: .actionSheet) + + let editAction: UIAlertAction + editAction = UIAlertAction(title: "리뷰 수정", style: UIAlertAction.Style.default, handler: { (action: UIAlertAction) in + /// 리뷰 수정 뷰로 이동 + let writeVC = WriteReviewViewController() + writeVC.titleContent = "리뷰수정하기" + writeVC.confirmTitle = "리뷰수정하기" + writeVC.content = (self.reviewModel?.content)! + writeVC.ratingValue = self.reviewModel!.rating + writeVC.reviewId = self.reviewModel!.id + if self.reviewModel?.imgs == [] { + for imagePath in (self.reviewModel!.imgs)! { + let image = UIImageView() + image.setImage(from: imagePath, UIImage(named: "capinLogo")!) + writeVC.canAccessImages.append((image.image)!) + } + } + writeVC.recommend = self.reviewModel?.recommend ?? [] + self.rootViewController?.navigationController?.pushViewController(writeVC, animated: false) + }) + let deleteAction: UIAlertAction + deleteAction = UIAlertAction(title: "리뷰 삭제", style: .destructive, handler: { (action: UIAlertAction) in + let deleteReviewVC = DeleteReviewViewController() + deleteReviewVC.modalPresentationStyle = .overCurrentContext + deleteReviewVC.reviewId = self.reviewModel?.id ?? "" + self.rootViewController?.present(deleteReviewVC, animated: false, completion: nil) + }) + + let cancelAction: UIAlertAction + cancelAction = UIAlertAction(title: "취소", style: UIAlertAction.Style.cancel, handler: nil) + + alertController.addAction(editAction) + alertController.addAction(deleteAction) + alertController.addAction(cancelAction) + + alertController.view.tintColor = .maincolor1 + + self.rootViewController?.present(alertController, animated: true, completion: nil) + + } + else { + let reportPopUpVC = ReportReviewPopUpViewController() + reportPopUpVC.modalPresentationStyle = .overCurrentContext + reportPopUpVC.reviewId = self.reviewId + self.rootViewController?.present(reportPopUpVC, animated: translatesAutoresizingMaskIntoConstraints, completion: nil) + } + } } // MARK: - General Helpers @@ -226,7 +275,11 @@ extension DetailReviewTableViewCell { func reviewDataBind(nickName: String, date: String, rating: Float, content: String, profileImg: String) { titleLabel.setupLabel(text: nickName, color: .black, font: .notoSansKRMediumFont(fontSize: 12)) - dateLabel.setupLabel(text: date, color: .gray4, font: .notoSansKRRegularFont(fontSize: 12)) + + let dateStringArray = date.split(separator: "T") + let dateString = String(dateStringArray[0]) + let dateResult = dateString.replacingOccurrences(of: "-", with: ".") + dateLabel.setupLabel(text: dateResult, color: .gray4, font: .notoSansKRRegularFont(fontSize: 12)) ratingLabel.setupLabel(text: "\(rating)", color: .pointcolorYellow, font: .notoSansKRRegularFont(fontSize: 12)) @@ -331,7 +384,7 @@ extension DetailReviewTableViewCell: UICollectionViewDataSource { photoCell.dataBind(imageName: reviewModel?.imgs?[indexPath.item], moreNumber: moreNumber) photoCell.awakeFromNib() if indexPath.item == 2 && moreNumber > 0 { - photoCell.photoImageView.isHidden = true + photoCell.alphaView.isHidden = false photoCell.moreLabel.isHidden = false } return photoCell diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/CafeDetail/Cells/PhotoCollectionViewCell.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/CafeDetail/Cells/PhotoCollectionViewCell.swift index ddfb3ef..faea3f8 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/CafeDetail/Cells/PhotoCollectionViewCell.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/CafeDetail/Cells/PhotoCollectionViewCell.swift @@ -17,8 +17,12 @@ class PhotoCollectionViewCell: UICollectionViewCell { // MARK: - Components let containerView = UIView() let photoImageView = UIImageView() - let alphaView = UIView() - let moreLabel = UILabel() + let alphaView = UIView().then { + $0.isHidden = true + } + let moreLabel = UILabel().then { + $0.isHidden = true + } var rootViewController: UIViewController? @@ -28,6 +32,12 @@ class PhotoCollectionViewCell: UICollectionViewCell { self.backgroundColor = .clear layout() } + + override func prepareForReuse() { + super.prepareForReuse() + alphaView.isHidden = true + moreLabel.isHidden = true + } } @@ -37,6 +47,7 @@ extension PhotoCollectionViewCell { contentView.backgroundColor = .clear layoutContainerView() layoutPhotoImageView() + layoutAlphaView() layoutMoreLabel() } func layoutContainerView() { @@ -58,7 +69,6 @@ extension PhotoCollectionViewCell { } func layoutAlphaView() { containerView.add(alphaView) { - $0.isHidden = true $0.backgroundColor = .photoCover $0.setRounded(radius: 5) $0.snp.makeConstraints { @@ -68,7 +78,6 @@ extension PhotoCollectionViewCell { } func layoutMoreLabel() { alphaView.add(moreLabel) { - $0.isHidden = true $0.snp.makeConstraints { $0.center.equalToSuperview() } @@ -81,7 +90,7 @@ extension PhotoCollectionViewCell { photoImageView.imageFromUrl(image, defaultImgPath: "") } moreLabel.setupLabel(text: "+\(moreNumber)", - color: .gray3, + color: .white, font: .notoSansKRRegularFont(fontSize: 14)) } func updateLayout() { diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/CafeDetail/ViewControllers/CafeDetailViewController.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/CafeDetail/ViewControllers/CafeDetailViewController.swift index f65e1a5..3b7df93 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/CafeDetail/ViewControllers/CafeDetailViewController.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/CafeDetail/ViewControllers/CafeDetailViewController.swift @@ -28,7 +28,10 @@ class CafeDetailViewController: UIViewController { let cafeTitleLabel = UILabel() let starImageView = UIImageView() let starRatingLabel = UILabel() - let addressLabel = UILabel() + let addressLabel = UILabel().then { + $0.isUserInteractionEnabled = true + } + let tagCollectionView: UICollectionView = { let layout = CollectionViewCenteredFlowLayout() layout.scrollDirection = .vertical @@ -100,6 +103,16 @@ class CafeDetailViewController: UIViewController { ) } + private let emptyLabel = UILabel().then { + $0.setupLabel( + text: "아직 등록된 리뷰가 없어요.\n가장 먼저 리뷰를 작성해보세요.", + color: .gray4, + font: .notoSansKRRegularFont(fontSize: 14) + ) + $0.isHidden = true + $0.numberOfLines = 2 + } + let gradationBlackColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.3) let gradationWhiteColor = UIColor(red: 1, green: 1, blue: 1, alpha: 0.3) @@ -108,7 +121,7 @@ class CafeDetailViewController: UIViewController { var threshold = true let disposeBag = DisposeBag() - let reviewProvider = MoyaProvider() + let reviewProvider = MoyaProvider(plugins: [NetworkLoggerPlugin(verbose: true)]) let userProvider = MoyaProvider(plugins: [NetworkLoggerPlugin(verbose: true)]) var cafeModel: CafeServerDetail? var reviewModel: [ServerReview]? @@ -127,6 +140,7 @@ class CafeDetailViewController: UIViewController { var count160 = 0 var count218 = 0 var count240 = 0 + var isInit = true // MARK: - LifeCycles @@ -154,6 +168,14 @@ class CafeDetailViewController: UIViewController { super.updateViewConstraints() self.reviewTableView.heightConstraint?.constant = self.reviewTableView.contentSize.height } + + override func viewDidLayoutSubviews() { + super.viewDidLayoutSubviews() + if isInit { + bottomView.layer.applyShadow(color: 0xC5C5C5.color, alpha: 0.1, x: 0, y: -4, blur: 4) + isInit = false + } + } } // MARK: - Extensions @@ -587,6 +609,15 @@ extension CafeDetailViewController { } } + func layoutEmptyLabel() { + cafeScrollContainerView.add(emptyLabel) { + $0.snp.makeConstraints { + $0.centerX.equalToSuperview() + $0.top.equalTo(self.reviewTitleLabel.snp.bottom).offset(63) + } + } + } + // MARK: - General Helpers func dataBind() { if self.cafeModel?.img == nil { @@ -599,7 +630,7 @@ extension CafeDetailViewController { self.cafeTitleLabel.setupLabel(text: self.cafeModel?.name ?? "", color: .black, font: .notoSansKRMediumFont(fontSize: 26)) self.starRatingLabel.setupLabel(text: "\(self.cafeModel?.rating ?? 0)", color: .pointcolorYellow, font: .notoSansKRMediumFont(fontSize: 20)) self.addressLabel.setupLabel(text: self.cafeModel?.address ?? "", color: .gray4, font: .notoSansKRRegularFont(fontSize: 12)) - self.instagramLabel.setupLabel(text: "@\(self.cafeModel?.instagram ?? "")", color: .gray4, font: .notoSansKRRegularFont(fontSize: 14)) + self.instagramLabel.setupLabel(text: "\(self.cafeModel?.instagram ?? "")", color: .gray4, font: .notoSansKRRegularFont(fontSize: 14)) if let model = cafeModel { var offdayString = "" if let offday = model.offday { @@ -628,6 +659,10 @@ extension CafeDetailViewController { ) } } + validateIsSaved() + } + + func validateIsSaved() { if let isSaved = isSaved { if isSaved { savePinView.backgroundColor = .pointcolor1 @@ -652,6 +687,10 @@ extension CafeDetailViewController { let reviewGesutre = UITapGestureRecognizer() reviewGesutre.addTarget(self, action: #selector(clickedWriteReviewButton)) reviewView.addGestureRecognizer(reviewGesutre) + + let addressGesture = UITapGestureRecognizer() + addressGesture.addTarget(self, action: #selector(touchupAddressLabel)) + addressLabel.addGestureRecognizer(addressGesture) } func register() { @@ -680,13 +719,18 @@ extension CafeDetailViewController { } @objc func clickedEntireReviewButton() { let entireVC = EntireReviewViewController() - entireVC.reviewModel = self.reviewModel! - self.navigationController?.pushViewController(entireVC, animated: false) + if let reviewModel = reviewModel { + entireVC.reviewModel = self.reviewModel! + self.navigationController?.pushViewController(entireVC, animated: false) + } + else { + showGrayToast(message: "리뷰가 없습니다.") + } } @objc func clickedAddPinButton() { if let isSaved = isSaved { if isSaved { - showGrayToast(message: "이미 저장된 카페입니다.") + setupCategory() } else { setupCategory() @@ -698,6 +742,15 @@ extension CafeDetailViewController { writeReviewVC.cafeId = (self.cafeModel?.id)! self.navigationController?.pushViewController(writeReviewVC, animated: false) } + + @objc + private func touchupAddressLabel() { + if let text = addressLabel.text { + UIPasteboard.general.string = text + showGreenToast(message: "주소가 복사되었습니다.") + } + } + func setupReviewData(cafeId: String) { reviewProvider.rx.request(.reviewList(cafeId: cafeId)) .asObservable() @@ -714,12 +767,21 @@ extension CafeDetailViewController { self.reviewIdArray.append(self.reviewModel![i].id) } self.layout() + if let review = data.reviews { + self.emptyLabel.isHidden = true + self.reviewTableView.separatorStyle = .singleLine + } self.tagCollectionView.reloadData() self.reviewTableView.reloadData() } catch { print(error) } } + if response.statusCode == 204 { + self.emptyLabel.isHidden = false + self.layoutEmptyLabel() + self.reviewTableView.separatorStyle = .none + } }, onError: { error in print(error) }, onCompleted: { diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/Login/ViewControllers/LoginViewController.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/Login/ViewControllers/LoginViewController.swift index a818208..3fd38e0 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/Login/ViewControllers/LoginViewController.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/Login/ViewControllers/LoginViewController.swift @@ -98,6 +98,9 @@ extension LoginViewController { let decoder = JSONDecoder() let data = try decoder.decode(ResponseType.self, from: response.data) + if let loginData = data.loginData { + KeychainWrapper.standard.set(loginData.nickname, forKey: "nickname") + } KeychainWrapper.standard.set(emailText, forKey: "loginEmail") KeychainWrapper.standard.set(passwordText, forKey: "loginPassword") KeychainWrapper.standard.set(data.loginData!.tokenAccess, forKey: "tokenAccess") diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/Login/ViewControllers/SplashViewController.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/Login/ViewControllers/SplashViewController.swift index 97df5e8..891859b 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/Login/ViewControllers/SplashViewController.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/Login/ViewControllers/SplashViewController.swift @@ -82,6 +82,9 @@ extension SplashViewController { let decoder = JSONDecoder() let data = try decoder.decode(ResponseType.self, from: response.data) + if let loginData = data.loginData { + KeychainWrapper.standard.set(loginData.nickname, forKey: "nickname") + } KeychainWrapper.standard.set(ID, forKey: "loginEmail") KeychainWrapper.standard.set(PW, forKey: "loginPassword") KeychainWrapper.standard.set(data.loginData!.tokenAccess, forKey: "tokenAccess") diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/Cells/PinPopupTableViewCell.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/Cells/PinPopupTableViewCell.swift index 8692b6b..28c62ef 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/Cells/PinPopupTableViewCell.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/Cells/PinPopupTableViewCell.swift @@ -29,6 +29,11 @@ class PinPopupTableViewCell: UITableViewCell { layout() } + + override func prepareForReuse() { + super.prepareForReuse() + selectbutton.isHidden = false + } } // MARK: - Extensions diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/Cells/TermsGeneralTableViewCell.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/Cells/TermsGeneralTableViewCell.swift index a4b1b18..b73914f 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/Cells/TermsGeneralTableViewCell.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/Cells/TermsGeneralTableViewCell.swift @@ -17,7 +17,9 @@ class TermsGeneralTableViewCell: UITableViewCell { // MARK: - Components let containerView = UIView() let titleLabel = UILabel() - let nextButton = UIButton() + let nextButton = UIButton().then { + $0.isUserInteractionEnabled = false + } var titleText: String? diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/CreateCategoryViewController.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/CreateCategoryViewController.swift index 8f4dc9d..0615b23 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/CreateCategoryViewController.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/CreateCategoryViewController.swift @@ -239,7 +239,7 @@ extension CreateCategoryViewController { } if let pinVC = self.navigationController?.children[0] as? PinPopupViewController { self.navigationController?.popToViewController(pinVC, animated: false) - pinVC.categoryTableView.reloadData() + pinVC.setupCategory() pinVC.showGreenToast(message: "카테고리가 추가되었습니다.") } diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/MapViewController.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/MapViewController.swift index 59f3ad3..48ca3f6 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/MapViewController.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/MapViewController.swift @@ -507,23 +507,23 @@ extension MapViewController { else { switch colorCode { case "C12D62": - return "pinInactiveCate1" - case "E57D3A": return "pinInactiveCate2" - case "FFC24B": + case "E57D3A": return "pinInactiveCate3" - case "8ABE56": + case "FFC24B": return "pinInactiveCate4" - case "49A48F": + case "8ABE56": return "pinInactiveCate5" - case "51BAE0": + case "49A48F": return "pinInactiveCate6" - case "1E73BE": + case "51BAE0": return "pinInactiveCate7" - case "754593": + case "1E73BE": return "pinInactiveCate8" - case "EBEAEF": + case "754593": return "pinInactiveCate9" + case "EBEAEF": + return "pinInactiveCate10" case "A77145": return "pinInactiveCate10" default: diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/PinPopupViewController.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/PinPopupViewController.swift index 70482ff..173ff81 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/PinPopupViewController.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/PinPopupViewController.swift @@ -30,6 +30,7 @@ class PinPopupViewController: UIViewController { var selectedIndex: Int? var cafeId = "" + let userProvider = MoyaProvider(plugins: [NetworkLoggerPlugin(verbose: true)]) let categoryProvier = MoyaProvider(plugins: [NetworkLoggerPlugin(verbose: true)]) let disposeBag = DisposeBag() @@ -124,7 +125,7 @@ extension PinPopupViewController { $0.setupButton(title: "완료", color: .white, font: .notoSansKRMediumFont(fontSize: 16), - backgroundColor: 0xA98E7A.color, + backgroundColor: 0xA77145.color, state: .normal, radius: 24) $0.addTarget(self, @@ -210,9 +211,13 @@ extension PinPopupViewController { do { let index = (self.navigationController?.presentingViewController?.children.count)! - 1 let mapVC = self.navigationController?.presentingViewController?.children[index] as? MapViewController + let detailVC = self.navigationController?.presentingViewController?.children[index] as? CafeDetailViewController self.dismiss(animated: false) { mapVC?.showGreenToast(message: "카테고리에 저장되었습니다.") mapVC?.setupCafeInformation(cafeId: self.cafeId) + detailVC?.showGreenToast(message: "카테고리에 저장되었습니다.") + detailVC?.isSaved = true + detailVC?.validateIsSaved() } } catch { print(error) @@ -224,27 +229,55 @@ extension PinPopupViewController { }).disposed(by: disposeBag) } } + + func setupCategory() { + userProvider.rx.request(.categoryList) + .asObservable() + .subscribe(onNext: { response in + if response.statusCode == 200 { + do { + let decoder = JSONDecoder() + let data = try decoder.decode(CategoryResponseArrayType.self, + from: response.data) + if let list = data.myCategoryList { + self.categoryArray = list + } + self.categoryTableView.reloadData() + } catch { + print(error) + } + } + else { + + } + }, onError: { error in + print(error) + }, onCompleted: { + + }).disposed(by: disposeBag) + } + func colorViewImage(colorCode: String) -> String { switch colorCode { - case "6492F5": + case "C12D62": return "colorchip1" - case "6BBC9A": + case "E57D3A": return "colorchip2" case "FFC24B": return "colorchip3" - case "816F7C": + case "8ABE56": return "colorchip4" - case "FFC2D5": + case "49A48F": return "colorchip5" - case "C9D776": + case "51BAE0": return "colorchip6" - case "B2B9E5": + case "1E73BE": return "colorchip7" - case "FF8E8E": + case "754593": return "colorchip8" case "EBEAEF": return "colorchip9" - case "9DC5E8": + case "A77145": return "colorchip10" default: return "colorchip1" @@ -275,7 +308,7 @@ extension PinPopupViewController: UITableViewDataSource { } else { categoryCell.rootViewController = self - if (selectedIndex ?? 100) == indexPath.row { + if (selectedIndex ?? 100) == indexPath.row { categoryCell.selectbutton.isSelected = true } else { diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/TermsViewController.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/TermsViewController.swift index e10d94c..1cd1852 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/TermsViewController.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/ViewControllers/TermsViewController.swift @@ -64,7 +64,7 @@ extension TermsViewController { $0.setBackgroundImage(UIImage(named: "iconBackBlack"), for: .normal) $0.addTarget(self, action: #selector(self.clickedBackButton), for: .touchUpInside) $0.snp.makeConstraints { - $0.bottom.equalTo(self.topView.snp.bottom) + $0.top.equalTo(self.view.snp.top).offset(51) $0.leading.equalTo(self.topView.snp.leading).offset(20) $0.width.height.equalTo(28) } diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/Views/CafeDetailPopupView.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/Views/CafeDetailPopupView.swift index 4614d71..627777c 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/Views/CafeDetailPopupView.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/Map/Views/CafeDetailPopupView.swift @@ -222,6 +222,9 @@ extension CafeDetailPopupView { if !isSaved { rootVC.setupCategory() } + else { + rootVC.setupCategory() + } } } } diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/Tag/ViewControllers/TagViewController.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/Tag/ViewControllers/TagViewController.swift index 8928ccd..54f77b9 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/Tag/ViewControllers/TagViewController.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/Tag/ViewControllers/TagViewController.swift @@ -50,6 +50,12 @@ class TagViewController: UIViewController { self.tagTableView.dataSource = self NotificationCenter.default.addObserver(self, selector: #selector(self.pop), name: NSNotification.Name("pop"), object: nil) } + + override func viewDidAppear(_ animated: Bool) { + super.viewDidAppear(animated) + guard let gesture = self.navigationController?.interactivePopGestureRecognizer else { return } + self.navigationController?.view.removeGestureRecognizer(gesture) + } } // MARK: - Extensions diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/WriteReview/Cells/NewReviewPhotoCollectionViewCell.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/WriteReview/Cells/NewReviewPhotoCollectionViewCell.swift index 7ccf4bc..d128b62 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/WriteReview/Cells/NewReviewPhotoCollectionViewCell.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/WriteReview/Cells/NewReviewPhotoCollectionViewCell.swift @@ -36,7 +36,7 @@ extension NewReviewPhotoCollectionViewCell { func layoutAddPhotoView() { self.contentView.add(addPhotoView) { $0.setRounded(radius: 5) - $0.backgroundColor = .pointcolor1 + $0.backgroundColor = .maincolor1 $0.snp.makeConstraints { $0.edges.equalToSuperview() } diff --git a/CA-PIN_IOS/CA-PIN_IOS/Screens/WriteReview/ViewControllers/WriteReviewViewController.swift b/CA-PIN_IOS/CA-PIN_IOS/Screens/WriteReview/ViewControllers/WriteReviewViewController.swift index d2e291c..a6816f7 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Screens/WriteReview/ViewControllers/WriteReviewViewController.swift +++ b/CA-PIN_IOS/CA-PIN_IOS/Screens/WriteReview/ViewControllers/WriteReviewViewController.swift @@ -72,6 +72,7 @@ class WriteReviewViewController: UIViewController { $0.settings.emptyImage = UIImage(named: "starInactive") $0.settings.starSize = 34 $0.settings.starMargin = 14.7 + $0.settings.minTouchRating = 0.5 $0.settings.starPoints = [CGPoint(x: 100, y: 91.176)] } let writereviewButton = UIButton() @@ -83,7 +84,7 @@ class WriteReviewViewController: UIViewController { final let maxLength = 150 var nameCount = 0 - var ratingValue = 2.5 + var ratingValue = 0.0 var fetchResult: PHFetchResult? var canAccessImages: [UIImage] = [] @@ -488,7 +489,7 @@ extension WriteReviewViewController { else { self.reviewTextView.textColor = .black } - self.writereviewButton.setupButton(title: confirmTitle, color: .white, font: .notoSansKRMediumFont(fontSize: 16), backgroundColor: .pointcolor1, state: .normal, radius: 24.5) + self.writereviewButton.setupButton(title: confirmTitle, color: .white, font: .notoSansKRMediumFont(fontSize: 16), backgroundColor: .maincolor1, state: .normal, radius: 24.5) self.ratingView.rating = self.ratingValue if self.recommend == [0] { self.tasteButton.isSelected = true @@ -504,7 +505,7 @@ extension WriteReviewViewController { @objc func tasteButtonClicked() { tasteButton.isSelected.toggle() if tasteButton.isSelected == true { - tasteButton.backgroundColor = .pointcolor1 + tasteButton.backgroundColor = .maincolor1 tasteButton.setTitleColor(.white, for: .normal) } else { @@ -515,7 +516,7 @@ extension WriteReviewViewController { @objc func feelButtonClicked() { feelButton.isSelected.toggle() if feelButton.isSelected == true { - feelButton.backgroundColor = .pointcolor1 + feelButton.backgroundColor = .maincolor1 feelButton.setTitleColor(.white, for: .normal) } @@ -627,9 +628,11 @@ extension WriteReviewViewController { } } self.reviewphotoCollectionView.reloadData() + self.topcontainerview.isHidden = false picker.dismiss(animated: true, completion: nil) } - picker.modalPresentationStyle = .overCurrentContext + picker.modalPresentationStyle = .overFullScreen + self.topcontainerview.isHidden = true self.present(picker, animated: true, completion: nil) } @@ -646,6 +649,7 @@ extension WriteReviewViewController { do { let index = (self.navigationController?.children.count)! - 2 let detailVC = self.navigationController?.children[index] as? CafeDetailViewController + self.navigationController?.popViewController(animated: false) { detailVC?.setupReviewData(cafeId: self.cafeId) detailVC?.showGreenToast(message: "리뷰 등록이 완료되었습니다.") diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxActive.imageset/Contents.json b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxActive.imageset/Contents.json index 1c5d1c9..136fdb0 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxActive.imageset/Contents.json +++ b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxActive.imageset/Contents.json @@ -2,8 +2,8 @@ "images" : [ { "filename" : "checkboxActive.png", - "scale" : "1x", - "idiom" : "universal" + "idiom" : "universal", + "scale" : "1x" }, { "idiom" : "universal", @@ -11,9 +11,9 @@ "filename" : "checkboxActive@2x.png" }, { - "scale" : "3x", + "idiom" : "universal", "filename" : "checkboxActive@3x.png", - "idiom" : "universal" + "scale" : "3x" } ], "info" : { diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxActive.imageset/checkboxActive.png b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxActive.imageset/checkboxActive.png index 876a5b10b68f90e8a5314ee67ae90a0abbf4bb3a..73a5daaa753a34138bd7f2dbf21df87ba397c735 100644 GIT binary patch literal 345 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vJfvmUKs7M+SzC{oH>NS%G}U;vjb? zhIQv;UIIA=0X`wF?gc)}3tX2Mx-Kv9SYGG?WXvyc0FukVY#?K2Z`Re_%l`lW|Lfc5 z4fPS0t7o|Z^>UR2`2{l+>{oc-AaH-deBS38Kx-H_db&7MGX+#*UfU@7_jj&9aPOIPse|a6^`;&x1Fb8<`8Lf&u^l literal 678 zcmV;X0$KfuP)-@B4?s#c5CuWk zE~Ek>wsc}(AsYij4H8jnlzV;WG_BRxY3%wVS@PXGeZNol?%pAcplMf((`P5=h%iq; zCQq6D2)YQcDM_x8M;}Yo>H>(SKGoN z1Jc2jJMyZkiC+V4LM){yt}rwmo9YMq*^8f$5aZl=@OHML`*&+7*2V6WzzMtu3CZSW zpg8*sF6RoN@r<0T2!Y}*BtVI0uNUAyXaA%9HFS-JbX)MrxdJf>iho*t1@7-(q3a0H z6j8-Jsb}EA#Y>6B_b>%SW?6t6cV<~^CaJj33H~~;-^32+d~d^a_L^_x!+RN5oN@VP zQztaS0!l~;Dw71_ss@{)N4ODbA25k4-gl5|_@Qna9(h}%)}1;twmAN~4*$yKri;1d`F zKJP8UUU{%BM;Zi;P;xuxj>{)aHASN@sBS-U-DqQ5bQ@)>5qUs%0o~CIaKTN+MF0Q* M07*qoM6N<$f+d9={{R30 diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxActive.imageset/checkboxActive@2x.png b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxActive.imageset/checkboxActive@2x.png index 35ca27b8170f06c92ba5d3a0ede534efe62403d2..27d4a7a8f3e392505398f6d3e36c57ae30dee816 100644 GIT binary patch literal 515 zcmV+e0{s1nP)Px#Fi=cXMMrQ25Z~R@3M&8r0bEH$ zK~zY`?NvQX13?ho$c41&f}LfqSLC{YDA);+fW0Z~B38EPQhFElhG2RZW3LGI@fRe8 zz5azD7*?~Hugz(nY4+ef-pHmpxSga!=3&AY+8# zI~4$6gl9V;0*LT4&!2Wg1%M^_V(o+orCH_N}|qOW5wdpB8<7v2>t&o4jmcZ=szuQ;rbUENU;SKnwW{m zXs3!D<4dxtX0-=Pyr!G={=&>_A-j)Sb;!Ey&icnF;~N7TBY&4wnkE1M002ovPDHLk FV1nhV-*f-~ literal 1158 zcmV;11bO?3P)}cw$8u*DJ8j>Q zfs0GuS!!5ak)Pv8hO&ODCp(FT+Nr^>XTLwLhEunYoOpw|VYe>*aB6C&hHVX)l&OFV zai&ZgGLlbMjD~iNQmsz7`HnpL3jNm>kf}Zi8)z_4?JyPwm+^}~F68SE)KaMWtp68- zkG)BoqbG7Jw%MsgAT^{;V|S2A>ydeH$BDo$y89lrD7XJH9qW{IS_mztYEux89p*ICkT=U-19k ze>(jONE+=|{Yal6@lPHDB=RHti+K{4Z z77_7Gyfbmg*}rr1&zQvnnt9c19Rrd^E8F~RuA6d-F;Oc1j>M4kaW{fVBhS%pK%Sfh zlRoBmttw%n5caLyFBrPEeo!;8TcRKZ=SA=C8=7jPm(DIEy%rDxE=z&8VKCNI8`Y$b z4rnUbnt0NGu*rZ4kLF4agNEi4^{L|#xI!~~a=Bn~4FiJFGV|?H;E18+3eDv|t{10| z946}G1=kClPJ8l9zSa31S1H}q8g-!$YXYk07*qoM6N<$f}z788UO$Q diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxActive.imageset/checkboxActive@3x.png b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxActive.imageset/checkboxActive@3x.png index c113efe16eebca3857e92b5ff38cdb78f0d3bd7d..0c0a85f7f7b32d711dcce15b4c1b13836d669747 100644 GIT binary patch literal 617 zcmV-v0+#)WP)Px#Do{*RMMrQSQvPT&RN6X+XQ_y)cJk7JNPxV_!G ztV)-!qWC_(?9c7(IZlZZtHXM?Uj?XlS_S!sr;y?Cw#eTfz!J{w{5?>x6Ug|f!YsH1 z4W5aA1O%=OAJm`(!$9&uQ|xkl7Z@}dfzJsZga(|&fEPR!Pmv)}Z7`rl2qKfL!r5j3m@NMJVrU2_!g_s6wr|#Q6k?2}nsUbq*wvAa(Ky;+z5n z1U*m*BpM@uh(NUFkRG^X^9_8#2?)<)-q>r|j@Mq>v+=C=Cs|&vS90c;H*fy!EQ3pA zFT0e8O^#WSNHoa+o&#VOFqp1=ZM9r(%U6j3Dt6-p_2Tg9Zi`bnxj)l1KO+TuidV#;yp=eDKlcw=e*G z3!MUL67t#=-%D6MVW674M@cOkO0oU`Fwk|r`!z~}Rk08!+ z5He^y*{-Tx5LD|USP(v}aWQ$J6WLV70yxIfO{vVvR~rYmO%W6w=kpL=IYgp0ikbuo zgfxU4IoY<@n2YLy4z}0Q5bo%4NKA-{wDTeA97GtKmlNy|G_Jq$CS03&RUMx^c?8A6 zcQ7b2if%w{?5UD;Ejgb+z#L&Yk}bmLym%>#igMsFqomqsbX=Ydyxj>L+BW(FM_86-!cRnTqET@VmzXnI?zm`R0XA zTy0Z0I`@(+csERxLy#aFe5RWuQ{~W4YmK149{u9_otq?sJjFU(LkwF^mCBz{K(ys}40PgEk{f2oksz}X+9?yf%xJfcmj)Fsh-s;WQy}PT2GOUu|Gt+Op16QxV zsE(;)Nqr~Npz3w|!%t@ExIS2=Y9?FzB=}76rw8g~GEVg(>O+lcHS?!63l?anmbdcG zr@A0&%>?2ugdBlvzwvX^V0E0wcETM+a#X=ZzVS?xps+^~MNcZze9!cS>5gg?p$(yf za?eJ#_3Q;fDvBz&0AWKwrrqhb6J|69k?UolscHyf_m<1nP1hO4IE!V&QPt2sW9M17 zZ(Rkcs>X13#9K90#!mZLJI+Z{Mi-UJ9E>Ug7g}4bR=Q5wt9*o*ff0ksbj!n*@d$X} zs~>(oy7|`Y>@vn`mw_C2uBVnax4c~2(_}Plh^0NB5MaD+#dPR-w!XSmik`F(xQ%wQ ze<$X8eY{S84;IL+SRC1*dj3x!K$}{tZV9;^eXXq055-t~CJ3EL>I9bA*-Srjh=CWx zs#Okh=0%f?8aZSd^odp4Rtyie*Rq`9yaA%*j0EhS^YTu=4>V~+>yj$vCJ;P5BvD$$ zIQaGqvxDuGG-Hu@=JQ?rYW)hu{WE@+*D1!q_lLYyqY9E5WtF6qqMuS4@m)|WwDm#V z-OtdH9r-Ew2P9DTsaVU+q*%MLiy;(|iBokWL4_6m9xK~^OKIePVv?g7BTHJ{00000 LNkvXXu0mjf=Q`oD diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxInactive.imageset/Contents.json b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxInactive.imageset/Contents.json index 1fdce55..39069de 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxInactive.imageset/Contents.json +++ b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxInactive.imageset/Contents.json @@ -2,8 +2,8 @@ "images" : [ { "idiom" : "universal", - "filename" : "checkboxInactive.png", - "scale" : "1x" + "scale" : "1x", + "filename" : "checkboxInactive.png" }, { "scale" : "2x", @@ -11,9 +11,9 @@ "filename" : "checkboxInactive@2x.png" }, { - "scale" : "3x", "idiom" : "universal", - "filename" : "checkboxInactive@3x.png" + "filename" : "checkboxInactive@3x.png", + "scale" : "3x" } ], "info" : { diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxInactive.imageset/checkboxInactive.png b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxInactive.imageset/checkboxInactive.png index b13983be8a23b1d45dda458811d1f977aa3d3395..b445f9f907cece5ebf7d7e399254bdf587ef8305 100644 GIT binary patch literal 318 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vJfvmUKs7M+SzC{oH>NS%G}U;vjb? zhIQv;UIIBP0X`wF?gc*Y-o1PK_U-%k?}3chuU|vh5bn2c-~Rvqe_Q3~GN5|Sk|4ie zhSvoO`x_Pr)Ms6(1sSr~)5S4F<9u?$08R~)O-?zuCRE{IN;KunPdF$0HaPqr@)N9q$BHQ8ZU2RwNdz literal 555 zcmV+`0@VG9P)rR&?**rI!3o68 zCq+(d=l9vq_OqZI1wr6IgVX8sf=>^nr2$&@hA>sGRx7VwuYV}; zJ(|MEHyK?SL{T(29*<+ZI#f(C9>3LUP4r560UrTAv4E5M=bagPrO@C51usKy=}Zy> zj(M$C`y#uMn-pVBo_I}?5CJ|a5zcaWlkkgBqYubZQl6I);Wf3nvRbY7$Wj;>HJi<( zG-5_#Q$`8&8A>PJ5U_VQAc%*{T;hW9I7#>Uz#!eEAe{Rz<>7ExWOdL@io%t_Odtn2 z_$kWkn0J_N{P!ST*X7G&p4XAVMd8pC>~k)HL7&d~ye!2Sz0WU+0Xw1asU%^xzGD7f zIGn$^f&M9GwA<~Ud*$lNT(8$d6gKHQzJwbMSlC$}w(l5g^GbIJ+i{M>)=$H7(?B=E tsCoc&Va7=@omGfBeiq1A6W)ngjBgk&2taa-DXahh002ovPDHLkV1kjv?+gF{ diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxInactive.imageset/checkboxInactive@2x.png b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxInactive.imageset/checkboxInactive@2x.png index 309518326fbb5d844addc80c4cca80d8abd0d896..f11505fe6a258d5e9990eb79755174f6533d2fda 100644 GIT binary patch literal 514 zcmV+d0{#7oP)Px#Do{*RMMrQ+9?9@9*sF?CtIC z@9*#J?d|{n|M2ke`1tq*@=}Wc000VfQchC<*<9}+fDo0sfB$}M!TQ4ocrWP^5=A(fyIuoSV_O0*EHQl+p8SZNuotW2BA+HT#%#Dl(o*YvW%7f9l} zn4jIdGjr!=eSn;1Vb908bBCSTQfVVcm3k*cwSDIEZ@ZW)L3HTxLu9(w{N3C~^5pvE z8i*pdjsq|qI|o2W9`Y=KH|}r4(LMt%T;PNOH5Z81mbg%Z09P7tN`MCq=#wsLKH`@5 zlD~;4VvGA9=5zUc^wl^uU(4sK1&%~O3cPqOF*RmY!@vSv5wI!&L%q>9fHYeVKrDdw z84myiFg6nwK!7j>Mmzwb$gwdK77)p68Z%-6-?CBj2pT{dm9=^S7Bcd!v806h!r zz($Y&>{%elUj5AU$*6?tH%A8eTJs0wtG>~I9sz=)!6_WQ;^8eEfA=1Jv0;L>CH`lL z6|X^dNZim??Pcya^<{mYo-%Cu)_u9&L0oOOHa|vJfAdvb7>LAVL;wH)07*qoM6N<$ Eg5zB4l>h($ literal 998 zcmV-kQsrBlhxH#SzKH+xoqHt&;a!L zr!oU5oCZ)l&!HppwF?UiKX`Oz6+TI|{`&eVsM)Ny;NVtqXAwS0;?YG4rY>Rv7D7i1 zA)B+zk>X!oUW^TZ2dYT!o>*d<;uXG&8~9>@0>rb??=ggYDVQR}E4;BQvLw)jg`&^_ zj4fNBc;Xq29t3Sh*4Ea-a|)v|?EaD{SbSd(Qpe;13XY-&p*S|g6JrB7(8LAAjj$yi z1TJ^SOs=31hRi47k(?xX!iIRzg!Uk;w$IPcTbTfD1ZIa}vLK$7bjf45f>2?^ zH9;A-QxZ{2%Dx8}MtspA^FxE;c`{hT&65{&?T6<&b6&gvjdd-a46UM{pP%oz119Ap z*x1HqE&CSgQV@*l|wLsH# z(toKtN!$sB+h)3FO7UA;TeVUDkKGDWZ)^UD{qD7c8N&JY_I4w!P^P^+j1fL+f-gRN zu|pG{KTeAIIGGmpyb-%E3+;kqQ610P&mx`}e`-K)z_m4m)rm}xa1g~}=(m1xk(JyZ zdniK=)XsLUfe&5d4bp8M;hNkAMA61b-w^%DjUOpOaUFhYgCm!)P3&%5=M^303r)TU U@8izy1ONa407*qoM6N<$f*Ov!EC2ui diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxInactive.imageset/checkboxInactive@3x.png b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/checkboxInactive.imageset/checkboxInactive@3x.png index 1506a2a9205c7f034263771efb216e596c99f04c..7e5fc7b6f4f94bad099de5744baa5bdf97ad16bb 100644 GIT binary patch literal 642 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeE3?v1%WpM*3mUKs7M+SzC{oH>NS%G}U;vjb? zhIQv;UIIB<0X`wF?gc*Y-o1PO{{34p0J0&BH(&ta{{R2~$B!SgFR!=()WuyAIMq3Gqf%)=@x%?|Zs9hD02GJAJoYnsl7l)Xs5J?^5n;KQ?IPG> zqPb>^;ndbx7Qssz9Aah5_P7aXOE({@pKR0kTzE#i;YIHvYwOL`icsY`McR;Ov(DvMlj`&sSXy z_HhuXxgcwOj+LiTm3PK7rZ)SPuk5(@HaK3qaHV0AF~i!`?|B?#-&rzWaH}}SkdfhV zPqKlboPmM)%Wih|0*C$8XBgNrTJ4M(UMz~<@21ocx%7f3OTq6C$*N2O4_=@4WLa=c z;er=It;C~~SJDKrC$FjiNGZ_mO_w(F&Y7}y_XkuvxL&?O8 z?N+PGSwvzFoT*>`JLK#;b9IrIlT+)LofZ1`;Z2u(+0PdWa(+i1_tzW{>M!`D7--XW ziaqwDhOYdzsjCwHdmiLV(K4zJ-yZnC>-PF9_a3lW-s|~k|9a8BJHMm1#RhZ=_4?gc YTXgwY(GgxjUbnx^=qtOU)zr&wBK0b!Y z*Wzap?gqT!XD7J-`|$8^vbnk0m1m?OmZ6ljwY7aT_%#|z87-L-{H-oz9pB#GcDJ^+ zBC&`SK`AL6v51znv9WO^7BDJ^V!%7R;rC)7Qc4m9L2z_+b#-hqs*DJlv6wWmsP*;r zPhx$E-v07Tp2mDF2q%6VMy@( z{QSIBNhmA`a#(M^i2rfJJH5XU*HE1y?6ByJ;0NM;)|1#u84es$$l36W}veZqJ8~jC6InN zBs$IF6hrUzD4vif2WMO5`ubW75cg&Q=a|J4^5h^bOvxcF$PSreJK_OFCtSJZr3F_#Hb)1EGCEge2hFU+#uKFkkS_~Ok!N)_&qi}4;SSS3W~%sd6Ha}Bb>+= zgYY;gi!4bF%OL}fq))^UoQGk9vPesETn?|@9t1dH_E!wT1{IOyx*WwHj-(?oOc6;Q z$YBIU6x0<9l3bIcIOdmF5K`bsER!Y4Q8}En@A5ttq|&S_mZ1m^CK0~zjpHU4-C>Ogs(TbMdUSEtJh_Nd)gs?k^O#_y_Gq5W2dOAJkeb2OiQ~RM zcEXI;3*#4RlWJ^h*3!+)wHh@_wXxSnYbGvcfuvALn%l)JN=}sZf{Am|{6z?QD{~4` z>tK=`k~?Xy)-N2&oPiI%(30^&XEnGo4}Z|eLVXutTkydbT0vQAS-4sd`&m4OkyBI- zDZOr9EtTR<3%(U@j_=-<-Cn2C#saE$^J-%O^j5oh1$i8m&aCnuv3vAkFv<6r*OgCV z>dj45%CRnm;uajD989}om67dnNWb6zs4hqkWwyjK5}dlJx}ixDV}b~46EESPktm~L zG)4s_QOm3Lc&)KmgcI!eA3xQmO2#MqtO?REs&GP}Bj#kqyW-iDlEk{8G-}7H9kngs yHX6$D6mMbbr4hgAEdsf1AVhbY&1PgqcEOQh90000uRIpcdd#KgqqeLBR%#I{jIY5)KL z7<5ujQvk)^ukV$K5P%@>U_i=h-%wpJuOOg6Z@buIt3@aB^@}BhHW1huM0rXWT%gC zI96oy^Z}-z`+o?l%_l>b3K)m``=`|MbCY(^WJdp#uVs6@q+MK)8TOI6CI@g}&kO)Z z>XCrP{dn$Cp}wc#i6RW?1Oo)JTT>kew2Wtj4#8|L*nx*@IzyyGwVlHv^Qx~H*xa^zR{_y*xjKX>R|h}ktAlOv;I`rW_shwl`9H@gEuOS- b{ipRGfys?3N2hLe00000NkvXXu0mjfI{H4= delta 636 zcmV-?0)zdx1+oQ@L4Qb4OjJcja7=5wn#9D!YP*@k!^6YF!^6YFuD`dxzrV!9#KXhG z#KgpFyqd+u#l*zKYrL9pyPs;jn#04xYP^|hyP3qq#B02o#KgpxA_2w#000(rQchC< zmc?^Nm4F}+@87TQe_+ZG-!QL0ZzI}uGynhr=1D|BR7l5_R)6cdgCGp62y#=0Y_sqG zrYFF5Hk}vjzwK*iQfdRyI?SlNv&`&-8a17S83Zpv9AeCXldXSBZSW(?r%#pCE+nN3 zX%_!U56G~Yu0h79!yfH@>gTz?-P=d{UqQ}BkE2qba|!Lp`6Q6Ul| zOElF0dNP(xX7re=;sMzsdh|T+>6_CN4NVg6b$~lWcz=vVJf4cLv4vnq3>|$P0IJa; zW}>+=C}m#;*lUy+qIKQ9rH>*)w7=F?asA>hkA_J@-q+n5I;6{ZS8-~}cw>JE3N-+o z8BrSYSoewMk2#m{6i!u4I&TXqC1l;2;n(i#E-tdvsH#=zzL)WEwv31GWsK`i>;Guo z!$1}$RCNra-5lG#eH+dS0n5@`mKCyPb!(H8FvSQt&9po{6jK~GY}dU!9JYH)wmTKu zjj&^}?d_n&e(A49BHea-Pl4p&`RNeT(?OS~gYC@0YeSFg$H`&(3!{Wfm7G`OZ}uN` W+Ja_nDBi#T0000lF z#KgqJ#Kh%&I^%pg<$XHkd^yC##O8fE=6yQC!otJD!{vQC#KgpgGN=;(000(rQchC< zxo|*VAc+v%-yrXxnM&_^&$(YPP$JR`_5c6_=t)FDRA}DqT7TIVqaX~G9Taz^|No~` z*~D7w7H3{2Pd&BGB{v~Rk}NwUf?$qXRlMF(D1e_;eXZ7ix*W>c2b(R)Uqp^YJSA@Nh1Vze~9WuRa(tUk!1u45d6^QV~%|k z$f>&8Y)M%y|D+DkG`Mtt{o= zwE?{WkbfyHiDF?wG(bWC*hu237sg;fV?d+{CWJsj-hf=f0Mx+*zZY1@u)Q&GCfGm{ z(Zwy82doK!7aSRya#Ll%r1IMtMTXe@B=NZyMBpeeB;fQrHwR|4Pji3_IgYpw&ejKP z2?R$rvw%SdkqaYci!R~3s5|firk^*ocws0 zw*JI_V55<^lj$?5VzdCIYmv z(|=dI4wj+#N*Z5-fnR=UydcEa;2JW9B14`d0=b#{P<&$Z6^aA8*;XucQcfV@QVVzq zv@RagYpgXvf_XqMiU~NF0Co{)%bJnB)N;sDg8rz6#QFiNbxUKI~3|{_aaHgi?RMJ3Kpr2b@ZfO~BmX@6x zK#JpAt(>I1e?D4Ev0L5`k6n?cKi8mWRvnIi(qf4S*P29nU;js&D{JHtcEpJ`*W1%7 zp()GvtO)9Tceof1w;E%pRoekoch$0Wt`2o%L$fsYZ+DxetM=+{zfrAP#ID_ILwi?# zw0i~j-Qg3>eHOdWyPOiQ{)NuXCj=v2?XSUxc_>1W?5sqHSGzSd5QicPd}%I$rehC? zk0gve3>52h>;YdMLm7_@ZjkJbF#3D+1Ov>_Fq-m_Frz8pgw8bngTnYvdt&_O4^ZI{ UgDB+K3;+NC07*qoM6N<$g2!z(_5c6? delta 1120 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 AVE_OC diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconCafeMenu.imageset/Contents.json b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconCafeMenu.imageset/Contents.json index ec0b52e..2901b00 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconCafeMenu.imageset/Contents.json +++ b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconCafeMenu.imageset/Contents.json @@ -1,19 +1,19 @@ { "images" : [ { - "scale" : "1x", "idiom" : "universal", - "filename" : "iconCafeMenu.png" + "filename" : "iconCafeMenu.png", + "scale" : "1x" }, { "filename" : "iconCafeMenu@2x.png", - "scale" : "2x", - "idiom" : "universal" + "idiom" : "universal", + "scale" : "2x" }, { + "idiom" : "universal", "filename" : "iconCafeMenu@3x.png", - "scale" : "3x", - "idiom" : "universal" + "scale" : "3x" } ], "info" : { diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconCafeMenu.imageset/iconCafeMenu.png b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconCafeMenu.imageset/iconCafeMenu.png index 402fa9ef1da1161e32492c76e232a8e203298de9..c828eb6b8431916f3d7d2637d9c3ca52555a2bf3 100644 GIT binary patch delta 209 zcmey(_?%I(Gr-TCmrII^fq{Y7)59eQNb>`+5DPPqEZZ>CW}>1(y-I*jh^u>nPit#y zI}&JXYXkBc8XABkgk5KPUlFK}yCldjn4w|+6NmX3=LHldY+TUO0~Gf1ba4#fxSpJl z@L-Kt0t3^ur4M&+Z%Z>W;9!4yZ}06ZI~ou6@SZTp@JqOHC@3dK=77q94XjHhG^&g7 pI2$l$gl`k#n87?(m4iu=hrvl&d>V6?k0H=l22WQ%mvv4FO#o(sNrM0Y delta 229 zcmaFP_?uC&Gr-TCmrII^fq{Y7)59eQNQ;9o3p0=uVmUc^qM|~*Vt`MGYfDQ@dwaWk zfe(-bf`*0$2&1{V8OZ4D?7Zk|y8)<)yCldjSm8gz{(AxjT@DV6SLI^tfWnEME{-7* zmy-jSm`t6`1(qIIutem*1SO>z2LxCit>EV35)T0%VRBCF<>ub_$a&+KZ9H<=N zS1`$1QCLm=rUb{N1v07z5-~Em2I>JvSa}ZoWBe(?a%5p51KR@w2L@J#czxBE%09}k QfwnPty85}Sb4q9e00~n_VE_OC diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconCafeMenu.imageset/iconCafeMenu@2x.png b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconCafeMenu.imageset/iconCafeMenu@2x.png index 02a663166a090fecb8e58db70b3ce0181e101b10..71063605bd373c0fa9248858d1fccc82dd20804f 100644 GIT binary patch delta 271 zcmdnMw3JD)Gr-TCmrII^fq{Y7)59eQNXr7TG7B@1oOM>_;Y3A+dX)g55LfpCpH?tv zZf^5^tSRDSrVQ@-)CO=O;%Ll)N7ky3z zJIkyMX1psCX=%K+mW`+9qQ^%`zL1nAfewQN1_tIMMOnF}YF0o;F?hQAxvXhI^B$AqM|~*T!2rAt9yY@dwY9p zYb%fhf`*0$I0r&P=o7Wm*$N8HCeL&f#PVJ`mM#fbk@Y!i*yc zoCS$KEgYNAw{&JZMY1LoE}MCofkI1@(X5YR9Yx|;E8+U;xjwrfPxo2T^vI!PQSgfm#Zm2 z;@C&_%Q+!Zht7It6ra&u$eq!d(arQQ$IN8M)ab>n*Q&SgJ& z73U1!Tex|ZJk;-4Xv}ph**$T-drA8P_OCaVioaO6nLXlDVx;o)nC5;RxC5OX6>Z6 Zyz_58Tq+)C!2|RjgQu&X%Q~loCID=-k1GHG delta 318 zcmaFHbeT!9Gr-TCmrII^fq{Y7)59eQNV|eC3p0>>x7bW-qM|~*M1W6-t9yY@8yK{< zwzeaIU)8TcYS~MI{DK)092(@FuAlwL<`z)sn5TX83?qVpTBvwwxZg) zV^Xo6S9WB{L>RV}n6bROzrEFIeL;!&x7+tVUflDRamSp`pQbiU_w4H6-(T!>_S|ou z`n3;^KaY`Ko+9o0SZd|I=U%tWF9xP*ZjXu z`BeT}(eMpwny+L^Yq>9eS=YC0y+F`^M;XzeC3kKY7x?V3P+4QFU~!Psui)Rsz}?0R z_FF5v{5_fGvBS1h^G0mh$se`LEq?QTo{`AB|FpPB*)=^5eNDZ~KtC~fy85}Sb4q9e E0FW|>ApigX diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconInsta.imageset/Contents.json b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconInsta.imageset/Contents.json index 78701c5..ab0b2e1 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconInsta.imageset/Contents.json +++ b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconInsta.imageset/Contents.json @@ -2,18 +2,18 @@ "images" : [ { "idiom" : "universal", - "filename" : "iconInsta.png", - "scale" : "1x" + "scale" : "1x", + "filename" : "iconInsta.png" }, { + "idiom" : "universal", "scale" : "2x", - "filename" : "iconInsta@2x.png", - "idiom" : "universal" + "filename" : "iconInsta@2x.png" }, { + "idiom" : "universal", "filename" : "iconInsta@3x.png", - "scale" : "3x", - "idiom" : "universal" + "scale" : "3x" } ], "info" : { diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconInsta.imageset/iconInsta.png b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconInsta.imageset/iconInsta.png index a9fa2125a09687928bcb58a2331ece5b4370da92..6d2cd53764675c660cd845e9e732862ab2ad6dc9 100644 GIT binary patch delta 239 zcmX@i)XJpT8Q|y6%O%Cdz`(%k>ERLtqy<5kg&9bmbdEYXQBk2@F~BFpwY9aiy}jMN zzz0Y|*g!@b7<6@Y0oie4jDA2(TqQw%!43}@js`4EkZCjMS8UJ*ispE_IEHXsPY&1^ z#mdCS#S_WPqj2HqfrN!DY^&IKxE;3an%u?EvUFn*;~B5GH}hE1R<4cO>cDv>C~j+( zt6|I1tyx!{cH9W!@J_s{RmkDp8CfATg_Vgz>;m76y^K6DiVDj&u!PxelF{r5}E+K3r}zW delta 302 zcmZo=I?SZl8Q|y6%O%Cdz`(%k>ERLtq$NO@g&9Z+MJk-0sHjk{9^ez=>R#Z}*4EbA z+S(2S4Gj%I5g-ppLKr~yg4dJ!fLeJBktz0ZqM~+vTU%Q@40LpK0J#v* z(9i%BezZ8438+wYYplsO2zT_g7tD15`y#W6(Vd~(8rte$(k%+ak9 z4GFLEQXU*TaA0S3@?;^NjEa2E1dp3mjf{*IW!wfC?^7Ju?pjOkVGVGJ*lzqL&q1(0 z@!p9I(TwLFo4AW7GOltLjqK7nbX7>}$blz27!((A73v+5QQNRwXo5@7fx03Gp_Odi zZ(M{vvUTUU3pKV}aN{vOp>#=N*Dgb!I3_Ve2cbk}$-S&MTNBi~7Pj^8Do~v!pzNr! zi@~*}P`TM8>&=q9^b7YIm4f#2$}nB^#R7M?_#06YSigqc;G|2EV YIBx0N?q%?y3Fu1(Pgg&ebxsLQ06wpQGXMYp delta 473 zcmey$^n+QkGr-TCmrII^fq{Y7)59eQNE?7K3p0>hs`F&aL`CiTb}(oIgN}}lhK2@+ z2!xa|F!=yf%v}=X7tApK(6crN0|ABn4P`e^0ZnC$_H=O!u{eD+c()gGpupZ;`trRK z6&{({c_hzD_`rBOhfDCL+KPmUX-6-qE%+wrEzNE3@TW<|ysMz@++O49)$jH6meill zEGs*A?#-E*l8R#e&-;(rEi9~j{cF8YL{9YnexV@eBM#;39e-po3#&i4({}&n1oJsN z>}!s0KWVb*odLgLs_`aI?iAyRClzNh*3Ds1kYC{cP3zd5l=U~&4;|jEmlbY1uS+d; zRZ!)wHL6NsD=ICyiZ}M~`ql(Zw6J10cj6#Ref@+5sz*#i9OpO*+g+Dg{YCYVbNk!N zTnn@Lr^u)(O}>+0v|3=}wdJ-mr?2o0{r%a!ZsDru*#=$(F>3^uY+%WL*0IBFRamO| zs#RZ9Ca-5JJ-9R2_7>myeb=AtjlI5@_l#Vo&5P8IknMU&JX`Hf#MWng%W-g(y7TzD z-q&eg?^~4X2h2J6Wy1M{&9CP;{(aaXeq1;D>Ek;;zgvj6*nd*pvVkEs;3O~t7(8A5 KT-G@yGywoXJ<@Oh diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconInsta.imageset/iconInsta@3x.png b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconInsta.imageset/iconInsta@3x.png index d64331ddf3f5d00501e6bd40547beb7bf108e8eb..17362c0f40657e62eef2faec0b63299d411ded31 100644 GIT binary patch delta 466 zcmaFP`ixnzGr-TCmrII^fq{Y7)59eQNE?GN3p0>B(XT5xQBk2@F2ERbswyIc`aYFO()PA9zdGX;# zSNy)Rdk14hV0A*^j8n4p3_o-pWH_XZU8G zzreqA+QO;xSJ{_r{rjGa=WkF~();p*F~R3D64xG5vNd4#E7*VAg|Fevrn+*W8XLRW zg+=pL{9j)Cv2otdS)GSxB|KEJJU-Lr^q!=RXS>y`t?H+qn(&`#(M~UuqrbX6ECQ94 zpK)$X55J=#psLX)AHB2Ib3)OsEB*WAZkASQ=jSuLS->Y2CwB4_Fwhx1UHx3vIVCg! E0Qd~fDF6Tf delta 725 zcmV;`0xJFH1Lp-HiBL{Q4GJ0x0000DNk~Le0000;0000;1Oos70H?#Qbdez-eR$e*ZaVZsum*&dwNOomcI?`|SL9 z-|xIR#!jLckC!IV3;iB{*v??0KEHdj%`E3|qQ2)cPvHrN>SjKuK4?I9 zlN*hJ#De(F+skB|YeNBXI@Cq+{?T3L74hXc^1cO}X>VA3`qREeVvU~qe??+xwpg>k zs!Jq$J$4DWYZ5cSI~V$lMK%wtm_#3NXG=2hBFS-RGM_MNDJcptU?qN=41MnI@5$oK zK`wfWY_GJV-jQW}C8o>ehAY$t$_#W%$#FqGU1#hYfpYwCys*ilje@bO;06M|o9b!( z)oz~yE$ETd^y~v^KPB3Ne+Lp0j@HG_vZ-hUN`TW$Z+lYtd1%o(w#t!)ggRrDscgoD zDkGs7>M#J6wko9($^)6%q~yHtLNPJM6W|~Oy&w)7c%eDs!&wC_{5NE#JEf}Go~}z4 z-U&g}(UlU-Tg;KQVW^mWD$6(k&0soTKP+%etuk<|VoX;G--=Def2GHCP5bTy?fdKK zgOGWS)FkMU%J4@&y;jVku@ybR#%*upvR+#6jYv1N4I|#z|Ke>op4QWDH`>wdrU}x- zI-Yi@E5Gv3#ww%HScPbH;cwBs<28FJ8h`IH&+_J{@&dx{8W}tKI+VG_T~=w$QXTpl z9UuQvWXnEi^XQA3E8q8A`NM6(@$}((;J-n#q@y_bAJvS%&y~u;UbjLQ00000NkvXX Hu0mjf&5T`1 diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconTime.imageset/Contents.json b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconTime.imageset/Contents.json index 789a579..ade7c6f 100644 --- a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconTime.imageset/Contents.json +++ b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconTime.imageset/Contents.json @@ -1,18 +1,18 @@ { "images" : [ { + "filename" : "iconTime.png", "scale" : "1x", - "idiom" : "universal", - "filename" : "iconTime.png" + "idiom" : "universal" }, { + "scale" : "2x", "idiom" : "universal", - "filename" : "iconTime@2x.png", - "scale" : "2x" + "filename" : "iconTime@2x.png" }, { - "idiom" : "universal", "scale" : "3x", + "idiom" : "universal", "filename" : "iconTime@3x.png" } ], diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconTime.imageset/iconTime.png b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconTime.imageset/iconTime.png index 31e5fe3eccd90d4e86ef7aea2d4e66c6dbc8a09f..eea5102f8ee30b8fc2d5a4cae9d083ce29a905ee 100644 GIT binary patch delta 286 zcmX@hw1r8rGr-TCmrII^fq{Y7)59eQNDG263p0>B=^S-(qM|~*Zh%jSt9yY@TU%Ru zdpm^e=;#14AOI)`0YGj;Lj#cg(Eo%O&;Y)YAirRS=KJyQl`9eo9F8ms5YX9|%!J=-P1}9vdzmI|t)eJQ5aS20AR8Zpa%K z&WvL>dc$>sYeA*M(*A?f>|3KwYKJqVeALL*7r)4&op^ug7GV!YhO;x|GIG}Ptp&P^ N!PC{xWt~$(69AyaVvYa+ delta 312 zcmdnObe2i6Gr-TCmrII^fq{Y7)59eQNK1e)3p0=uic~l~QBk2@E5Ikj)xE%{t*xyc z3_3eITU%R!Ot?rxLjyz#NEY0h^9^KPNswPKL(Kj61`5XuI@Sy1JGig(=>bZt@N{tu zk+__kaDaV>O6hvvmco|zOpQt{XA8}(8(d%HG0(W1&8O6z-{5iVG@nA((fTk352IN2 zBv!VzC~XCIu@evW9yoBIOz^}^ZH9*%?z0pX$tuWP^L98FtMF_uS89X7<)sW9&f*@M zUu79?h+&otU{Gm#XJF98Gr^ZZXbm5akHTW{_;!oJ^-Q~p7x3M!VSdHx%6=_3K;M9) o(I%ba^Qx40OFOwgwDB-RGwNUE6y>|>0(3Qlr>mdKI;Vst0Ei%RfdBvi diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconTime.imageset/iconTime@2x.png b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconTime.imageset/iconTime@2x.png index c83bf0a2816fb1adf4ec1ec60df7c299ea82f678..f57a7d6dd6044c3d22921788d6f51246d47d0a36 100644 GIT binary patch delta 463 zcmaFH{Fqs>Gr-TCmrII^fq{Y7)59eQNGpLb3p0>Bktz0ZqM|~*R)9~4t9yY@dwY9p zYb%h1fQE(!AfpWiAZ#F+I=S&I$h?vuzhDMSh4;tq3(Svg$X`E!r>OH00|TR-r;B5V z#`)v~2F7hq50?9CiAX$XxcFUxOLC1!e^bK9$#8jcqa?sfB==xVt0 zWHwKM>w$!iya^B3E(*9V<8+vB#voh7uuP-3u~Agy&{lCl!Q%$vA{S1E3l^R%G-r78 zPhm%gflJxjt86P6uE#oS@b<>K-Cr&6-l*f=-g|6IjB4InIf`zcySMuK?wZ$kcZU@) qt2Smbu-FJsxT6^QXj8gi3n#;IqrBwQv$deuV(@hJb6Mw<&;$Sl*t~cE delta 466 zcmaFN{ES(#Gr-TCmrII^fq{Y7)59eQNE?7K3p0>hs`F&aL`8*q#Q>iWSN8&+b}(pb zYlAZy8XACHh{(B95?Me^TqQw%!3_6S#=lpn5U`lAM<0%Uf+|;Hq{pk z`7FNt=FXnE+w-5_Q#)CI%sW4#T&{k~RTe#~#cs8XT}xg34i-vW|L*(nlh5ks$&>fE zxu_N_iLFXHVZyANAn-{uz+i*JQTH^98P1B0Vs@S(@l2Z2O0M}ZRWC{N zcqI|A;%IpjTRMx!U7u1v-Nr6{|COpT=ZbPq>r6T=zD3uy~>J)x}kwuVA(%jFVdQ&MBb@0K4kQ A$^ZZW diff --git a/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconTime.imageset/iconTime@3x.png b/CA-PIN_IOS/CA-PIN_IOS/Supports/Assets.xcassets/iconTime.imageset/iconTime@3x.png index 5896d972350c230d90395d3cddd8f5312d188137..da844eadff18a1532e5c1587b3aba481b9193cef 100644 GIT binary patch delta 616 zcmV-u0+;=r1^WaciBL{Q4GJ0x0000DNk~Le0000p0000p1Oos70LYIm8Id6%e40KXX zQve{}grde~5br=RP+#qs+5i9n+DSw~R5;6Rlr2xgKp4kwY;-^n4TJ@O00V?nAjVsQ zm>6ItAR(v<3<)F?g@FP?AgBrge*`tL4}d@-Fq9Pv{67@W^=^09UQe`7@7Mp+=dH)s zU|rT1k?e0UYgLaR*6nMatYfgELz^V~%`M+z543aOa_f;`-_^t+$(ppsTELP3I zBBoqcfIY*z09)P|3rb>ClVK&MO&5 ze#DAoFBD-5L6Pj8Ca29ie`Cvdk-C|2QZino5nXvhR^owI#Do~KARTDx*Qk-0koD4x zXVWosGqPCpq>;w5n;Gk#(DL`s@Mrzm74el(ByJwHWqK_vPx%1W80eR7l6=mc38HKor1_exegWiOPf_E=+|mF=2>_=~Rs|#>vH) zFyUexG0~VfY2w5rhy?Dh^p4WLfA{XL(4Cvw*WbObyZ2rh+oE;T`r>@QcfSU4+kCao z2U(04@^nq_HZz=$jg(Iq&L<{|FI-uNI%CB~>hBSIYFC#pH7&4_6qi?yc*pW>5h>84 zld@X`L47%JEFbuQV^!nyfM=$w602HhSH)54S*V(8m(EuEhxHw#$r+*(3QTRZi0V<^ zm5K=};5zRcdWu$@4k>zkn^0~@!+=E_hIDG8Ly9z46U)^OmnVNlV3|v`vBoWWu%SiA z%^nL3%|0F*Fqhn>VQl0ZK*=cUJuvsVl`+cl4MpZRC^Iz