From 5d43df6d060502fcefe2adbb0f3e8bfe5b2360a3 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:05:51 -0300 Subject: [PATCH 01/22] Adding Podfile --- .../DINEngschriftStd.otf | Bin 0 -> 29432 bytes .../DINMittelschriftStd.otf | Bin 0 -> 29448 bytes .../DINNeuzeitGroteskStd-BdCond.otf | Bin 0 -> 30452 bytes .../DINNeuzeitGroteskStd-Light.otf | Bin 0 -> 30424 bytes .../DINPro-Black.otf | Bin 0 -> 88940 bytes .../DINPro-Bold.otf | Bin 0 -> 90228 bytes .../DINPro-Light.otf | Bin 0 -> 88240 bytes .../DINPro-Medium.otf | Bin 0 -> 89060 bytes .../DINPro-Regular.otf | Bin 0 -> 87364 bytes TesteiOS/Podfile | 27 + TesteiOS/Podfile.lock | 50 ++ TesteiOS/TesteiOS.xcodeproj/project.pbxproj | 591 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../UserInterfaceState.xcuserstate | Bin 0 -> 5151 bytes .../xcschemes/xcschememanagement.plist | 14 + .../Commons/ItemsTableViewDataSource.swift | 33 + .../Commons/TabBarViewController.swift | 45 ++ TesteiOS/TesteiOS/Models/Cell.swift | 9 + TesteiOS/TesteiOS/Models/FormData.swift | 9 + TesteiOS/TesteiOS/Models/Fund.swift | 9 + TesteiOS/TesteiOS/Models/FundData.swift | 9 + TesteiOS/TesteiOS/Models/Info.swift | 9 + TesteiOS/TesteiOS/Models/MoreInfo.swift | 9 + TesteiOS/TesteiOS/Models/MoreInfoData.swift | 16 + .../AppIcon.appiconset/Contents.json | 122 ++++ .../Resources/Assets.xcassets/Contents.json | 6 + .../checkboxEmpty.imageset/Contents.json | 23 + .../checkboxEmpty.imageset/checkboxEmpty.png | Bin 0 -> 226 bytes .../checkboxEmpty@2x.png | Bin 0 -> 429 bytes .../checkboxEmpty@3x.png | Bin 0 -> 652 bytes .../checkboxFilled.imageset/Contents.json | 23 + .../checkboxFilled.png | Bin 0 -> 282 bytes .../checkboxFilled@2x.png | Bin 0 -> 571 bytes .../checkboxFilled@3x.png | Bin 0 -> 872 bytes .../download.imageset/Contents.json | 23 + .../download.imageset/download.png | Bin 0 -> 334 bytes .../download.imageset/download@2x.png | Bin 0 -> 590 bytes .../download.imageset/download@3x.png | Bin 0 -> 964 bytes .../indicator.imageset/Contents.json | 23 + .../indicator.imageset/indicator.png | Bin 0 -> 348 bytes .../indicator.imageset/indicator@2x.png | Bin 0 -> 748 bytes .../indicator.imageset/indicator@3x.png | Bin 0 -> 1117 bytes .../logo.imageset/Contents.json | 23 + .../logo.imageset/path2-6-2-path.png | Bin 0 -> 4160 bytes .../logo.imageset/path2-6-2-path@2x.png | Bin 0 -> 9871 bytes .../logo.imageset/path2-6-2-path@3x.png | Bin 0 -> 16504 bytes .../separator.imageset/Contents.json | 23 + .../separator.imageset/separator.png | Bin 0 -> 376 bytes .../separator.imageset/separator@2x.png | Bin 0 -> 736 bytes .../separator.imageset/separator@3x.png | Bin 0 -> 1429 bytes .../share.imageset/Compartilhar.png | Bin 0 -> 450 bytes .../share.imageset/Compartilhar@2x.png | Bin 0 -> 898 bytes .../share.imageset/Compartilhar@3x.png | Bin 0 -> 1372 bytes .../share.imageset/Contents.json | 23 + .../tabBarItemNormal.imageset/Contents.json | 26 + .../tabBarItemNormal.imageset/Rectangle.png | Bin 0 -> 456 bytes .../Rectangle@2x.png | Bin 0 -> 1225 bytes .../Rectangle@3x.png | Bin 0 -> 2310 bytes .../tabBarItemSelected.imageset/Contents.json | 23 + .../Rectangle 3.png | Bin 0 -> 375 bytes .../Rectangle 3@2x.png | Bin 0 -> 1072 bytes .../Rectangle 3@3x.png | Bin 0 -> 2153 bytes .../TesteiOS/Resources/ColorPalette.swift | 9 + TesteiOS/TesteiOS/Resources/FontNames.swift | 9 + .../Scenes/Contact/ContactDataSource.swift | 9 + .../Scenes/Contact/ContactDelegate.swift | 9 + .../Scenes/Contact/ContactInteractor.swift | 41 ++ .../Scenes/Contact/ContactModels.swift | 31 + .../Scenes/Contact/ContactPresenter.swift | 31 + .../Scenes/Contact/ContactRouter.swift | 60 ++ .../Contact/ContactViewController.swift | 89 +++ .../Scenes/Contact/ContactWorker.swift | 20 + .../Scenes/Funds/FundsDataSource.swift | 9 + .../TesteiOS/Scenes/Funds/FundsDelegate.swift | 9 + .../Scenes/Funds/FundsInteractor.swift | 41 ++ .../TesteiOS/Scenes/Funds/FundsModels.swift | 28 + .../Scenes/Funds/FundsPresenter.swift | 31 + .../TesteiOS/Scenes/Funds/FundsRouter.swift | 60 ++ .../Scenes/Funds/FundsViewController.swift | 69 ++ .../TesteiOS/Scenes/Funds/FundsWorker.swift | 20 + .../TesteiOS/Services/BankAPI+Testing.swift | 9 + TesteiOS/TesteiOS/Services/BankAPI.swift | 9 + .../Services/DefaultAlamofireManager.swift | 20 + .../TesteiOS/Services/NetworkManager.swift | 9 + .../Services/StubbedResponses/Form.json | 0 .../Services/StubbedResponses/Fund.json | 0 .../Supporting Files/AppDelegate.swift | 33 + .../Base.lproj/LaunchScreen.storyboard | 25 + .../Extensions/String+Validator.swift | 68 ++ .../Extensions/UIColor+Hex.swift | 35 ++ TesteiOS/TesteiOS/Supporting Files/Info.plist | 53 ++ .../UI/Appearance/AppearanceProxyHelper.swift | 29 + .../CheckboxTableViewCell.swift | 33 + .../CheckboxTableViewCell.xib | 63 ++ .../Contact/ContactBaseTableViewCell.swift | 28 + .../SendTableViewCell/SendTableViewCell.swift | 42 ++ .../SendTableViewCell/SendTableViewCell.xib | 54 ++ .../TextFieldTableViewCell.swift | 107 ++++ .../TextFieldTableViewCell.xib | 82 +++ .../TextTableViewCell/TextTableViewCell.swift | 23 + .../TextTableViewCell/TextTableViewCell.xib | 49 ++ .../DownInfoTableViewCell.swift | 27 + .../DownInfoTableViewCell.xib | 66 ++ .../UI/Cells/Fund/FundBaseTableViewCell.swift | 24 + .../FundHeaderTableViewCell.swift | 31 + .../FundHeaderTableViewCell.xib | 262 ++++++++ .../UI/Cells/Fund/InfoTableViewCell.swift | 27 + .../InfoTableViewCell/InfoTableViewCell.xib | 55 ++ .../InvestTableViewCell.swift | 24 + .../InvestTableViewCell.xib | 21 + .../MoreInfoTableViewCell.swift | 16 + .../MoreInfoTableViewCell.xib | 25 + .../UI/Views/Contact/ContactTableView.swift | 39 ++ .../UI/Views/Contact/ContactView.swift | 76 +++ .../Contact/FeedbackView/FeedbackView.swift | 22 + .../Contact/FeedbackView/FeedbackView.xib | 195 ++++++ .../UI/Views/Funds/FundsTableView.swift | 42 ++ .../TesteiOS/UI/Views/Funds/FundsView.swift | 56 ++ .../TesteiOS/UI/Views/Funds/RiskView.swift | 92 +++ TesteiOS/TesteiOS/UI/Views/TabBarButton.swift | 21 + TesteiOS/TesteiOS/UI/Views/TabBarView.swift | 21 + TesteiOS/TesteiOS/UI/Views/ViewCode.swift | 9 + .../DataSources/ContactDataSourceSpec.swift | 53 ++ .../Extensions/StringValidatorSpec.swift | 9 + TesteiOS/TesteiOSTests/Info.plist | 22 + .../TesteiOSTests/Models/FormDataSpec.swift | 31 + .../Scenes/Contact/ContactInteractSpec.swift | 9 + TesteiOS/TesteiOSUITests/Info.plist | 22 + .../TesteiOSUITests/TesteiOSUITests.swift | 34 + 130 files changed, 3860 insertions(+) create mode 100755 20. Din [1926 - Ludwig Goller]/DINEngschriftStd.otf create mode 100755 20. Din [1926 - Ludwig Goller]/DINMittelschriftStd.otf create mode 100755 20. Din [1926 - Ludwig Goller]/DINNeuzeitGroteskStd-BdCond.otf create mode 100755 20. Din [1926 - Ludwig Goller]/DINNeuzeitGroteskStd-Light.otf create mode 100755 20. Din [1926 - Ludwig Goller]/DINPro-Black.otf create mode 100755 20. Din [1926 - Ludwig Goller]/DINPro-Bold.otf create mode 100755 20. Din [1926 - Ludwig Goller]/DINPro-Light.otf create mode 100755 20. Din [1926 - Ludwig Goller]/DINPro-Medium.otf create mode 100755 20. Din [1926 - Ludwig Goller]/DINPro-Regular.otf create mode 100644 TesteiOS/Podfile create mode 100644 TesteiOS/Podfile.lock create mode 100644 TesteiOS/TesteiOS.xcodeproj/project.pbxproj create mode 100644 TesteiOS/TesteiOS.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 TesteiOS/TesteiOS.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 TesteiOS/TesteiOS.xcodeproj/project.xcworkspace/xcuserdata/bryos.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 TesteiOS/TesteiOS.xcodeproj/xcuserdata/bryos.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 TesteiOS/TesteiOS/Commons/ItemsTableViewDataSource.swift create mode 100644 TesteiOS/TesteiOS/Commons/TabBarViewController.swift create mode 100644 TesteiOS/TesteiOS/Models/Cell.swift create mode 100644 TesteiOS/TesteiOS/Models/FormData.swift create mode 100644 TesteiOS/TesteiOS/Models/Fund.swift create mode 100644 TesteiOS/TesteiOS/Models/FundData.swift create mode 100644 TesteiOS/TesteiOS/Models/Info.swift create mode 100644 TesteiOS/TesteiOS/Models/MoreInfo.swift create mode 100644 TesteiOS/TesteiOS/Models/MoreInfoData.swift create mode 100755 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/Contents.json create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxEmpty.imageset/Contents.json create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxEmpty.imageset/checkboxEmpty.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxEmpty.imageset/checkboxEmpty@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxEmpty.imageset/checkboxEmpty@3x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxFilled.imageset/Contents.json create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxFilled.imageset/checkboxFilled.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxFilled.imageset/checkboxFilled@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxFilled.imageset/checkboxFilled@3x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/download.imageset/Contents.json create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/download.imageset/download.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/download.imageset/download@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/download.imageset/download@3x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/indicator.imageset/Contents.json create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/indicator.imageset/indicator.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/indicator.imageset/indicator@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/indicator.imageset/indicator@3x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/logo.imageset/Contents.json create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/logo.imageset/path2-6-2-path.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/logo.imageset/path2-6-2-path@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/logo.imageset/path2-6-2-path@3x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/separator.imageset/Contents.json create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/separator.imageset/separator.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/separator.imageset/separator@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/separator.imageset/separator@3x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/share.imageset/Compartilhar.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/share.imageset/Compartilhar@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/share.imageset/Compartilhar@3x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/share.imageset/Contents.json create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemNormal.imageset/Contents.json create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemNormal.imageset/Rectangle.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemNormal.imageset/Rectangle@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemNormal.imageset/Rectangle@3x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemSelected.imageset/Contents.json create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemSelected.imageset/Rectangle 3.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemSelected.imageset/Rectangle 3@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemSelected.imageset/Rectangle 3@3x.png create mode 100644 TesteiOS/TesteiOS/Resources/ColorPalette.swift create mode 100644 TesteiOS/TesteiOS/Resources/FontNames.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Contact/ContactDelegate.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Contact/ContactInteractor.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Contact/ContactModels.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Contact/ContactPresenter.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Contact/ContactRouter.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Contact/ContactViewController.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Contact/ContactWorker.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Funds/FundsDataSource.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Funds/FundsDelegate.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Funds/FundsInteractor.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Funds/FundsModels.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Funds/FundsPresenter.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Funds/FundsRouter.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Funds/FundsViewController.swift create mode 100644 TesteiOS/TesteiOS/Scenes/Funds/FundsWorker.swift create mode 100644 TesteiOS/TesteiOS/Services/BankAPI+Testing.swift create mode 100644 TesteiOS/TesteiOS/Services/BankAPI.swift create mode 100644 TesteiOS/TesteiOS/Services/DefaultAlamofireManager.swift create mode 100644 TesteiOS/TesteiOS/Services/NetworkManager.swift create mode 100644 TesteiOS/TesteiOS/Services/StubbedResponses/Form.json create mode 100644 TesteiOS/TesteiOS/Services/StubbedResponses/Fund.json create mode 100644 TesteiOS/TesteiOS/Supporting Files/AppDelegate.swift create mode 100644 TesteiOS/TesteiOS/Supporting Files/Base.lproj/LaunchScreen.storyboard create mode 100644 TesteiOS/TesteiOS/Supporting Files/Extensions/String+Validator.swift create mode 100644 TesteiOS/TesteiOS/Supporting Files/Extensions/UIColor+Hex.swift create mode 100644 TesteiOS/TesteiOS/Supporting Files/Info.plist create mode 100644 TesteiOS/TesteiOS/UI/Appearance/AppearanceProxyHelper.swift create mode 100755 TesteiOS/TesteiOS/UI/Cells/Contact/CheckboxTableViewCell/CheckboxTableViewCell.swift create mode 100755 TesteiOS/TesteiOS/UI/Cells/Contact/CheckboxTableViewCell/CheckboxTableViewCell.xib create mode 100644 TesteiOS/TesteiOS/UI/Cells/Contact/ContactBaseTableViewCell.swift create mode 100755 TesteiOS/TesteiOS/UI/Cells/Contact/SendTableViewCell/SendTableViewCell.swift create mode 100755 TesteiOS/TesteiOS/UI/Cells/Contact/SendTableViewCell/SendTableViewCell.xib create mode 100755 TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.swift create mode 100755 TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.xib create mode 100755 TesteiOS/TesteiOS/UI/Cells/Contact/TextTableViewCell/TextTableViewCell.swift create mode 100755 TesteiOS/TesteiOS/UI/Cells/Contact/TextTableViewCell/TextTableViewCell.xib create mode 100755 TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.swift create mode 100755 TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.xib create mode 100644 TesteiOS/TesteiOS/UI/Cells/Fund/FundBaseTableViewCell.swift create mode 100755 TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.swift create mode 100755 TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.xib create mode 100755 TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell.swift create mode 100755 TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewCell.xib create mode 100644 TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.swift create mode 100644 TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.xib create mode 100644 TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.swift create mode 100644 TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.xib create mode 100644 TesteiOS/TesteiOS/UI/Views/Contact/ContactTableView.swift create mode 100644 TesteiOS/TesteiOS/UI/Views/Contact/ContactView.swift create mode 100644 TesteiOS/TesteiOS/UI/Views/Contact/FeedbackView/FeedbackView.swift create mode 100644 TesteiOS/TesteiOS/UI/Views/Contact/FeedbackView/FeedbackView.xib create mode 100644 TesteiOS/TesteiOS/UI/Views/Funds/FundsTableView.swift create mode 100644 TesteiOS/TesteiOS/UI/Views/Funds/FundsView.swift create mode 100644 TesteiOS/TesteiOS/UI/Views/Funds/RiskView.swift create mode 100644 TesteiOS/TesteiOS/UI/Views/TabBarButton.swift create mode 100644 TesteiOS/TesteiOS/UI/Views/TabBarView.swift create mode 100644 TesteiOS/TesteiOS/UI/Views/ViewCode.swift create mode 100644 TesteiOS/TesteiOSTests/DataSources/ContactDataSourceSpec.swift create mode 100644 TesteiOS/TesteiOSTests/Extensions/StringValidatorSpec.swift create mode 100644 TesteiOS/TesteiOSTests/Info.plist create mode 100644 TesteiOS/TesteiOSTests/Models/FormDataSpec.swift create mode 100644 TesteiOS/TesteiOSTests/Scenes/Contact/ContactInteractSpec.swift create mode 100644 TesteiOS/TesteiOSUITests/Info.plist create mode 100644 TesteiOS/TesteiOSUITests/TesteiOSUITests.swift diff --git a/20. Din [1926 - Ludwig Goller]/DINEngschriftStd.otf b/20. Din [1926 - Ludwig Goller]/DINEngschriftStd.otf new file mode 100755 index 0000000000000000000000000000000000000000..ae85f8ee3b9487c8ed754a72d2d14ee5c5004243 GIT binary patch literal 29432 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 Y%kQT5oru3neL=`iEUtfENfi+I7d^Ox6aWAK literal 0 HcmV?d00001 diff --git a/20. Din [1926 - Ludwig Goller]/DINMittelschriftStd.otf b/20. Din [1926 - Ludwig Goller]/DINMittelschriftStd.otf new file mode 100755 index 0000000000000000000000000000000000000000..9a6e0d4ff5d0db37d9e7c5e3c6c479a47f21debd GIT binary patch literal 29448 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�v3OYaenCm)= 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

(C`csk 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 axGu^Di+^-cwl!H^xyk;UG0O%)dj20v|70ov literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Fonts/DINPro-Light.otf b/TesteiOS/TesteiOS/Resources/Fonts/DINPro-Light.otf new file mode 100755 index 0000000000000000000000000000000000000000..8a7f085abd28e11f37fba052fd493514a3be21ad GIT binary patch literal 88240 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 Mo`yNvtp)A*A0xKva{vGU literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Fonts/DINPro-Medium.otf b/TesteiOS/TesteiOS/Resources/Fonts/DINPro-Medium.otf new file mode 100755 index 0000000000000000000000000000000000000000..b4608d06d170998c463a5451d552b533149dabef GIT binary patch literal 89060 zcmce;2UrwI^ElkIX_i@7kaZDRXBPutBuP|IQKBFQ3}7S&C1*39`OJEH=Bx-RW=xpF znZ+E=J9EY}+?_o*c>b$rcX7G*_x`@;`#<0F$<1_ib#-;Fs;;TM-u?UcM&_sliBY#6 z!NK;~{hR!akj-g?R>lNIg@r72*>MF?LD7Jl9nz72J{lhw@S^(FAlM(_zL;?2q~&E;)=6H@B2Uz)f!&1%(#rC()$lLA!HGOkTf_u zD=+`sV$>1(wh_wh5e09$;G}D}N!cST{r*N`@hiZf?2qh8` zEc}Cdl1ATDh>>iA@*gC*0w;Z$@D{yCs1G7Ps+)^bj5@ z0*$7sP^4%r3KYd6t+*%ZB)X3RDGEhW{%9aPov7!?U!+DIDJ#I0qaKtEq~n0ATEOQ* z+7+I*@U%3*K8Dl#sYnYw4JCk)a?xLUno~(4f!^xFO1O}QeTkq7vSYER{6JgqE-NV zqeyWE>PzNO)D+609;rj^hq6DBJv9)`wNYLHuP&U z9Qcle=Pz_tk0El=H2vZ zq|b|kV6Mnoz&e;dum*p^TEKdI`xTzIF#rDb>p<4R^ntk&@~{?UJ&X@o3sGC(K~geq z(k4ksKa44iU1*=Aub~g7dD1VkN69`R<0mPZBhuIZmXdu;_R@b#VULTvzTFeu0DfM` z4(7HN#`gy1x(SR|AFxS12vR>vy!a9?A+XiJs z_Ou0hB6G-C{(>?hZ%#t{a0Z~wIss4Q!w2L=)<9SBOkt%&g41Te@OQ7OQG0PGECgy6|qlN4|w zXj2&H8`KQWV7ze7$+{95>-g<6k+WiqloATYMrg88EXXEWm=kh7h@2&JM(S3fCWM!G zDU34#xrlxNJb6f+GQ*thhCGo6Bqj4j0_6wcjKkmIjm4nkmT-1HdZKZRCu5A(pgF=3bEZa@0#W ztFSkrzNHxS1)(8*5ZWN^!dwac1-&P}1ZNE%${hAFc@*$mG(4AJ&3nW6$b(=mTB1nF zHqgCM$N`>EbmrSanAdjVDikix1NjZ}DiI?Oct*qH3C|dK4#Tqyp0)7o0lDKZ>}@jt zWN#B4PR>Oj=*KR|U(gdom+yiy&`F>Z1>G#@XF~S_)DM9<$b~)_Z2_YHi7o{_D(Ez# z&pZX+s#Jq2DmK7egPLtXn}`6^%L@- zzQVjKK&P@G8`Y>Y#Y3Ba1I_{FA7GIU(ESYh(F$-%pz{K{CeUX)3`bf@jM7@3?dWFJ8`z>5K3*gK`3c-hi_? zSm+<5|3&sk*2{RK3^&SZqwFMhiBTS#%H4m{{e=!te^KEu2WP2As0GN;b7U?+jwXT} zO@#3$f*kz;O$jh~|KP)1vNz4B&vq2G*lJ$gZByjxF?CSQBAQe<$k- zXVZevz?ljXrNO$9y`8BUh>c5ZF+X@Zz(dXy zv2oi%-NW#dL7fqzX_O_vKf{^JfPB5KA~?uL!4pep1zFfs)EMk)9X$OgSSJHK08;Wq z6B>dSH3dn6puD{P?%)r3aw8#c3*>KrMTkZ{4X_wB0c&4RBQc?oA_tUez{^bVG;%|8 z40t)xprZ!Z3|XRk2AF~NUKwBo@HfKdCa{GGjS{s%-wgCtNCr18eSaDO>_al*Lj%Ji`{ZVI z=#`Y1R*=yzDWxDiF4x=H!^^cZRO;NIbYN0$URqYBy}r0l6acOsUY%33@)NQ$3+>&U zU7b7nKn?q}Jo`BN{M@+2q>Q-SQTAEM|62$Cm%jaLOsV<#*_~Wmii(PylVLFAaZbp} z_%CReBp8ZIdRjtKW?qtWYJNt#elYrx!u{42{ydRA3P9;79wnh%l#e>VZjM8lfbD~_ z;4dAZY*YZ{=_n25!9GqxiGYhoqv0J4R$!QrW9hfEqfG# zGN4{43WPe5z&{r#I-p(x$26#yf%*ZQ0#Le8#~V2#599^C>}+VM^Z!zJAk@u;9;5+R z(tp$1eW0IujH|%0GmIk(`j#Nj7DAaDwB-sR3%eHD7Oh%1wP@EOv_))-q!wo!F7Tpn z-=I~}u02{y*-&jMXUc=}r2?o3st+}iDu#A#q205hyW%O(?p*N(XqS>GC4D8sCG+i7 z_O|xT?CphieNEb(-+YOo-9{~%HfT3dXqSR^sc(OOd;0C`@ik| zw)|6gA+5t06+dHAovzklZ&6gJ4{DaA+vdqoC%SB}gOgB0NJv_MMGnO3L~vPLS@ z7^#sB=to=B6xo4ZZH8E+MLJ}Unxht|C29rw*bzCQ)}Slff^VojNFir9Gp-;7+(80( zfK>DX`Qd|n;WTwdexU8Upsuh-15kI=19o~4$fFRDWMLpJ!%+mtut?M!BwAmPU{R<) z8h{3(K`0uUoyU-rA5A8*j=m6S}s?cF{1RbSbf-EAEC=Kpm#b_Oz_)*kHI6)&tG@5~y zi$o|-Bo~>X6e^wKseh=iRJKS8=W`qtgSMbUXc9<(Oc6!35y_|^IJx7gHz1XNKvTh5 zl2B6Wcj_VajCxKzrk-cvQyJCV7_0?zAb>M8YtdW)u@*=RCYFh8Ps zXg*qi=Ay-D35@V3v=XgCE6_X2h4Mr>aFX4rj$m_m!O3!kav}}j-?xRt*ZZIUC~%u1 zilUSabT7el`r?4TI8tAn%+Z(DqA#t*U)o4`jk)-!xr9YWk4IbZ(fp)llH4zwq|I7i zw%pAkH1jv>W^IQx5?KOE*fet3CN{7gTEVir!4h|YrGzUfEKv%|L1STZro(_1p=IF6 z-3$w{ADuww&{cE`{fb_oj|ii$6iqdvSgH*SrYqHh3ZWvY0n|_`fyw}3F`1f2t)SLX zrPLnk7h+2x;h+IUSMIoYIq9{>}XoP5_s6aGcG*z@f zv`Vx=R3_Rf+AlgHIwd+Mx-7acdMWxt^tXr?Q(}c!Ep9IEAodV<7WWW`iU){Ch*QP+ z;&I}s;sxSW;!^Pe@e%O}@mcXj@pbWS@jdbH;wR#l;&d7m~lFl+;4nMA}U1Aa#~{OS?(Kr2V8rq>0iDX`ytYbcS?+ zbh&hcbenXa^r-X~X|?p8^ojJX^e^dGnM`IWvz0ZMwUu?0`N@K0k+MOuSXr7ZS2k8Q zMK(vaM7Bn@MYcXxgRGVo(F(dT&C-sv3++P(&^_rWdMKSlXVOJ< z2|bfuNUxwb(%b1u`WStVzDD1tpVBq--}FCnT5ct8DsLfgC-;#1%Y)^;<e>Hz&{lCW-BKt7b;gN%ar?+r+q8p}489+q7!`&f>!%&?qbIm>dH zWx3^H%L|r|EMHo3R_0b3tM*pDRv}igRw-6lRz+4btX5iWw>oNd+3JqfbE`iaQH?Ac zv5nd_@@*8-Xh5TcMmdcpHk#9DMWeDt`x~8UbfeMZM(-PawN_X+wRW=hwC-Wu$2!J3 z$vVfn#Co>%BI~u*+pVjtFIxX<{nq*~>pGQ0rBpRh*{fQs+*N+6AXP6_v?@-OrYclT zP)$=UR4r4jQ|(k8R-IN|Qr%WPR=rVuYAkAO-PozIXXEaTdp925IHB=c_}kuik8@^0 zdU}t31(|8Ct^uz4Bv44Ydj@30CFEwo2P+{7h|f(bOo|iU0a+n;9(svVWt0gVADZC?1XfjRUNP#j_c=y(KHcOxMPA$kxiOVg>NRKPX&oa&Q6FBAy?|vq{ za!ufV0>@n89VJla3Gb-y!_4~*MkTn&ye;v;RJWe`uXoK@XHt81N7Z2&?f_g z^(zqG19HDlphxo2h$apl%8*FVlW_~h5o6Kk`}__va{nN z;xghB<9ZcD7DT5RTI-Y6FEuMFEhQtae_Vl~)jp|dJyO&91QcB zEjKkQkM!G3c<09z7@EmWO-o2kgC?^`?+FKE!~g1sfs<($1z4yjK%{?eami_EZmzEG z9Swk|5##A@#MBpg7%`qkz{?1D8v!39;A;T9T#bN{vzLLhn}?B)o3Xl^vAUbFy1TKu zyRo{vv19JW{#)eW3sN9%W;o2#M7&DFr!&DFr!&DFr! z&DFr!&DFr!&DFr!&DGFnH&-KPHzViz9(vY~LLi321mnCX_;yHqXn$HM|xHY!Nz4Kre)?QrQ`yb4GfBt zath+oi3BGpk@W(QlA9El57M3>K?eZ;)by+|Ntr20(2b-_G79H}xIBGM7=w^a9i5$; zlqrDmpiD<4f%Y&^8uH(12?ErHNpaHm!juBgokOn%72TBuo8Q9cgzE_30C`@urPcRBn0QCwO06~31`dzP+46(c*6*M!X^*R+` zqM{+mPfJfEJWcg8WQ7_DqjLd-)}S5$W0G>SoYTSK3-sW-CUAagZW75QXB7Zxa&j8! zUvgerF?oZ13XLZxk&OdsW|~k@;F6Umuz`f|A&I~U0D%)p2`fkmFOmq%0MK&-Kww7@ z#R;I5ob&Qr-Lhd_vJwR_Aq(`o0OcitrmD~76eQ)59VisVRAUB{vu3n!CT)>NY3lpMLSJfPO$rFp zD~5nD+#LkiaDmX{8}c>1GzjIUHwOV>dSwt0ruPN|g>YC&H}y9N0c(175D=#K2LWMv z2@nvbHvs`*H1LIt(aIMxrl!7tFtzs$i27a`tabryFx>?>rom46ZovzM-_3X-Yii32 z2vdVzKoIE(R=o+_U4R=-xXJ1Z7NVZS)an;7-%WoZTW|jhInzsk9$~PPg$yybzq2;I z69~ly3*3~#csmfvP3_(9MA3TjLU=crGy}H=xbH^2z|hpP*CR~(N1FTI%)bom?*-ZV z_Q5n4Sb%ZzQgW%zTa&vp$HBcF`xuES-&@6 zPXabQL0>Lp3hFb$CHs4skTsUVjuc!>#$sdMP%fAO`JlgvIYCll2neZQ2@psy1q6WD z0t6t&fRGB-0D<)80D%O1fB9x2VYz^; z=OW~c4GI|}Up*Zem_RIKg+PJ-@4^%!vvM=y($RkMQKL6}H@ZaGQ$4A8Dver9U84S^ zIFUr;C^`hO?7xcY#4W_F#ht`a;%xCO@jUTX_$W{#u>u$W8p&D7GszptC&@Qy8>uTe z?n|ZHrIpevGDn%aY?^GbY^!XCY@h6y>^iNZThZ-lH+nR^nEq9+m3zzmJtuQMyt2Dc8cHQhBM$RZ16=TaZ zV*DsF;dp`S)=FWu*_S&_X z_c3e7BOAWul!VkIZFX+rm^e*b;>vF9lsz8I?v?vA`*x4X-uMHXz_+whaD#2|OB&Nb zXL+4>%$TSl+A9 i^L>p3>aknjWr8;q7Q%-Y3#4c3I-4Y+ZW!zHt{c7b=$T+^HKz z&&1*Clqq@R#%Xi1GiM}f!ZSA=JXpT@7adl}6zcNajp^w*xqgQ1h+Aq>}UML+ff9(1)yItj*&mBH6DSNB-;w9f0)in2t zYVCe9_RVD7gDKLg>8lIU?1l_3=oQm{$-a1PXsEQ$FW1KZuE7@1PyVe_a9?fsWwk@4 z9x{H}*P&8O%c^ioDc&xt;#*4n@I*DACBtG|EmfR~t?a4oPj6mbl$Tdrl&$MeU#hG; zrBk+LFJ|A;D7fc%ikeI3QC$k%zE2-__r7P}Xt@-~r_;O>7PZC>@F)HQJ82a|4oS1K z$4(!sDH^x%=OW#T?BYe4no-%4h7Z>r9x5#@T{>r_X3fgUC98GgHm#YwMN?k7_`m_3 zvV=*`@1u!J8o}<(WLNCdoGs5!-l@BBQ+jM*zpd^am}jTA9y_j6_%eg56xo9Z>wv4*XrZ-_JvKCuuXwD#skt9IaZtt3s!!4Z{o7SH?a}tkjlg z4c+diX-8LV9b33uw>o=4k)PejS^bKVw0RSY#*EU8$lt#22i=sdb9Sz`!qEk744dJdYj$-1#4Ds)~;Q?bw!2dE$ufHoT$3Q*sv^!lpYy*TXUm)$AK-n;akd6ZfI^F*>MdV|6Y=|+ zx*?Mph1ypZ#5+kp$dve?&67AfY4p0CI=uPay*Aj{fp_lfe}>;mci$iKMypU)N1X}| zj*1EnJ{476ed<)THqs_FGb=SUv$UdO3wg3qwMvX!hBFGc34Sgvf_cI6;V^x)#8RGmT%`@vJnOJrSnNRW+bR#|IiQ#%wEeFn|{ z#?6qn9>{PrW%#$cnNo$?omCuQt#Khns%&mE$E$1VX0*l8b^IBIR+T8YL~fp%r(`_C z*YXy)7I@2WP+d`$pEQ2lxCybE9GAVa-8+9OE!8bw{_~o}rE-NPcyLbINZpW_iQ!%_ zV_{s9x*|1s>0nL2LAfb8x|2?I^FCtuo_KKo$%<7a`Rla`-Y?)qZKoF$Zv9b={|QjP zNTf%Nox5a`u4KvdRTXyFlfIO;cGNQM)@9q*ULx6wd8?Kz(JooMV(wPW?iYcw=#eG) z`MR8(N$ErE_|A0J)S`(KwIwCvCKqUu-FC{>EuUPnMECQ=1w~n;c*x@PO*z{9_1j90 zYLs}J&6DAD{P;Dyb@;18oj9IR)Hbu>7jZ#&EZ!>RZDss^{)-fU;n6?_C(zg&x57jD zKVj;6$c9c$${Va1oV4N4R9z35(}GLGUu#}pI`DphPPsW(m%2+a0OZTU3`Q}KJuv2| z=H%XG2Y10*HIOP^Sf=KsvTnSW^scPc;VrC*a7l-bmX|BIH^Tbyr}=&Ow9t=>cpra} zR^VakM?;RqlxYu^?m2SX4l7*l@p4}7>dz~>?TI;Jn}70 ztWoesa0XUV_pnlohvE!1R`T#iE3u{e%H-++C$w8KV^>CL2E~uf&C}sNc>jw!RbA7U zbj6ZwTh3^HTN~~*WX8~p4BhC_*^@Ff;iGn3n5=V<&5K?-bXSr*z5H0-RZVr(hOJw5 z$Br#JcgIe7iNWDR*}8eO%3cBcGecdzbIQ<)ZEBIU0#SZYf?@@ie?Cobs+mML#9{> zd-mwj1yAnUIoNb$73Hj|kV}V&?!&4omouuu09GYebYdul1OHPNqd2m*5Vw5EkaFP;Ux%(|6)z}G@=?r<+{cQCSo6M(1h$TS)UpP0ES4OZ`|zuUNQ#$#U&ojHH`) zuHALmPJvU@xRLjRRs{t!CKqdQ2Ygmaq=y&(yEMI5LI1vXyzSFY*b-Yld5oKA9cHS# z4j&R8KH~75yZaAbyt;Q_5XippP&Iemq3#l$IKC)eJKW=ftY+V(+d72}H_t&aw>QgO zvf*<$3diI3!YG>ai+Fpyh`jN&P5{frtMJC((IfXyp7ZO;cC@4rrac=h3vckQsb z&u!jT%a_4Y?3H2bXV-8Oo#Ln<-r(F!9mB#RDqZ=(blIlzjb$6vvuNRposb&X9#?XWjzl`PZXmCob+fu@A_HPACl+WzzBzon4!WBAb^&T4Af%9IDSZ|H+-HdR)x$sP`Z zd3!a3hryXR%R)yEg6{k9UH5&csT&HqZ_3ostf`v#0&3z5S#%r>YNE3=cHG!Wae|t- zSy^7aQKy*8M&G-4{^(<^;wpokixe-y`?HD~ZgY*|S`cWs2{!mw8jB+C@Y0xJpxdshi#w`_}Q$U2d-WMO}Y>#5*j(Q)zz7SD6%3GUdZi1`gG0 z2b#C%&857Q#`ah#ts6rtYdHQgqZrT7ii^^uq~fVrnykFV%d&K9;?tKVY6dE>x%RSb z*ZRrnN%<2}b)9J3sO6WrnkIe&Xcv5K{aSRkw8`6(PPq*KR(QMDs;OLA&PW^!s-#*Q6Z%64d#>Wa*= zl$4B&l$5eeKyBHnRer>6=-ZEQ3y@@rQcdalN#jd(MSHg@PW**8epaZ%hNc8-c@G?m zJ!I8~Qo_KvZjQ&+P+wR)R$cS;ep^_AHu&5d3iJ4!`VD`eJ*`w5tb9cwjwu3tCsA0# z)=K%P;D^2B>WUORl4d6tC4s5IJP*JWmV(3{QA8;=S5@g0@2*^Y{W|nw8y&B~Q8H!t z;TWw#wr|tY&D&QOj4YZuVQewX$l|}S2N%eD{EZiTbG!n_(7eQ1+LBiIO?!$p_pr?q z#cFnHk-~Z-tLO?d_5Kkw!Ph8$WMMH2xlS(>FZfVA(19Pwhq&Sp#iqS>I~+3Tu~YI( z#%akcr_~URZG8nJd>pFSU^5>6Xrf5GD8<0S+7Cq(W?;`{D-J zyL6QYRw$&y89bAx`I(9$>cK|^MNOv=C4(qwWaf?F7t!5WY9@joq(HzSgmI#^2tu?W ziV^}pAtn@!MCfNk{fHnQ6qO)|?u1ZEh!2G;J{pfGAjm@y{t2;~B+zmm{AwRT3@LC`2wo3@HR=LJTQ{kfPlpbP%CR5n7HQ0u+8|f(}#Y7=n0G2nmIN zM|2vY6C!j5LEI(;aiWU|ouklYgf0lb?Vpd(6@;!MbXA0IBXmOq!K&yEf|yA7)fRey z(0$>D?~4$6jL`2Q^aMdvD|(8k*=->#l-h3wfud+3qE47Wj3|VMQWq8II6}W6>W&3E zi>T*f^b11I5Ja_7uO(;#fi`AlggxyQcr1sw1>2>bdYp}G)|f>9W5Ozy)S(&{Ve5Vl+0c> zP?jkxl1-46$d<`g$d1dZW%pz+X&G%vx1rtXL3BKwOHZX&(xvo1x=yZ?H<5P-&&pi+ zPx7@8j<`qu5_~HkAPkX%FhttS(X0)GA09EQV{)0J%x%SF#XJQMUXTp)8RkEl|7rf! z!qXxSd>ivDmV#g7zQqHJ=N6nYOF2h*R{6ow-EySmSj#zHTILiUDO zWmrwJnrF4z>VVZRR_CoATm9Y0tdXXXd!yh+W2|XwJL?YC-L3mur&{lTfIB}`A62qy ztZJTWQ{$+{sf|ZB{;~0j#ubeZH$LC^N#hUd67@>;cJ)#974;MK-!@J*6*lK>o;9JG zG;8A8q)(H?CIwAqHd)?edy_Lw?l$?O$v0aITh`XyHpn*0Ho>;oc82Ybw)<>bj%+%<>HMY}n;vL-x#{Dkf7zMaIohS!t+Cr?cfjtd-QOCKhS9Xr z_-Mj3BQ*J%*_ySQO3g*h(`Kq>A=b-DX>!VB673qG^Ezup)RqLMUzS=A8o$USWqwPo8PqSZPzsLTv z{UiHN%_Ys%&7GS2HZN#CtNGgITbmziey;h==8u}cZT`81q=f~<{;(m+2S~4x2S_ZWYZyD1vqh(gh(Jf0_&TjdoWnC*#tLCj*wsLMYq*ZFGX{~0o z+SzJ%tHTbx9a0>wIXrgw;3#o)bnN69?KsMDw&O;}&5qSh9h|(J3Z164wrFkB+N<@L z)^l3VYyC%S+`6_+a+_0aJGYH#o7DD~w&&Y^Y)7?Iw`I)K z?aSJ4ZGWi!x%MAAxO9l<5Z_^RhgBUeI7^+AoyRzDb>8Rv%_ZJts!OHIF_&Ae5?3eJ z4X(#rYuzX}v741!iQ7`QBW|_sR_-3|IquWl7rEn(b35Mi2=KV>>FU|pGsQE{^N^Q~ zm$z4%SFYDQuOnW+dIxzA@;>Av^J(tW+GmB&MW3g>O?|ug#`(_nJ@5OnlWV74op5K1 z&Ox1rbY9nad*@@FFL(ax*U~S|Z;syvze>Mbet-Mh_&4`&>F?n0;UDTB?VssC(|?oy z0sja7d>6Ye1zk$I%<8hb%f+sFU5|FX()CNX*4?7IP3pF_+s$rY1Dpa51RM&u)1B^a z-Mw*lzwX<+@94g(`|}>IJ<@wD>2b8j@g6mSs=%&+0f9XNg91YW!veztdj&=Z4h|e0 zI3;j#;QGLd!2N-z0xt*N4tx^$M__G`B*;2Q8`L()E2u|MP*C5X*r42?nL&$#%7XR= zod~)WbT{Z#5DsR7{eyc34-ZZYE)1R=Tp4^S_*n=QVjuE4 z(Q|Ll%RQg={2Z?@R|roMAHbjh_Hynh;b2%BFZC>@A_Kz?bJ8E@2!4b z{i6Df>~|+BENW-}kp3A1YzMR+5Io?g0Urj+2HFpF9yoB|q=BmjUL5%6Akm;kgX{;n z3`!U@X3&B`s|J+~+BfLLpwokH40)94P-KG8wZ{i26QkBrWbE{UEUy)=45 zbVYPk^u_2q(T}75h^~#1#3*BIW7@}f#dME}jLC@^AG0WC^^{rHxaw=vgKK#8HSq%* zu5Inmy0)@wUv1P}HC|m;O)KkeDEX(tf754S>d&9J31Ai2f>ANEcBmRIW9#Z>NPm^B z;8S-na2Z{Nqo{iy9)A#XB5su$M>+CQw5N?eRo1}eI`K8OdX1xts9G`CMg7{JF2~W* z=CX7?TFN(*k&L~NY2V?2tcbUgcIa?lHj+=2ewJ;;iBil8nZIS*AoKdQpKJ}blG@u8 z10l}}8Ra(TLM(pEZF)_CafmKr=ChbPjz_4^6(3F9uFcq-ydrFI+I(A_P9L3qU`)lx z>Z`T`j`rQ)H(&nD*Nx^IPwd)>m)Z4QHN0Y^c1!l*{L@o5&9LQj>F~J&R}MMcBhdCj z__drj)8#z+4U1{4{`tvmtgy46q3$&zDPW2gr_$S}ZJD__PriE0PdVv!d`~=5ojxyf zap7ut@yf~TH`$%pwg1{exB#!2aurX$ig#S4eqqG58?lYLh^^~a!OUTX7iGuB7H!If zEdEJ7yeJ298*^DDcA5H$+x?8X`T?iB6W4aL0i&|T;ZtjF%ze?cjqJysCGk1Qd|Mo1 zyYlCX4YTYHl$Y;5W%nZFs$=tzP}i`1FBzD#e%4c8TN=CDr^u8TQ8E?Ldf=P-Rf`4TS&h7cmykC3l$3vkX znDwW4yF$Ey81Qm29=MxPZf5u+v+6xqHb(yyKS*y6bE?|S>NYZd*VhlycQR!Z6W5!? z3t&6rMNHhR7u+`RkSM_B%}Hb9ro6-xpW)1x6lV^Y+z2LaZQ9=*9*FY7m^iSGXFbA)i>OoJfg-F1vrw@Xeg?#iUBJYxV9tKTxu3+` zm|%j(hacftFY0NBGWtRQ=Z`Sk8#`Q)Wtur=p7yb+t6dC znk%Ajk2xJ%sofXXcV(c4ca(MSHzqDl7Z*FGUpG7cI_Ff~gwQJJE@{;wZ?C>S} z@WQgPGHq$;_Ma*>*jiS(V^a2JU1{b|qlVf=(mO{buI{htKcpZvQi>hYwc;duo+^S*jJQOk#O7eA$Td`%Y?s}lK2WP8xnK5K^iZ-~qckkQXq~i*6CujfH&t=MA*Y0De zS8y}jKACl8l*^&X!39+;Z}L0Z)K0 zQV-!nM^$gO_Jg6^s%`<_l3PGNShWPu3P7laBZ2g_47cK@V~4uw04j&EIG%scXV+0u zY$e0acoTNvH%XQ0z1gd9M_`oss~F0UQO;q7Q~3&ZtW|)Tuc&<`Z6m`KUtdX;v)Sof zr$T%kie_;RYQ8JJE_Igi-T3R$zh&UxNWc<4L8_e2ce_S$SNU%0YjszHXl1wKEI!G- z^XM2cdlBuOMBo+ zxUBt%knTEv_y}~GQRd_`)af4>aZ5(|!)g{-!tEBveH4#lmHim_wtx;Ze{p}p8RZci zwbLv?0f~4BJGa)$h|UJmg4?V(npN^EXFaKvf{^64|*{l@fG^!k&2VxTLY)sd0IIIxTx-W zu&M(q!Q5QnaWq<+Rk|O(kDS=IZ2wLj zznJDmNIJsUnyn^{i955({VdfI5aVYR!^!+8c4d`QrY>Vt#Uaqg_N=NnnpRF?vEOK> zHc$V(stq{(%)sgACw#eTV{reuf&1^N3^VvMR`8#tPh`rGjQv)Y@@18k3>C;I{aAj| z36?nN9Ebz1GxH-J{*K~G@iukOpV`#nBh2ar8`ufEHOF_XK6_TDH-7ktLT>ERPne?K z!SbiTSPS4QTW47T*gu%z-tS<#fEW?I!uMW3FM|E_{JfYOfg{u*mvb`n$B&%W6hEN1 zO0Q_{zKr?X8=kR|2|AH>Acc9i|x;J0UMs*ZpQ_=*{lZywvfr z!|aAFi`|f_?H+I?^yV#TUPa~jgPMbt%QjT#ZUsnt;Z^Exk&)fHMV`BT``j<^^zNor zro$w8-}`hAR~Atq47ds+T+C#AYyJwDE?1;HBg0O7rPRY8t7My^rGxkm{otUq@0o}JSS zb;5*#v17EO$K=D;uZ+CKtH$WYuAI1jx81JA>sPJTu3EWaahaxUUCEeLx;4c=<)+vv zyKx`j@N=!X5A7MeXX@407xBi6udhObA?2t4kqwt3`P1jLp?%msZ=FaxDKjf6@4jz(jPfS@ArQuPaKlzS#-5;YXfG2xX&PW~1_t%@$8}6S0Y)ek@8}9WRb?zY!dno3dxr6Gre)rq8 z^Y?4l?wxJMIEw zZ^128U;W`o;vVhhoP@PtdLeuxRN3;ro)cY-#1)9%8Pnv;9hZr-HZz2~PR z)pp)Cu|L8uF0|vu6;005uP+^Ai?eD$IYnhk3vk6W(Wm^(W@ z)=t<8a2eZJ|26J&b9>=iTmc@Fz~b?13(sBW?g|~{2Hp~LuTC=DymRX73BL#UxYF1O zAC~&acqjg_G!S=>ymgMQTZ{8&FnInfGRJtkeu%Z}ZB{e=VWRKAM0*Gmed#1Kn2Z~* zBTeAe#yRJhn^7#jg-@$H$@r&W$UKm7Gld4b8yobN@s5TDZ^FEW^C>Sm2SE?)g=L5+ zRy)WBqzvoTH?i_m>Cz3WHfZnuCEc)fNfqnAjeT+-OSOC(&T|LTmwkr4tW}R%u_~*B zc#Ka21a87La{>$&g)#z(E$)oRI1-F`A(j>C>)C;G`Ogi=51UQ42vWsd}q6i3GJQr|TFJdBn&bVlOG4$a~4~ zLJ8kT2H*9+N|nclF=xiGsbgSlLw7HEu`1WvCz96e^%V93%=-vNb=RI%*|+2T zeVBjYCUOs*nCk~wTt#XEmFou1-;q$g7Umx63fQ&W1ep9ADeP64eIvsKT=(`&-19=t z8!XjqY^&xSvG5mu5w?vZ?|>b{!!d#2?_z`yi3M1x@@{_NuD4ui&8{N2Sx_@T6PiTJ z&73o1&dfQ-FtYWLW%QJ;OpRYW0)pp!nFUj$;k(ptvhqvPF%^3z?f>5*=`ykxEi2IB z1TILrGHq^5bGr~cUCk%d1xd$lpMK=;0%qYfwrum{@#}TU31o97!yGxm9PuN#T|P`h zl%h7u2~Zfm?RXXe;Uyq+_2G6o0ut82Sk-~6Y|o?%D{6g}RaLt%D*NARwNA`=(E6=v z@T3~dUS{xiVy-;Jyc%1%zvOjV-V4KZ4X#|RFzi6xvlrNkeCO^K9otRIyWmOKMRxn> zh;BONB)CSKJ*OUg!Xx4SJQKGEg-Bm4+7i1?yJP*P?Pu*U<9-}sW2`&&gm3nBt3Po| z>FO=}@9*3+Wy~t=^6`rc^6UnW%8ApacdC%BTQz0k&$^`(=a0>`<6Y^TDMjN;v=hfq zn3k&<<#AkgZ2Qtp5D~U<*`C98N^+fejJ=8(RZVl)^|72nf5kAt?d7&R3D=I#WR8IH z1yI`F zc0JBlAE0q7zxRBzi0J$gDcb$%{nmSHgs4c}e~F5WTb3Y1MeZGUQFH&;iVH_|{r6tX zyQO(nwfWdFUC(n;_~JUYpT>Lm$tOC;`2QL#iGRDU=8I*s%jYg%yk5R*#g0vfHHUZR zB(2ab&Yv@GcDh{Y22vxPwLbY#mF+-;hMKo=VdL2=%*hX`S1lNoRUdrXhcQKLW2dBy&drez8C(+KZRfot;_zT?+SaPvE1D}uHg4alJ6yHo!b1o! z8aN|5BV9XsbWTa8CNp=*s?oZP@)<{u+Z~^Kw5(jaYSqRiTQplXm5g4cD@&gnJv=CSDwJM0@s~G+34#Azhx8x;U;A>$PMj+qbo} zTDJ3obX@87N&7U_M>cKWraOG(=ZlYFe)>-zn4YdJF3u^*(Bu~_TryS%&Vi-Ur5SS) z6YOGeJ2mgjFO^Oxo4I?B-N|{!%geQ^S8oJ^dHtHHB`bBx0+y_QCZkFR!)P1a2-Bls zwg!;h@IM!ok*xtmP05jjddX04Gt^6ldbXFz_JBgz9{*-}i0l=(GLq)3RmXinDq`E( zPfko>3EbwtI}-kB^RL@5sRR6sb=uYrAjd(`(CP1Q z8CAM3XVaA>66e8fBhguINf+kGFy@gVI?Wn1GOH@VOY3+Sb~v24L>5TLfy60!$nSMw zkL%SQQQg&`y6t&YZKe}*ih)!3QB@7+(tc=dxD#{yAgekD<*vTmB}c~d91ErApwx99 zSLVn7lPfiX`q%R~!`;ncPciS_lEW=9;WM~>Icz-_*V+tc#_cjUgB0R@ zaCHt_I*hq!hP2f1XC1jYjtsbjrZeCZQoU#isA~MoQ6Ri^3#e*<%Bp>Bo31QSJ-BU6 z$ZCMh>KvEVMIgIUVg8Pz~Rd^q)$%`P+Qk#iQrT0`}iilBgR;gZ$gA$+GwT=vK4eI-1&8LUh3@mKw zJX0IMEmA)Wgm@DK5hwffX`uJ@x#0_@p^4)EW4Zcrf zF@$|d1}2P2NYrBKr^~JGI&|qDcCzlW5dL+j;*>G`OG(VUPd7aoC$h*O$!%_hv#rS0 zjo%JuVHT^(t~U%zeuHHLWPib#W(}I4*q{l%d)ibbkG^(<`w(z_RpZGlB%1=lSLPKR zW|Z9oH!d;2G1zyia|7TMU^DKxBLnU^gK8N9+ZS8ZIy*AI8=CI|8-}-lmb3Lu7ZeFC zM*}(vus?#snJ;>Vy{0hD?VpQg0p(7h?1pPP%Pfm-4ION;*gHYkUb_u0!9WrYF(Y_DdhrL9tRi z&4E8n_eqg@&}Vl@`LK9Kd6C%gL-e-yU9i3FN0I@7as&DKAKFb2%GgPmLBU!th8iV2 z1p}J`NN`G~gEkxr+Ay7H!;)ku0P~(~*m~Q3E;)I?Ul8oj!da-X8ETv*HEb`}&UPmD z``w%Mb~=BG3m*U~7373b7xJq(G~nMCgpr)TCy+hH9`$td@jFkJbDa9I-CLag8YjPP z_Ys65nCz;`FU~e^dBEcRulfBr8NYd3H?S|QsyL81V0AxD*WS4hbr>8x%NKqM!Lze` ztAoL-|4Z&2&G9p<5A4>d3j5NSlQjJKOOoN|FS{E4{6z`=5kVlSUU)qsfofUrRW-GT zO)SBn{#gT4wMRzvEf46#dj7nVP1{zLQ?0pqro3vauK(`yxnS!ZZeZ*A3M zeywrt-*L?#ff)QNjG1`JpD!ZyUO_!8>_86t1h6%Xm$5n*?$`hp3>=$V|F&=VpNSBi z05*q_*tND-SD^iT``@IeYYV#o+souuV!ZhAO=_FC0rfM2gbEGJs&%z}-GDU+1S4<0 zIk(G`bVPzZ{>}bp?yV>Lo=h;r_CkeXxLB67;ZF;);0*Y{{J>-z3MQK$m~4WKhwCNW zIP0&Myqufl&Ej)5T^abQ1X~VlFF#ms4iOPl$-ERWfkgT~Al4ud-K;Ut;9#NwD*q3A z?*Z3TwzUr@U=mC;GGb7PN$kBBbX4r3B4T4KfCwT*5G){wSg~R6y#i7cR8&+%j17Bl zV^C2+g_$v;PH~^O!{vMSNpR57xik09yzl&f-+Sjio^a~k`>eC}-fOLAZRt-hv4cOQ z4o4=ba0;5AzfDW75z{nBq(sE_;GC9RIi_7;SAsuaa}JrCFXR*ksUqK5($uw2kC~c4 zIzZIKAy?eexLNd8TmXL>k>u1z^g>@z+UlLL2bA(ZCQmh(JpCI%$>u#L?l2r01pTE# zt|J@Lmi}hN?8X&*E96?Uci4?1FNI_jt6(?oE_-uubhCHG?1Wr(h@G!Nb4SSa52&ud_cbf=y!`RV*yWL*py?=z%dyS&2)Wn-0KVQSFA0yM2 zbnIhBPVs?Ak_4{>s3v{Gv-GS7Yq*i!*5OfMtgb zR~})w($YAIFACj@&YKmEb%Y-V0$!c?gUs7HFZ_&tegx|SQeoB^WCYa=g@OlydvXn) zNSid+C%mA)Z(;A9B`>*Irt?k8J++C{W)LmpZ?;65&nnG&){71(z>go*{e#C@My@8P z*3%2S;PyMGf^V7I$9t0p7khwbC7;7AU}l%I*#lbEm5dUT@h?dT?;1m`13fBg#kuS06A6r=hiDxVC4%SrgAbYX+Zldd&o$R)!P|ymXFC(B$PI%*qj|bO z*Z+$8+~5J*Iw`ZLz)jL=K;+=Tn*RM4bg{RyU)kkKfA!#Vmm(i32NA(}$-_(A&Yja- zxw2CClo4zOFB#%JN*xe1CVG^TYc4sK9vzUPIXr5~5D;5pVRs)jX6?QpjrXx7+2`!e zEy+H7Oua89eeE&j7aiZEDhALp2xNrt1d3V9geo-*bx~CE6UJaaNrpv-hJ~6*urb^` z5c%fCh`q<|m4?Mf$Dgt@pVfPVTc(FOHeflzb_7JWTzvo1K2>JshOAq5ycoyo%_hYr z_yRu|O8uFk^b_Uznw!%UbFruP1zIV*y*57Fcn=j6?V27c8y_&ED!3C4-$uIX-Zj<5 zmp0GaqsOK8Tmts3mA+-`ZSl3{@IIZj@0W zd^zBIA8#(iRup19T<_hbb*OU>_%a5-m-m70VHDB|oX|{EoGYTiuUVvq-~2-I~#d>!2 z7E*amNAp3Qb^pOa^3`j*x-ibo5HGvD?%VzQt+s88T?=zlTr|v0`vTT> zUFK}Hw57sn5fyuS!bTMq4I9;zwXjinWG*5W*X`s>q%6R|K_#DYOpbTicTbz(EBY2G_u^}B|j1m!$Nh=c~ zS|)x(*N7Z;otbh;DTjxvfa@3`ypMM1qgpEEefxvV4LkK23CZW%b`sil9#^cm@8}fY zTS+UmYENZ74~#q$q3Jlut6N7j>Emu2RjlbXgVFREXF-WAzh#?-lz&EL;@)HTU%PSS z_>Gh4lSdra{2Je|NHt<6MiF_1OiWnVmOohmW7qVI4=m))K4#9aHx=3$N53VjBz{MB zPdlI_&5jaKx-|8cDIB8Ow(*SEoIF)MHF;^qal8Ag5_#6~F0hVEIm|1AyW7cIv1)bu zo;)l-TmTt@D!Fnl3az`_4pd1@%Q<4MK8Q%2iD;4Lz+&)i>=@xjZ6@428F-}W3Qe;W zzSo}HonNy*Hc6cvo4Vzo^3blCP)qU|5c$UitRfQ-b-A2t3wqH!aGsG$igBJ<`KiVB z(ffVWwS53b2%)5?+d8y~2Jsy~&6Mi7 zHW51`DqsDP$bKRfezbYKNo7;SwW(ul14G2@`}rE1$BU#_`Dm4|-;%H2R_V}81)1mV zb!;Mzj=knBX87A`+GkQ!Iw-1|9^_S1SXZGWCqQ*Ed+QKhF>aMY&6QDTvyq!us$(p$?X`j^#W}}4duXC0J={k*sDqk;+o&vf z3WDL5RVuN3&QX3S{R$(ln_Md2FFWyr7!0GM$fE|*Thi-@s~ra-XwRq-BRea-{I(`d z(gg0Eo3`j@E3)V%jS(+>vnDNduT@e)+SVh=2Pa1M+@b*;jnoWnsH0Vt-TRyK1azV` z@TwPgic+~{v2+H+_O*`GjMsb|vKGo)ZHjo8pSK~Usr2KpJI*;>N*sPB-slkb&s7=T zgFxBceTM2dXp+T)xp|5eDv~JKDdmQ3QIT}hN$)4}EX&qB%d#U$MK7F6)7ciDsAnXd zJ|l@}lowZ2rFW7OXg>1#nAFh5mPD>nk=LcoNFyckER)~sC2OGY|ynzyx&Z zT4n4Q?1ec55z$`Lq{ND9!b#h8s=}WOFe3UMBO>(pl%~&+f_L5)%rOazWaNytbYqzu z5n}NPQ;vuer8y!dv1quPBKgB~DU0?yh?^Di^=kW!s@2qi^d~>+jhA*a0(eSn99Ah-nG7Q**%pdR_@lZVS)AmkPU*3~?@{S#`vcFGlKTu$+=jx#UF!s2n z=s()GXDRRQ&Qag~nsxMoqOYenb~=DY?jXLC;oT2zyK|~nC|6lIlAn^2Za)#Xxhj$j z@gi=BJ=`fi^?EBA6gdX84kgepoh*lNTm9#)a3gFU!!D|&MU{rsyoj#{WjTJ=l{quhy z(_WCE?}c0+c0cWW1*!G(BU1UX&soPL&86M@Pv3=4vC+4*I<;-kh1LvJLxk^a&C=#5 zzdi2T$8n5LPfhby1>)SJKHYn{dUkRcdE(AA4dbKMjDOvQ*dX&j4FrH*Lhb*BSKLrS zZyPs?xQ*vkuO#FSw@GB&gs9pY9i^A9!2)s#qEnMw4JiTF`d<|gO!xT<5S00Hu4=ke z{tJf9yx8OZPuQT^eg!DJBznA*Yk~S0e6i0{O1+H(=~!-{s3wNo6UC$xeT|5H(gDP3 z<3yY;VbDHB5>J%`WWoH+wQI%v4^JC{|^y%_6QayqWD;?0Z)u4j?b#VN77 zvWFAUcqW!55!!*Yj;snu=LiU!|LRu1Dg*i)6=GhBxw$LFY8YQb|@aEQjqL) z)RBEA#-&UVk#r-K$WNo>sbHHTrk9^r;6o=>nm=RY*f@N|smz_M{O*dXhZ}SpJjv1U zBMnRNP({v-;B*R7d%;mhTE&i5 z_UJ`5^VOItP|Yfj+oZA`sdDrtsl8H71jby&a|!WX`}8N`Vn>{tzoetqsc%w&qlAu{ z)4U0Fwxcdj>k!{)b!!QmFnA+Ub^?o(tt2KbN+V@SO|yDn)iyZLwhEp@TB;(r2nzjh z2en_TCp1EM3vXu!+DFUYpMVxh=K6J?<)IurA~sh;*5HjIOsH~!+xNE~ZeEkFMwSve z*A5}dWInE&hqwB^8ZO+y*xv(6pZnoZ5dZKF9NnQZ>|&24O`&Ut;z~5R!LgL7jwT0F zoyIjL?LbC`;7A6|-a;9wS@P zWy$w5?n1UtxH%>CP!a- zN%ddjMn!gVok^VMz7#?e@KF-vGGbCmEeek<-fX;>DqFOt)ta2@^&~_?ThLP?QbkNs zxQYteLhRt4dH3G&j2sPwT<*Ex38{OBRLy5W1O6Box|y;k^*T>$x%K+u_ z*>QYa*6}^@7u2MJSUwJ;&%Ashe<8g3hJ?Unuscr?JZasIshY5anFsIKUEg?QXS_Og zd*V8z#z>kSzFiYLd97C;yFRnM!zZi5r%s5Tpj_HQaqiU4{rfaWGq#<3WA`HbzUN_e zQn2S{H>JzaNj_6FcQ$4mPf?#c^y9p1tE^stqqC3-7WWxs)!%j2P&(1hepQ?J5$ZmB zZumV>%7d3YAhjNlDi4K^-jLy#F-DR)igObVjEGZb#>Vg0+T{*B-CRu<8ds1N;vdeP zc?NAwCMmopg}JFQ+^m919ZwAN(X63?3a^j}?rK^Y^YzN&i0GCd$rcG2PPZ@>K)p#U8A75#$q`d$x&Ypmx^#hr_9qM2E;58h z(=jwwByR`8cugIt_E<>1MJ;=f28y$RN8Prmk8Mvnl4bY2{qaUU`p)ngs?K&2C8VWq zJgU5KFx<;4XtJB8TbKLdQ~Sa_JX|LaclFwo=A&_O61iTu3v0-aFD`tik*~>;^2C+J z9x4e9rg{<4vvevFbm?zJ^sPj`W{9-lI!yC83mw)F!zf>LS!at!DUiG4^H&Utls^8^ za+Xv+b;%3z=s7|WUy%lwID{an0)4#!RwkppL|%vopTgc;>}?>SP3Rfgl$;UOXSrN* z#E9meF1jMdfPK1%=CAYdvXHttpKO_&+6O_LC^%G23SKJU8fwA9!bh2-psC#wg7 z;$e40`}n`H(Q|XjO2vhky>s`gpG6Ef(n{$PGR=F8#^%u}b2Pp8fxS`ZlqZjF*}YqH z=+Kr+n3vUGhR!nBy<4~O$4U8fs}5{TRNLrNwRl+DI9Nz#*Yt= z9Hso)I~!v`i^Jz~GvXqHcWZ854@!wzKXF6#^^<~E1t@84`^GR^fBmE}sk1M6<%UE} z;)X5jQ&OztR0*jj-O%veAzQ^`+=2JJF@^!faq)%sbNk9qlfXZ`iCNo~Xjv3o7c#(ip7Ztf{R;?h7gDT0j;> z2(P>)195`82b?aF1rxmHc`H38?mVp_UFy-{lI9oOpPbjOUA<3D2cnakvxHA(fmR`1 z-&z_%kfX?+cIDF}&~E(ganc$*(|p1aJocl*hH~ub%a=SRjh?)Pz}I?9MnVrCAgvYO z_q)>k&L* zgqm8BMu<_;?w&A8BOk(F%j{kJ?QxAA8OpAiEq=8^dRs-nuz-?Si^%czFKOML-cv@7 zP~Ye$N=ezZHC>r=a9Gzh8rr)j=`HTO(9flV(mQlZYM`c1U(rbI;qW_3Qt$Cg(h(hJ zZv;?P%_qns^yqEDYi4pVIN`3(qq6;us*n186W3Syjr+9m{u*!p&|wRDShX}~Vj5o{ zUfyZf(4)u!weR?}(|1*8-`Le(r05$xHhhvgbn1kefy%%M8{(&G!jtA6xM6o=O=9xML=4N^d zBSHpqG<6{_5m5?t0z=PLMW5@Uz@X45FJ%Y+iw_oPh|?X~Pkev%!BaZrk@#srDViJC zL??!ii3LHUwtW*shIf42gw(xzc;^YNhEZa&Uy)I-EkTTVWc!wzUr)S{REDhzQyMWN z6Cv6N!EN5mZh?#*TyX@cj{r$D49l-{v7YgaWbAb0R~lWKU#XVCvGi)l_zO~-7fxv7 z#&3xG8_V@lV+MJvfI@BzxtuN8uOdqzTAmPI$YtUO;bqcAheGEvA$to~r6&z%vc}}I zo~_4(3B%QxAvVI>IGM!cGaAMsbGzD-V`$bscWVvtUnxC!`0AB3)~vfF@4njfE~>2oK|sjZ&in}hL!bcqnc zctNK8Y{^eM$&T8z3(Yh6VOS?lYDSaxsoG4y}GqU6~uoS|{v{-4P zDp5r*7|QQfS&|{#&x%9fCtcw7hBF2;a>lToKV62I{bDcv4BMY!Odg3K3M+QW1DwEp z#b4FgmR)J}>y_qXxVUoxyMY8ZFzqwnqjRCcd^47YsOu#a*Hv*`W$gNv>nf3NVd{8T zAt}0~nyn~AmY5>a_qd7{(LOCmA3E$U877fC6W4I^0A||uBwz8O$K6(~dh}@3>TZu0 zFYexb0sisSC8Rv+P##2J9+rl2CsoE)CskbKlPbAEIPZo}I5~AA>;{RxF)yO>1?fE< zsjRa}d1K}(lXtces^av0Qk&s#mPxVy18teSYYNt~nZsP14*g)W1xHJ1%yhPi5i$`i z!v8!=cKN7`au9JZfDQDuDH1Yc zXw`WtqIjD_YQbE@eFfF9_&#SBu`8nTw{OV)x91-b>s*`H+&RoM>KWHcXa=`d)S}qq z4Yy8Ajv3d9xZY&3;yz97Dj}oEF@^79|EZDcInmSSMJgj_tX?-q6S-~C{sVRgmZfdm zre3#h)2eOCZJX!MS*zI|xzx|sE_adQ!ko0&o< ztw&0bIxKd79 zzak4oU5s6IBt`s!_7U9{! zdczF-q_0Hynv69#{%qV?|B~o&{z%iEIUL{*;+EtU28qQpniyt?%iP#kZ~0zDd{GPu zWp^{oXk0u4Kk*Dai(So%;S$chC=`-`1(t^5846<@7so{{Zc!*Qo-}I3g)J6yQCz$+ z&U|J;fzU7;XFkkQa9X2Q(xL?ywagfAjK9%`+r`B%Hcn?JI=$e&LxO>YI5FQz!JUw_ z_->go${5eZJ38WK@y4j7g)M(Qk@P9FH2lIHSM<4Mj5EfIxG3CLWYlseC4~jXsKp}r zB=mZZ3W!ZUiyIydwH|=DVX{C%s`vPw*6rdR={8J#rN3x*O46ni%4d6=hG;w_`^NjN z9;@s(YGQDRW|aGE=eBn3*EwgJ;)bs&uN`M`!fY?gwH#SMp)#tkR4 zxZ(KqEa?@C8%{RG4bPDh2_pm(G6Dl+?0+ zmqv}QbOF8p%)YBZhW$sb{`ncD|6b|HTr47ZnxxLnIBHTCg=_`6LcTX1YHQtUjamVg5(C=R#F|ruW-q;A`wyl;3B?w z(^*@GrC2-Dl!S}hG!#*F(~Dvk$IByrBrrC5&kZ+7aoKRB5;n2(C1B?}idsoH5&ak2 z#rXG(d;ja1d5RZouOnFb5**<~FmSQ+KA?Xiq*$|nWh>-F;Ws+^|px_qNGcJ()Vkif{kr0^zv`dh% zuUftk=X#Vmm#dF+OLM4lm+KjCBJPjndPq_&Q!Q0>R&|nYB@GzUk5mrFPW}&Yy|~YF zy}VgAHgvHUW2Iaza)D3PcA+#?+w9UC@jV3p$63PpsC*HWf~f5dQeP8ivLhSyfX{c& z#OK3dt|1#T_?n_&oLMwXEz|E7Uyg?HERBY#%%WjF3W7l*wYEZ2985Rv+v{LyvZ=1z z^mxW7K;+9%Dea1$Ybe_4*cxd+Qwj<44obpfoND-o6cXe;_5?Xg$9+g4@c{0hMP*Y+ zaOH8zgnrUK&^D$75=Tr4B*wa_x| zz&&S=lzKD_H;D0wIjdDDG{SoWus^!D)bEz6^dvVaT^K`b^R{tQP}=H9o@h=h6AxOo zPMkm+vjlgkcKqLsHM`QL#ElJQVg#$)T+hV|~sz&Mye<1ZNVa|M=Af>y@ z9STbE@d*sNjT6lIGFmUeImCh`%m_b-SYmE*0@7UI;am*TT-X|YO;4JDCnc3W3DP_0 zCaIrGj^q;Mx5DdB3~e7;zE_gR3K9T&aw8F#HM(YzT_+Tdb?3+cWOz$TA=xst0Zb6o-<68IxQe!u+nGD>>xjlyZ6+A zQD0ll4_Xj3$j(LQk?R-8J0sdt32Y1zGLj?92XW@7k(XcxG8vlQnh6Be$~iKoIyak32*ERhtE>i--ubvhl1v7V_tm1|6T_8q`*K zuP62I{&0`A(lE$u83N8xT3>Nj8hGeXYU&|1SGC+-X%K#=98xpx3vT*p_~Zrl1V%c+ zG0c&8qDmXX;@YYco~kpSa7B(3$G4Gsq8`6;MP3*^+DI3daz%tTH_@Cmzc&1WV00v* z6xv+G-z_H^hSp~%T_qA0_iQ?eHZm-Cl78)vC<-({DILU;`(fP2m;U^L>#+e`kAviW zfGV-C>Nb&-z9+KF@W=@yitkC458RBAoIF;QGDK(=%o!&<3k1Bl1%{XI3-I!?e z!Mw>}Su{eZl0CPiKELoMuzSO=Y=QLN+G#z`V;}#uM#k0%db~8}DGJ(_^O_k=uq&NH;Caq?*c+H+sCg6CeaeNyo zs*v<)z;Ql%SqPegiue$5Of0!0wONobq_{MY_yT)FN2IU$uaJ)?5Q%xHjAZfhDn*#SQ4_875Wda`WPZ8sN# zJ8WJEx*bjITk4sL%|Og;H)AuxHITB9+f2SF=BV3lG@onVK*}btZv6SCnA;4*+;*dv z*<+SSe?()J#^n$VtJDI-pK=@cXcVu;60RA|R=lL|o3LM3u%ZF>@$rs$S)~g9v#*X1 zGz19&v4(!;Si|**HS|Nkqt$-Kt4s$?0O5|`A>7frr=fELDFXIzK4Kk_E{6}9t`qS&r;KP zkHJ`hp%$%`4cl2yjXCbA=Q%|D*M?QiA*>~0g2)TF5Mx_+*3cQ$K~XcTP?rCB;7QA?A>5cTGRtdZIZO%}h-fLQB#CPAMZ2_CAZwL-r=?AYY zi#QlIENU>dvx7fDwyeeVJ_tFuhLD5(sVg@mYxZy2we7$@_%)zGf8d27*zmNriUkRA zp|A@6CPJt`0tYrq;kDi=Ej+=}8&obtD8_f(R_>f)f~uW47~=9Xv7^+=#(FL{2h>R^ z7cy5Br&kBSSvogfAjtX&6c>0d)6mp5^=RNaYxtfRch&Fv3wJp+f!eVKuoY& zvXG5!NNLXpw5Tud-p2>DH2juUY1JcaP+#?RM^XAQ?dD6$Tc>>cI(j3VrEROH2o3Y; z)@z`5_a4KypZG@8tEZ^PxA($-RFWDjHbx^y8wm?hqt7*uDJG@o&%_-k@G&VZB^%)a zH4Q+y?Kz5`cSU2o$4?!m^zz>X$N0GYa}N`_U5cb|>HYMh>ZHUp_{C4{nL6e$)|c^5 z4ci*Hsrtt8<5rI`zxY7|=k%jh*^3u0Yk9pdUi{Tb-zpF7UA=LSCUsNX*8Qng@;fT7 zHmmsxqJvAHSWkN}BwL*^dO$)KrGL=;*})qB8Iz~^2HfmX?ZBZuJI^YQADS{QL6hvW zeB?4mD;m|5OcyV1HqT?6KMNa}K3eHMYFFwwjbpC^0SS@&W>lY*oVsAY^486S6DKs+ zt}p-Ydpmg!SPh;pkd9q=1p)?ly(Kq-oK(=0yyHGuLhahNLzJ=PzDsVjX7aSD|3A~ST*PH{_?ar+{9Gk3;-pK|Z+napnzvTDp=yCL(( zObJnkMuyA?P$CHU)|t5Uy_&R)%@_0SNVB0uRO2!*$Y+vzY3in|-AS28?k%~z#_HUL z#I!qh?Zk`2qUMFi^qbplzUv69-u)LgL`3OW$R)Vk-PrMxbeJNgFz1p1OP-S|PlycGn_Nr*dfJlUSjn&JeI%s( z-g+O~PERm0h8jB=4e81h%QbE*yV&sOIO> z8Z4HNVI|EYUJ*hR)L8|u^>ehlkW|%^x+ppCwSFl{LBdG zPHlQ;xZaqniJUzvV&1gSA=Sd8qvlUghPBQR-%8$nVV5TEtSDpqw)I)c!#d>M6c3w_ zkZ~+237#{P+A^ti)wQU|W3%B;y6FxQfe7QUr)_?B#DqTS%`hr4LM>O({GeM>IL zY|f0#7R;qLkdmpG<`Xey_hM4t(lD7#_l;X@9i(J~?V&(S?}LJTd{WGlCHdh4Qtr|N zMX%c;Kfj=`K~d84DXjCjeOsg*He_$>d8+5xd$p%9B*y@Vw;q`0r+@0t)rX|tn@ng~ z5z;{p=d+Os@`DMD4c-;|gRyi$2$n8L#%cz;*=h#9{M?uX8R~ts=+AAW@em1-KIh>_ zyG>_vj;y&&r*Jda%#{uOaC#0KRdzGP6N!*KW@AooSC*8NH}$NBsBmjlEQu*hJ)8yP zbZUUq+hpnyazgwa>LT_2)y|Ux160iJASrED#LPK36XqN&7r;$)Qh9$c=VX}7IkQGe zz0KyFd8<`OVw!29DopDw^}eM#Y&vPWoAkCJ7K;ynS%!2zx8X2EYO_gviXOv$q}^gX zZu1#@hM(JpBaF8;m+{ZTOut7m!d*8*>OCRX=DkB#RX0NdvR;j1OucS~=u+NVNh{pv z6wA*e!HPvdS)n%*e<*SzW zE+12VS^2Bw??|gk-K3t00WSy}P;Y`^+*=5;H*VQJgD%b!i$Qsii(OIDmql`Ua@~g&x$@3 z{VPtbxS`^-x083250bmeJ>;SCMe-f;UGf9+QJd)r6HBvD~+z?S7~acIh7VvT3Tscr39q!KUwKgr8|`#R?4qbQ0W)z za@OUo71nmvb*vj%H?!_w-P?MI^)TyE)?=(gtfyJevtDAo#(EUp{vH$p!69 z1T)>dAPfq1ewnQG4dv&@wJ zCyizQ*>B4Jvz%rBk#Pab72MK>rW~N(C`WijAqS|N+uUC5?AopAmF0#UpoftI^dz4H z)Jf7O(52nT37dBZshyleZl|&$bxNYleS!Q>^~gp=r`cE;Z`Ol{4>vq0EL`8Y6V?s7 zSLzOS8`*h~bnZ6Q8q1WlglqZ}K! zC3%WwO48i4^PeHp+`1w9n3Xexlk7GqQM1ZyvwG*>+jH0LFe0_dnk^I+H z-Q?UubSX%mv#|wf>LVF7$A40=I%vX}NDos%7pNYd9OVFN5=ap8h&DyENh|5M*W9$PN3drV@~nx*yVQiJaEfPE`2WZ0RG z_F3j|evo?X!DHbUloyWeJa|xZ{`|6>8@R)L+n2p1u{$>HShv$E{?w8?_lBstFYOsW zOua6AV?=C(RqrOmCto~%bJ*6%B&+b01!qWkDYh=ith9|<(8md6_Nuv%w(5kfh*Ntc!+AXIQY5FKD?rgTY|3y)N ze^BHIWmEs`r;9XX>K&Hn;MTI;mvfbm6Z$)@gbbYdt)b5ghQ8fW(+iR=XuSA zTcXpBej8gW+ca@+JanJmz8RXaQNDit?dlYHK6`$B*TvgdYqA@X_hD^8Vu{5Cb z9u%i+iJ84lvwrr9$N)RqPU5sLJY|MDXhuM|6Ze+LmVuF-oTizCHQ`g7E zX%Z6F?K#eFmb7Zeh7IcV>$j|lRm!=gUK9JbzGre}!LWu{9zPg-c$N$&X18NbKbDFS$FWw#Q<5^h);*_vmf1MEv6BfwLK!lUI;JuRaL9F$!8eW^$;%dd!5;Q(Tnz zj3*QIW2%OaLLokXaH`iHO_J~Oaa3U^kD330p!J5t{9A&SF&3Gm15(l_|AwD6&dkqB z{VYE#+~5%*E3+u2*`X@qzQ*ctt0iPLc_wowrIlqQ`r~yWz0K=FW)v8!7^{DWbs~g6ly_1u6~6#4%cmp*FX`FXQ!a_>Gl_e%?t_@q z?h*3hi(B`g73X7Ry~`^P9lWGGm+9NnX`EMg&9v5A#Sag9_Uty&tKXnuDfbs*9ZITM z@!Exml|)u_i-3unbDUpnjwQsFJ;lvW@;6T{d-I;Zz4>VK%@3Jx{>_J*zZqEO=5&3J z@b}f=)~xcAC7DjjE4ay$Loo-#)6^0BCnN@?^zL0PK6J~B%@eHFOj)AS^(IolT` z?ziLoB>Pt;uG_BOoV0aQe7xh$YC%CE6C?bs!u=K@!c+lf~@2_ zu_hmuE8q?m2rq(%i%iLG3UX6IY?|wk@L$xT3$;Z$FUwx zPQIBp)#S3|=7G$sR}XqPs^z#(SKNouyDhn3cBfGv?$n&W(wFfQ=Y?n|;b2qn6!$Y_2n#_hSZduxhyGl~^m&c@`Mg~rsK*m#mUXeLvDM03| zk{>8Qn&*Wqqolx`QL-g6O13m-lvKQ}N9*I`3I!w5{s|QYhAx~rSxtJ9v%JH*D?Kk7 z(<5SFFFRVZusxQhs9N}fXw>y$6!vbzdiHcX_4H}h={xr`TpX}QbR{UH7EjQzRBh3U zVr96z_C%B#w_@WiHSI~yidetj4J&1)-`#%UwjCD5w0HZaXIIaQIZv}r-MN!B%w8?8 zj5RAcL>5(R^N3cWm0&WeO22yC@yFP>E8&Fn#$f+KziFz3nxy&^4b$)k1f=66gOOXBjAzp z(T#mY=+t<^SW7T+%zQB~Ghd8Rz!+hy^T&iSNw>pJdW^-=q2FJwS0RbAAO^j8N3qAk ziQ()KJ2TCX@W&%=?k`%QkyRcmmCeVJjZkk#CCKF5QgrG3@l*Hgh^74l&|R%scBbX= z3Ew!8cIM(?uOVKO#(Ira(*<-QTf8D!6%@Q{Qp#>#6PV+|yCW{VBZ~{KByRYnxbR)Ft(<#)i|l(9WrpM*x~^Vuz0{$e(?Zj^Wp)r%KVB2vLRTLk6)3Ynei*y zh5L$MW+BQLGkLJcH!5_hmvThodtzON_G*$w4lC-`#7UaTiP4D*FIbWO*Xh7KGVnU> zFJ6(oHgQ*iRbs+^@NZ?r%a&0j4>5|QN=#3JBALi2lGVj@J5P}W6HCU?^H`!0p{4FJ z;$q8aDc+2h@|BndgO=jSXen|rq8)fz3fAnEneDlLezK!W3Jn5G#tk14RyqGd1-%c6 zcyYm-?(bEJ=tnplzO92)(yUX$StCyo2wlHHPzsnO_`6pUgU+$&>kVyrtp4K_%t8h4{?&v5yR(< zR!6luE-t!!mIP_=jT^5I^K7AxY@CJ$zWIbp(hzs77aFMwk;*0{m05}!M&mipNN|Br z2KzCRF36VLRLO2)jcmky))Xc0-5Qr}r*qBh)}3FC(;RFw0ZVTt!F~k>G!}j&RTxiN zL&1~ATjN)dk@M6BG88L*5-Zp&ujpk8XYWx++1mv~p)TTY4|_UezcFY@uK)= zOW8mL>4nU|@e;ORWrrLV;bvZ_v_ICQM4)pa3DwJLEh!*51+twPm@BZj@aGt@GFp#B z_5&iTq=-L4!0113hp+hI}d6Z)FkgSV;COo>6&I zC1j_w@H;LF>?Ro|I*>Y3%5hmMtT=1z@RsXmQk7hFRV`LKtAEhM)U01KyOw9IwY4^5{ldiBHENHkom{)9PTM-u z>b$A*j$f6~s=i-?3JvNv=+?lkL0E(34U!w2Y4E7QyN1>c&o>&;sHkzx#*dp+YjV43 zg{GIA8k=P{w`%Ux{8aM?&3|tGzD1Q5&0CCZvAM;~meQ8hT86i((Q0$+maX@-{;o}6 zo3u8U+gf9~yt8d)+f(h%w7Y2UV(;31So`tqkF>wqp)%G84Cyeh!{ttbPJ0|WI81h! z>M+w`p2K2?m0f@6Cg^70V|>rbJ!|%?-*ait%e@4>3VM6={9e}8 zYd>kfy8YJoyX$1(RKdx~X`a(!r?pP+`*-WVx&QP2@0_ii<<73oW1KfSZ+A{}E*c;h zP)q4bFMGs{ za`Y_cd4BY~(c4F7cs2Lh%2H7X=G~D+jj>b_{k6_6wdEydXF&_hB$_Jg?u|P zY~r5Ku>!g9Yk^eQNiay*8E^o)2pol71yhCH1dbL<1g$NW33gg62UY+p1<@9(1Q#t< z3!?ce<+#!lS9;<~Ph8m-S5C*3eQ{++T)7=rZpW3|api1Wc^+5J{$ zp}?)gDDc2`5st3~)&c8*4ZucVGq3~ap2Rt)fs6S2GH?~R4m<)L15bf`ph!?oC@6U+ zv;fKhRZt>Zpms^Fuqn3vuy0t2UO1v8U+9i~J|%_1U?2?0FG&-=C`q&ES@O=J7cc-A z1b6_W08hXR@B;#XKp?6l+hRVjz9iS;8Mb=V(L&IyBpOnnhZN`q_NYy-k|zR3pf50} zBwsKX7=qtJvHb?X+Yz_}qkw4KXD%=gKue>Qve8P}Xr&@ZjUG~?ht%jHHF`*m9#W%+ z)aV6qxL-W53rGMGfg~Uq*bVFfQh-!oFK`IYO2_sva0ECCWB{4KaU9D6P5@fq44!`$ z`?Ik2DbNr`#=ux5O{?BkAbH^K2U^qqPTxC zPyz`R;B5;_o-_=bgar`v! zXZ4av59LGm=%IUZg+HRj{)FDaBHQh-?em^EwxzAg5>rwKZg{0vQ#2~DGemPvzl z%|;Ch@SPOkJ1M|-Qh@KI0N+UgzLNsM7M#Bo*amC|cHo+mxaKr)5yvkBSApxmBj7Rc z6vzim+O`1lSpeB&x*`o4Dot3eA+#&2yhh005X9yxYt>1v#~vg?Rji3V0#I;0$c-b z0JnfUz&+qTkOMpfa)Bp69`Fn(Dv5zEdIvr94m#+aup&?i_zJKAngGrvIw5*XA$m)p zH{c6Q0H6^H8rG9thn{(7f$N}K-a)s#vzP{;ceKE0 zzyhNIi&!8YWnp~{L5YZ2tXJz5^NtXF%6 zZ4ug=;)EvE*>cdc<)CNFfrM!xVOmI-780gK&z6IpEeAbY z4tlm6^lUlk*>cdc<)CNFfdpzXzSBbrvoXfYha_qtiCUp2j(KD23-|&4_3{1e^ zlYmfQ3J?iQ2W9{>fgkbRcj3o`pX)8PkYFt&SPKc(qPNU3_my1M~2E1F#X;gui34jRTlWFvL9;*$gLi7`wnuehur2uJLN(<9es1G|6(AQ4Ccl7Zd89v}rs1@;1m@T_!f4+BSlqd*3b2^`0~{V%@pPv5fXEnfdHf^#l;^ToI5 zhGT!`4YD`K-rASOr%!*k5*aaj2i9iyN4D1H>04YE!uopOl`=w)h7&rnP1u}q4;5d$D0Ve=0 za0WPw{n^-_!}dJ37qB&Hr8KivN;7MvG_zJpgH}p|R!W0bN`qEPgH}p|R!TE#r8Kiv zN;7MvG_zJpgZ^ilNe9iOgJ#m17bc(&`dgLCLJ`B4w^{^&7^~7(m^w&@zxSHrZe@X+2~EP(VObfn`R5gU<-{S9E;z+ zfFIzGzXO1AKp=ooGbBhS3;`zK_(W_cVH*mB;rA45!+{9=o(e?b_jF(ee$T{q7Pd_C zOg(U^hSZh$w$h*>)1V>Kpdr(sA$8D@I(%PgpV5$M(2!}+kZGT2NF6k!4jM8I8j^i$ zY3O~k(fekj_tjZ!!*)BivDiY7p%>1!*oAgywz<}@utmed77YtqG%Rf6VPV?|3)^^D z*t)<@76&_79PDIqu#?S$o$NB~Wb!(*C&x-?#LFo^}NK0z-f}ARgESBmjv(5|9k+2KE3cKq{~o zNCyrBM}VV129ODy1PNU8`O>I;x~|sH>lSeK_isffVW~m$qmp-29(|aO=Lhx4JfGrB{iU=29(r* zk{VD_14?Q@New8e0VOq{qz07EfYKRIIs-~)K&uIRh3fKnPzN&`x1z}Ulpafbn8 z4gQX5ce14?N?DGey40j+O9DGey4K~N8+EJO(lQ93=|gpQXT56pshW8WSi z1xN+<0_iyCFmMDo3S;D>4|U5!-SSYkJk%`@b<0ED@=&)t$jLj%$vemi8x`iEetD>09_p8e zH<5=ok%xNbp`LlDXCCUAhc}UjH<5=ok%u>thkECs-g&5Z9(3n#=DLuj81o!94{ec$ zw#b7lvH5Er+9VHcl2<0D#DL^W)7f1&V14n?PKn9QrTmr5D*MJ+qE#Mw-AIJe7mT)L7hjzyL6D1rczfLp*l z;69K8Jj9n@Mhl<>dXzwK{`&POfnLx8-+1@ylXhC&mp+(EltG48n+D5Jm)pFe0dp5y2pg2wDpo{5neh zgZ{G3_=e0rF@CgXvL~DTT7RWai}|zuuXO*JKk%R5cJ=?X-2G3;u2`su#h3S_M5?ZM=o1*g}r}t(T`%wtnVi>*Ienpx0x*gumX>!7Lg~ z&;Om43ud)o7K=;372q0h1NfX(A{YCg0C~VOpsWQ#2y1~QV6ut+d&|Q=(9(cW!mqI( zuzLI>tPG9*BU`~Au@n5Bjo=>U_{=uI>;nItJ>bihg8%l&$8*fGcl+Nt((FGP0sm2N zZt3XvbKcwEncw`|k#F5UI|AUp@V|4kS?|x5h>e5)_EMSRNxl%t^_w1?^%pJvwlDX8 z!onvWkkDuAj$GeK{Q>A(zN0Z<6M!gZzN+0U2f-;HO_;5*F*&I8Ok zSj5L+{eGk<(@$l4%#UsOUp``*S$+BVmyeXr=RQAX|I&Q!fAXr*um6viuvFt&GI=VM z4MEk<_FpWH5V3+~`l%1Ge;>TY18|pr6L0+gh=)RhHu&SwiHJ5tyA;6g{b^)i!Jm!{ zWKn_tO#jILZkx!z=rdw|AhZ7mWBrePJj}0CQ&3l6h4=Xc(WXz}!GD4nBleB#6Lctf zCiuGKs-R=ZeMH}#had0~Wc(7|zPJhO1a z-|$!=+VcsbJ)c;30RccD5LL1dk)F>i=3}eJbN(7TNLk(V@eJYbzJIBH|GZ`?tKSzw ze?u336#ZXnudp@SEdHpy;>-1ATAT>}8n4_x$Rj6g2mSeHymF>?sAcv|ec3CS43A)` z2eH(9_^G$>_q>EdA^-o*L->F1gpc$Ev#v}$uSIFRZsotkf67KjpTGZCzq$XP_09g7 zdo$nfpYi+t*?a$4fATVnU;f@m=osAJ#L4+`WbB9+TVDGLz+Yzh2cbn>T>$z>yw|Kez5vxV}X5sBOwdh?G*A^dMfAo!Rq z^nb66v&i~Vc`KE*Pi5;BM!GD*y=-(llb^CO^EX7X|D)taju~%l%$F-;zFZsg<=U7p z*T#IgHs;HX<86$2__EXM8WL*DUqMtcMo+dwejz=YRQc zqDD)7FDz2@Q~%4S5utz9_wuEP&wqHdr&&_}S&^QfA2U?^&6uIIU;k447VF3Vclz2= z_RwG1$Nq2ium3~LpMR9jWM06(rmy`wBmFGPvgrjv7X1ya&0@R%&UkUeYzr#!j6=ld z3C9AAbr_7107DqvzG>JeqGXN*KaMLy0QmN%g*`sZ)J#zkD~?`8-9 z+h6cCMipV`a}r?_VXTBiL>(j|>L3wO2Z>-MB!ZQY2u6$!j2InQw>q$Hbzt2xpFU#@ zB*JQ&2&-)(qW5)(+-H0uov;V~?uV^2wqQh{B-g=Xi$VQjgr3+px+D{=8H0LmMLlB> zai552`xr#q$DqA4QSYs&cMPKJXQIwAsB0J^>SIvX7}PZe(e#XO6b5T$B5W}%T0YTY z10q>B0-NxAb4jK}EPlrU@rc+}@th5oxq)SD_!7Sd85(#Ff(6>J9PqiU3!k=cKB5I) zz~jy=o~2n7N;4>^(XK3CgkI1I+s;5)D@oa?jvY8w#sbbqc9dF5Sae4Zl!jSM5U+?g z`%Z`$+|P1(OKrL053;~G4@`>8>}-MhZ)*vbi{kfMqx^?jfG_(|O%RpJ*9MU>h+*sj zS@|Oj+)vrGl~J=VvQhC~^*l?H&4Ji_224Vp58}hOj}Gl~o#$vUhM|TZX-8m$+XG(` z<6)Mb{a11^zr>AfX?{BUigf&YWUayE?w`P4`6HZ?W~f0nWM2>2&xh<6LiP(G`+DdW zJ#>p6xH_4qpTVT;X&p7@A`ZSf5I^eAW9Z{{P$n4pHaJ}iqzKI)K< zI^?4c`KUua>cBE-SL_OSmm=63i6x2(VlN<~ zB2|jL04iXKy~nba7{!J)iUm{>BLP$_4>fjUU5Oe&NuqxLncc+&H1WM8-;3`j{AT9v z+_^JnPMeu??#$)z-UPgS-|ipnAm_00lPOBUM9hk54QPi_8bMDJpl8KTPB8}VHM`XC z-j&c~Z{Z}Nv9QYs=iP*$R1{?I&y7FjfhEnpdF*``BbbgNqwu>pRdNLtbo<~bc224F z;HWCbL7Y*8k@)?`!U-rl5j>zB55-RVFF@;62&)lP2y20Xy7Rg=bz)z()E?jp>!=IxhCF&@+Ib&+f+bmi?lkzB#icR z5Eg*8*i}bYBHjMlmnI|ZLfDP42VpP5K7<1ZDF_D<4j~*tIEru_;Uq#PLe^_vmINKJ z9hAfK49_z>%l4z)GJqf#EvnIynsPk=E~aT{^&7xQaR;_w_7Z(t%9cz#GPy?&y@2-}Dn zQ7cX&IP=71|x(2o>$0C2e! z$q(;O!k>_%uYtYyl_ktP-X%};H16Tl2zn9e6=0l8!F$RWI|7``1yz>gX>bKNfNLE{ zn>Zyen`<1D;QFVy?$JnCF>WG8#rRCiWBUAsn$u9T5jdwn=#&FUkpl`9fIzn_XS zn3M8ypt~9vRFkqraA6;+XpO_h>qqOn4bifJXjyxQKQCIBfzvd7;pY@___I0J1O99w zD>^yhrFaQBO7PyL@ODJKOxq%#CuvIyd~pi#@qpt;yRTJ1sxHES4vQK{)kTo%`cnYi z&HKYgfRg>;<1n!Q9vEl39%AI-@Ek>b`Y^pcS5vz|5nc4~{uUhkGsfgU<~~Qvzms9p zPb9sd6XI|^6#+Z)$#jHx1ZW1lA(4!A13ztnpR~YFLrA2i&@tG7h&{FG@U5m}FKs$@ z=DqU-Ovt8gE}|KYG4f(fk&HD(GWOo4vuOykNL}pMn~5EJGqGcDCU)!vW5?bu?AQy2 z^znIzW|YO~O051;$N^nRXh_|n7XBT)G{tVj=EN7f6MeBe(HFZDJ7ag^Wb97t{JS`q zMe3vPv(fk2==*H+JrsT4gT9BB>bv=W1esnRaf+AQYZcxlO2)fH*;wARUM>2*DSjs*|Ln}}kFx&p1n`e1fFJq5PXGJ= zc_)y+V~De3;Rn~8)w%%|Su^3g|GoDC$HAt=zbc@6&w+c;b?-Rv`MTy!kT|4oJ8$@1 zmM-{dVfo`Hljjz*biL(G67k*?KWT8b-|lUf37=&eFwgy?a{f#B3Av9j8FntF^|^6xJ@;;MA2lz{eTgWe^?`E# zC%>!LCii;^pB?u+bMG~8UwEvGJZIbSypizTl<<=k^GnHfUL)?OfoHt{-t7`zC-~M2 z;Kk&=Jq{c9qrKg0Q@k!b^*g)pbt}fd!an#+&*m&ny?UpGcR2X|zqe23Iw->TVckT^ z_hRM2OH*>cjP7d?{7Vpj^S&9#=RfP~52mE#d*Ip=T7UNh){pC&kL#Kb^J^y`*1Cq0 zgE%Vz=U3sx)cQE7qao&M_V_-RBhG@7h!W?#I^#VTSDc9KM%=M~pc!dSS`eHZk1ys; zBhyJdNg#=22AN4_k=fWOG>6P3^T>RB6Lle3L>7}JWGPujR*)~qO0tTqCToa_93$!E zTk;*rAekhaoF+Ns9JxSp$tCgwxk|2+o8&gRL++6W1YbrXkI7T=j1-U;?rxj@>YDukVHEKhvQw6o7wP+n$k2a)DX>;0wwxq3SYubjkqwT2& z{e*r>JJ61_6YWetqg`lM>PfrN?z9K>qTaM8^`X6JZ`z0UrTu7s)}DE=F03o_WZhVI z)`Rt91K2<|i21T1_=f5*Hk^%MBUvyDWnpX-i)7Jk3>(KLu*ocj#j>ev7Wg={6;$R4tn>?2>3{Un8?YAJIPwD}&?$pU>& zfkJ0Mqx0lnpwUHgxrj=fHcvpEpFy8|QUJv=vAc{#TwE^)SfzkVw_fOK`TzFPJ%++OHrmj9YhCHe>#*7r-5`N4Wc15jEVR0}y9T`2JiT@fFj=Ee8YKWJh)~eIA$7~&f>v0 zoMRS(Tb8pGY!$xNyN0c0>)A%OiEUTf%;(Ay6TF#FkyOSzA=cP6QWG3mPp=gJ zW^ozRX9`}mAePu6WrKYacHr9jdZqZcjE%t0csHC>!kI$VuoFiC|9f4oSN!~fqsS{B zQ$rD#_xFnopq3)G5wYE{2tR*XU&M|gb_os~?nj%6xQ&QE4GxVCp^Gemq^#1|r?!z1YrBEBi&dr`ceJP|(=@h`wK{|YpxNy(G~ul$aFY$$T{|`SqqfDgwhRIL)M7dGY96#8Z(J0nG>X<5~RlxTyF*Gs0JyrLFq$pFa3_X zSEG)%)blpzfTQuiza4$XlGtxDPr2OSg5hk#t47IXhn3xLJkz8NuPX$8bGu;d^MyW*g62%53+M`H#U#3mra<#$ z(1*ZoML=kwyJ8KBuAGamGBsDMfvz0zr7edmZ8==&$~hO6b1o|9TvX1vs9a`Ixy+(+ znMLI?HRWiY4nBURDJQN(yW&c;OY?N_@he?99eg5BS56Bb^0e@YD{Xzq)0NZ0hr3$% z#Fefb;Dc_I3H*r^?Q2qJZ7S{y_>qri#eLouzt8K!vvn~qYeM)ez!PKtAW%1yj3$#Y z3!8(P)@rg5Ux}O|TB(d&-dYvy?1jY;5%OS%nWYnEkL^fjNW2Czk)j4o>ZVOk^Hj7bQq6r) zv*!2TQR9b+*^d(bQNsT>CHy02f8^|soc(cDh8ZVDe(kJLT-^C03bPvMS7qRb|zfHR$-B>n1}(oNtmxCSbN1{g#*-%CUYk z!dlvpm@pHhU6?82ZiE>;hCk~ieTAz$tX6`_L=l*Qn#^S_Su56>wP9^pJ7Jyqgni07 zu#T(~>&!kYX65q|78@VfYutYY4&4j&Yb}>ugLanWEDO)BiKwq$xS}TwW zcA#~z1Z`kn!W#6Ium>e+EkfIcO=u^qLc4`sXdf&?``H1O!Va=S!bX$|>*G;&j2&m` z>>F5$^4NX$kUe4#fUyU#0=*08OrG=+gMWlUc{O`Bt_Wvnt8(y>zeDheH z6B+D14Z-U&SbZ9yZW(Mp_Ruv979a=2XP6`69M%}|Sq3W+EJ8}e=V9q#Sdm-c2^Uyv zcnz*tBl8-X!1}{$aKl=eF?ZO37;6e!5M#}-{$;E=Y(fk+B-n+Z2{Z9TLzX3KXoS@= zufd+35;Ztr)y!a9I)k_|%Rwx$vxt@K9AYPS9=gr~P{?3ia^W?Q%76kj5KBM-7)TXB z!H5;0U^s`cDdK8?f)Q&#!H5mFWZ~Zeun@rF1j{ad!q z<4z^f+X+Ia+Y5VE6Je)1h5L4}0h_>5+zPh7L9p|MkT5cdUZvNlnm!U`OW4)KlO^nL zsK*qR17TIujvE?#oUqj4E`=Y2LfiMC-bm%JSUV99*t{q_P;ywHZDGf@6V~U3II*!S z@h2n6IB-!cxM&7ERr9rcv>85-o$!7fAV z9>O!leILT_L7u}e^-_2{xQBy#H>ywttqJa{L+gSAHJ%M8>O$RMWort4)b~oYh4%@b zCOUu)6kZKq8V(=ESokj{z=JUfmbfW220n~ZuWtb|?vLCW~F-n!?B@;s< z%^hZ7KqOzoa*Yh3>*Czt4^??d-6eay9Gi93V{G85<^SE_8;k^vf=K|hL;z@re@Rii zKDqhj#C4meSkCM6+mjbHzEf;+SH)G>AjQej5gb%9Mj12jkXm)|wa>jiZU6joNJmrU z2FbJtSju6FouxFE${NaiZ!1-=Vk$W+og^1Y{PnA1s^mYNot#~px;E`6dFuh| zt!v9WAYyc&e?TN}G>+Qo zV}%+JSsXPZ$S=p@C?%USc5TSaQtT)7l|I%ebKuokHccbKM(cow`U*mX0m+_njX&*qW{RrEyU8 z4bRuF*jVj5c4JBxuUqAP)opAhA27Yz`ox}V35N%dAE|VdEswR>)IpK0j5O`-kTurD zd2z+%6%Sk;(KzYOtz$E1H#|P8X2P(;Q~UG|i%xBkR5xK@hI!={YoD^J9bqsr|<62enqvxs_OG@56aJ*_+-+SA#`qjSL3Uv z?RsrmoV7i1^!B_I)1Pm5y{P(iglc=G=DQP)9%M4G{`%OwHZUkdsl2{a zSE{Z1Ezx+Z5m8a$%^Eij^N$R791Vg*f*_9mVIhKdY%TD0U%8QFh=frhwFQA}Ysi~P z?otz#i^?fp(mw7V5nSx)#u{GHXO;GC9Z^bfs%;&)iBwJph0I7Q&+9egZOI`4hJX;i zE6Bl_8>&iGbo?!|FzM;t7L4ZZpmcC`)~7$DLKYiKItLX#=yS}&Mmb~L@&}qj*HRq2tCeHZ`;8u-%WaToc?^plI5~a)8vnYlTee?0v4XpK z9iPaH(e(mfdLB>=I9skzW!> zW`6Q&wC6SNn02v=RofE>tTTH4qg0q@=hmfNx$JA-)=0nLb3eBAUa$4`Np$?vbxEJQ zzFKo<;7EftErV{QE=hZp>08+5ZW)!w!`L37Up9QYZ>D+uM{|ELRK<5+F`=`OsbrgB zzB=gn{XW~}o7*hkRsY^x%dIVLd53*=)^*k1u%WiQm)IX{d3W5yknx3R0s^4!8L9*Npwk+R8G&=+WO`)|5?QKU;UVuI>0V@bh51=La(^7e6wI zN*gie;=|=b5{^dBdod$we620(mrYo@^ZDEcqq;gqTX$@G>G57uMb8UkR7>Oh17DUs zHS=-w!LnamEUe&DcZHwRk?|~fLi~|+$7k8uk3Hi$`p|;N0fh(dbg5jfR_5)Tb1sgZ z+Ei{~<~zRjw_gtXY00VZhpp~DGoAdynThL1j|x1xvRenqwdT%sJE{$7(dgowq=scC zFyZE^FT-B7n6XWYlcyro*Q$WF^VjxkI`-PBP65N*ZM#GtD}gd;@Ow(5o8-!+ z(b&SVeXw6-q{3OzJ$guRpueJfL|}+t#JJ*vwxVrx)QGT%z^HLzbas*4luh1@&itpV zZgh^_^PUiB=K;nRmT&YyM08}7!ZRRhOjtyavboe$1EN#UfQXPtMc6P!bYy_SFG|7r zG7^K#m@#9Dj}j5#ev1134I~$(Bc@eimQkmuc3nr?hYiIf06K=xH=HEN<$cEgBZu-1 zP5x=>!|QI{ewCTKA2G_AJ!#c13#L>xITn=H&TID7vo;+q>O45=KfbU>K;GG;=J}5o zt!(t`(_!aoUwWRuCbVkPCWlV1A8l0Ku3qh6_xbg1PV2PYdgj`fb>i&JrF)~c)W0{T zbB`zLtQU`ao(oI66;f{Q#oVEv`|on_tXD9-{Hu^#4VK@W-eICc{FHmW=WZK*%-Lza zh2po(wJNO$IX3OH(Ie#NN7)ao`Aec{-Ip~S<~O=aeY!pkajhSB?PAb?eHSh!#l9Sz zH8sV5)oHumHaBktP{g>WGORnstiZg{@THQ^{>k;mDW1m4s zua05v502jpp5QS}JO0N}71Z*|w~pl=ToWkdEhSDjW8e6WH2%dWv`iHl*C)EMnNdrd z-=m(S)YQySWU^9ofeMCY zHNdsQ^aaxcLd850(*rw6v7x$TqpT)bX?UlCU>WE3x;cW2vzWWumX}+~D;eeYxcBR; zmMw=inKr#;o<<;P-Dbn1PHpEcUpeE@4oBOJv9$_qs+vuCIO34g#YFe3KeRqO zV^8ayaZ8?T=$G=yvF_Qc6KN=n3L6X;ROnc?O`(m|xZ$;GUq5*MM)&R3`Q@)%cZ|)7 zSs(1xZGN=R%oMw)IS<-KCpPx?nN+=Jzr}qsF1o~~4IWf5eyBs^;TK&bK;jDFLzcfoc#wPilgNi))c$l-#grX;P#Z&+92hk56>#CL;^Ob^#H= zfuXvLGDR7+B|FZCfK54X;^4fq#`0kRctFt)v#bl(B`Y zN8s?lD8FDuCl7^A*EuM<2Kq;YMdFD!kM;5k4jd{LV~WvEN-K$v;d0|jW<3M^M<_f3 z!u=wmLIOggl-l-XzuUePyGEaYeBl)PIhK?&7&vc#=Tl8bMf*;2>6Vlo^IMN!HeS1x zU15sv7x(gpEOweSvP;=4)%36i%d@B6A9E@oXldw^z4uSq%o*i>!|ZOFQ`a85%2m$x zim2GOxm&~8eP<*tzVu@RJCl1U>Z^FxCrNG6a^uzHp!m+qKU=_V{OGdpO7%n6gH~C` zclr7CygCyn$2`lfqM0Ja(J9bc6T}MF)i{Wa>3ue(dEW@J*dPMbkt1xmx;bG_AC_msrqolEt`FVL^} z&{@*o9c;56ihz zx$8>5*zavE>#TEoG5_$dw(}C~b8ifu=KT0>aP+nlX&%1QANv1z;nJSI_j`WBcJAC1 z-g3v*!NdIW#`$l)Z?yKSmWr%Pjh`6~?D3@k@|$;)7P>r3>hJAzKQ+3Q>sK2t*BEEj z?)c>F^NG~#Y-A7rp(k(KA6-;A;hJNrf1v7)5&{nm5_EV9srF+x~^i_yfmkT;Kd#LYK((-fnx&omoF3Q(Ccc%*Y2zWR3fO=IESx z!+6uSEw0@<4pzp=T`{p!GD@Y`lOL$oW9Fr_c`zPDekUHx< zZlY`C&|oW6b%4av1b155j1nXDEYalgGv^ z3k*IJ*>hpFdDP-U%j(H{&G#A)9GdsQ@8Gyoq4Qt1?6T+nk*?`M`&*2?doaZ9{`Ptm zU7yuX@{fNOI&GW9g8ManCY!7otiJi$9>8%d!zxHK~G($(Ldh4GpPwETD9tp3q!Sdai>s?!zf#nkHTLn^DV0(` zzkl=2$|m0@&d}E!oC0x_461V7AS!4;^7k2!teZ7^(Q?z>RdH>cYo7AS-cdDRFd5zI zk;ia5k6vcx|GMNoq3S2rM!O5oy#D;ho=vAd+MceOH{_;Gw!diH5L?UQba(C6h%Rbief>!(yQ1t8f!Fa?7e`! z_kvYDE_zxRLd^FB{9bI(2Z+;jUm=bky6==k_( zWQArRDe4yz7Ur1L>&^*;9QGo#nhlMM438N*yCA3K? zgy0P;`xGInb9;n7SsNYK%YBxu2b58+2%)hlIm!7W$4q^Oko^>dER>mP$*IpWnnR)N zIy_#PfMDumUO;aF`A(TR#S?p-s_6{*FA-9l%}Jh^FZm?~im0yelI14nr2XY{@NpC%q;F8}h$wh7B^L+JjU70~rthCfD*X;Hs5-jiQ$yNv;a$u-t;I;` zW5_c|La^`;>RH&mQz6!39h9%O7%6fxl!)I$^^VUZ^#2i$HHMJXXo z0j?|xhG!}~q40Evrz<>R@C3mV1&;?j0aQ0sL>_?0z~f0$>NhB_LlKe`WF=XTG9*(W zzXj6a@Pxv%0P-hM2Bm@LPt+Fj84`b#A$5iHYh!sSr1OF9OGu-j{Z2?H*@H$&oRC~P z6xm9;ARCDU$t69IFXankfj&dpL-Gl<`w76Wq3=rQV+S;X`T+$(+D~GS0;xX8S)vD+ z%+*^o6uo`-o1`7kbVI|Xd1wT|16@B-kJO2* z7jfRn-2d&7u7&v`YeCk*?16Ql#kJ79`-#%LdnY-7y1ZWpvR38~S^q_VBWq#)khPcv ze0#vWk$L|g9%%^j5Z40Mfvkn;fi?IO)&kb!-BWQr>|yVj)`6^r`9t;{$-`QhKU5X0 zixaFBNy)fL`+rYi>|*=>l#)G4_6Zq3Ny!|Me*RNR=7sE~e@ah6efM{dB@N=<(ZSqe z7~gj=*N!mWHe}ApxXBp+{3GC#LG~g!3uHeU(*f`EVWrUiOXLv@!z9j1ha)QVlGB;%2#kn4ebnj)3Kk^pmZ5Nag+0zr~iOeBm z`5Fa?@@5;zH$#0r}O6O_Rki0fquvXbnZZje6@dr)O4r|v;LvQAx5m`F$D%_ERu zaHa_z^&{#lu3I!plh9Cy$SWsECm}}(;kg`OkT;T<05<{L4P+LE- zTn9XPNSz8~CC-^~F2(v}zKC2Q^94Mm3YbeGpBn%_2ln6#;3WXu4D&q}QUiUEbS}V4 zKn9Ytsz%`;J4aGm&}djIdl*}wq#ntrr!WUWXe4<+o{k3oYUt}on9q^o_(^J%@u2Gz zqI^D#`ik=v0%ZymChdSmLZ3%UJU})y0G~JT`~Y(KKHzL%ok?5nAkU#~GWX<6m~;c# zn^0dZ)+aR32eAzgs0(u?_80V?bQz2j9*P0|X?hL=YRmluP)0G$LnQPj<%ekOGDL3g-=UL65@#AFNXhW-;>3VM_xI*sTv&`(4+ z5j{iN5XWfjH_Y2CcqYU7Oo8-1JmWzh4uZURhGAVl2b_3*0hdW=fk!a($pg-EH!z_- zmB?VcH1emuN4=lfknC!pnC&2DbR5SI#@3c>Mzuj(1~zgXx|n^Q_j$KH+aDI zkRFHr4ul8x9<1XaQN9p;Omr)ueT^Ohou?=#2p#NokRv>qcTu*%ekA(<`Wpy!zk{?N z^v46{%b@>FdWF=DhX+!Tp5)2-2Y#gP`xN>?`XW9=Ul15lIG3@|zu@=s=)YzE@b@y_ zB*XtEJ4N|ylE>z9_wRJCQ8V?L3Wc%PLElm&DerERxd1sj5#;DZ82?0&pDRI*#*h?b z%oC6)-hlt>A7vepS1VyWAeVstyML5PWPX4T$R9?u13|t>?~8h%i4?T+ll>@!qvEAthr-^ zEzD?WkeL=nyvz*GpmCDHM!Xz(Ne&ueOPKSQM%XYGLt6^uA~o@`GJ_3cG0-Sctkm6D z*A{f#Y$I$>+I4qz?d=$pJua=VxaWZ6T*sKayllt(l5yEtMVV=-j^oN5;fCfImX}*x zKK=oUR;)3nC2LsGcF=Da&SyxUeDOHjFRl+LSy3X;_2n;2ete@E*_dzSd^8Q z>u4yCi37mZ)5|Y2uQ(+yx75+i#nr{b2dX$`6*(q578fR`rsX6TPH@ai|KGaszx3{J zqslBU&hOK!S6Nw^OF9gPJT57DIsbs}l?FrVm7SH6mRpqOl3ARSZ5R#QXIxDKX{Zntqn>C0N=CVWjX`zhdJ!lT>I??{g+S30PDmQq*d@T9(0!cqMlQ$`!JP^D z8Qb#vUuzE)M^OYlCH-+k=JjKsuLg{($kPwTk_Y`u5ot@I%ne#|g~tQ=7+Y}^$Lt6_ za|FslNK>JO9I>Yp07pjn|8^Gs-_70szE+vg%VJosKByP`m5F~Y&_~1Sm{J#U%sDXr z|0mSFVC05X>Lu=l6v*eoil@Ph5l%UPHD6f}D{wvyPkV#Zk%%W8aP5%=SQp@A0*?s| z>kBR)G>uYGT_|VDjq;`fs0eBhl|~g&)2L+k#nNri zE@h##7-BKn;!8)BV>`$8j*eoxzGm%y*clh1@ce~%MdT0M1{GY7X^#o$@y7 zN&S<$C$&$mKDqql%#$Nec0UPu{P1z(4uY(wcQR<6B{{QtQ1MLj|D3h-I&^Vy}5C0h`rN{#IiVXCY99be3DUcPc zo)UDUEwV%QNQK%UHF5ww*baSyG@w7*BM#}19#*&mazY(ZC(yf}qAsW_>V~?*{h$hMBuGiHhQMwe zjG{r34FS0ohvHEJc&mn?;V2P2B_mN18ihuqF=#Bv3xqyLbJ2XX5G_Zm(MGflZAIHr zC8|I>&@QwG?M8diK6C)>M+ea%bOaqkN6~R~5}iP2(HT^Q&QY&G{t)St1-AD@v;|K2 z1h9}x(Rc}i=ApG<0TxN*VBcj>*_1&2hk8rpgVmmmrcjA!CpwL0!l}=dP*gXGjOq`k zbt?4(NaI;(4q8Q7P&D-|^@w^-y`Y}JeeM+8$u3Y%)X&r})Q{9p5-W){oY!*d8TFF- zH=2zWq0i74XaQI&U!tXGF(K_Z4*f*+qI#nOILYpm2iO)~aI%QUm`DTo z_ih>S>HhaW3f!ZJq9~h>)h$8!zUhqKd`i9PVujvxmAvUHebdcC&{|2)Sy^!C-1%l} zAyk<8=9f1Wbo*`#Yz}Y;&CRiI@2s(t*Z@n|G;-J`4zL|M!Lqx-5(mIi4uoY(0@YK1 zCd1^+g#j%`YtSZGlzlMm7f>x~M0dgPdWn8R;1r@5%8ufwZZMcYDufEB22%+XI5nvp z5Eh?NOQ?0!7HS7|ggQ^vQ1#R;su`y17wS(6Ji-!7iG!r0q?@Fd#7`0~86=65Bud6e z#!E^hQzdgGOC=j5+a$Xr2PG#YRgz1RTFDK`L&+=2&yqhSf|Qafq-tpgX-}!A)K3~B zjgTft$4E1!#nLI#Int%l4bmOblhP{b1?d%Oz4W&9p7eqATj^8jE9pvEgCIuTimsHXz|kGPnx2w>9%xxx-;!Ud(-{sNII4t zNvF~|bSXWZo<}dG*V5bQz4S5q9DS9(Nk5>U(*LGk({E)mnT@QStb?q(%tO{!)?YSQ zHcU2FmL)5cO_t4;eIZ*Z+a%j5J0v?TyCl0VyDR%v_Dc4vtc8&<3Z@OiF`qKM7#}8x z8NkFbNlY4(%ak!QnEA{yW*xJg*~c7b&NH>lE#@KfjQNrIllhOFk=x2Ykvqwq<(_hX zd6+y}K3twGA1^PGm&s?y=gPm7uaa+(@0K5upOl}MUy zJDeTMX0t`?WOf0&g5AhguzT1;>?yXIy~^HT@3P;p&)FZ@KiD@4sY0PpDKv_XiXIA2 zMWAAUB3?00k*6qCOi|2I%u_5@Y*6f0R4M8d4;9}j{*;(nWdRqBeMOY2BO0_Dq znrgMsYK>Ke)gi01R@bfmW%YyApVr9Q##(3H-P+4K%zB9RSnE9N8P-d!H(2koK51QN z{m}Z~)~!lLX|L?4^i=j&4ppWo^OZA|%aj|GyOhV2mz1}aPn5sgNNsFvv^L#rJZ%DO zVr<6P+NaqU*w3(EWWU^gv;98%v-b7&|FZwL{cHPHm4!;FYO8Wobyc~m`l|Y? z2C0Utl2uu%Qq?ro=c;9@HL5MDgQ_#C%c|?Dd#Wd@A5_1$k+iXI)1^)CHoPI(W7q$C6L6!9G@zEh2G zVP0}^Dzuzj+~3eN+#pCt`oFK6_8#hQ=t7zy=`V7Ct^jrThvqXrfZ<~QGsJiJdoCI8 zp>ViMeN$xbdQ z&NI)%iX02YcdQw&LNhp4^W z|#?BBLE34 z#AiZES{Rs|pPw9+oHH&pc~HsVlHpm#)?%_^GxOrIGIEmRlS_=P#$;xNWM;(_0S&ZF zYMUB05}2~d??;$s)?a8*90TdC2$UEKO|?XvSalqbW{{qzlAarROadffL3&PDOdvha z7JHssGBGR9FiZJag_(Ipq~C7hyEwVT*i3$AR!U|TG?_nqPS476b9Ht1Fao_znBMLt%=;ow6Q;Kb@G=43Ccwu8_!}BNa=4s;N zW~%OHs_tg0?ry5?ZmRBX>X^H!Kkg7DP7S5yS zVdCsz;_PAK>|x^UVdCs*;_PYS>}lfcY2xf@;{1N>o+i$oCeEHF&YmXDUZ!q%nTWki z#9k(1FB7r1sTd%qurNDPO`)u(?6Xm&VS zUTz+}-9eVRyTRTpEX*s*PD?Kqfs%YNDa^{qG$2y*%5p_YUoS)AZAg3!i7(I>XC-H+ zW~HYSjJvB>eqml}NlI~13CNgYa94_GH(&5ZW~C%&XXU16TyPtPL#OE1crNZw$dLgVRaWaB`Znl%y4r9Viwh7mG=V z_zoA}S>k)V_%?7RyIst_pY;z-5fd8rp0P=T870!1nt5M2=%d;pMpH|q?f+3xL4P_?++rv{1PA{%x?lB!ero!8IzSSX3R}}5n*oc8xik&WwhEww9#}I;lz)2 z$_EQxEc{@`i&=A9UPPE1^df>tPq6CE;9wE{c*4zAU$hVnB<5DXi1}dpi`n<~znC+> z1Q-xTJ6X&SbNd5p^E-i9Y_!15DNMHmvE1C={XjI_AYKUXk0#B??IYX=qh4faZrK|U z=KUkheQ4%y2KI-7d_((Snu{#JIRCHCiip245OL;ax;fDY?jH^--C(yLmnD zk0`xA;_35IneRts-sU3$tIv!ln0_DS%zF(+;74VKo~31HlS@~TSVW9F5ilBDA7FO_ z-w(EySOkZR7*HadZrB^JCjpzCVkj3gCGRuhCHq5}m^GEcjuc%?reagxST33Y#h|~5 zIYCll2#Bd@2@ps$1w??@0t6t&fS8Kb0D%nV0D(k%fB*(7spNx|RARD{N{m)giMf>o z8BxTQ7_B6zXzHpqctwp$K@jOJr^-&YEaCW_!{WQz(is(D~1OAe;ArDIIl1#IUDUEUp2zu zGtx8kC#4fVn8s04sS6Sd_yjaSGEOpE+Fn{HEteja{$N3ahd%}U`|~ZfTI{vBV)5AG zIW4DcXf3^(zATfELT}Ru>98YDcg?qVF$D0*c`T$oy9I?SA&;(KX|#XvJcot>@)TU zwpGyyJlcthQHp#;iDI>4y`oz2RPj>rqvBWaWlOANR!S=etM*nMtOBh@TTQlFWp&u< znpLyaw^lE$ez2BUx3hKxAGV)$i1i@rSnEXVQP%m^v#l3fue9E1z1@1Z^+D?k*0-%6 zSbt;vi}jyM3nihm*R-071OC+yar9QEaXR>2Q)z)zXK23!`}`6W({9iuxt znm)R7&)RF+7Y8yz^hrWjMvz3u^-f)#zO6_|=zBuk^lx{S$duvH< zZgB|=ow;`O=tY=nw!Yw&R-qQ`a8Ej1CfEr*>6@|_f4t~OEBU8*x|%NtY@NUeC@i#N z$MD-2>G%nOtp$wW^ha0R33qz^Gj@W0+`+5Wm==~q;E)6+enx6;rY>cCV(BoL=naO6 zKI_Fjua9@zq;HmCyV73Ig!Z27orWD3s`MvLufO<>Mgi+5^7tYG2MuKsW+vxm0gn-X z<8kM3PGXh*+&TJMRNTIvp6uNlyUw36u~2v96nr9{uf_{QgoVuT#nEYLy28T3X&Ks# z!qwXg^=XF|Up=S63qzqaY;nki1YP>UqZ2P{FCW`@@Sy&}g~d%bp(Do}8e1iJ1-{-W zT*pgzNn`8aw@Hkm_lVI!L8DGQ)!|DaLIV@KHfevBE@#(?$<^A6XEz_&uUE8m!Jn&d zlz%h+u&%f=<^wa##b@e;)>ig9b8OAA9d+8@*Z1}uK0h`+U0+%{VS1*vU;2^T zv-BadCBxT_+dV;^y}PQcPJ8XtroDS%_Lnx?)+ooYf}=w&$N%IY_~T~!)y8X$e`v6c z=RLtzCsa)3@J$>j!(PHodI7&e?HM!HM<>MMH8@uG?UgZ}dWAau0G*RFZT@6!*_7q0 zO7-gsCoRv_78QOzYLxz92EA+7sxQ`SH?5yFW21iRwv97)Xt!2=dFrHIxsCOe34Mg` zg}(TE+E<1%TfJ!EbTdB9kYm;*;3aHgyMUfTFTwAg2X;EJXX(mH-L6&ZR~^_t;&{9K zf@!l#X31xlmwaBVjTlpLu~FW zh-FfofH$dk7i`bYE-1|7da#1?!u|~rIz@}6LrYR%>kXz=$={$urgD6vj90cc(u$GX z=*d$iCu&Ou?w0M}|JC*i{hHM)H>{|XD>e@X>Ey)^SMSfvSec}aO(-0fufH17I-?0+ zWbU21+;nKuto%xyLKs$xyOk*_&YaOVG%UP@oiz$!dQg4K!7>VWZj#~}d|zE($V{BP ze8o)t^i^{dOSb4Xm*#wxs7)KVO}2mayqPQXD`zYz&(H`lOzif;L*=@( z^1{MclFgV~K4XS%=FDmHGPOkm56P-_eYJVBe#@5S+s_kbJC<%*wMw^Q#k%DiwaQ_a zCg`HGlHzXWU@w{BRyZ{zuPC)X`qU8P-BTPhnkp=eOCzGwiQ zH={s-H#pR#GKrJ7ozderA;McG@NoPSonm1lUeSn`G%8wb9fYs=NL-9}&@M9JacfVS z?->XibtHqk;|QG7YC|hxm<4!2Hmks81uQ?hS=us+tQ8}awtgW@;lH4PooPoy529NSG0KcNb@Wj* zrRaUSOM4ETzpKGg?|%ujKzsWM(x5}Z+%)`+y5F#2!NJ4M-@AMM!ks(k6M}TgIgR|| zY}oJH%Qk_+DJv-2R93O=1c$vwv8^*0MYEKDjuX|7M_vivuDiPB1W`3YOlemeRaZMybuqTJ*-Xh(kmaR zpQqP^RO;$??zsTWCaJ$Et@moG@b}9ebcUtdIej5+Gut0*79}J zD &DpV6!!Kj@F5R(WlWujzhIL!FjyT(H!i192^6~QW@$)h>HLV+&%*B}-#_KkW z-%`3~f?OFtAv;Wbi;?!V@{kaYt&+gSC28LR|Ikxl`8lMe#Sr;TN5t&o_hAZ6c4~f>hF8@ zWR&Wk0|kyz;AGf*L5~G#Ug766OLW)+-=TwKLWuAuofAD}#BhyZbKe(RW9#M@*jg7d zPwkl)8yGm^^3!K$FExL2VnAP=aulbmr+6C})-Zmr`Y+#mP6G1l(;1fI+R00|8_o=m z$eLO_F;CY=u%t_KW)`MuQko7k>y~a?wL$j{X6cGU8xNcYWvWu+cD~Pqwt|DNv)~}8 z9=c-decP6--Ki5IggP3mfmr;EK5%VaO^qgGzPeldK(AgS?mqkRQvKt{7YBCNDNFeo zWs1$?I7Qw}uAUDoqrPpz^PpQ3MzO*rMpVj42BrKqsR=J(iYg9FJE6UJhG^t?M#+b% zFFL(sPHw6^r8`_VOy)f9iYztpzK=TCk?w8KrRb2&<~?$EsWv7eu*x32HxQ1S^OL|dsMS}9=Y8ouGCaL?ac%@XqO_=Fgm!dz zo$U6}Q`dLsl_8AqiNMgl4E_XL(h9z142KV?`M_AlCzOt4zP&>W?-=DwE`?RBS$LyG zQ%3PG4Q6PR!3^am-%z)ncAz3J6@CJSt9Uv3dx9*}N@gZ47&R^L*IyBTMmkg*uc~*grnP zDR5Wyi$Pa<>V&R%m?Da+S2W^z4R}|hLO8jwjt?$V)HmUkO$wnL$18-LL3J&~brkM# zQ;G|M)GfaX{RcsGSh0WxG0HNku?cs)gFD@k^0#2k@Pc4r0UX`pD8YKJPSM9O<6rCW z9z0bYEfb!CxqVf}hhhgc%n+yun6>}3-lzHdfv^o3{2%@S4f0tryQ-uV->xdI!j)CC z%j~aT#;%vK4|yBRiLEu9J_w+1ihk;x2vsY6>4l3 zF2q8_&w5rd@4g)8RS5+@;exY5o@~jT6$ke2lkZWqv{%=+>V?qT*a9zNgoSV0!|76% zV(&8Q*;7U9i$TM?>L!QpmSN|{$NVKdp7XYyVjLUADOR$lR-ZqjSInu$yRYHp^%P9y zwI)S42)8gedWWF-ijpn)1@N&te@jVa#g;8Qbjt0AHAh2In8|aBrkCq{1(q&IQ!K2* z{jT9**I=C-7S{8qUQuQbE3mLhQF{;HX;xgng=gP_)i{a66!-z2(MYvC#52^5Zx@Hd z@$$y^8YuibD2N83G6E18^)0G0MeTN0(dw2wDNHwI&<+_!HHUevUQx>Xlu?TB>#jT} z8$eGsfJ~{r*W6F0+_G;UjHMBesQT$FPH3dC?7md7xs(sPh`sA5MSnO+7jUmSMH8Oe zq+oR;KhQiuvo!&=Y!RC!gVmK_+UoSNHv49+w!$~_&Iv)7zMd=DeFO!B$2)HMBFQi2Al?+8P$w0HA@xq zxtdai{WeY^6kKc3mMMfTYMd6t2Zyu4!e1^UFqnPd#Xb+9Ak z7lHfJ8`YfR%$x?iz5%alpcLvyy}cPFMa_lZjL0CY8(DfI_;G(QN6klQtOTMZAqEv~ zMi5gDA)pYo3IVO~TNbnmQ40_Rv!WRYLQ^3Q6oOkJt`$v16c7|4h+Tz1QxYY*1VQvF zcrGAL6oOzO^b$f|(H;uIULouf0$?Gk6aru&{uLdTpi>APm!P!>!dKBbgw9atJc3|Y zh-ZapO>`Nd3lda=Am|h#P*FWXwG_I6&^7UYKmh-bfd+(bBh)BC_Yi85K%^~dMi9`6 z?o;S%gdU2&&R>qu6NJ8%pr;5za>1cOE$R+2t<(uih;l{C5Ou*40$d@sm8w_3FLKZ~ zh-$V*R}l3=imoE`96?Af^}Pj}h9C+T&7>eY7Gg=!bQ17O{p<sQ^nWG^(vm9bGH_HynPRVLy&t*R`c8mt%Fx{CzCYniSikO+q9p*dcce#z+ zLmnU>C?6)zlz%QiEk7&2EWakdE`KI}0a29pmhP4nmM_>Ob{kux$W@dpez1zS8f7)n zY7#^&zP9cO-koCW&#V`Lcc;qwymhVh17!?EC2m#LDBsw)*aX@Pu}QHhwwVL*hYxLj zv6b4kwRN@)v<TFVk<+SLtu-e|Dtc#|o~F z5spcYxsEd&mpN{CJnmTAf$q?@L$?kA9b!5pbx7-w+o8O}><-I1tm{zO;c$oZ9d2}Z z+~HRzOZX9kn^UCI7^iZlMNZ3{Ry*x++UIoKsmkekN8gS?9V0rXcg*Zq)NxbCogFWA ztm*jgj(>GRofdccveTcP>CT$YE}errCv`69Jgf7X&RaTf>wNvwp`WIIdg;?!U50fT z+ht*wyIq>Q{Mj|7Yfjg^uHSa^?{>J`&2C?J59r>ndu;dQ?#0~~bl=eZX!je=Ud{uY zOP#-Re&qb4^Xnd#J=8t=_9*GGtjD$=i5_UY2cuTNN?!ake&RQ0*t2m7i0dixFaOZH3gOY;Mm~!;Gx08 zgHwXjf+Le7U=4|yE&G^8a|4qnfmp#h<>p`$`mLkmLJhVBl%9Qr5}_pk1MqknV%XJOW1 zzG0zZVPQkU7KLpHI}}zE_Au<CCj4gjx8XlVpolgR zP7%=&DG{X+%OZA1T#UFA@hakNq+Mi}$biU^k$I7`BiBV9j;xD(9LW!`8_;V&81Q1in}JpXbpu@o1`UiKm_D#z;FN)L25uU7WZIgq2Zs$FIe6CK z6@yPjr$yI9H$=aP{!h&8m}f)Eh8&CS6dM_v5xX|FB~B6N80Q%`JZ^T}fwdYQf2+-Qe0M#JKVq%z~ug!4^`jrWcJ|+ zbg(Q-m_Q32vi*?hCuTm4d?hOuI?!DPK9^+(W%OMrE2FWeF>?SiKi9jpVeRS$ z)#rUb7w-30v4p|xzIt*G%Qb=X)dBG%-R9`<3g+0H{qy(c%D0xSnvkv$M!;n@>&uLl zd0XWr;04^TxqG_m+hsZ>p0}7&?Wt~Af!nA{IMuM~MI<}4C@UepcyB%jSEI#h)jB|o zPe>@*lg}w}_c;yx^Xt_8yLjI17fsR@4+nw5ZBJd?cxTazPeNo1{AQ-+ju8gnymsI# z+_q42a`(Q&mo<+gue-ZO4)hv$Y{dR#o&T`F1V@cv`_u>Pu&m*7yqb?uSbV|uIv7tpxu!tuqrg$3o)Khq^$o>aM4b7t@Uvu6&ZkJKrJr^fY` zV!!vRtsKh5vjW3|-QEftCH;bwcjmLzg4K0wbtCVLU>UjubMz3|5`h!sw{u5gt4P6W zz|Ij^etWLK(KWKUn8TK#v@+shDGqJG!N6oj#B*@F zlHzaS`ZJMxYsDxd!0LZmPu*;Sd#aRA&SE2G*W;bn@Tz+1SQD-U+}Kz)0`@U|o!<={ z@86d4rBi@v2mACoo(1LO@N`!W+$#8JEv_k}uEUL<)Edn}t(NxSk(jW8i&)E@Yr;DL zKVgu_t)>){A;tc z8>igK;-)gfM( z1=+m#f@GcN(@~>dxY6)ge|p+Kefd*1Y`!Fp6guS2DHnhX^yv+18z=3+D#vZ$C_JNC z+Lu+9v($IZ_@`!RS57%Lp5ym}5ciV_gIezhgZMkNpA1if%U+!fJhky$%R?vymy5pj zw&2F!CZE^b0Mr8r-j@MDcw2_u`3CIX+CWZJ1ltczRDQG6lT(g|c@JTgi&*jW{RC$P z2dRaFEkDtrGJNpuPqcCYH;fM}C5MDhxvG_dy(w|LaDbb%K?Z7F=%&8wzGnvKX%k05_y|76&&G{*Wx*o||Ea!i+3$cGnaky;GWY3r=8S>Q zU19Ng32FKZIYW1ZYvV_hrDW<=XR|of*H6x#ynFZb7*CyWsR`FJ56+!zGG-ZNKH)gG zNp;_wRh_a`m|*dSN%ir(1YI|NG7$9Har9(q#^D@KD=1X-B}XSXjtXzcoqS zSY`g4v#e@j0<`bKsV0ISQ*bH**C0Pb?JpCw;O5crdfH!xBU)$B^|0NvMO@1$L#YLn zIzZ_l@QMRS8wg#2utA2~@b*~UY7d~YKPx!xbZXSyyLA46Q|_wL>Q){`f~q4Y4pB_6v7(f4sQ?s-w@ zd7i1Lrm^Zm7nxF6X1=U^gc|=IBK*!YwJtM4$_Ya0jh2h`)Xz;g_bxFOmZ@JPHhON? z`EQ{U*JSOi)?7cjuc7{Ee&m<%0pQ2EL03C!o%%&|4?d83xj>&#Fg(sz<9asYS)uMh z34Lkuo|I9Vh_Pwm5o7n(&CvzR9G5;y_*wh=*NuPNNvVq6tgo&(cj+5V@B;PN>G@?P zy5iEDX_?y0oYh-P^%FNw-EmxVbVbG1?Yga-cdg#9-M?d6@mBrz!ezN>8l^k`^K*)C z&;RVk;gfSNyspAmtNyq^J-C7$F7duKrQ8ts7%j9H^g>_w(_%gLhd+|`g+GG#*Fk}^ zI^zJHJHBvMy4E%O=A%cuZ@oOYeP-@n{ec7YfpJ;uulmgx((@1Ai%dv52-UAy%epoI16@pDS1P1h9{<<1|kjV{=H;zZ@v%lf}$ z%FKs*IJ~%~fQ!JkrI-V=qbuyV3BRlH*jAqi{3m?k0Xq#Qpqd|Z7E7wB2Q_%`McnNY z_P$)o#X1N9U>zE!pgjyd0RBiyrhwoBbV5&Igt`azr_ZiEaG*xh5O+RI2U4ZOMeKD| z_EPYo=i}Y#l9FGv89i3ido#gEMQWhFY9bE9D*e3+k7_ zcOZ~I*wyuJ@XMEX?!43uc8DG`Dkf(1sjF8{oVs%5m`z zQE9xQWx6w)%B>-y=QSMj&zi6$2YX_8Sqwtnf9yQpyKH&+IQt@xV!(puvsR`1A#;;VK>lYu%P#rM~*v#gwDE%KY>V zBef&b%k%T~DdRqikJb!co^WKGF2C~Nq%+zx2iI3t>W>^d0H3)Ezsp26Xm&879#{424e{IE;XmXdmPb<*oNCxL>`*t=Q57Cr>L_c|v|;_#@2 zWFGN8LzVe8(w0dM=Y>!PbH!{;6_*AiQwdY-ZJJb`xipOBbA|7XoZ+7444mZ#&W3Lv z%3eb0b^gX9>J-eg?^tz+ENV=AXvB!4?8;4CS!R;P@!P=H7(M*@H=W?j4^uz#0{?UZ zhb8W;>TxGd)$Rli^JmQw*a|;#{utwe!@6(@+^?7H#X7dQ2cF{tBtJekAv)l}Za{IV z3UgHkTsutT^&TvKvas>j8_yc?Qczt1_oOXY4C`5LFjAM2u%0re)e5YzZ)MNmDBy(x z=+o&I!gv`T&-bL2X9Bse&vN$7%_^VHtg2cVEmQ=vEBkXV+}YooRnL3E5b&y&E&hMU zJ$uu~`ENL$ZrRd>gSz*h+e6*&psp=`-LlJ#%jB8~i%bp&lWLF-C#1qve=?gq9R9gkb=?uZI|{bEzyC*=k^DX9j}TLN z|1R7v?%t*4VA?<($I1K@A9fda`?(2`&G&cXB7P|4+k;*a~Y|An<}iFW=ktQ&v4 z3s=tm_#7(VhsutQ{5dzS-)t7Fa#gJ-aC_3y#+j`Kz1+PK@4tyViWi$Fa0z;h1vPHt z_Ko166Ncc9B&?)69wNgIFTTcY^nngN2PL`dz`3v=50E{tOX{gtj)%`>udc%9GU~-0 z`~@7MiMWFr2Ql?ic8#pi9jVxQ=%NNQp65CUHvatuJ6-GMJNyRbU;8gUKfY^L*=F6w z@>O}cnz)S2VY-ay6SD1_W=~zCUpr-Kd9FtAXR>D%PoAcmI%(RRTy4sr3$jzYR&KA< zZ{ND+;7N@#5kC8g#=q)i2iV5pyp-GrKEf^M*E|0mcZ`>I;SyQg<6<$V`Vnf{9^peg z0Q1Ll6Jk5Ba0A3GavT9CvR}lHh2ywj&NUoxn4@_5wzOr9_=U?56B#iyKQT*pEi-XdE+1EIu0N?Ca-c5%zV^`>2&B{}l0eD{B#?3#38V}is{W^FO#JwQT393d z;>hBEh_qC8g`=Os+Fxr@`Fu)_zJs6%W{0rrIMs6}m@j{P!{01BpHFu-%kIH9x^P2a zPDuUlfZlcuzU#(K;O>xX*917}L{~vNf`8eCgNu#BbGUV>ZbH<6BMv8~O$>Z_wY>WL zJP9mW4jUs4&r?60d2;A?x+pBAFP!(4C4B>qzSF+6$1p6H)pRXck+-OD!6%9HlFM_l z<%x;2`h(Z`tNsuQl(qMC=~eC3)0_A0)mK%mxOGnx;t)SCCL=>vT%2vRx{CD~2j*S5 zsJXcK>VX5gty@K_Yd5jF4rDBjj@Q7AZB7{uyJ!!0Hq~{w6YYgN(e*f1WqYvYQx7g? zH8&6Pju05(hJW>E&GK{k`OfC~UHI279NeT}2iZfN`%uSm2k#0z#*z6lp;lua#Lw9$ zzc&2(gu=N`q*qzIRESnT>D`-og0Yw?V?flTupnySRyLQtH}mGmD&6IO({ZxY0rdLZ z%oXGO*nTU*&Lrw$ogrBI&~6MuvkBOxDj8mnFA#170ZZf zeXnbM@dH<&xO2%wafB~*Ww(sraPJ#@d6~V+2h?~q-u>1+n2mxHQ-=c&b3hvalA*dm zI33KMiRM(bpgdg#bxXE0+jTX>6{u?ANVyJc>FfNV*n@BC!kLxM<+pVqPN;{?ME%|b z4vxZM{@Fh6Jd5dOa;|Oy6Gvebe`MiP(1xqxrz z#hM%*V>f&Tu8iEjxia>HDxcpukY{GY!5&PhA^Lrv3*m7te z$PDA)M4=)0<8QXID+9Tw#`r}--4`r}YJM=-t1&R)AW$!0*IL54FUXnd0^!%cTPVEr zO`l$7!f7X;-ixh;=m-)glg)vPPW7@Ih_qh(hAvzVJBK4)8r92Atg78X{9_jmJbAY- z!6FdCAA!)ecZ;hl{9xeDB@)>Iq(1_w?QwpLD{wWe*LzaoIKOWnFeRfhBNlq&)~#$U z^#5~WT@msC;9M;%Y|Zxt*5-X!%g=FUcM=C8u^UAnqUvQBbZ#cGl0;7urXc7F1k=kB zKnseN&0RRG1_k|~5i4u39*ka@=z47F0|tBz+-Cye3iMJ;f`;5}UDXVcC@+Nv&HO4R zP*AF&NQqy{K<1J47Tr{QfdjtDU}@xSK^mVlaa@KDYq0GZ!4@__^vJ8N;O@T6JSP66 zQ)7DTgv;Qp0rL$`n#p_WA|o#J&deCu8{4^4mETDqLoMol8FB6Nbr*vHny}gu7j#}0vsir zLu^)~JC3ya3{Lj|Xtb8#CzGuUHN?RIc{LtP*a#;9PyBcGK0d)CYmOA7)!prn9rf&QRC_jLfs(&UuHoGT7xO`UWGobfa-?fWR}s zqv#0c&M8_r1}jo&@EQIBKB?Ufbt%R$;V+r5tLQqWPa<3yLWEi-DwQ6@Tsuq)8BD(; z5L&Cm9gh%4wCXw-+pdvhSfVl{fqt;(u7EPE1Z8*ylwrF?M6%6O(BRDS#y%DJ!d8Q70@7L=qE}YN@F_^db$VmU6 zer&U3KdZ#siAi_?_pB#6yydW&O&An6e$aT`)$FMKL4IuDimwTgZ2G=%sKV;WiShyZYN5RKjW0{SIeg5vi1+Pf#&$dYtru(f7V(H!8r5KDbs*}L zZYgzUMd$HpPK>HkUGE6^5dIhE|B2q4|E3G~-{dL$&@S8p5X7~dsxR=Z1~<&QVAcgN zO92BMs|Aga5&S>0Y$@&aKlC7l|D_i@4$eTkMtk^XqVnkrOtRko3RAEG&V3=UbpuQc z+3@gP1x8P(YJmzQ6+RAwCr!VnmL6Is3ZCbSG==#9u8VCX~bFzgtPW zh)jk1+a(jNcT1!zAyr)ZJL%Du99JN{MlLEqZMZ77ZBcmu`M(MB?^fOXmJko9@ErFv zF&BolL?2#I2eRM8L>`9!i=3)&SF+|7!o^@VA8_E>*MV{80>+&Vj5|^4 z_Y*Jtv3h;-~kMN}+|Gttqx4*O(IynN3-Nf6uInS1BH@BRP2_c!ynL(a)Ld#}Cr z+U;3ulZH%LG`*+dIgBl}EFV1QCAB8(5GlK6A)2KLtz4O6P(?AFeXVM{XmD-8e4b%P=|b3BWn92r3m;$DO{;i zq;Oj!Trb5f?6sgnV!FcDg66U<^CXSWw4-&`mLY|FGKrS2Et5-YjL%e|bwro+7y%t3 z8C0o!rVE{;v}K-?7JQOUYX$r6KVVfA1B1@9m5nW*k1>X=;;8)zVn&c5u6+$7+t%#t ztz(oXlKp#z{Wg<3$(WF91*^Hv>K2A%O*+h0Vw5r_!#qSO!VsmkartblI#hb8 zs~z7$T-%v_FtJoTgNBfSosq9hddwOxwDpJFSyvmocuY_wz z_04Csr)@aTD3hP1cI;;FHEea8ihW@7-tQLdrsmqR;qYecD`e>|>V3EdFt3TT@io{C zm3M^ao=}oCDB3Rc`>ycQt6zYn`SrxLz&Nfy8Og3^)%}T@-O7#xtGHtKxRjFzp?uyu z*taxJr!pah?;w}4;wji|WmZ5^y#|X&FE)xD%4Q4tFhdGhRzzG#0bI>?3M%gdzu%}O z-|P>`DqwsIE`{>53du0~e;uizEqNy^T7G{>rs|4|)84L%OFc)4x;llqxTuE=S>Cma zyvzEonL|`ASF*$ID+U+B~cQ|G{#0FFRK@eDt={4 zijh8Hll|3Rp5cA^%6sjwzu>N#l#mp5MUk1b_gI4ZV)AyKPHw+MHgbjYWIxr+plRXb z72^YT9t=`X)-1nzNuIJH<0fu!ag|FeWWv93+qw$`EMe6l z#4eBgBZt=O(p+n%pSP@NNNi8lcwr~6?I~FokNkK~y_z&3()H_AIqXk^$UITtTKbF{vMx}p~h5)o91*BQyEMBFep2nO;#ch z?hO)!)u#~nmgqMSh5c<+!sIbgLlw?rf+tT_+xK42Dw@ihE@u_DdSi5UCOAWJ^~^El zt=r3pLN9k%D05iH%G}(r&@_EMw)dv*#6Zj~c`cFMl#{4z8M|M&=H`YUPoK7ljy_zm z&!_d>*ldl1jdZz^ZtwR|N?m6uu~p8jwq@N&I_W~3so%&);hb>35&cB?q&2%i zAZ4w<5vq^wYp!ipkZ4M93HZ2w%aR|MGa+9Q)Qvs?b$+UQ?530$f0bqD2spf z4%wP#%}ixjS=R7D(F3q~*trL5)&JzM^f_vW;86ow$ywp!9;B)&Re13Lgg>o9_;*Gm z3{<-cyYxHut*XX z%^J7|?mHT)3O=^t(j|HBrgMiARMC-#cWD)gadT%yst-=y;5kq(ZNe2aml5R9t@;R* zawyYXmg+tx5}V{TTXuwgb$Zf;C|9Yqr&oAcv??Jj<6+-}-Pfo`t{Jx@;IvI}+#*ey zJbQ}F{#QD_q8&x%qXowUi*Ne;gf^t8Ql_@o8qg0HxD<_{v(jlFI% zy+qPINwteY#P*Qv*uDSvHlk~T01r63iO_Ct!;wyI9XenR%^4Iz(zlHc5UGw-x2 z_^P0-mv0wVBxlu^SOMv~QpNh;B>p1O@6t=sR&Bpd)?h&g_S@wuMkpfc$Ufhw!NItM zVHcT_$2hE3G7k1ehY)c(xH31$uv^6CrgbYNS^`}l#$5Rt`uX~4bR7^D4_}!qo(>kT z{%B&rsxfS9h8Sz8rlnYFT0b?7?U*WKl zk!Q{?{Iia%pW6x}tybre)MO=zWva+XbK#F^quQ#&L~Vz=Hdpx%&x508rE*FT8Cf>vzp&!>$DV;+CSYT@&oD*iC`A$+Q;49 z0NUME=Cd)5yTxSSZL+M8Ji%PL0hu6cJ3LIBHmZ&K-4tfEY@L|w7wr`@9{a@PndzPd zxQEoTd&t&Ru_H)QPd15th6LM4e<#n_ziY(UL$W+WN?JjMt0XH8jciHiW-(L6A}%=3 zN%t=imq9M`=@fyRH2839CApVs)vnLd;AdfgKUl% z)tvhG9*2MLkEtj#WfeZ7Zy=*&DYMUjn>A-o_-6l|G26Fo+_lRlAucizQ5mXqyu;S2 za3QXH|2Ct$eye(9oBs1YQj^q`lj&rs@s{X4uaV?n6xzDb`jsuoV?+X@sE`qfNS;w7 z_*ux_W5Apv&jrndY$97KAf-LoQW1NGl;Rt5nSIXQGl~V$7`S9b=aJ2Me8#=dnxrk2 z5yhLkAhpr1xJsi=-}Yo@)lx&$eMR&q z31aE~5z4Yc>-l2o6AWriN{D?}I^_L&ofu?QI#H=S=r@g!nH$XavXW)b24^97${;NA z^c^%kI_PLg$A)x*O>G~8JA2i2JD)i%P(|f)iB>9JF#7ss}M7$>-v$!L@g)k z3lB-J^{PT+nXFVq{5Cy)O@_$9Jot(A-K5Iz=_q1-m$Yui4w17%N*WWtC8}1Cw3x^& zO$OGBCW6fj?LyXN`G%t_i3St45G-F~i{V!(j?zo^NU zo@}&;m6wju=ll@4<&26w1K;N6Ak2~k9Z4vx)9JTb=JuOlsM`Z?K!RqBo9r!_Fx~j| zZ+=`xI+`-_!QBQe%@0w*dU@$c2{P?a$t(>gN$l$W1P?b`qfzj@b%OAngfFORlaj-* zXC*q2g$--D%y@~K2Z*)Ym)1;401PuT=ZK$8$wu)IW z#!vQUr9V}iPo#>2S>tH7nw*VtB+{m;?#^MkF=$xm5wvbS~J0FwR-E^yjYECn5 zW@5O8p=*xl=|bJGD^Tl!hx&19?c}tg*D6+E0~*6kYGCgYG-=z-ju}It;xru2^&C3a z$;#f4N7~7IEReC*tNVJmtNf>ofsT9n?2VhE9}y%V<_9m*$ytS(DGt=X9A|CP^|d?~@7*UTmb0t=q0MTl?FL-Yk@5}G*N;-5HQ&54P7uDp~#3%xZ)t2#1u>@Ii3prHX{ zW~qy}TuC~mO20s=Eza9)lPhYngsrj3p`XoQmnE*OtGv&emU~93Iv>jSc&?DTgB{T! zgM638e}023#^`V=`C4|>|D@|a)y2ren#=OLF3BM8h8ZJBxUe+!(nEDOGDGGyEpV8M zZA88!jf81OXLzYMv;Hy<|0%;&Y*YBaHx;JEPw@biuUCeW|Kg_gX%Ma1S|NA~Qw8$| zDJB~GI8R)Aw3@6IBDVkZUVfcbF6@MB1U z+ruE&nx!OnZdmJWNif+YU^m^MZtuZxdw(uu=VCE^BHZ5XgzN;)?Y$2hA!5gq2thj` znaIv#=dwEl()!D?NY|^RcTIj?J^2a^SHSO;*fBZ<5)>Cl! zRN{^ciu^M(-Q6ZkAE~wW<+nIgHb|nu5 z^yTCiAy#V+3Q~peTsbHJF%|sl5Hc%^j0;T`JFw%}MPwXz<1Dg>oh7nNhZsMyR#rMY zW9(_w@rmyHMkt1Rgif5O9_usPrMbL$q|0d^)x_f$Lems!7xo=Lu1-9&C;g?|VX3Tp z#MtR3g~gMfZ&XGMsjse2AwQNBvf z(eIC3zGSz0@8azX56%EP+CO3L_Q35nTW1Asn4(}+otm?4*fzz@i7GB;!`1`pnC-i_ zBQk)L?E-Blju3wv>fLT^JeYJh+EWL2u*$&z_f&e!p1Z({3p$jqJ(3-*mcBNz3a;KH zed+&L&=M2$!|hu>U|Vli5q}5PU&OXv+_E#|+Y%*S^1(fwxLd3lzfUhUG3|o2 z%!ZE#>|75j=r)~SuquZM!EPR^^P>gF6OQb=p!hLqK)a1!3?_vw2z zlhmH01#TBk1m9E;)q@wL9lAm_{HHo)l4d!uov&fdA%x~=EDz>nOg^njoa7cgNHNlD zw*Mscc)yTQ%X`^0CKI>@HuJS`ZRh>NPmj0pPdGO_MUi%K-|=H+YwoaI)^p+5z-d^; z@}G}*YW{Q;Yx>ber|!w`Zq*)+RUJgjIj%S!AC6V5!&A48>nfKHM*WSqcoRwGE*aKY)o{OKCkUTx zOv-zqxOg~p;xYC4Btf#fUzELqRd#BD*4FMp3!=JpA}aZU`a@q1>eq5e{H_``omAgG zNAtp_d`H|f!4E0~ou#oesItL?B8CU_&CnO|O-3n=XNg`0Q`(2BohV*OLZM5GZgO|* zS)z1cN5Mjl;wms47BZX!R?^MD{jp+Ok_{pCr$X{uFHVAx5+NiuStMvPCx>Z}BA$yiDOaWeamB?3T+k2J z=O*zHNr#aUA>OFC{HXtqpB# zOIx)P85?j3dCDb-u((cHNQ1%Dj(h#v&!o=j_o02*SGLrv^)>ZseO=+zN?tXVRs8X8 zKj-3#s}>hmcBjd6z#raM+(#|hKT&CH0=Kf$7nRbd$Cb=m48D5_?ZO6`)mqEcT^BgM z^SZ&ntF6R%L%=j9QL=P4YM2P)o`bRptHuV0sKOV7Ee=rx&)&QvTphB1<>?dh6KhZJ z->=%SBXV<;V*lR7;oH?wA#27?kY}!vr7pQRIYCwXVRW$n&T$IgDf5G{a6Wm7`w01n zP3{SkRYB2l^R6UwoNQT3#WpSICZZYeSSdd=Y4z+gV$( zUEpHud4*&O-@v$}3EvQJ0hk{~B_ozyX3x74u~B@5!A$w%O^%CV_;uOJUI>kRh9@w@ zUVj%WWa!5hLgP0^8ZUDo+dbsB@1YU1u3HlkDU!7iF+7GZco%!!5Q~pSzTkz(_zi=5 z@vtE7VGRD{zG{Jo8F{$3uOU`QpVgz{S-*Wt#>?V2h{xjT=JyT_VczEP ziA%mUaXBo@A0PmkiAgc0Uc6{bWm55%a6q2G2)9ILAa4D8KHqR6&zdAN&twA}=~ZK@ zG3BB=L+>?i7v<#%m@G^j2Ri04e-Gsw_T*U`iXCN4rf5LH8skp-NO#8;ZbFkgaL|XgZj2?l7p7cS{FHU=nc7%u6*dDW`*|ovj@P86ojj3pAz{MsBsIyi9X`Qtq{k#p+Gtf; z(lN~iMal`k;c9ricqtKfD+w<2VWFE zzL@$*ZD=UEaNzI-mDHV7FChGD)CtffRUB+`0`#wN0z6yc1Q-=3CVi`Tp9L9v&a&x> zz@V)rf5BbUUof2d3yz`wf*Yv6;KK03>NzLk=N(g=J-j_FO)VXj8A7b#XHBfph-Q;! zvOG3O^zs)0sg>_2%)jof{f4y`uo_1aENs$9z}6a&FLdmaH0~F$qNR=-LYVXTSq~yN zd2iP+dv6aEk%#OJ`kg7%Q>8moWx4Rzu0i8JJ&crH5yNlWOL=umh+!%obdS81v0E7) zyUoZWfPnO2c$5;nneB^p=DuX3KpLn~zP(9iVk6<$1SL6V>?dR9I~eDSbcWip+nsxh zq&rq$MK7Pl$6W!YyO{d8%R)diM{(q+X4LcluyT!fm9n?Ew{jBcN}a$+;~C1srazc% zSk17+rTfS$$dSg*g5TbqcrlhU?r?#%?pOkA?X*0K>lU~_w1k`4IhKIqR;Al6VOf^+znTH zehbc49z&f*OOd;k3ourbR?1$r*2=+4GfCl9k{HTIM1utUEYMqQ_ic!w5h5K-+#*Kq zm{~)VgEPgJ%VU-7p%p(fES{;tBF$8In0FNJfNSj);eNJ->~L_@^yxvt)2B!87qiz_ z5TQ8^ZOS5y2omu()KtZ+dtz9v-z{Oy030QixqDd6GezT;Uhy742UT^*KtoX5^^Bge^(WVN;-)6sb8FSacc;};#kvk2W za3^(rX4s$k1WqnwIJ%5*_&&P`!%;z{26Oe8CD@kHKSxV5)N3g2tZa**czkk)t@o{x zbE~`jGyf8_p(p27=MA?yPpx?CK4lnnt9wA*>h4pwx^I|yAJq6r<&V!TesPV-?1ti% zhmPXzvWS8gis!{M5o%Cd28MvC3=DEzHqiCa@vM zZ$Cb_aNoXXUNnSnz?7V>F9x==SP6n>h&#H?Qfn}aNiFwyoQtr zUFSKaLYiD&oT&(~d5PPwdCB>NL^0nq6g$Qf;nV!5R3&|gu+Aemf$U=&FH#bg>g*&j z9`Z5k?l656oxji*m>nNF7&bH%N70~zV<(Dh)eZ!+D}o$nM$6+=$uS@d zEVKwLTF&mMbUp;mZ-rw(7#ss4;*Fa+D%0Mx{^2b6yeU|$Z7Ay>N`Hg80_yS2R~;$6 zpMLYq@(nwLx#7&Q_@7p0@%LbwdWzFlDvvHx;?8;aZ3H{asQeapW{?q;?;K37t_Km0 ztAQb6TDCw?;UbD@UfGbd#M_s)HL4F`E=n}Gg}Au%9|~NgtRhYr9M%0fl||+y3tv7E zjCHEgXfm#sILf?not1kz}uS4=GLsbG0~ zf#p3F+@*+-^lCnLHI0gaQiSJ$A{@ag-pP@zZYYI`A{+>ca0J`ac=%i8szb_51b_fJ zHv;i;AAGB9c}NLvZWy?^5o~=n_FJVd_rxS|?Ld%dBlf(D#G|&NgrM4nfj}FvgDW#- z)jrx$!K!^ji}2!*l4GZaHNoqgjpI8i17R<~Rs}cJ3*6Lh;HE}o(rN;g3+ADMoJy)N z#~M;rsqUGDd3u;u4rQKFha--8I>XS&Q@jcaQj!1u|9bvmEMM|TzCk%h%$Z827tL0M zmp3f@}kqGzF-ol{x}cmoZ{abO}B1_dsECib0SK^2R9DJ=ynN7Uhi z(oZkYaU$3zC`2V%N_S?}Cl#_-e9N@9j6AfX|JRW+Khl7^^@b4%Yj0UwwjYMUKs~lz zIx8XeYBP_Gj3Q|odS+ZJb zP}{##hkPXCT-sH9lH)NEJFDwGzS5g;~`MG@YeNGfl@#q3Oh|Z6+S@ z*$x(?46-|)Y}=q5e~Q~UBrynbD_o=Bn4fsY#_y93n5#XGMdEaeEd30NWHPqJw=2nh z;a>5>3YT!z$_F>eLhv4BB4f)yw#Go#T2*YD`tu=Do4k>eg~nT03Q$9% zJTU8xu_br!iH;^M9C1K>0|$pV9*mz-s5n^=ARM`J@A(k*U{XKqbkJ${&GnA#h&!@d zn?mZ5tw$C2*tgq*ri?MQWTf%@tdS`ki=vNW zlK;{LQ`Hmah0Y%{F4?W_@ngHT9^P)VdGEmu2NV~$&Em@=mvvs-$A;b3pKKGdbt1gS zkHbc@&m4Ef%%JsKLe+uW=5CvK%+0OtnQ{B(AD?HlAU0uXg5oB(LtSuf^-tJ@mR6v#i-^2|H5z_*yCveZkI;Ho{n zFYTqAwCMkwtv#}DfJdNe?Wq-+X_w9=7Oc+QWRtcr=17iwuy9pS#G=rZy_fV_={&-w z@1W)1vwV4<)vf7f@4;(s&lNdUCQsgVFjyUUBtmmnuG@Nw?leao$3|TI@o*6LVgk00 z?c&EBjfw9K`u3$HrpMR6gMJa`3 zoQxeu_gJQjS`Hr8!QqVSoh9nfh4X`!%$e;|*E?*br3?p;W*$;UT@qZ1IJQs->NkrvCyo%3p9Y0|b#k4TKYLJjYbu$52o9ojB8Q zf%|KZ;THZfjd|>7H|H4Ia{M#~xo zjn{}Z4379P$zSYPX$_+;bkJwG(((No#$%|^;sr`ax`y$X$@n# zw-`U;)-Xc0h!L$3UHv*dZpsj)V*#~KR^kUv+yMM;rH@Ps8NnyrnUwX)vD~!iqtQDzx%*)J z?rd<|!8h>esD0^1X8sQ1w^7IjZ5FBa&u}QOR<%HUQId{ZU zzs7IGU(CO3C9)D*^|2aYmRt9-?q@y7dbD+j^)c&nRfJXQ zRB2SDO%?YlepLbyYP?KPQ}B&oB!Y|I5(I3iS8Y_aNmc)oDpc;tD0}MiPff7 z3#=AYZGE*Z)s9!otaiOxQMD%sja0MxH`SX}?_GTeLXeNGKBfAM>dUI{tbV9^LiN+t z&*Ol(E7f(?UsV64x}c9-^-x=3B6o>Cv_bm=VV9O(k-GU;0BHt8Pe z0jWlMQJR9l<=3STq|c-;rN2tq8p0YiYshP;mx~J*UUN@|D}-0n&<}l6uYMu4#2@iN zl`uzWjNK4(jNP4%Tf1+s>$lNwXYgKg*xP%lmw&u-E@a#p8V)pd$k6E43buh=SGM}F zNQBx|9}PS+J8e;Mc->2jBbP>pB6{vNM9=Ls$m5%?Blc!Et1#wq%)cI3rXWpT>Oj+# zG*hyZnqt$FG?JA%$G6|C>b6NRc*CrNr{xz<9KD%*c0u4V)wy$m<71rm^i?$MIkHWc zWS^fFtBaNh(w7~alB%F|OYDkV3pSV1I3sXwZ51lv3rv!087IEFi# zh#p|z;StfZtGw&Bo)Nw7^`LLOL;wGxRMhm54BSEk2AaGR&K;rN2^W$Csct^h z(c!BW)X|~ai;m>0g2c$wWVPfQrL^K$2tV`@pU*~trlO;8Nw8}vF1bQG3P~5G=Xr_k zcjAhX`?nvkIg+;W;R9E3=an6g3|DQRwL2sx*ru~1 z8I>a(w>My4kj5rRvpkPjIb8IFBzP+w+Av$?3*Ii)}Sv8BN5#!p>g}z@QE^9(>{v&S zid)DX6&Jbah$8yXhO3U1%en#No>at+8!r3d~LgIl_I`yM; zJK@l&N6($V9G9G)ID6a~_1W`+%fsCwJ1E+=cW*oL@WjM9YLC#VlZMEfKl1wFUhbZ( zJe5Q-)Qh@6xw|dw*AsQN3-j`M{fY0px`ptwl*roQEXDRXssyr?GM=Nw!$irxKHEnq z+y9a+bNqzv z(-wtT_4?7(^kQ*WDC1H-(`!*V&Ti{XRjuzPo!)- z2KrggaG5`?_J^V+`?5AK`lHH_z24atFAuWaZNui@os1v-_j$`F==>(Ae<89eM z(38fJpFziD+p-C8_)DP7Ods}VHURtXkA=h@^#9)MC4uzR+3*y_#WQ;j9ilOns7n>b z+Y-zoa@fNna+t9eWU@aFLWFcS#%P6r5)vA;RgPG!)Qb#3=K2~#CN&dCo;tL}QC&Eo zZM5ltw&UCZZJoFS+B(q#+BEjc`SgG`HyqIBh6CD?aX?!#J)kWFM0T7>NDm&AFx!~> zvh$G}c6@$5ju7W&nM#Cze2#A;aW-+IT4zd#>*r5r>tAs?TT-Rd+2%RzGM~=ohSS-O zefD&=$LA|z?}{o;Xd{2aX7tz}Wz1gDv6aVW$E#+?2k)N}hna75(B8Q_X4q^ET^~3_ zZrmiAvOI8Ms49F$*xaBXOseDJqV`9|+eF5%J$6hkrGzA$3nr0Qu*ywG!8XS+StJuq z4wr+DPS~wV*u5_{Nq)oayn~~wkHd0Ry71(>g9lD3j>iUh`vwP&Rxfhj0#C{5-lL}m z`ua`YcW$NHMc8@WRlfqojVp-{Oh>={@Zr&Kk3Ks3?a}WX{idsQ^qUhLV6hD$VP0T= z`PF*D?|oa9=;IXKTfwe?XUz)X?d<5pMD^|4%Sp{w@D8?H+rYz3HNnqw{s;w#O}9uZ zVe0w$6VPM1t!!h5<310B?wc_yG<4>yeIYm~c0Ud+viMJSh5uw5lm8?W$b~I#2>(ed z&VN#Z8K;AU1jfT7oftih*^T3LUtJYL@?25u8WJDt^1%I`5Uo)@Ds6B zffd+v_@E9QM&#&Ursg~OiayAKI`rO2yi- zw*+^D#DV-Oh`qY&Lb4nO(6w_P-m|k$?!A%=>4k+ChuNvV;0aQvO%aW-SK$d_`|N=^ zyq+f)UXOZ$n8NEV#rb48bHx(F2-zTn_aULQZXopvt& z=EYHt9y7*_^;N;;eHr};a|$6Yc_zOPi3}!bG#iplI^{A|awHZ%4tQxY*|s9GG<|Zb!66 ze#%n_CVmc;3aeChN?jD_7;p1aUJ?ck&|LLt@|)u5>DZ&wmvAE zh~;FJ13h-FeM)=Mez}UBa*Iq6k@oA;N{F3YDkCZBY>H4yy~|8)CqGJFAd0+Xp;*dP zLlFhCTsz|3hxKO1iO5#wC_O`NtMRB{Aknab8$r@=}OkMNPpJK8vUN7YT zEhY%_cJtwAG0~W}O9CU5lC_v|_sr$LzE0L%vu484xQz9T5!acXWSz062q#q1fJu_2 z%P<`4AZ&}Ff&`5ARWb>PlVR(yJLU5+6zhdaYE3PXT~hQPNuY+o9h zn+e{4!`4oV*b7e1?Nnj?j|<7yH-9FV)no-(hV$LR#*S4HTe2pFUGr0)W-cSI7&C5= zWYGi3G^N`(HHk%guO@gVV*OY@91@+*rs9k_5vgfcOx+OeaCSmOfpKns;((Ejgo(xZ za$QX4%f*P;#CMJ8`EsL`WW-L{Glw={_1iw{(+0fhLuU}$Iz@sQO6=I7^T(*>4vrT- z%S$1?2t_Qphxi#g3&?6px{{cEFF@9otVE1K>;cl#T8|fy-~zq`(FI-=;;_*}1u}LC zToIWW)FY8PP)Xnl3RgpuyQG@BOQI&Y-zCv_oRZ+fhq*KA=;j~&TXsi>bK#hEAWKM= zUQkN7&|39LS98$$+Sibij+D5C)8``0r_be(zh{%aI18@~q>#I`MtbL5OZf@3^5s~+ zz+to5G{AZ@#EEbvy#}S_h$ImvHq(3yn+eA*(}N;#l1KYIi6=(ml85csj-pQYWar`j zN!?jd21y7a;jSOV@Aq?+2!@~)A)O&`Wt1%V&Cu!n~a}y6L zB{^ga7L_9L^;aD?|ueQ`0Sc{R}v#n!$$M*H#j@2De_s4owIaja#dmOWa!we)To)^bzJ%$EPaQCR`4!dfkB^|bY>Ha2bcw*9)TYg=7AX*=h3 z{_W!1W!QDH8)oO$-lM%w`{(WT9bR>;(s4+~@g0wLyxd9H>FZ9uU3PS}?{=-bxcgV# zZM%QnyUp%6b1&~+<9lWIw&~r&{%iY9IE1RP!+wWU2V@*=*fQY8fTsh>1{en} z8n_<^LtPknW1w!}^FbR1We!FQ@b{aZl zXyDM0p*x128=5<`WT@U*?A+S9pR=3u9OpI8+no11$2gyLE_SKnB6ex+(!s^a#n)w$ zOSsF1VYb6M4f|#Ih~ckBv>xF%;^0W%kvdnuQH@3&9i?>(aogZ_)P0giV~?kvF<#@n zV!SSU-5c#ZI>Wo0_sKCnK7Ky)e3E@Kef}}lX}oZ}c6`}{<`d>jvYS*g>Gh(40TFYBwwGLPhY`}LLd0MMYya1kv z-?{uZ{Hg-(Q~2zg({4_24xwFXJ@@TJWmz+9I_BI+myNI+s7-bt(Ua*A1zA z`OiErU?r|?0k#6$fbGBzU>C3t_g%t0DL^Lv&IWRUe4q#@1|9(=z$;!gKCirtZv|8V z>L53^K*RC}{N_jp;5*lHJ>RXogzt&(#+8@yrvX7gNx6pqtXyN|P+n%$2N(=E175&r zz#H%Z{D4V-KQOmE-D)YYt^9%26Qp{S&x+Tg{2A{RpyV||o?4U_quhFwyA0(n<8=kP z0gHgez!G37unbrZtN``_sX#iA0lX?NMp^VIiymbuLs|4zPI$iumj^xapvU|5c)z~l ztwn#qTZ{hiTWP5o* z0pK8T2#5g=14n>Z;3yCW!~+SyDZEFE^fZtNoB_@P=YaFLb^*8uBm=2yRI@GmfA25Q#Cv~O6RUBp?n|w!QmeAGAYQZ2+A6Q|$G>ZrF5!9#@Mmq3$p)3c z?&x869`JvG#QucM!Kty0%Zt#iip-X^2z8v@(PyzLUhWNfYP*Uy>3+s>4K8OB2hwi{Q4>$q?fnmT1z!g}8`xXOBfTh4PU^%b?h{p8; zz(L>;5Ca?rjsUU1Q6LV82ND1+a2iMi&H!hDb3iJdm4-AO=@q0INUtKz0&;*npa8fI z+yrg|g}`0lKJWl|2s{R!0I$kdzz&tc29?47l<}(rHGrBxZJ-(8RIcNrm*k_DboED`l`NWmaQk;o?P*baTGXBvwWmezl#Sjg8?~rK@05+2)S`#VMr~@*OJ!sH zlFjn~JOM9YH1MS!YX#RDf3MflLIbqW04+2?3k}dh1GLZpEi^z24bVaZw9o)8G(d}9 zD;rv%g%)U`1zKo<7FwW%7HH9HWuw>1Mz58PUMm}|IvcGz+uVC;&Ape_+34)wJebO$*CGdo?Y3wQTfi+33}>pp@CYA>-5mVbd2pvpoz)Q#ALpA`CVvZGPE(7?*~l8-;;r9z;ygQ1DFK_ z1G9m7ztO>D-_I>2=^Ha2qHD?gICL zB3yrfl+GOM=oOt$@L}PskXj?Hf>eN1glkm+2~Zt>*8pk) zwSjv0P5~$ZHP8TP1YkrAoz+8Ub!PoC%{81bf3VCqP*>0|9rQ~F{nA0d^w6&du#&n@ z<|1S9-8f(Z;0G%?3GfF(@S8AT4!&Q2bP38d4Vse=>-Xy)(j2NWR9mQ~EW&RV151FV zz%pPtumV^KiERNsH*@>5n(-yANQLb-)&8&M+W+-GS^HnC@sDfSREzl)qcvFXd-mHeghmuNRH|HZK>ofDVvgMdFfHa%;$PPz&mYk@Mnw@?~b zC=D!>1{O*K3#EaD(!oOMV4*ayP*mqMuuxR*G_X)QSSTH=6V*W-bWjH!)IkSz&_Nw^ zPzN2<{jMaU@tgy|LEsP&0~`j90I|SPAP$HJ5`a^9o)+n8AQ3nNoCVGS=W*=%cOy2(!nz6V3~BVOd41w4J?xemPrH4q=RMB z!7}M!nRKvBI#?zhERznFNe9cM;Z{lLn9kIjrlU7aM{lY_Z<@~cMGA|9W0~{?Mw3+3#oyH)WAY&KC+NHSV$c#qy`p}wlxiU-*oi8 z>F9lRR*^{eB8@@{JBD63-RdCZPS?g5tc}@WZOjg9V|M11Ge5d=hPAOKSQ}e}wXsE5 z8(W06vGG_NJBqcj@mQ(uQ~nnE{|5R`=Lc_~^KUSEr0W%Lp`&l1qi><3Z=s`ap`&l1 zqi><3Z=j=Zprdb~qi>+2Z=j!Vpr3D`pKqX_Z=j!Vpr3D`i*KQaZ=r*4(JQ_|kN5_? z;T!aXZ=iFp%;Wtx(789zxi`?cH|W{kpjUf?9_%5sAOX+< zr-4M^3~&}W2c!X4fU7_jkOSla1;A~f5V#B6FMo;hyhM3kqC7A8CA>QPXS_PlBRcPR ziL$*$*XB1Da;is8^~fn5 zzvz)uJ#wl?PW8yC9yz5eKy>wouKdtdA3db5ht&1Rr5?G|BbR#QQjf6*9WT?dG94$= zl^(jvL&w5;Ta2<5qin?}TQSO3jItG@ zY{ig%F{ED%=@&!##gKk6^rQ@WQU*Ptqrzg8uNdVkM)`_S6UC^BVwAHO3Aq8K$%jG8D$xrzXg7G;Ygppfu*9!niC^<&`0j5&Gkk7=w50qRe)-x8GiIy#z!H33hO`uT ziDxu}{a~O23}nbaehlQspnWlDUkut8gZ9OseKF8l26AH{HwJQJAU6hbV<0yMa$_Jj z26AH{HwJQJAU6hbV<0yMa$_Jj26AH{HwN-zATI{;VjwRD@?jt!gbFEVAO{9I@eXoe zAO{9=U?2kqGGKTeQ1cg%W7CR=Bhq2O@7MO9Tj}_)wm)6n_-JJVIse^N4Ag9jxn|$5 zPSBeDXjOvO5GBh-J+P<;7Nue#Zx-@qA#WD)W+87D@@64#7V>5xZx-@qA#WD)X3a8Y zA!C-4@pZ`SHa?r=%zh+i7CE~MIWrYKyFRbbOj)L*#^MR%b7FK2&l z=kC8-X5aoPJ^P>1vFcb!`10Q73fRq$*UjnPB%eoj2`m3=*(3U&-L3q}ocqu39w7JJ z4glscpOj)7N=8fae@`&U;p^X($ZbX@x%&yk7M@dYl`C%rW7CtCf-TI^r5*7o}?S&E+Q&yBAv{I8b(HRb+veepk4 z=Kr_r`u}gbUE8eNpC9v^)|eTrG5_|#8Z*|wKHJW};`QbA;tjxx(;&bJ7z_--cSC_u zymovU@He0ZubtIAU_P)6CKA)d|Hik__J52{N0J={1iep3R!G@|B*M2tN zm3zt$SJS_I#WZvJ^7SuYvCP-LIOF+j9{(qQWwCgFJckyGXT|OMfSU{cKdh#uB)q?U zwilzkzDwngEA?0vT)c{%+`)LtKjHrVKeB6}h7A5VTM+C&$fXEt(H5p&k(sGi1bGx$ znV5P-VCoftsaIs>1AK|8M_GFRoqHDlyE2h}aUX~7&6xLOFxuCDu}RQFMz_fek@tUU0y7e0>$ya69z65tQaEk6$Cbc_#ynnX8_kVT5@pR$wR*8*kWntUa`b%~{>4@s{&#(E(^Z)G5>YsTw z-MRfUyS9J!*?)F7cr8Xcl|5|!dLA?7E1SG&zRXMhD>%t%;0a#=t^!#=4v+^F0AJ!A zQ_eBv8&j?^AALUYVOt^{2AV{0BJb|5bV;#kj8q z#(g%JW7ohOy9VaiH82LOfiYkWi~%JW14=OdlVJQO!T3*t@t*`^KgnnIX=tx$*}3_= zWv~8;Ww%)0FL7k3wf*0*h!zixztR%^Z&|_rA@7R+D$S<*I)9Bt{A<`$pSOnAl|7Yt ze9Exp)#FkA?0=Gz3tlWZGSsUJ94P*HfO>XK!_1U=cg+HV@HrT12oMICJihc`^6IJA z7rfKyE(KOn_#l``B zhp*5Ily3#!8{dsZI=*}l%D4iI<`}SVdwk~vjKJrS_-+&ck2lV$!RM5-Xt1W7MKf71i@$0*S~K;$(xWYvUk!XPCuhu8>gm2&nGNpYt?XxXUq)+RCev4{2Ewx3yRX91CYnhYvr{B=g z2xRiXJ5BFw3eW&6;~!9PYjhNjEh!ZD`4K zD48B5qwg!@-iKWAkK=tB-~@0If5W>DrPQO8I+U`6e-=o>XGB>+DRq2ASwTrl_?Pe* zZ{VjQh36;otm9J)c@==4FG^p6((6!qJxZ^)Iu4yZ2}$7jkb>UoG(N+(*y;>$7M4oN zvAGu`XOz)x$svtZgf@-R>mb`V{Cj|9)DVLw;;Goxpyk3SjVs%Jd`1hyFUt7f+jH+n zR0f&{^aAhiGF`P?`R1Q!gzn$gh;*}7WPhL;y3cBcfRBEZzZEcPhMtf5W>S){zEpsSQbNLc7?6U*~@y zSt?cf{9{N_lhBkhXha!mxva93=~Gb4C8$-@4X5L@R;iwE0Y0Pa{7mS36HZgV!nlHR zM3wM^Rsq!Ckd|{D^k5U7Vv)x&tnO&A;&TdVBGR)!5Y(Lu zF~ahx#laoa{(NYAOs(w$ZQ|K{pl4Xw!Q*HBK{Rw`e^ z%n8@^sB=A}r{`6z$kSvL_;I<_S4iN)-0CZG z`*E3QZ@}feQkiH!4C(&?iCbAp2uaiYq(DxU^Yr;|O-~nmPWGRX!GA}e{Li(oCC1+x ztdFkXxxywa!so>Re3N-gfn@+J19qA|HFepc13ljT*6GAtoY-J)*J2hK;DPC+h#s-CbO;#I)~A{!e&j z=9am0XXl(bbLKr~=JIvte9bvu7e0|1LdF;&VD1DvRW4Q)=6-08KlDwtE}|TnF$!Z& zu?cgEO<0AP%f=&2f&G3ORxnRTn1L{pw8!eFsaXBg9=(t29m)|GBQ2@=m)0D$D_K6)vyS;lZ&99vnw8-%TgWUZ-Q`mX5h>I_9$J)b@2cW^3t~ho)oRnT~m9`k$QZ zIiS{$Ma!)t@OWngK67-#wI&Ekl;|;d@cny#%*8YF5YiFmBP>8zgs=?H96-oLID}Aw z9!;BB4XtXxyDf|_Xrn?jpt?qYcp zYp-v92-hq1K;szRKm?$#XanWWljSizH3ff0t^R!!RPW&S=yy`^CHSihLJ9u*<2$(V zJ;jteE0y1$p#-aHOFnXch7zp%Eg|a=)+201*oLqj;cJ8)2s;rzw9@0v{tPALd*m%b zIRCl?D{xC-%`SmISP51qzt4ZV1eW2F(zW>9clO;LrTk7=|0y*O-Thbc(5Kq}_at!n z{_;=U&*XjmMY*5Jzngo0%kNzQo4f*knF`qD6|l=IV3$|GF0X)JrUJHk#Yf1Cw|9C` zkGt>o(oTV79)~a<;a%%JF*|}*px)E?Evfz9aaaA;|Lkb5e(V3jZ++iBW1sfG{k!(S z{o|hXSn~`0e-r#7xz9KE_g?lo8*}*i^!n@h@V0IT%PRNL?n0`=SEo9Bb*ld^f9*fJ z&+1>h@6D%OTMuBa!M!ANk#bK-<(}i8c5VH8cWwRi-j@H=9h=_mW5ngghkX2Wpik&P zpU{Cmp#yzF2l|8#^a&m46FSf*bbw-L_<=(v-4$p4zqKp#Cu#9%kLQ2?9?$=4(&9hk zk;pw9u{$X2`^w!oGl4W4i9QM3SK@u%h@*g)@qOdf{u|sgK<&H1b$X?TOA69=?I`;` z1P``ojKF;FY30tV3^kAr0S<`m6j1L<{-5y$F<^0{hVN-0mx$iS|$NOl7;{cJn8&n{&G>w=eVD+(ydnqdcF| zzRPX9Jcq`6xlLEJM{+wex6<=Eh?e{@p9%<`|mJ|BHFdL0Db|L?7* zxD1Mv`!>K^>nhZH{`39*|K{}-=%at-9{+z{{u`3=p6IH5I92;>zFTYiG&}kY z)8fzb`@d^;M9D6!zQ9h5wXP=nC!97kU-?b5&MWZ15<5`)eEk~jWi+n zCLd{zuc3`23%!F3UWU#ZBp@6dWdCQk?_ZFl*z8BgFs8QI+;$PQ|WX%gU+P0=v+FFE})C) zQo4+0(B*UmT}fBdEV`DiqZ{Z(x|x1Ox6*BN2i;Bg(j2;v?xzRnLHZqq4;;;>h4dIb zPS4QqDLl#OIr;;=K(Ejr={0(t-k=Xl`G)h1C-Y*xReUo9oa4j%SU@T7DETHvpXB9odS=C4pY2iyeQB;Ad?HzZVOj zt*~W7E~vjY%fAdOg$J%45D{beJep&zmL;iyoulhOcD%{Oze%eDzJ~uhcGai?l-3G+ zd|)RyE?<0nLSx7)9#d^GuIT3z9YD>+*iwvb0;7EVXnirZ7h~tpkRTu0M2uUBar@Bl z*f82vj6KA-Z&*;&FgjR_{l)k*WQn4YVjL&N2@(9M6fvGC#?vFB{KM&7F z(D_YlC?0FZTH+OTYy?iIkCDZdw1On-N&1qZB$z~!kt7M@$V`-mvW#=VjYuoui^Jm6 z!K!q+D&49|&nfGNOkzI6$*MG8dEM}u>KrR7csYiAk6xa>Ql>`LRjEK&rDyn}LOv^C zM_C~|#*VWS>?AwIPBSOw%oMCKb78K`jWuCSSu^B5hujTVL)M7dGCO9^9GJl5%n`k! zGJ20WxV|cSM|JcfOXS}D?%eMwdnw9zM>+4R9olF#+TVsgVp;50Nq4DK>x}kP?Tb2_ zbOUvF=ub9ih1T}K=n#lD9*q%uI!5Cako?=pK1lgf7;lRq!GDFcHpci_o7z)X$lk6P z1BXJg#z2Nnq_gQF$j2Y;Wsp=;lsmjAObv{-7a9347@kpHy^@D7bi0vn)c)v1rQl;X3vHrM@XT|&c zUHm>T3(wYte%2V@B5n^&pf|ox9Efip$B{&6W7DB=EhVe)O~A3@Tg-5kzpaYuJVu$a zM#}5VPIazOox7;ckE+g(@pIHhEC;Dr4pOlk)J7}^saOtDu^gmgIY`BFkRC(rE1^Hw zK*Mx|7TJb$Mvqt4OiWRNGIdd<$9O8fQB0Nh#gdihe@BV`&X)bu!$0-#|DQel6K8+o z>`$EiNh^cKiIHEWHHt@SZR?X(rqq#?TG~HBD`VO^#D-O5M$DL*uu9C7Rc2<)oK;~} zSv6LjS%8ioId9U|#!f3GBp%vk>^owrEyesz2Xks|V!#ZLc4dZ$dl05|AGWQR^c9Xu zFk1;F31VPccgYOaoV8#rSu56>wGnZecC0GFfng#V7zsQu3W#6~Fu^#WJ0pP$s_~sfHde$3Q%aGZG&Ye< zVv~XROf7>L&QW28^VtFs1NxjTR^dPyK!R2P3(90)01x_7M1->j&~7P}1;=zVR@q*|Jx9P|FcxsUe|&Vg0_i9E>rl89aZ)qKchLXIdE z-p7wrdH@(kZ(tby=)*BUF_JLPoeB%X0@X}+JJ}7J!gu5-@Qib?9~8r8@C=p$DX?c_ z;LMh=2sEUQv?EJni;UA2T}#KV5BN)!ALdKf|2T|1tS)y1tXRm$-=)W>OxQ#MMS6+erT4_V<#09e$#VD`$}t3TAfjrjaYKp6iAWvpQrJT%qe z^P;dsNr6CH0mrrx(dUNn8tz8?$Y*2}xF{K1Gzk`~St>qS18c};*g>+%Ua}wdsc%&l zDsBZi4*QhS{-Lx`U4f12D(q8tV4=EC9;odfuur`dZ64gt!EGE>sEpPG_tl|w!GTH( zha+{SEk{Nsn)PU!Qw;*(m|qqV^i#v`#>>h zEfwiU(5|-NJ7;i>HhM%M>;RNx;;xc@CTM?kE7k_~#1R}$Q+KgFJw)2_R^{~NEj#8P z*|y-1zomUSKi}pY{egCtl=iV^SbNNSk~Mk|??e2br^GxKX=Q#9$6-Q>d5E@d!_7+S#M8y6~RpT{))W=qCz}Fg2HWOox=U><&A^}$`{$FZ^-zo zWS;7Gc?Lwqh4=+T^OvSj8_iasT11jUjR>ymu@p+ln!GKU`316#dSfQ7ON+g~wfloh z`;BsfeD-D&d7jhS@xr9OiBr!HyU=*4QO@zZBOi`fl^D@1XU;~$oxzVn=jQG4 zuv^=)`Qz=U2Mw`c%U(DPv(9|Fa?z^l-?1xWyLw!$IP`8S%fxKMi!Hz1dMRzskkOyX z?IjD7O;>l29hFBL_OUA%>FhMG(!xsF7lR$LZd^Sud1}LhQ);FK?its&Peg1^v#h#l zgYt~cnk^fD+iSmGcNq8`3tuLMNxSRgPV>Z24&nwt4F>XW2PQ#zCbt}sFB{*Y4<)&Yy?cc>DVEvWJ z=Y{06g0r>`SXfJ|0;SUWLS3P@`dpx?RfA(YkTApIn}C;)IiWv z*FvHrROICv@pnnl1GG^?oSR6&nVHpuDr)|gm>PI_wg#iQ+R5z{PMY*buaG1slg`7Q z-|l2q~=9u1;dKmuHp`HVA-E{5nobHQG z+4!10ZRt|8N2EOI!4%iDuZoN3lUIe_>D_CeSW~b2=nY@{wEnr_(VK^h24C3KXhMr^ zOSTnV>GOK;)^8FY7aAsvTAG9-4doGIatYaux_ViZY4bnBO7H+9uJi~llv#XvFT}~>NY>V)>`YPRa zSM!^r?u3ngZhoWg`i(y=^!&P&?YteMvR<9?Slb{bvCUmK>lL4w-{`licJNt})YdpH zX_%@@<_XE){=qJ3z`KRmC7~<}PW-Hf)K+LH)X%7!Q9IS}DJo`Qlyk1C#h{k+>g zCttzjo5wL0r)FOqvRG!iIicO&o(1D>CRG{tWxY8;rtN>p+p(avB>(eX1GJ`$T^;eW zMNf;`_76j*h1xvbm1jQhoK0DEAG=HU^P=Y_-gOuGIPM+IHpQpzU2$-VjqS+ein!gg zqX$0EzR}f8uU7uG6Q`W*JGC-vW;Aqk?L%J#{*+!Ad8ftAM}~<%98XvoH#}tj;vO9Y zMa|7CHdgm-)~INDR>KPMXRCfSF#g9SUqrlWHfg<(BF#aluMz>RXD#pVHu6$or+`3L ztFEyJ$~BoV^-c)c?R?*Qb zASx_c77-|mjSi6c#K<^bMq`i}F=9m7Q6ehRM^@jjf#58+hgv0S8FflaSO3tq5&lpD zAY-_`;V1~sA2a^%-CeRf@uzWjF1z&jMPlr_SLejkF-u;|9$U@ez_5}w9#b!#wCreF z=k|WT(a(DYl$^|J`uP6b#f^S>75VnrZ?HPd+So8!MV3>Q>N5^>8X=`VH=el zfBr?)oBK+7MY>$suGP__V}$GNgTIrgQN)0I<5g>vxY*IyHgVt|p1d)C|PNE3n>LfG(bD^^O zEfRp5N)1IKc}o{C(biQ~t_{=|s0W0KdLq;V8$p(7Em+E{3ssf8VVG7cQQ(d!xNo-pE?dEvp%g zy%W6Kv1p>}#UEOpoV2y&=9KgYnf-U(v#)#dVgd~ZsF0~W+oYpztLK(gM+McYeRpxR4BbrTd?7Ls8`vdy=Ny``-t$EXjyEyzsxftFlK~LRDi5Q zm~TgU3!xd$rEjWm4+#p1@d=f6a+j%Pot>;(h+kAhG@f|#SZ|-u5PxwpCW~{FR~7ge zF4eDW3Hth)xyS6$pREVc8(F0(1LRSns|(Y>7o`*Pma{tdo$K^yp|6rHYh7$3kkwi!)p+Qz_SV%1jU{Bnho}x2+*{ z1IZK_P8sr42bJ#A*0ZgX9Umm@-V#8iw?rxQ*N8tp?=Cl+kqEJBX$FB6A_RTpe5f_*)}CLiW~SMmy)tCH)BT&FvFpFx=RS189lz^m z&TZ{?%j+AqdGqSX<{Q@y3G^u$<+tXR&hjst%L>jpJklQ2>%oA9Ki0T|c!j17&Z(fo0NustguiWLG+UPfXaOGIt{ZGCR z*uOY_cwU=*_Ye2oWLCB21EI;u=w5#Qhp*Z0pKF$O$v(#~B%@uxt>#fWQ&)H28QVB+ z_3H+1%k37f4ei@)WZiF@Hr_sa`ZaRR_L=kO>;p9}ulY5tYxGJ_m#wFcuMEx?7Ofib z+3j?R!+!G}uNeSZbWbew z82P&AHhZD7#^VO^WOju=>6m?=f0c#n(T2)tXSzqcCDBWiNQy% zX8n4kjosCyHw*gyct~2{y?JP}^~W5jc^{Jw_4amnRGj(nh`;goXZN1HG`nR~J=SX5 zra}w5c~fRB%1XP&CS)JkdilDE*`c~#d+*td$#W|@>@ufbu*0ht-@~)5E zlLz%s6rR(28kzZ|#A=sL=!H#+_96B*V+Q8LSKGMn=hZd=aT!02ZT~cTMZ2KEolkj5 zlV;@%^L+AoDmf8R*yC!E^2#9cGUQCz-#@QYteiD4=zc7RsaA1 literal 0 HcmV?d00001 From 061221b9bdd42aa5e55624e8de3fde50b35b424b Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:11:19 -0300 Subject: [PATCH 06/22] Adding Services layer --- .../TesteiOS/Services/BankAPI+Testing.swift | 16 ++++ TesteiOS/TesteiOS/Services/BankAPI.swift | 54 +++++++++++++ .../Services/DefaultAlamofireManager.swift | 2 +- .../TesteiOS/Services/NetworkManager.swift | 51 ++++++++++++ .../Services/StubbedResponses/Form.json | 64 +++++++++++++++ .../Services/StubbedResponses/Fund.json | 77 +++++++++++++++++++ 6 files changed, 263 insertions(+), 1 deletion(-) diff --git a/TesteiOS/TesteiOS/Services/BankAPI+Testing.swift b/TesteiOS/TesteiOS/Services/BankAPI+Testing.swift index d7fbd5ae..25fc0495 100644 --- a/TesteiOS/TesteiOS/Services/BankAPI+Testing.swift +++ b/TesteiOS/TesteiOS/Services/BankAPI+Testing.swift @@ -7,3 +7,19 @@ // import Foundation + +extension BankAPI { + var sampleData: Data { + switch self { + case .fetchForm: + return stubbedResponse("Form") + case .fetchFund: + return stubbedResponse("Fund") + } + } + + func stubbedResponse(_ filename: String, bundle: Bundle = .main) -> Data! { + let path = bundle.path(forResource: filename, ofType: "json") + return (try? Data(contentsOf: URL(fileURLWithPath: path!))) + } +} diff --git a/TesteiOS/TesteiOS/Services/BankAPI.swift b/TesteiOS/TesteiOS/Services/BankAPI.swift index ab40ad4a..e8ece93b 100644 --- a/TesteiOS/TesteiOS/Services/BankAPI.swift +++ b/TesteiOS/TesteiOS/Services/BankAPI.swift @@ -7,3 +7,57 @@ // import Foundation +import Moya + +enum BankAPI { + case fetchForm + case fetchFund +} + +extension BankAPI: TargetType { + var environmentBaseURL: String { + switch NetworkManager.environment { + case .staging: + return "https://floating-mountain-50292.herokuapp.com" + case .qa: + return "" + case .production: + return "" + } + } + + var baseURL: URL { + guard let url = URL(string: environmentBaseURL) else { fatalError("baseURL could not be configured.") } + return url + } + + var path: String { + switch self { + case .fetchForm: + return "/cells.json" + case .fetchFund: + return "/fund.json" + } + } + + var method: Moya.Method { + switch self { + default: + return .get + } + } + + var task: Task { + switch self { + default: + return .requestPlain + } + } + + var headers: [String : String]? { + switch self { + default: + return ["Content-type":"application/json"] + } + } +} diff --git a/TesteiOS/TesteiOS/Services/DefaultAlamofireManager.swift b/TesteiOS/TesteiOS/Services/DefaultAlamofireManager.swift index a0e80951..33c18054 100644 --- a/TesteiOS/TesteiOS/Services/DefaultAlamofireManager.swift +++ b/TesteiOS/TesteiOS/Services/DefaultAlamofireManager.swift @@ -1,6 +1,6 @@ // // DefaultAlamofireManager.swift -// TesteiOSv2 +// TesteiOS // // Created by Brendoon Ryos on 13/01/19. // Copyright © 2019 Brendoon Ryos. All rights reserved. diff --git a/TesteiOS/TesteiOS/Services/NetworkManager.swift b/TesteiOS/TesteiOS/Services/NetworkManager.swift index 063d87f0..7fe25bae 100644 --- a/TesteiOS/TesteiOS/Services/NetworkManager.swift +++ b/TesteiOS/TesteiOS/Services/NetworkManager.swift @@ -7,3 +7,54 @@ // import Foundation +import Moya +import Alamofire + +enum APIEnvironment { + case staging + case qa + case production +} + +protocol Networkable { + var provider: MoyaProvider { get } + func fetchForm(request: Contact.Form.Request, completion: @escaping (Result) -> ()) + func fetchFund(request: Funds.Get.Request, completion: @escaping (Result) -> ()) +} + +struct NetworkManager: Networkable { + let provider = MoyaProvider(manager: DefaultAlamofireManager.sharedManager, plugins: [NetworkLoggerPlugin(verbose: true)]) + static let environment: APIEnvironment = .staging + + func fetchForm(request: Contact.Form.Request, completion: @escaping (Result) -> ()) { + provider.request(.fetchForm) { result in + switch result { + case .success(let response): + do { + let formData = try JSONDecoder().decode(FormData.self, from: response.data) + completion(Result.success(formData)) + } catch let error { + fatalError("data could not be decoded: \(error)") + } + case .failure(let error): + completion(Result.failure(error)) + } + } + } + + func fetchFund(request: Funds.Get.Request, completion: @escaping (Result) -> ()) { + provider.request(.fetchFund) { result in + switch result { + case .success(let response): + do { + let fundsData = try JSONDecoder().decode(FundsData.self, from: response.data) + completion(Result.success(fundsData)) + } catch let error { + fatalError("data could not be decoded: \(error)") + } + case .failure(let error): + completion(Result.failure(error)) + } + } + } +} diff --git a/TesteiOS/TesteiOS/Services/StubbedResponses/Form.json b/TesteiOS/TesteiOS/Services/StubbedResponses/Form.json index e69de29b..61588115 100644 --- a/TesteiOS/TesteiOS/Services/StubbedResponses/Form.json +++ b/TesteiOS/TesteiOS/Services/StubbedResponses/Form.json @@ -0,0 +1,64 @@ +{ + "cells": [ + { + "id": 1, + "type": 2, + "message": "Olá, primeiro se apresente com o seu nome:", + "typefield": null, + "hidden": false, + "topSpacing": 60, + "show": null, + "required": false + }, + { + "id": 2, + "type": 1, + "message": "Nome completo", + "typefield": 1, + "hidden": false, + "topSpacing": 35, + "show": null, + "required": true + }, + { + "id": 4, + "type": 1, + "message": "Email", + "typefield": 3, + "hidden": true, + "topSpacing": 35, + "show": null, + "required": true + }, + { + "id": 6, + "type": 1, + "message": "Telefone", + "typefield": "telnumber", + "hidden": false, + "topSpacing": 10, + "show": null, + "required": true + }, + { + "id": 3, + "type": 4, + "message": "Gostaria de cadastrar meu email", + "typefield": null, + "hidden": false, + "topSpacing": 35, + "show": 4, + "required": false + }, + { + "id": 7, + "type": 5, + "message": "Enviar", + "typefield": null, + "hidden": false, + "topSpacing": 10, + "show": null, + "required": true + } + ] +} diff --git a/TesteiOS/TesteiOS/Services/StubbedResponses/Fund.json b/TesteiOS/TesteiOS/Services/StubbedResponses/Fund.json index e69de29b..0a3bcdec 100644 --- a/TesteiOS/TesteiOS/Services/StubbedResponses/Fund.json +++ b/TesteiOS/TesteiOS/Services/StubbedResponses/Fund.json @@ -0,0 +1,77 @@ +{ + "screen": { + "title": "Fundos de investimento", + "fundName": "Vinci Valorem FI Multimercado", + "whatIs": "O que é?", + "definition": "O Fundo tem por objetivo proporcionar aos seus cotistas rentabilidade no longo prazo através de investimentos.", + "riskTitle": "Grau de risco do investimento", + "risk": 4, + "infoTitle": "Mais informações sobre o investimento", + "moreInfo": { + "month": { + "fund": 0.3, + "CDI": 0.3 + }, + "year": { + "fund": 13.01, + "CDI": 12.08 + }, + "12months": { + "fund": 17.9, + "CDI": 17.6 + } + }, + "info": [ + { + "name": "Taxa de administração", + "data": "0,50%" + }, + { + "name": "Aplicação inicial", + "data": "R$ 10.000,00" + }, + { + "name": "Movimentação mínima", + "data": "R$ 1.000,00" + }, + { + "name": "Saldo mínimo", + "data": "R$ 5.000,00" + }, + { + "name": "Resgate (valor bruto)", + "data": "D+0" + }, + { + "name": "Cota (valor bruto)", + "data": "D+1" + }, + { + "name": "Pagamento (valor bruto)", + "data": "D+2" + } + ], + "downInfo": [ + { + "name": "Essenciais", + "data": null + }, + { + "name": "Desempenho", + "data": null + }, + { + "name": "Complementares", + "data": null + }, + { + "name": "Regulamento", + "data": null + }, + { + "name": "Adesão", + "data": null + } + ] + } +} From e42487c5361a6ccef1a8518ec6320f10b984e9e9 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:12:29 -0300 Subject: [PATCH 07/22] Adding models --- TesteiOS/TesteiOS/Models/Cell.swift | 161 ++++++++++++++++++++ TesteiOS/TesteiOS/Models/FormData.swift | 16 ++ TesteiOS/TesteiOS/Models/Fund.swift | 42 +++++ TesteiOS/TesteiOS/Models/FundData.swift | 9 -- TesteiOS/TesteiOS/Models/FundsData.swift | 24 +++ TesteiOS/TesteiOS/Models/Info.swift | 20 +++ TesteiOS/TesteiOS/Models/MoreInfo.swift | 18 +++ TesteiOS/TesteiOS/Models/MoreInfoData.swift | 26 +++- 8 files changed, 301 insertions(+), 15 deletions(-) delete mode 100644 TesteiOS/TesteiOS/Models/FundData.swift create mode 100644 TesteiOS/TesteiOS/Models/FundsData.swift diff --git a/TesteiOS/TesteiOS/Models/Cell.swift b/TesteiOS/TesteiOS/Models/Cell.swift index 3914ed90..385e20da 100644 --- a/TesteiOS/TesteiOS/Models/Cell.swift +++ b/TesteiOS/TesteiOS/Models/Cell.swift @@ -7,3 +7,164 @@ // import Foundation +import Reusable + +enum CellType: Int { + case field = 1 + case text + case image + case checkbox + case send + case fundHeader + case moreInfo + case info + case downInfo + case invest + + func getNib() -> UINib { + switch self { + case .field: + return TextFieldTableViewCell.nib + case .text: + return TextTableViewCell.nib + case .checkbox: + return CheckboxTableViewCell.nib + case .send: + return SendTableViewCell.nib + case .fundHeader: + return FundHeaderTableViewCell.nib + case .moreInfo: + return MoreInfoTableViewCell.nib + case .info: + return InfoTableViewCell.nib + case .downInfo: + return DownInfoTableViewCell.nib + default: + return InvestTableViewCell.nib + } + } + + func getIdentifier() -> String { + switch self { + case .field: + return TextFieldTableViewCell.reuseIdentifier + case .text: + return TextTableViewCell.reuseIdentifier + case .checkbox: + return CheckboxTableViewCell.reuseIdentifier + case .send: + return SendTableViewCell.reuseIdentifier + case .fundHeader: + return FundHeaderTableViewCell.reuseIdentifier + case .moreInfo: + return MoreInfoTableViewCell.reuseIdentifier + case .info: + return InfoTableViewCell.reuseIdentifier + case .downInfo: + return DownInfoTableViewCell.reuseIdentifier + default: + return InvestTableViewCell.reuseIdentifier + } + } + + func getClass() -> UITableViewCell.Type { + switch self { + case .field: + return TextFieldTableViewCell.self + case .text: + return TextTableViewCell.self + case .checkbox: + return CheckboxTableViewCell.self + case .send: + return SendTableViewCell.self + case .fundHeader: + return FundHeaderTableViewCell.self + case .moreInfo: + return MoreInfoTableViewCell.self + case .info: + return InfoTableViewCell.self + case .downInfo: + return DownInfoTableViewCell.self + default: + return InvestTableViewCell.self + } + } + + func getHeight() -> CGFloat { + switch self { + case .fundHeader: + return 410 + case .moreInfo: + return 200 + case .info, .downInfo: + return 30 + default: + return 80 + } + } +} + +enum TypeField: Int { + case text = 1 + case telNumber + case email + + var contentType: UITextContentType { + switch self { + case .telNumber: + return .telephoneNumber + case .email: + return .emailAddress + default: + return .name + } + } + + var keyboardType: UIKeyboardType { + switch self { + case .telNumber: + return .phonePad + case .email: + return .emailAddress + default: + return .default + } + } +} + +struct Cell { + let id: Int + let type: Int + let message: String + let typefield: Int? + let hidden: Bool + let topSpacing: Int + let show: Int? + let required: Bool +} + +extension Cell: Decodable { + private enum CodingKeys: String, CodingKey { + case id + case type + case message + case typefield + case hidden + case topSpacing + case show + case required + } + + init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + + id = try container.decode(Int.self, forKey: .id) + type = try container.decode(Int.self, forKey: .type) + message = try container.decode(String.self, forKey: .message) + typefield = try? container.decode(Int.self, forKey: .typefield) + hidden = try container.decode(Bool.self, forKey: .hidden) + topSpacing = try container.decode(Int.self, forKey: .topSpacing) + show = try? container.decode(Int.self, forKey: .show) + required = try container.decode(Bool.self, forKey: .required) + } +} diff --git a/TesteiOS/TesteiOS/Models/FormData.swift b/TesteiOS/TesteiOS/Models/FormData.swift index 897a3546..5a12968e 100644 --- a/TesteiOS/TesteiOS/Models/FormData.swift +++ b/TesteiOS/TesteiOS/Models/FormData.swift @@ -7,3 +7,19 @@ // import Foundation + +struct FormData { + let cells: [Cell] +} + +extension FormData: Decodable { + private enum CodingKeys: String, CodingKey { + case cells + } + + init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + + cells = try container.decode([Cell].self, forKey: .cells) + } +} diff --git a/TesteiOS/TesteiOS/Models/Fund.swift b/TesteiOS/TesteiOS/Models/Fund.swift index 9865b44a..961d7b23 100644 --- a/TesteiOS/TesteiOS/Models/Fund.swift +++ b/TesteiOS/TesteiOS/Models/Fund.swift @@ -7,3 +7,45 @@ // import Foundation + +struct Fund { + let title: String + let fundName: String + let whatIs: String + let definition: String + let riskTitle: String + let risk: Int + let infoTitle: String + let moreInfo: MoreInfoData + let info: [Info] + let downInfo: [Info] +} + +extension Fund: Decodable { + private enum CodingKeys: String, CodingKey { + case title + case fundName + case whatIs + case definition + case riskTitle + case risk + case infoTitle + case moreInfo + case info + case downInfo + } + + init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + title = try container.decode(String.self, forKey: .title) + fundName = try container.decode(String.self, forKey: .fundName) + whatIs = try container.decode(String.self, forKey: .whatIs) + definition = try container.decode(String.self, forKey: .definition) + riskTitle = try container.decode(String.self, forKey: .riskTitle) + risk = try container.decode(Int.self, forKey: .risk) + infoTitle = try container.decode(String.self, forKey: .infoTitle) + moreInfo = try container.decode(MoreInfoData.self, forKey: .moreInfo) + info = try container.decode([Info].self, forKey: .info) + downInfo = try container.decode([Info].self, forKey: .downInfo) + } +} diff --git a/TesteiOS/TesteiOS/Models/FundData.swift b/TesteiOS/TesteiOS/Models/FundData.swift deleted file mode 100644 index d32024e6..00000000 --- a/TesteiOS/TesteiOS/Models/FundData.swift +++ /dev/null @@ -1,9 +0,0 @@ -// -// FundData.swift -// TesteiOS -// -// Created by Brendoon Ryos on 22/02/19. -// Copyright © 2019 Brendoon Ryos. All rights reserved. -// - -import Foundation diff --git a/TesteiOS/TesteiOS/Models/FundsData.swift b/TesteiOS/TesteiOS/Models/FundsData.swift new file mode 100644 index 00000000..a071fb7f --- /dev/null +++ b/TesteiOS/TesteiOS/Models/FundsData.swift @@ -0,0 +1,24 @@ +// +// FundsData.swift +// TesteiOS +// +// Created by Brendoon Ryos on 22/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Foundation + +struct FundsData { + let fund: Fund +} + +extension FundsData: Decodable { + private enum CodingKeys: String, CodingKey { + case fund = "screen" + } + + init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + fund = try container.decode(Fund.self, forKey: .fund) + } +} diff --git a/TesteiOS/TesteiOS/Models/Info.swift b/TesteiOS/TesteiOS/Models/Info.swift index e4b927dc..200df1f9 100644 --- a/TesteiOS/TesteiOS/Models/Info.swift +++ b/TesteiOS/TesteiOS/Models/Info.swift @@ -7,3 +7,23 @@ // import Foundation + +struct Info { + let name: String + let data: String? +} + +extension Info: Decodable { + private enum CodingKeys: String, CodingKey { + case name + case data + } + + init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + name = try container.decode(String.self, forKey: .name) + data = try? container.decode(String.self, forKey: .data) + } +} + + diff --git a/TesteiOS/TesteiOS/Models/MoreInfo.swift b/TesteiOS/TesteiOS/Models/MoreInfo.swift index 78df00c3..748e273e 100644 --- a/TesteiOS/TesteiOS/Models/MoreInfo.swift +++ b/TesteiOS/TesteiOS/Models/MoreInfo.swift @@ -7,3 +7,21 @@ // import Foundation + +struct MoreInfo { + let fund: Double + let cdi: Double +} + +extension MoreInfo: Decodable { + private enum CodingKeys: String, CodingKey { + case fund + case cdi = "CDI" + } + + init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + fund = try container.decode(Double.self, forKey: .fund) + cdi = try container.decode(Double.self, forKey: .cdi) + } +} diff --git a/TesteiOS/TesteiOS/Models/MoreInfoData.swift b/TesteiOS/TesteiOS/Models/MoreInfoData.swift index dbe020ce..ccd1b010 100644 --- a/TesteiOS/TesteiOS/Models/MoreInfoData.swift +++ b/TesteiOS/TesteiOS/Models/MoreInfoData.swift @@ -1,5 +1,5 @@ // -// MoreInfo.swift +// MoreInfoData.swift // TesteiOS // // Created by Brendoon Ryos on 23/02/19. @@ -8,9 +8,23 @@ import Foundation -struct MoreInfo { - let month: - "month": { "fund": 0.3, "CDI": 0.3 }, - "year": { "fund": 13.01, "CDI": 12.08 }, - "12months": { "fund": 17.9, "CDI": 17.6 } +struct MoreInfoData { + let month: MoreInfo + let year: MoreInfo + let twelveMonths: MoreInfo +} + +extension MoreInfoData: Decodable { + private enum CodingKeys: String, CodingKey { + case month + case year + case twelveMonths = "12months" + } + + init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + month = try container.decode(MoreInfo.self, forKey: .month) + year = try container.decode(MoreInfo.self, forKey: .year) + twelveMonths = try container.decode(MoreInfo.self, forKey: .twelveMonths) + } } From 50691951f33d468dcf6f47836b32a921cd78fd40 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:13:35 -0300 Subject: [PATCH 08/22] Adding Contact scene --- .../Scenes/Contact/ContactDataSource.swift | 74 +++++++++++++++- .../Scenes/Contact/ContactDelegate.swift | 24 ++++- .../Scenes/Contact/ContactInteractor.swift | 39 ++++---- .../Scenes/Contact/ContactModels.swift | 39 +++++--- .../Scenes/Contact/ContactPresenter.swift | 30 ++++--- .../Scenes/Contact/ContactRouter.swift | 9 +- .../Contact/ContactViewController.swift | 88 +++++++++++-------- .../Scenes/Contact/ContactWorker.swift | 17 +++- 8 files changed, 235 insertions(+), 85 deletions(-) diff --git a/TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift b/TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift index c27f1035..fab38a35 100644 --- a/TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift +++ b/TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift @@ -6,4 +6,76 @@ // Copyright © 2019 Brendoon Ryos. All rights reserved. // -import Foundation +import UIKit + +typealias Value = (message: String, data: Any) + +class ContactDataSource: NSObject, ItemsTableViewDataSource { + + var items: [Cell] = [] + var tableView: UITableView? + var delegate: UITableViewDelegate? + var values: [Value] = [] + var enableSendButton: ((Bool) -> ())? + var sendAction: (([Value]) -> ())? + + required init(tableView: UITableView, delegate: UITableViewDelegate) { + self.tableView = tableView + self.delegate = delegate + super.init() + setupTableView() + } + + func registerTableView() { + for item in items { + let type = CellType(rawValue: item.type)! + self.tableView?.register(type.getNib(), forCellReuseIdentifier: type.getIdentifier()) + } + } + + func update(with items: [Cell]) { + self.items = items + self.registerTableView() + self.tableView?.reloadData() + } + + func sendButtonPressed() { + sendAction?(values) + values = [] + } + + func validValue(_ value: Value) { + if values.contains(where: { $0.message == value.message }) { + for i in 0.. i else { return } + if values[i].message == value.message { + values[i].data = value.data + if let data = value.data as? String, data.isEmpty { + values.remove(at: i) + enableSendButton?(false) + } + } + } + } else { + values.append(value) + } + enableSendButton?(values.count == 4) + } +} + +extension ContactDataSource: UITableViewDataSource { + func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { + return items.count + } + + func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + let item = items[indexPath.row] + let type = CellType(rawValue: item.type)! + let cell = tableView.dequeueReusableCell(withIdentifier: type.getIdentifier(), for: indexPath) as! ContactBaseTableViewCell + enableSendButton = cell.enableAction + cell.sendAction = sendButtonPressed + cell.callback = validValue + cell.setup(with: item) + return cell + } +} diff --git a/TesteiOS/TesteiOS/Scenes/Contact/ContactDelegate.swift b/TesteiOS/TesteiOS/Scenes/Contact/ContactDelegate.swift index 8696aeb4..840eb02d 100644 --- a/TesteiOS/TesteiOS/Scenes/Contact/ContactDelegate.swift +++ b/TesteiOS/TesteiOS/Scenes/Contact/ContactDelegate.swift @@ -6,4 +6,26 @@ // Copyright © 2019 Brendoon Ryos. All rights reserved. // -import Foundation +import UIKit + +class ContactDelegate: NSObject, UITableViewDelegate { + + weak var tableView: ContactTableView? + + var items: [Cell] = [] + + init(tableView: ContactTableView) { + self.tableView = tableView + super.init() + self.tableView?.delegate = self + } + + func update(with items: [Cell]) { + self.items = items + } + + func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { + let spacing = items[indexPath.row].topSpacing + return CGFloat(50 + spacing) + } +} diff --git a/TesteiOS/TesteiOS/Scenes/Contact/ContactInteractor.swift b/TesteiOS/TesteiOS/Scenes/Contact/ContactInteractor.swift index b0a999a7..47ddcc07 100644 --- a/TesteiOS/TesteiOS/Scenes/Contact/ContactInteractor.swift +++ b/TesteiOS/TesteiOS/Scenes/Contact/ContactInteractor.swift @@ -12,30 +12,39 @@ import UIKit -protocol ContactBusinessLogic -{ - func doSomething(request: Contact.Something.Request) +protocol ContactBusinessLogic { + func fetchForm(request: Contact.Form.Request) + func sendFormData(request: Contact.Send.Request) } -protocol ContactDataStore -{ +protocol ContactDataStore { //var name: String { get set } } -class ContactInteractor: ContactBusinessLogic, ContactDataStore -{ +class ContactInteractor: ContactBusinessLogic, ContactDataStore { var presenter: ContactPresentationLogic? var worker: ContactWorker? //var name: String = "" - // MARK: Do something - - func doSomething(request: Contact.Something.Request) - { + // MARK: Fetch Form + func fetchForm(request: Contact.Form.Request) { worker = ContactWorker() - worker?.doSomeWork() - - let response = Contact.Something.Response() - presenter?.presentSomething(response: response) + worker?.fetchForm(request: request, completion: { result in + switch result { + case .success(let data): + let response = Contact.Form.Response(cells: data.cells) + self.presenter?.presentForm(response: response) + case .failure(let error): + let response = Contact.Form.Response(error: error) + self.presenter?.presentErrorMessage(response: response) + } + }) + } + + // MARK: Send form data + func sendFormData(request: Contact.Send.Request) { + let response = Contact.Send.Response() + presenter?.presentSuccesseMessage(response: response) + // TODO: Send form data } } diff --git a/TesteiOS/TesteiOS/Scenes/Contact/ContactModels.swift b/TesteiOS/TesteiOS/Scenes/Contact/ContactModels.swift index c469c4c9..d729204f 100644 --- a/TesteiOS/TesteiOS/Scenes/Contact/ContactModels.swift +++ b/TesteiOS/TesteiOS/Scenes/Contact/ContactModels.swift @@ -12,20 +12,37 @@ import UIKit -enum Contact -{ +enum Contact { // MARK: Use cases - - enum Something - { - struct Request - { + enum Send { + struct Request{ + let values: [Value] } - struct Response - { + struct Response {} + struct ViewModel {} + } + + enum Form { + struct Request{} + + struct Response { + let cells: [Cell] + let error: Error? + + init(cells: [Cell] = [], error: Error? = .none) { + self.cells = cells + self.error = error + } } - struct ViewModel - { + struct ViewModel { + let cells: [Cell] + let error: Error? + + init(cells: [Cell] = [], error: Error? = .none) { + self.cells = cells + self.error = error + } } } + } diff --git a/TesteiOS/TesteiOS/Scenes/Contact/ContactPresenter.swift b/TesteiOS/TesteiOS/Scenes/Contact/ContactPresenter.swift index 6ba65a7e..5834609f 100644 --- a/TesteiOS/TesteiOS/Scenes/Contact/ContactPresenter.swift +++ b/TesteiOS/TesteiOS/Scenes/Contact/ContactPresenter.swift @@ -12,20 +12,30 @@ import UIKit -protocol ContactPresentationLogic -{ - func presentSomething(response: Contact.Something.Response) +protocol ContactPresentationLogic { + func presentForm(response: Contact.Form.Response) + func presentSuccesseMessage(response: Contact.Send.Response) + func presentErrorMessage(response: Contact.Form.Response) } -class ContactPresenter: ContactPresentationLogic -{ +class ContactPresenter: ContactPresentationLogic { weak var viewController: ContactDisplayLogic? - // MARK: Do something + // MARK: Present Form + func presentForm(response: Contact.Form.Response) { + let viewModel = Contact.Form.ViewModel(cells: response.cells) + viewController?.displayForm(viewModel: viewModel) + } + + // MARK: Present Success Message + func presentSuccesseMessage(response: Contact.Send.Response) { + let viewModel = Contact.Send.ViewModel() + viewController?.displaySuccessMessage(viewModel: viewModel) + } - func presentSomething(response: Contact.Something.Response) - { - let viewModel = Contact.Something.ViewModel() - viewController?.displaySomething(viewModel: viewModel) + // MARK: Present Error Message + func presentErrorMessage(response: Contact.Form.Response) { + let viewModel = Contact.Form.ViewModel(error: response.error) + viewController?.displayErrorMessage(viewModel: viewModel) } } diff --git a/TesteiOS/TesteiOS/Scenes/Contact/ContactRouter.swift b/TesteiOS/TesteiOS/Scenes/Contact/ContactRouter.swift index 49c8cf2c..59059a2f 100644 --- a/TesteiOS/TesteiOS/Scenes/Contact/ContactRouter.swift +++ b/TesteiOS/TesteiOS/Scenes/Contact/ContactRouter.swift @@ -12,18 +12,15 @@ import UIKit -@objc protocol ContactRoutingLogic -{ +@objc protocol ContactRoutingLogic { //func routeToSomewhere(segue: UIStoryboardSegue?) } -protocol ContactDataPassing -{ +protocol ContactDataPassing { var dataStore: ContactDataStore? { get } } -class ContactRouter: NSObject, ContactRoutingLogic, ContactDataPassing -{ +class ContactRouter: NSObject, ContactRoutingLogic, ContactDataPassing { weak var viewController: ContactViewController? var dataStore: ContactDataStore? diff --git a/TesteiOS/TesteiOS/Scenes/Contact/ContactViewController.swift b/TesteiOS/TesteiOS/Scenes/Contact/ContactViewController.swift index d31f590b..96359a74 100644 --- a/TesteiOS/TesteiOS/Scenes/Contact/ContactViewController.swift +++ b/TesteiOS/TesteiOS/Scenes/Contact/ContactViewController.swift @@ -12,34 +12,32 @@ import UIKit -protocol ContactDisplayLogic: class -{ - func displaySomething(viewModel: Contact.Something.ViewModel) +protocol ContactDisplayLogic: class { + func displayForm(viewModel: Contact.Form.ViewModel) + func displayErrorMessage(viewModel: Contact.Form.ViewModel) + func displaySuccessMessage(viewModel: Contact.Send.ViewModel) } -class ContactViewController: UIViewController, ContactDisplayLogic -{ +class ContactViewController: UIViewController { var interactor: ContactBusinessLogic? var router: (NSObjectProtocol & ContactRoutingLogic & ContactDataPassing)? + + let contactView = ContactView() // MARK: Object lifecycle - - override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: Bundle?) - { - super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil) + init() { + super.init(nibName: .none, bundle: .none) + title = "Contato" setup() } - required init?(coder aDecoder: NSCoder) - { + required init?(coder aDecoder: NSCoder) { super.init(coder: aDecoder) setup() } // MARK: Setup - - private func setup() - { + private func setup() { let viewController = self let interactor = ContactInteractor() let presenter = ContactPresenter() @@ -52,38 +50,54 @@ class ContactViewController: UIViewController, ContactDisplayLogic router.dataStore = interactor } - // MARK: Routing + // MARK: View lifecycle + override func viewDidLoad() { + super.viewDidLoad() + setupView() + fetchForm() + } - override func prepare(for segue: UIStoryboardSegue, sender: Any?) - { - if let scene = segue.identifier { - let selector = NSSelectorFromString("routeTo\(scene)WithSegue:") - if let router = router, router.responds(to: selector) { - router.perform(selector, with: segue) - } - } + override func loadView() { + view = contactView } - // MARK: View lifecycle + func setupView() { + let tapGeture = UITapGestureRecognizer(target: self, action: #selector(hideKeyboard)) + view.addGestureRecognizer(tapGeture) + contactView.tableView.setSendHandler(sendButtonPressed) + } - override func viewDidLoad() - { - super.viewDidLoad() - doSomething() + @objc func hideKeyboard() { + view.endEditing(true) } - // MARK: Do something + func sendButtonPressed(_ values: [Value]) { + print(values) + let request = Contact.Send.Request(values: values) + interactor?.sendFormData(request: request) + } - //@IBOutlet weak var nameTextField: UITextField! + // MARK: Fetch Form + func fetchForm() { + let request = Contact.Form.Request() + interactor?.fetchForm(request: request) + contactView.activityIndicator.startAnimating() + } +} + +extension ContactViewController: ContactDisplayLogic { + func displayForm(viewModel: Contact.Form.ViewModel) { + contactView.activityIndicator.stopAnimating() + contactView.tableView.update(with: viewModel.cells) + } - func doSomething() - { - let request = Contact.Something.Request() - interactor?.doSomething(request: request) + func displaySuccessMessage(viewModel: Contact.Send.ViewModel) { + contactView.showFeedbackView() + contactView.tableView.reloadData() } - func displaySomething(viewModel: Contact.Something.ViewModel) - { - //nameTextField.text = viewModel.name + func displayErrorMessage(viewModel: Contact.Form.ViewModel) { + + contactView.activityIndicator.stopAnimating() } } diff --git a/TesteiOS/TesteiOS/Scenes/Contact/ContactWorker.swift b/TesteiOS/TesteiOS/Scenes/Contact/ContactWorker.swift index ebef67da..50f47612 100644 --- a/TesteiOS/TesteiOS/Scenes/Contact/ContactWorker.swift +++ b/TesteiOS/TesteiOS/Scenes/Contact/ContactWorker.swift @@ -11,10 +11,19 @@ // import UIKit +import Alamofire -class ContactWorker -{ - func doSomeWork() - { +class ContactWorker { + + private let networkManager: NetworkManager + + init(networkManager: NetworkManager = NetworkManager()) { + self.networkManager = networkManager + } + + func fetchForm(request: Contact.Form.Request, completion: @escaping (Result) -> ()) { + networkManager.fetchForm(request: request) { result in + completion(result) + } } } From d741defb6a1dcf010809d033ca0b8b62ca431662 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:16:08 -0300 Subject: [PATCH 09/22] Adding Contact layout --- .../CheckboxTableViewCell/CheckboxTableViewCell.swift | 6 ++++++ .../UI/Cells/Contact/ContactBaseTableViewCell.swift | 3 ++- .../TextFieldTableViewCell/TextFieldTableViewCell.swift | 6 +++++- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/TesteiOS/TesteiOS/UI/Cells/Contact/CheckboxTableViewCell/CheckboxTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Contact/CheckboxTableViewCell/CheckboxTableViewCell.swift index aa871716..a89e40ca 100755 --- a/TesteiOS/TesteiOS/UI/Cells/Contact/CheckboxTableViewCell/CheckboxTableViewCell.swift +++ b/TesteiOS/TesteiOS/UI/Cells/Contact/CheckboxTableViewCell/CheckboxTableViewCell.swift @@ -12,6 +12,12 @@ final class CheckboxTableViewCell: ContactBaseTableViewCell { @IBOutlet weak var checkboxButton: UIButton! + override func awakeFromNib() { + super.awakeFromNib() + checkboxButton.titleLabel?.adjustsFontSizeToFitWidth = true + checkboxButton.titleLabel?.minimumScaleFactor = 0.5 + } + override func setup(with item: Cell) { super.setup(with: item) checkboxButton.isSelected = false diff --git a/TesteiOS/TesteiOS/UI/Cells/Contact/ContactBaseTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Contact/ContactBaseTableViewCell.swift index 07f24606..dcb684b5 100644 --- a/TesteiOS/TesteiOS/UI/Cells/Contact/ContactBaseTableViewCell.swift +++ b/TesteiOS/TesteiOS/UI/Cells/Contact/ContactBaseTableViewCell.swift @@ -13,7 +13,8 @@ class ContactBaseTableViewCell: UITableViewCell, NibReusable { @IBOutlet weak var topSpacingConstraint: NSLayoutConstraint! - var callback: (((String, Any)) -> ())? + var callback: ((Value) -> ())? + var sendAction: (() -> ())? override func awakeFromNib() { super.awakeFromNib() diff --git a/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.swift index f32dd96d..6f54270c 100755 --- a/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.swift +++ b/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.swift @@ -59,9 +59,13 @@ final class TextFieldTableViewCell: ContactBaseTableViewCell { } private func checkTextField(_ textField: UITextField) { - guard let text = textField.text else { return } + guard var text = textField.text else { return } switch textField.textContentType! { case .name: + if text.last == " " { + text.removeLast() + textField.text = text + } isTextValid = text.count >= 5 case .telephoneNumber: isTextValid = text.count >= 10 From c6f8c8d147b14b31993258bd6640e05b676c117d Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:17:08 -0300 Subject: [PATCH 10/22] Adding Funds scene --- .../Scenes/Funds/FundsDataSource.swift | 64 ++++++++++++++++- .../TesteiOS/Scenes/Funds/FundsDelegate.swift | 19 ++++- .../Scenes/Funds/FundsInteractor.swift | 47 ++++++++----- .../TesteiOS/Scenes/Funds/FundsModels.swift | 38 +++++++--- .../Scenes/Funds/FundsPresenter.swift | 34 +++++---- .../TesteiOS/Scenes/Funds/FundsRouter.swift | 56 ++++++--------- .../Scenes/Funds/FundsViewController.swift | 70 ++++++++++++++----- .../TesteiOS/Scenes/Funds/FundsWorker.swift | 19 +++-- 8 files changed, 244 insertions(+), 103 deletions(-) diff --git a/TesteiOS/TesteiOS/Scenes/Funds/FundsDataSource.swift b/TesteiOS/TesteiOS/Scenes/Funds/FundsDataSource.swift index 52de741c..c6245bc6 100644 --- a/TesteiOS/TesteiOS/Scenes/Funds/FundsDataSource.swift +++ b/TesteiOS/TesteiOS/Scenes/Funds/FundsDataSource.swift @@ -6,4 +6,66 @@ // Copyright © 2019 Brendoon Ryos. All rights reserved. // -import Foundation +import UIKit + +class FundsDataSource: NSObject, ItemsTableViewDataSource { + + var items: [CellType] = [] + var fund: Fund? = .none + var tableView: UITableView? + var delegate: UITableViewDelegate? + var investAction: (() -> ())? + var downloadAction: ((String?) -> ())? + + required init(tableView: UITableView, delegate: UITableViewDelegate) { + self.tableView = tableView + self.delegate = delegate + super.init() + setupTableView() + } + + func registerTableView() { + for item in items { + self.tableView?.register(item.getNib(), forCellReuseIdentifier: item.getIdentifier()) + } + } + + func update(with fund: Fund) { + self.fund = fund + self.items = [.fundHeader, .moreInfo, .info, .downInfo, .invest] + self.registerTableView() + self.tableView?.reloadData() + } +} + +extension FundsDataSource: UITableViewDataSource { + + func numberOfSections(in tableView: UITableView) -> Int { + return items.count + } + + func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { + switch section { + case 0, 1, 4 : + return 1 + case 2: + return fund!.info.count + case 3: + return fund!.downInfo.count + default: + return 0 + } + } + + func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + let type = items[indexPath.section] + let cell = tableView.dequeueReusableCell(withIdentifier: type.getIdentifier(), for: indexPath) as! FundBaseTableViewCell + + cell.tag = indexPath.row + cell.investAction = investAction + cell.downloadAction = downloadAction + cell.setup(with: fund!) + + return cell + } +} diff --git a/TesteiOS/TesteiOS/Scenes/Funds/FundsDelegate.swift b/TesteiOS/TesteiOS/Scenes/Funds/FundsDelegate.swift index 91657e35..f4bf1042 100644 --- a/TesteiOS/TesteiOS/Scenes/Funds/FundsDelegate.swift +++ b/TesteiOS/TesteiOS/Scenes/Funds/FundsDelegate.swift @@ -6,4 +6,21 @@ // Copyright © 2019 Brendoon Ryos. All rights reserved. // -import Foundation +import UIKit + +class FundsDelegate: NSObject, UITableViewDelegate { + + weak var tableView: UITableView? + + var items: [CellType] = [.fundHeader, .moreInfo, .info, .downInfo, .invest] + + init(tableView: UITableView) { + self.tableView = tableView + super.init() + self.tableView?.delegate = self + } + + func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { + return items[indexPath.section].getHeight() + } +} diff --git a/TesteiOS/TesteiOS/Scenes/Funds/FundsInteractor.swift b/TesteiOS/TesteiOS/Scenes/Funds/FundsInteractor.swift index cf4abdd6..bad8c688 100644 --- a/TesteiOS/TesteiOS/Scenes/Funds/FundsInteractor.swift +++ b/TesteiOS/TesteiOS/Scenes/Funds/FundsInteractor.swift @@ -12,30 +12,39 @@ import UIKit -protocol FundBusinessLogic -{ - func doSomething(request: Fund.Request) +protocol FundsBusinessLogic { + func fetchFund(request: Funds.Get.Request) + func downloadData(request: Funds.Download.Request) } -protocol FundDataStore -{ - //var name: String { get set } +protocol FundsDataStore { + var url: String { get set } } -class FundInteractor: FundBusinessLogic, FundDataStore -{ - var presenter: FundPresentationLogic? - var worker: FundWorker? - //var name: String = "" +class FundsInteractor: FundsBusinessLogic, FundsDataStore { + var presenter: FundsPresentationLogic? + var worker: FundsWorker? + var url: String = "" - // MARK: Do something + // MARK: Fetch fund + func fetchFund(request: Funds.Get.Request) { + worker = FundsWorker() + worker?.fetchFund(request: request, completion: { result in + switch result { + case .success(let data): + let response = Funds.Get.Response(fund: data.fund) + self.presenter?.presentFund(response: response) + case .failure(let error): + let response = Funds.Get.Response(error: error) + self.presenter?.presentErrorMessage(response: response) + } + }) + } - func doSomething(request: Fund.Request) - { - worker = FundWorker() - worker?.doSomeWork() - - let response = Fund.Response() - presenter?.presentSomething(response: response) + // MARK: Fetch data + func downloadData(request: Funds.Download.Request) { + url = request.url ?? "https://www.google.com/" + let response = Funds.Download.Response() + presenter?.presentDownloadedData(response: response) } } diff --git a/TesteiOS/TesteiOS/Scenes/Funds/FundsModels.swift b/TesteiOS/TesteiOS/Scenes/Funds/FundsModels.swift index 35259247..55ce7ce2 100644 --- a/TesteiOS/TesteiOS/Scenes/Funds/FundsModels.swift +++ b/TesteiOS/TesteiOS/Scenes/Funds/FundsModels.swift @@ -12,17 +12,35 @@ import UIKit -enum Funds -{ +enum Funds { // MARK: Use cases - - struct Request - { - } - struct Response - { + enum Download { + struct Request { + let url: String? + } + struct Response {} + struct ViewModel {} } - struct ViewModel - { + + enum Get { + struct Request {} + struct Response { + let fund: Fund? + let error: Error? + + init(fund: Fund? = .none, error: Error? = .none) { + self.fund = fund + self.error = error + } + } + struct ViewModel { + let fund: Fund? + let error: Error? + + init(fund: Fund? = .none, error: Error? = .none) { + self.fund = fund + self.error = error + } + } } } diff --git a/TesteiOS/TesteiOS/Scenes/Funds/FundsPresenter.swift b/TesteiOS/TesteiOS/Scenes/Funds/FundsPresenter.swift index 447a391a..ebf02d30 100644 --- a/TesteiOS/TesteiOS/Scenes/Funds/FundsPresenter.swift +++ b/TesteiOS/TesteiOS/Scenes/Funds/FundsPresenter.swift @@ -1,5 +1,5 @@ // -// FundPresenter.swift +// FundsPresenter.swift // TesteiOS // // Created by Brendoon Ryos on 21/02/19. @@ -12,20 +12,30 @@ import UIKit -protocol FundPresentationLogic -{ - func presentSomething(response: Fund.Response) +protocol FundsPresentationLogic { + func presentFund(response: Funds.Get.Response) + func presentDownloadedData(response: Funds.Download.Response) + func presentErrorMessage(response: Funds.Get.Response) } -class FundPresenter: FundPresentationLogic -{ - weak var viewController: FundDisplayLogic? +class FundsPresenter: FundsPresentationLogic { + weak var viewController: FundsDisplayLogic? - // MARK: Do something + // MARK: Present Fund + func presentFund(response: Funds.Get.Response) { + let viewModel = Funds.Get.ViewModel(fund: response.fund) + viewController?.displayFund(viewModel: viewModel) + } + + // MARK: Present Data + func presentDownloadedData(response: Funds.Download.Response) { + let viewModel = Funds.Download.ViewModel() + viewController?.displayDownloadedData(viewModel: viewModel) + } - func presentSomething(response: Fund.Response) - { - let viewModel = Fund.ViewModel() - viewController?.displaySomething(viewModel: viewModel) + // MARK: Present Error Message + func presentErrorMessage(response: Funds.Get.Response) { + let viewModel = Funds.Get.ViewModel(error: response.error) + viewController?.displayErrorMessage(viewModel: viewModel) } } diff --git a/TesteiOS/TesteiOS/Scenes/Funds/FundsRouter.swift b/TesteiOS/TesteiOS/Scenes/Funds/FundsRouter.swift index f2cbcff7..857ece3a 100644 --- a/TesteiOS/TesteiOS/Scenes/Funds/FundsRouter.swift +++ b/TesteiOS/TesteiOS/Scenes/Funds/FundsRouter.swift @@ -1,5 +1,5 @@ // -// FundRouter.swift +// FundsRouter.swift // TesteiOS // // Created by Brendoon Ryos on 21/02/19. @@ -11,50 +11,34 @@ // import UIKit +import SafariServices -@objc protocol FundRoutingLogic -{ - //func routeToSomewhere(segue: UIStoryboardSegue?) +@objc protocol FundsRoutingLogic { + func routeToDownloadData() } -protocol FundDataPassing -{ - var dataStore: FundDataStore? { get } +protocol FundsDataPassing { + var dataStore: FundsDataStore? { get } } -class FundRouter: NSObject, FundRoutingLogic, FundDataPassing -{ - weak var viewController: FundViewController? - var dataStore: FundDataStore? +class FundsRouter: NSObject, FundsRoutingLogic, FundsDataPassing { + weak var viewController: FundsViewController? + var dataStore: FundsDataStore? // MARK: Routing - - //func routeToSomewhere(segue: UIStoryboardSegue?) - //{ - // if let segue = segue { - // let destinationVC = segue.destination as! SomewhereViewController - // var destinationDS = destinationVC.router!.dataStore! - // passDataToSomewhere(source: dataStore!, destination: &destinationDS) - // } else { - // let storyboard = UIStoryboard(name: "Main", bundle: nil) - // let destinationVC = storyboard.instantiateViewController(withIdentifier: "SomewhereViewController") as! SomewhereViewController - // var destinationDS = destinationVC.router!.dataStore! - // passDataToSomewhere(source: dataStore!, destination: &destinationDS) - // navigateToSomewhere(source: viewController!, destination: destinationVC) - // } - //} + func routeToDownloadData() { + guard let string = dataStore?.url, let url = URL(string: string) else { return } + let safariViewController = SFSafariViewController(url: url) + navigateToDownloadData(source: viewController!, destination: safariViewController) + } // MARK: Navigation - - //func navigateToSomewhere(source: FundsViewController, destination: SomewhereViewController) - //{ - // source.show(destination, sender: nil) - //} + func navigateToDownloadData(source: FundsViewController, destination: SFSafariViewController) { + source.present(destination, animated: true) + } // MARK: Passing data - - //func passDataToSomewhere(source: FundsDataStore, destination: inout SomewhereDataStore) - //{ - // destination.name = source.name - //} +// func passDataToSomewhere(source: FundsDataStore, destination: inout SomewhereDataStore) { +// destination.name = source.name +// } } diff --git a/TesteiOS/TesteiOS/Scenes/Funds/FundsViewController.swift b/TesteiOS/TesteiOS/Scenes/Funds/FundsViewController.swift index bccfaeae..f35fdf64 100644 --- a/TesteiOS/TesteiOS/Scenes/Funds/FundsViewController.swift +++ b/TesteiOS/TesteiOS/Scenes/Funds/FundsViewController.swift @@ -1,5 +1,5 @@ // -// FundViewController.swift +// FundsViewController.swift // TesteiOS // // Created by Brendoon Ryos on 21/02/19. @@ -12,19 +12,23 @@ import UIKit -protocol FundDisplayLogic: class { - func displaySomething(viewModel: Fund.ViewModel) +protocol FundsDisplayLogic: class { + func displayFund(viewModel: Funds.Get.ViewModel) + func displayDownloadedData(viewModel: Funds.Download.ViewModel) + func displayErrorMessage(viewModel: Funds.Get.ViewModel) } -class FundViewController: UIViewController, FundDisplayLogic { - var interactor: FundBusinessLogic? - var router: (NSObjectProtocol & FundRoutingLogic & FundDataPassing)? +class FundsViewController: UIViewController { + var interactor: FundsBusinessLogic? + var router: (NSObjectProtocol & FundsRoutingLogic & FundsDataPassing)? + + let fundsView = FundsView() // MARK: Object lifecycle init() { super.init(nibName: .none, bundle: .none) title = "Investimento" - navigationItem.rightBarButtonItem = UIBarButtonItem(image: UIImage(named: "share"), style: .plain, target: nil, action: nil) + navigationItem.rightBarButtonItem = UIBarButtonItem(image: UIImage(named: "share"), style: .plain, target: .none, action: .none) setup() } @@ -34,12 +38,11 @@ class FundViewController: UIViewController, FundDisplayLogic { } // MARK: Setup - private func setup() { let viewController = self - let interactor = FundInteractor() - let presenter = FundPresenter() - let router = FundRouter() + let interactor = FundsInteractor() + let presenter = FundsPresenter() + let router = FundsRouter() viewController.interactor = interactor viewController.router = router interactor.presenter = presenter @@ -51,19 +54,48 @@ class FundViewController: UIViewController, FundDisplayLogic { // MARK: View lifecycle override func viewDidLoad() { super.viewDidLoad() - doSomething() + setupView() + fetchFund() + } + + override func loadView() { + view = fundsView } - // MARK: Do something + func setupView() { + fundsView.tableView.setInvestHandler(investButtonPressed) + fundsView.tableView.setDownloadHandler(downloadButtonPressed) + } + + func investButtonPressed() { + // TODO: Invest Button pressed action + print("Investir") + } - //@IBOutlet weak var nameTextField: UITextField! + func downloadButtonPressed(_ url: String?) { + let request = Funds.Download.Request(url: url) + interactor?.downloadData(request: request) + } + + // MARK: Fetch Fund + func fetchFund() { + let request = Funds.Get.Request() + interactor?.fetchFund(request: request) + fundsView.activityIndicator.startAnimating() + } +} + +extension FundsViewController: FundsDisplayLogic { + func displayFund(viewModel: Funds.Get.ViewModel) { + fundsView.tableView.update(with: viewModel.fund!) + fundsView.activityIndicator.stopAnimating() + } - func doSomething() { - let request = Fund.Request() - interactor?.doSomething(request: request) + func displayDownloadedData(viewModel: Funds.Download.ViewModel) { + router?.routeToDownloadData() } - func displaySomething(viewModel: Fund.ViewModel) { - //nameTextField.text = viewModel.name + func displayErrorMessage(viewModel: Funds.Get.ViewModel) { + fundsView.activityIndicator.stopAnimating() } } diff --git a/TesteiOS/TesteiOS/Scenes/Funds/FundsWorker.swift b/TesteiOS/TesteiOS/Scenes/Funds/FundsWorker.swift index 321ef1e8..f2b99a6d 100644 --- a/TesteiOS/TesteiOS/Scenes/Funds/FundsWorker.swift +++ b/TesteiOS/TesteiOS/Scenes/Funds/FundsWorker.swift @@ -1,5 +1,5 @@ // -// FundWorker.swift +// FundsWorker.swift // TesteiOS // // Created by Brendoon Ryos on 21/02/19. @@ -11,10 +11,19 @@ // import UIKit +import Alamofire -class FundWorker -{ - func doSomeWork() - { +class FundsWorker { + + private let networkManager: NetworkManager + + init(networkManager: NetworkManager = NetworkManager()) { + self.networkManager = networkManager + } + + func fetchFund(request: Funds.Get.Request, completion: @escaping (Result) -> ()) { + networkManager.fetchFund(request: request) { result in + completion(result) + } } } From 456807a2f3658e764868f5c5a4cf4e911dd44e27 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:18:06 -0300 Subject: [PATCH 11/22] Adding Funds layout --- .../UI/Appearance/AppearanceProxyHelper.swift | 15 +- .../DownInfoTableViewCell.swift | 13 +- .../DownInfoTableViewCell.xib | 2 +- .../UI/Cells/Fund/FundBaseTableViewCell.swift | 18 +-- .../FundHeaderTableViewCell.swift | 2 - .../FundHeaderTableViewCell.xib | 33 +--- .../UI/Cells/Fund/InfoTableViewCell.swift | 27 ---- .../InfoTableViewCell/InfoTableViewCell.swift | 20 +++ .../InfoTableViewCell/InfoTableViewCell.xib | 28 ++-- .../InvestTableViewCell.swift | 33 ++-- .../InvestTableViewCell.xib | 45 +++++- .../MoreInfoTableViewCell.swift | 21 ++- .../MoreInfoTableViewCell.xib | 152 +++++++++++++++++- .../TesteiOS/UI/Views/Funds/RiskView.swift | 4 +- TesteiOS/TesteiOS/UI/Views/TabBarButton.swift | 27 +++- TesteiOS/TesteiOS/UI/Views/TabBarView.swift | 52 +++++- TesteiOS/TesteiOS/UI/Views/ViewCode.swift | 17 ++ 17 files changed, 362 insertions(+), 147 deletions(-) delete mode 100755 TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell.swift create mode 100755 TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewCell.swift diff --git a/TesteiOS/TesteiOS/UI/Appearance/AppearanceProxyHelper.swift b/TesteiOS/TesteiOS/UI/Appearance/AppearanceProxyHelper.swift index 6ef55b99..78f1df6e 100644 --- a/TesteiOS/TesteiOS/UI/Appearance/AppearanceProxyHelper.swift +++ b/TesteiOS/TesteiOS/UI/Appearance/AppearanceProxyHelper.swift @@ -12,18 +12,13 @@ struct AppearanceProxyHelper { private init() {} - static let collectionViewSpacing: CGFloat = 15 - - static func customizeTabBar(){ - let tabBarAppearance = UITabBar.appearance() - tabBarAppearance.tintColor = ColorPalette.black - tabBarAppearance.barTintColor = ColorPalette.white - } - static func customizeNavigationBar(){ let navBarAppearance = UINavigationBar.appearance() - navBarAppearance.tintColor = ColorPalette.black + navBarAppearance.isTranslucent = false + navBarAppearance.shadowImage = UIImage() + navBarAppearance.setBackgroundImage(UIImage(), for: .default) navBarAppearance.barTintColor = ColorPalette.white - navBarAppearance.prefersLargeTitles = true + navBarAppearance.tintColor = ColorPalette.rossoCorsa + navBarAppearance.titleTextAttributes = [NSAttributedString.Key.font: UIFont(name: FontNames.medium, size: 16)!, NSAttributedString.Key.foregroundColor: ColorPalette.jet] } } diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.swift index 69377cfc..cb10ceb9 100755 --- a/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.swift +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.swift @@ -1,5 +1,5 @@ // -// InfoDownTableViewCell.swift +// DownInfoTableViewCell.swift // TesteiOS // // Created by Brendoon Ryos on 22/02/19. @@ -8,20 +8,19 @@ import UIKit -class InfoDownTableViewCell: FundBaseTableViewCell { +class DownInfoTableViewCell: FundBaseTableViewCell { @IBOutlet weak var nameLabel: UILabel! @IBOutlet weak var downloadButton: UIButton! - - override func awakeFromNib() { - super.awakeFromNib() - } + + var data: String? = .none override func setup(with fund: Fund) { nameLabel.text = fund.downInfo[tag].name + data = fund.downInfo[tag].data } @IBAction func downloadData(_ sender: UIButton){ - UIApplication.shared.openURL(NSURL(string: "http://www.google.com")! as URL) + self.downloadAction?(data) } } diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.xib index 32df4a93..684f5655 100755 --- a/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.xib +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.xib @@ -17,7 +17,7 @@ - + diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/FundBaseTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Fund/FundBaseTableViewCell.swift index f6810d9f..88abc918 100644 --- a/TesteiOS/TesteiOS/UI/Cells/Fund/FundBaseTableViewCell.swift +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/FundBaseTableViewCell.swift @@ -7,18 +7,10 @@ // import UIKit +import Reusable -class FundBaseTableViewCell: UITableViewCell { - - override func awakeFromNib() { - super.awakeFromNib() - // Initialization code - } - - override func setSelected(_ selected: Bool, animated: Bool) { - super.setSelected(selected, animated: animated) - - // Configure the view for the selected state - } - +class FundBaseTableViewCell: UITableViewCell, NibReusable { + func setup(with fund: Fund) {} + var investAction: (() -> ())? + var downloadAction: ((String?) -> ())? } diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.swift index 3bc3c87c..86aebbc8 100755 --- a/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.swift +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.swift @@ -16,7 +16,6 @@ class FundHeaderTableViewCell: FundBaseTableViewCell { @IBOutlet weak var definitionLabel: UILabel! @IBOutlet weak var riskTitleLabel: UILabel! @IBOutlet weak var riskView: RiskView! - @IBOutlet weak var infoTitleLabel: UILabel! override func setup(with fund: Fund) { titleLabel.text = fund.title @@ -25,7 +24,6 @@ class FundHeaderTableViewCell: FundBaseTableViewCell { definitionLabel.text = fund.definition riskTitleLabel.text = fund.riskTitle riskView.setRist(risk: fund.risk) - infoTitleLabel.text = fund.infoTitle } } diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.xib index 69e33866..c2c3b85a 100755 --- a/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.xib +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.xib @@ -16,18 +16,15 @@ DINPro-Medium - - DINPro-Regular - - + - + - - - - - - @@ -238,7 +211,6 @@ Multimercado - @@ -246,7 +218,6 @@ Multimercado - diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell.swift deleted file mode 100755 index f9447087..00000000 --- a/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell.swift +++ /dev/null @@ -1,27 +0,0 @@ -// -// InfoTableViewCell.swift -// TesteiOS -// -// Created by Brendoon Ryos on 22/02/19. -// Copyright © 2019 Brendoon Ryos. All rights reserved. -// - -import UIKit - -class InfoTableViewCell: UITableViewCell { - - @IBOutlet weak var labelName: UILabel! - @IBOutlet weak var labelData: UILabel! - - override func awakeFromNib() { - super.awakeFromNib() - // Initialization code - } - - override func setSelected(_ selected: Bool, animated: Bool) { - super.setSelected(selected, animated: animated) - - // Configure the view for the selected state - } - -} diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewCell.swift new file mode 100755 index 00000000..8e441a32 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewCell.swift @@ -0,0 +1,20 @@ +// +// InfoTableViewCell.swift +// TesteiOS +// +// Created by Brendoon Ryos on 22/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class InfoTableViewCell: FundBaseTableViewCell { + + @IBOutlet weak var nameLabel: UILabel! + @IBOutlet weak var dataLabel: UILabel! + + override func setup(with fund: Fund) { + nameLabel.text = fund.info[tag].name + dataLabel.text = fund.info[tag].data + } +} diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewCell.xib index 9e9862e1..cc347e94 100755 --- a/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewCell.xib +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewCell.xib @@ -9,39 +9,39 @@ + + + DINPro-Regular + + - + - + - - - - - + + diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.swift index b021d4af..0fb97bec 100644 --- a/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.swift +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.swift @@ -8,17 +8,26 @@ import UIKit -class InvestTableViewCell: UITableViewCell { - - override func awakeFromNib() { - super.awakeFromNib() - // Initialization code - } - - override func setSelected(_ selected: Bool, animated: Bool) { - super.setSelected(selected, animated: animated) - - // Configure the view for the selected state - } +class InvestTableViewCell: FundBaseTableViewCell { + + @IBOutlet weak var investButton: UIButton! + + override func awakeFromNib() { + super.awakeFromNib() + investButton.layer.cornerRadius = investButton.frame.height / 2 + investButton.setTitle("Investir", for: .normal) + } + @IBAction func investButtonPressed(_ sender: UIButton) { + UIView.animate(withDuration: 0.2, animations: { + sender.backgroundColor = ColorPalette.middleRedPurple + sender.transform = CGAffineTransform(scaleX: 0.90, y: 0.83) + }) { completed in + UIView.animate(withDuration: 0.2, animations: { + self.investAction?() + sender.backgroundColor = ColorPalette.rossoCorsa + sender.transform = CGAffineTransform.identity + }) + } + } } diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.xib index 5dfb2962..13694482 100644 --- a/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.xib +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.xib @@ -1,21 +1,54 @@ - - + + + + + - + + + + + DINPro-Medium + + - - + + - + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.swift index 81269067..22c04ec4 100644 --- a/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.swift +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.swift @@ -9,8 +9,21 @@ import UIKit class MoreInfoTableViewCell: FundBaseTableViewCell { - - override func awakeFromNib() { - super.awakeFromNib() - } + @IBOutlet weak var infoTitleLabel: UILabel! + @IBOutlet weak var monthFundLabel: UILabel! + @IBOutlet weak var monthCdiLabel: UILabel! + @IBOutlet weak var yearFundLabel: UILabel! + @IBOutlet weak var yearCdiLabel: UILabel! + @IBOutlet weak var twelveMonthsFundLabel: UILabel! + @IBOutlet weak var twelveMonthsCdiLabel: UILabel! + + override func setup(with fund: Fund) { + infoTitleLabel.text = fund.infoTitle + monthFundLabel.text = String(format: "%.1f %%", fund.moreInfo.month.fund) + monthCdiLabel.text = String(format: "%.1f %%", fund.moreInfo.month.cdi) + yearFundLabel.text = String(format: "%.1f %%", fund.moreInfo.year.fund) + yearCdiLabel.text = String(format: "%.1f %%", fund.moreInfo.year.cdi) + twelveMonthsFundLabel.text = String(format: "%.1f %%", fund.moreInfo.twelveMonths.fund) + twelveMonthsCdiLabel.text = String(format: "%.1f %%", fund.moreInfo.twelveMonths.cdi) + } } diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.xib index 80a28506..613ba8a0 100644 --- a/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.xib +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.xib @@ -9,17 +9,163 @@ + + + DINPro-Medium + + + DINPro-Regular + + - - + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS/UI/Views/Funds/RiskView.swift b/TesteiOS/TesteiOS/UI/Views/Funds/RiskView.swift index f81ac53a..743cab09 100644 --- a/TesteiOS/TesteiOS/UI/Views/Funds/RiskView.swift +++ b/TesteiOS/TesteiOS/UI/Views/Funds/RiskView.swift @@ -54,7 +54,7 @@ class RiskView: UIView { } private func configureVImageView(risk: Int) { - let factor = self.frame.width / 5 + let factor = (UIScreen.main.bounds.width - 70) / 5 let value = defaultVImageViewLeadingConstraintValue + (CGFloat(risk - 1) * factor) vImageViewLeadingConstraint.constant = value } @@ -81,7 +81,7 @@ class RiskView: UIView { lastBar.layer.cornerRadius = lastBar.frame.height / 2 lastBar.layer.maskedCorners = [.layerMaxXMinYCorner, .layerMaxXMaxYCorner] - + vImageViewLeadingConstraint.constant = ((UIScreen.main.bounds.width - 70) / 5) / 2 defaultVImageViewLeadingConstraintValue = vImageViewLeadingConstraint.constant } diff --git a/TesteiOS/TesteiOS/UI/Views/TabBarButton.swift b/TesteiOS/TesteiOS/UI/Views/TabBarButton.swift index 07dd76dc..78448b8b 100644 --- a/TesteiOS/TesteiOS/UI/Views/TabBarButton.swift +++ b/TesteiOS/TesteiOS/UI/Views/TabBarButton.swift @@ -10,12 +10,23 @@ import UIKit class TabBarButton: UIButton { - /* - // Only override draw() if you perform custom drawing. - // An empty implementation adversely affects performance during animation. - override func draw(_ rect: CGRect) { - // Drawing code - } - */ - + override init(frame: CGRect) { + super.init(frame: frame) + setup() + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + private func setup() { + contentMode = .scaleAspectFit + clipsToBounds = true + adjustsImageWhenHighlighted = false + adjustsImageWhenDisabled = false + setBackgroundImage(UIImage(named: "tabBarItemNormal"), for: .normal) + setBackgroundImage(UIImage(named: "tabBarItemSelected"), for: .selected) + tintColor = ColorPalette.white + titleLabel?.font = UIFont(name: FontNames.medium, size: 16) + } } diff --git a/TesteiOS/TesteiOS/UI/Views/TabBarView.swift b/TesteiOS/TesteiOS/UI/Views/TabBarView.swift index 130d4f1a..0772c099 100644 --- a/TesteiOS/TesteiOS/UI/Views/TabBarView.swift +++ b/TesteiOS/TesteiOS/UI/Views/TabBarView.swift @@ -9,13 +9,51 @@ import UIKit class TabBarView: UIView { + + lazy var button1: TabBarButton = { + let button = TabBarButton(frame: .zero) + button.tag = 0 + button.setTitle("Investimento", for: .normal) + return button + }() + + lazy var button2: TabBarButton = { + let button = TabBarButton(frame: .zero) + button.tag = 1 + button.setTitle("Contato", for: .normal) + return button + }() + + lazy var containerView: UIStackView = { + let view = UIStackView(frame: .zero) + view.axis = .horizontal + view.distribution = .fillEqually + return view + }() - /* - // Only override draw() if you perform custom drawing. - // An empty implementation adversely affects performance during animation. - override func draw(_ rect: CGRect) { - // Drawing code - } - */ + override init(frame: CGRect) { + super.init(frame: frame) + setupViewCode() + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } +} +extension TabBarView: ViewCode { + func buildViewHierarchy() { + addSubview(containerView) + } + + func setupConstraints() { + containerView.snp.makeConstraints { make in + make.edges.equalToSuperview() + } + } + + func configureViews() { + containerView.addArrangedSubview(button1) + containerView.addArrangedSubview(button2) + } } diff --git a/TesteiOS/TesteiOS/UI/Views/ViewCode.swift b/TesteiOS/TesteiOS/UI/Views/ViewCode.swift index 7ca831cf..002f4b6d 100644 --- a/TesteiOS/TesteiOS/UI/Views/ViewCode.swift +++ b/TesteiOS/TesteiOS/UI/Views/ViewCode.swift @@ -7,3 +7,20 @@ // import Foundation + +protocol ViewCode: class { + func setupConstraints() + func buildViewHierarchy() + func setupViewCode() + func configureViews() +} + +extension ViewCode { + func setupViewCode() { + buildViewHierarchy() + setupConstraints() + configureViews() + } + + func configureViews() {} +} From cf5a344d3ae1ee9f78c0c608da3e4e967135b8fb Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:20:08 -0300 Subject: [PATCH 12/22] Adding commons --- TesteiOS/TesteiOS/Commons/ItemsTableViewDataSource.swift | 7 +++---- TesteiOS/TesteiOS/Commons/TabBarViewController.swift | 3 +++ 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/TesteiOS/TesteiOS/Commons/ItemsTableViewDataSource.swift b/TesteiOS/TesteiOS/Commons/ItemsTableViewDataSource.swift index 75e494b1..cc1f33c7 100644 --- a/TesteiOS/TesteiOS/Commons/ItemsTableViewDataSource.swift +++ b/TesteiOS/TesteiOS/Commons/ItemsTableViewDataSource.swift @@ -1,6 +1,6 @@ // // ItemsTableViewDataSource.swift -// Movs +// TesteiOS // // Created by Brendoon Ryos on 04/02/19. // Copyright © 2019 Brendoon Ryos. All rights reserved. @@ -25,9 +25,8 @@ extension ItemsTableViewDataSource { registerTableView() self.tableView?.dataSource = self self.tableView?.delegate = self.delegate + self.tableView?.reloadData() } - func registerTableView() { - - } + func registerTableView() {} } diff --git a/TesteiOS/TesteiOS/Commons/TabBarViewController.swift b/TesteiOS/TesteiOS/Commons/TabBarViewController.swift index 1bc389b0..cac14515 100644 --- a/TesteiOS/TesteiOS/Commons/TabBarViewController.swift +++ b/TesteiOS/TesteiOS/Commons/TabBarViewController.swift @@ -41,5 +41,8 @@ class TabBarViewController: UITabBarController { selectedIndex = sender.tag tabBarView.button1.isSelected = tabBarView.button1.tag == sender.tag tabBarView.button2.isSelected = tabBarView.button2.tag == sender.tag + + tabBarView.button1.isUserInteractionEnabled = !tabBarView.button1.isSelected + tabBarView.button2.isUserInteractionEnabled = !tabBarView.button2.isSelected } } From 5717088aab56c406cb4daeeee8963fa3a786296a Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:21:29 -0300 Subject: [PATCH 13/22] Adding supporting files --- TesteiOS/TesteiOS.xcodeproj/project.pbxproj | 763 +++++++++++++++++- .../UserInterfaceState.xcuserstate | Bin 5151 -> 7998 bytes .../xcshareddata/xcschemes/TesteiOS.xcscheme | 112 +++ .../xcschemes/xcschememanagement.plist | 20 +- .../Supporting Files/AppDelegate.swift | 11 +- .../Base.lproj/LaunchScreen.storyboard | 24 +- TesteiOS/TesteiOS/Supporting Files/Info.plist | 4 + 7 files changed, 901 insertions(+), 33 deletions(-) create mode 100644 TesteiOS/TesteiOS.xcodeproj/xcshareddata/xcschemes/TesteiOS.xcscheme diff --git a/TesteiOS/TesteiOS.xcodeproj/project.pbxproj b/TesteiOS/TesteiOS.xcodeproj/project.pbxproj index 1f187d7a..d7444ba4 100644 --- a/TesteiOS/TesteiOS.xcodeproj/project.pbxproj +++ b/TesteiOS/TesteiOS.xcodeproj/project.pbxproj @@ -7,13 +7,91 @@ objects = { /* Begin PBXBuildFile section */ + 65B2BB04221F121C009A5A7B /* TabBarViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB03221F121C009A5A7B /* TabBarViewController.swift */; }; + 65B2BB09221F1D1C009A5A7B /* TabBarView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB08221F1D1C009A5A7B /* TabBarView.swift */; }; + 65B2BB0B221F1D44009A5A7B /* ViewCode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB0A221F1D44009A5A7B /* ViewCode.swift */; }; + 65B2BB0D221F252A009A5A7B /* TabBarButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB0C221F252A009A5A7B /* TabBarButton.swift */; }; + 65B2BB0F221F2750009A5A7B /* FontNames.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB0E221F2750009A5A7B /* FontNames.swift */; }; + 65B2BB18221F2AC9009A5A7B /* ContactPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB12221F2AC9009A5A7B /* ContactPresenter.swift */; }; + 65B2BB19221F2AC9009A5A7B /* ContactWorker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB13221F2AC9009A5A7B /* ContactWorker.swift */; }; + 65B2BB1A221F2AC9009A5A7B /* ContactRouter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB14221F2AC9009A5A7B /* ContactRouter.swift */; }; + 65B2BB1B221F2AC9009A5A7B /* ContactModels.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB15221F2AC9009A5A7B /* ContactModels.swift */; }; + 65B2BB1C221F2AC9009A5A7B /* ContactViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB16221F2AC9009A5A7B /* ContactViewController.swift */; }; + 65B2BB1D221F2AC9009A5A7B /* ContactInteractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB17221F2AC9009A5A7B /* ContactInteractor.swift */; }; + 65B2BB24221F2ADD009A5A7B /* FundsPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB1E221F2ADD009A5A7B /* FundsPresenter.swift */; }; + 65B2BB25221F2ADD009A5A7B /* FundsWorker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB1F221F2ADD009A5A7B /* FundsWorker.swift */; }; + 65B2BB26221F2ADD009A5A7B /* FundsRouter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB20221F2ADD009A5A7B /* FundsRouter.swift */; }; + 65B2BB27221F2ADD009A5A7B /* FundsModels.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB21221F2ADD009A5A7B /* FundsModels.swift */; }; + 65B2BB28221F2ADD009A5A7B /* FundsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB22221F2ADD009A5A7B /* FundsViewController.swift */; }; + 65B2BB29221F2ADD009A5A7B /* FundsInteractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB23221F2ADD009A5A7B /* FundsInteractor.swift */; }; + 65B2BB2C221F31B4009A5A7B /* AppearanceProxyHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB2B221F31B4009A5A7B /* AppearanceProxyHelper.swift */; }; + 65B2BB2E221F3342009A5A7B /* ColorPalette.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB2D221F3342009A5A7B /* ColorPalette.swift */; }; + 65B2BB31221F33FC009A5A7B /* UIColor+Hex.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB30221F33FC009A5A7B /* UIColor+Hex.swift */; }; + 65B2BB33221F4326009A5A7B /* ContactView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB32221F4326009A5A7B /* ContactView.swift */; }; + 65B2BB35221F4AAA009A5A7B /* ContactTableView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB34221F4AAA009A5A7B /* ContactTableView.swift */; }; + 65B2BB37221F9BC5009A5A7B /* ContactDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB36221F9BC5009A5A7B /* ContactDataSource.swift */; }; + 65B2BB39221F9BFE009A5A7B /* ContactDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB38221F9BFE009A5A7B /* ContactDelegate.swift */; }; + 65B2BB3B221F9DDB009A5A7B /* ItemsTableViewDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB3A221F9DDB009A5A7B /* ItemsTableViewDataSource.swift */; }; + 65B2BB3F221F9E45009A5A7B /* BankAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB3E221F9E45009A5A7B /* BankAPI.swift */; }; + 65B2BB41221F9F8E009A5A7B /* NetworkManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB40221F9F8E009A5A7B /* NetworkManager.swift */; }; + 65B2BB43221FA075009A5A7B /* BankAPI+Testing.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB42221FA075009A5A7B /* BankAPI+Testing.swift */; }; + 65B2BB45221FA2E7009A5A7B /* DefaultAlamofireManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB44221FA2E7009A5A7B /* DefaultAlamofireManager.swift */; }; + 65B2BB47221FA376009A5A7B /* FormData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB46221FA376009A5A7B /* FormData.swift */; }; + 65B2BB49221FA385009A5A7B /* FundsData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB48221FA385009A5A7B /* FundsData.swift */; }; + 65B2BB4B221FA481009A5A7B /* Cell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB4A221FA481009A5A7B /* Cell.swift */; }; + 65B2BB5A221FAFDC009A5A7B /* FundHeaderTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB4C221FAFD8009A5A7B /* FundHeaderTableViewCell.swift */; }; + 65B2BB5B221FAFDC009A5A7B /* InfoTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB4D221FAFD9009A5A7B /* InfoTableViewCell.xib */; }; + 65B2BB5C221FAFDC009A5A7B /* DownInfoTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB4E221FAFD9009A5A7B /* DownInfoTableViewCell.swift */; }; + 65B2BB5D221FAFDC009A5A7B /* InfoTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB4F221FAFD9009A5A7B /* InfoTableViewCell.swift */; }; + 65B2BB5E221FAFDC009A5A7B /* DownInfoTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB50221FAFDA009A5A7B /* DownInfoTableViewCell.xib */; }; + 65B2BB5F221FAFDC009A5A7B /* FundHeaderTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB51221FAFDA009A5A7B /* FundHeaderTableViewCell.xib */; }; + 65B2BB61221FAFDC009A5A7B /* CheckboxTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB53221FAFDB009A5A7B /* CheckboxTableViewCell.xib */; }; + 65B2BB62221FAFDC009A5A7B /* TextFieldTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB54221FAFDC009A5A7B /* TextFieldTableViewCell.swift */; }; + 65B2BB63221FAFDC009A5A7B /* SendTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB55221FAFDC009A5A7B /* SendTableViewCell.xib */; }; + 65B2BB64221FAFDC009A5A7B /* SendTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB56221FAFDC009A5A7B /* SendTableViewCell.swift */; }; + 65B2BB65221FAFDC009A5A7B /* TextFieldTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB57221FAFDC009A5A7B /* TextFieldTableViewCell.xib */; }; + 65B2BB67221FAFDC009A5A7B /* CheckboxTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB59221FAFDC009A5A7B /* CheckboxTableViewCell.swift */; }; + 65B2BB69221FB486009A5A7B /* TextTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB68221FB486009A5A7B /* TextTableViewCell.swift */; }; + 65B2BB6B221FB4AD009A5A7B /* TextTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB6A221FB4AD009A5A7B /* TextTableViewCell.xib */; }; + 65B2BB6D221FC02B009A5A7B /* ContactBaseTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB6C221FC02B009A5A7B /* ContactBaseTableViewCell.swift */; }; + 65B2BB77221FEF54009A5A7B /* DINEngschriftStd.otf in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB6E221FEF53009A5A7B /* DINEngschriftStd.otf */; }; + 65B2BB78221FEF54009A5A7B /* DINPro-Light.otf in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB6F221FEF53009A5A7B /* DINPro-Light.otf */; }; + 65B2BB79221FEF54009A5A7B /* DINPro-Medium.otf in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB70221FEF53009A5A7B /* DINPro-Medium.otf */; }; + 65B2BB7A221FEF54009A5A7B /* DINPro-Black.otf in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB71221FEF54009A5A7B /* DINPro-Black.otf */; }; + 65B2BB7B221FEF54009A5A7B /* DINNeuzeitGroteskStd-Light.otf in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB72221FEF54009A5A7B /* DINNeuzeitGroteskStd-Light.otf */; }; + 65B2BB7C221FEF54009A5A7B /* DINNeuzeitGroteskStd-BdCond.otf in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB73221FEF54009A5A7B /* DINNeuzeitGroteskStd-BdCond.otf */; }; + 65B2BB7D221FEF54009A5A7B /* DINPro-Bold.otf in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB74221FEF54009A5A7B /* DINPro-Bold.otf */; }; + 65B2BB7E221FEF54009A5A7B /* DINPro-Regular.otf in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB75221FEF54009A5A7B /* DINPro-Regular.otf */; }; + 65B2BB7F221FEF54009A5A7B /* DINMittelschriftStd.otf in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB76221FEF54009A5A7B /* DINMittelschriftStd.otf */; }; + 65B2BB8322206527009A5A7B /* String+Validator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB8222206527009A5A7B /* String+Validator.swift */; }; + 65B2BB872221D411009A5A7B /* FeedbackView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB862221D411009A5A7B /* FeedbackView.swift */; }; + 65B2BB892221D42A009A5A7B /* FeedbackView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB882221D42A009A5A7B /* FeedbackView.xib */; }; + 65B2BB90222210BD009A5A7B /* Fund.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB8F222210BD009A5A7B /* Fund.swift */; }; + 65B2BB92222213E6009A5A7B /* MoreInfoData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB91222213E6009A5A7B /* MoreInfoData.swift */; }; + 65B2BB9422221568009A5A7B /* Info.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB9322221568009A5A7B /* Info.swift */; }; + 65B2BB96222216CF009A5A7B /* MoreInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB95222216CF009A5A7B /* MoreInfo.swift */; }; + 65B2BB99222228F7009A5A7B /* FundsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB98222228F7009A5A7B /* FundsView.swift */; }; + 65B2BB9B22222A98009A5A7B /* FundsDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB9A22222A98009A5A7B /* FundsDataSource.swift */; }; + 65B2BB9D22222AB3009A5A7B /* FundsDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB9C22222AB3009A5A7B /* FundsDelegate.swift */; }; + 65B2BBA122224B6A009A5A7B /* FundBaseTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BBA022224B6A009A5A7B /* FundBaseTableViewCell.swift */; }; + 65B2BBA322224F00009A5A7B /* FundsTableView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BBA222224F00009A5A7B /* FundsTableView.swift */; }; + 65B2BBA822225520009A5A7B /* MoreInfoTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BBA622225520009A5A7B /* MoreInfoTableViewCell.swift */; }; + 65B2BBA922225520009A5A7B /* MoreInfoTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BBA722225520009A5A7B /* MoreInfoTableViewCell.xib */; }; + 65B2BBAB22226BAE009A5A7B /* RiskView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BBAA22226BAE009A5A7B /* RiskView.swift */; }; + 65B2BBB32222A933009A5A7B /* InvestTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BBB12222A933009A5A7B /* InvestTableViewCell.swift */; }; + 65B2BBB42222A933009A5A7B /* InvestTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BBB22222A933009A5A7B /* InvestTableViewCell.xib */; }; + 65B2BBB92223896C009A5A7B /* Fund.json in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BBB82223896C009A5A7B /* Fund.json */; }; + 65B2BBBB22238980009A5A7B /* Form.json in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BBBA22238980009A5A7B /* Form.json */; }; + 65B2BBBF22238E5A009A5A7B /* FormDataSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BBBE22238E5A009A5A7B /* FormDataSpec.swift */; }; + 65B2BBC2222390F6009A5A7B /* ContactDataSourceSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BBC1222390F6009A5A7B /* ContactDataSourceSpec.swift */; }; + 65B2BBC622239D1C009A5A7B /* StringValidatorSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BBC522239D1C009A5A7B /* StringValidatorSpec.swift */; }; + 65B2BBCA2223A168009A5A7B /* ContactInteractSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BBC92223A168009A5A7B /* ContactInteractSpec.swift */; }; 65EF2626221CC3E500014212 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65EF2625221CC3E500014212 /* AppDelegate.swift */; }; - 65EF2628221CC3E500014212 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65EF2627221CC3E500014212 /* ViewController.swift */; }; - 65EF262B221CC3E500014212 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 65EF2629221CC3E500014212 /* Main.storyboard */; }; 65EF262D221CC3E700014212 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 65EF262C221CC3E700014212 /* Assets.xcassets */; }; 65EF2630221CC3E700014212 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 65EF262E221CC3E700014212 /* LaunchScreen.storyboard */; }; - 65EF263B221CC3E700014212 /* TesteiOSTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65EF263A221CC3E700014212 /* TesteiOSTests.swift */; }; 65EF2646221CC3E700014212 /* TesteiOSUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65EF2645221CC3E700014212 /* TesteiOSUITests.swift */; }; + BF30F532668E8706D861BA2D /* Pods_TesteiOSTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E53AA491062BDD9DF858AB8E /* Pods_TesteiOSTests.framework */; }; + DAC11BD224CBF944124D26B8 /* Pods_TesteiOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C2C7FB9A50E98EBED4E7C177 /* Pods_TesteiOS.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -34,19 +112,101 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 1C51913E040327570673FCE3 /* Pods-TesteiOSTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TesteiOSTests.release.xcconfig"; path = "Target Support Files/Pods-TesteiOSTests/Pods-TesteiOSTests.release.xcconfig"; sourceTree = ""; }; + 65B2BB03221F121C009A5A7B /* TabBarViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TabBarViewController.swift; sourceTree = ""; }; + 65B2BB08221F1D1C009A5A7B /* TabBarView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TabBarView.swift; sourceTree = ""; }; + 65B2BB0A221F1D44009A5A7B /* ViewCode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewCode.swift; sourceTree = ""; }; + 65B2BB0C221F252A009A5A7B /* TabBarButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TabBarButton.swift; sourceTree = ""; }; + 65B2BB0E221F2750009A5A7B /* FontNames.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FontNames.swift; sourceTree = ""; }; + 65B2BB12221F2AC9009A5A7B /* ContactPresenter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactPresenter.swift; sourceTree = ""; }; + 65B2BB13221F2AC9009A5A7B /* ContactWorker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactWorker.swift; sourceTree = ""; }; + 65B2BB14221F2AC9009A5A7B /* ContactRouter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactRouter.swift; sourceTree = ""; }; + 65B2BB15221F2AC9009A5A7B /* ContactModels.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactModels.swift; sourceTree = ""; }; + 65B2BB16221F2AC9009A5A7B /* ContactViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactViewController.swift; sourceTree = ""; }; + 65B2BB17221F2AC9009A5A7B /* ContactInteractor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactInteractor.swift; sourceTree = ""; }; + 65B2BB1E221F2ADD009A5A7B /* FundsPresenter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundsPresenter.swift; sourceTree = ""; }; + 65B2BB1F221F2ADD009A5A7B /* FundsWorker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundsWorker.swift; sourceTree = ""; }; + 65B2BB20221F2ADD009A5A7B /* FundsRouter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundsRouter.swift; sourceTree = ""; }; + 65B2BB21221F2ADD009A5A7B /* FundsModels.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundsModels.swift; sourceTree = ""; }; + 65B2BB22221F2ADD009A5A7B /* FundsViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundsViewController.swift; sourceTree = ""; }; + 65B2BB23221F2ADD009A5A7B /* FundsInteractor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundsInteractor.swift; sourceTree = ""; }; + 65B2BB2B221F31B4009A5A7B /* AppearanceProxyHelper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppearanceProxyHelper.swift; sourceTree = ""; }; + 65B2BB2D221F3342009A5A7B /* ColorPalette.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ColorPalette.swift; sourceTree = ""; }; + 65B2BB30221F33FC009A5A7B /* UIColor+Hex.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIColor+Hex.swift"; sourceTree = ""; }; + 65B2BB32221F4326009A5A7B /* ContactView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactView.swift; sourceTree = ""; }; + 65B2BB34221F4AAA009A5A7B /* ContactTableView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactTableView.swift; sourceTree = ""; }; + 65B2BB36221F9BC5009A5A7B /* ContactDataSource.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactDataSource.swift; sourceTree = ""; }; + 65B2BB38221F9BFE009A5A7B /* ContactDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactDelegate.swift; sourceTree = ""; }; + 65B2BB3A221F9DDB009A5A7B /* ItemsTableViewDataSource.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ItemsTableViewDataSource.swift; sourceTree = ""; }; + 65B2BB3E221F9E45009A5A7B /* BankAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BankAPI.swift; sourceTree = ""; }; + 65B2BB40221F9F8E009A5A7B /* NetworkManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NetworkManager.swift; sourceTree = ""; }; + 65B2BB42221FA075009A5A7B /* BankAPI+Testing.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "BankAPI+Testing.swift"; sourceTree = ""; }; + 65B2BB44221FA2E7009A5A7B /* DefaultAlamofireManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DefaultAlamofireManager.swift; sourceTree = ""; }; + 65B2BB46221FA376009A5A7B /* FormData.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FormData.swift; sourceTree = ""; }; + 65B2BB48221FA385009A5A7B /* FundsData.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundsData.swift; sourceTree = ""; }; + 65B2BB4A221FA481009A5A7B /* Cell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Cell.swift; sourceTree = ""; }; + 65B2BB4C221FAFD8009A5A7B /* FundHeaderTableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FundHeaderTableViewCell.swift; sourceTree = ""; }; + 65B2BB4D221FAFD9009A5A7B /* InfoTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = InfoTableViewCell.xib; sourceTree = ""; }; + 65B2BB4E221FAFD9009A5A7B /* DownInfoTableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DownInfoTableViewCell.swift; sourceTree = ""; }; + 65B2BB4F221FAFD9009A5A7B /* InfoTableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = InfoTableViewCell.swift; sourceTree = ""; }; + 65B2BB50221FAFDA009A5A7B /* DownInfoTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = DownInfoTableViewCell.xib; sourceTree = ""; }; + 65B2BB51221FAFDA009A5A7B /* FundHeaderTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FundHeaderTableViewCell.xib; sourceTree = ""; }; + 65B2BB53221FAFDB009A5A7B /* CheckboxTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = CheckboxTableViewCell.xib; sourceTree = ""; }; + 65B2BB54221FAFDC009A5A7B /* TextFieldTableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TextFieldTableViewCell.swift; sourceTree = ""; }; + 65B2BB55221FAFDC009A5A7B /* SendTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = SendTableViewCell.xib; sourceTree = ""; }; + 65B2BB56221FAFDC009A5A7B /* SendTableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SendTableViewCell.swift; sourceTree = ""; }; + 65B2BB57221FAFDC009A5A7B /* TextFieldTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = TextFieldTableViewCell.xib; sourceTree = ""; }; + 65B2BB59221FAFDC009A5A7B /* CheckboxTableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CheckboxTableViewCell.swift; sourceTree = ""; }; + 65B2BB68221FB486009A5A7B /* TextTableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TextTableViewCell.swift; sourceTree = ""; }; + 65B2BB6A221FB4AD009A5A7B /* TextTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = TextTableViewCell.xib; sourceTree = ""; }; + 65B2BB6C221FC02B009A5A7B /* ContactBaseTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactBaseTableViewCell.swift; sourceTree = ""; }; + 65B2BB6E221FEF53009A5A7B /* DINEngschriftStd.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = DINEngschriftStd.otf; sourceTree = ""; }; + 65B2BB6F221FEF53009A5A7B /* DINPro-Light.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "DINPro-Light.otf"; sourceTree = ""; }; + 65B2BB70221FEF53009A5A7B /* DINPro-Medium.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "DINPro-Medium.otf"; sourceTree = ""; }; + 65B2BB71221FEF54009A5A7B /* DINPro-Black.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "DINPro-Black.otf"; sourceTree = ""; }; + 65B2BB72221FEF54009A5A7B /* DINNeuzeitGroteskStd-Light.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "DINNeuzeitGroteskStd-Light.otf"; sourceTree = ""; }; + 65B2BB73221FEF54009A5A7B /* DINNeuzeitGroteskStd-BdCond.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "DINNeuzeitGroteskStd-BdCond.otf"; sourceTree = ""; }; + 65B2BB74221FEF54009A5A7B /* DINPro-Bold.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "DINPro-Bold.otf"; sourceTree = ""; }; + 65B2BB75221FEF54009A5A7B /* DINPro-Regular.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "DINPro-Regular.otf"; sourceTree = ""; }; + 65B2BB76221FEF54009A5A7B /* DINMittelschriftStd.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = DINMittelschriftStd.otf; sourceTree = ""; }; + 65B2BB8222206527009A5A7B /* String+Validator.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = "String+Validator.swift"; path = "../../../../../TesteiOSv2/TesteiOSv2/TesteiOSv2/Supporting Files/Extensions/String/String+Validator.swift"; sourceTree = ""; }; + 65B2BB862221D411009A5A7B /* FeedbackView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbackView.swift; sourceTree = ""; }; + 65B2BB882221D42A009A5A7B /* FeedbackView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FeedbackView.xib; sourceTree = ""; }; + 65B2BB8F222210BD009A5A7B /* Fund.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Fund.swift; sourceTree = ""; }; + 65B2BB91222213E6009A5A7B /* MoreInfoData.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoreInfoData.swift; sourceTree = ""; }; + 65B2BB9322221568009A5A7B /* Info.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Info.swift; sourceTree = ""; }; + 65B2BB95222216CF009A5A7B /* MoreInfo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoreInfo.swift; sourceTree = ""; }; + 65B2BB98222228F7009A5A7B /* FundsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundsView.swift; sourceTree = ""; }; + 65B2BB9A22222A98009A5A7B /* FundsDataSource.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundsDataSource.swift; sourceTree = ""; }; + 65B2BB9C22222AB3009A5A7B /* FundsDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundsDelegate.swift; sourceTree = ""; }; + 65B2BBA022224B6A009A5A7B /* FundBaseTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundBaseTableViewCell.swift; sourceTree = ""; }; + 65B2BBA222224F00009A5A7B /* FundsTableView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundsTableView.swift; sourceTree = ""; }; + 65B2BBA622225520009A5A7B /* MoreInfoTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoreInfoTableViewCell.swift; sourceTree = ""; }; + 65B2BBA722225520009A5A7B /* MoreInfoTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MoreInfoTableViewCell.xib; sourceTree = ""; }; + 65B2BBAA22226BAE009A5A7B /* RiskView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RiskView.swift; sourceTree = ""; }; + 65B2BBB12222A933009A5A7B /* InvestTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InvestTableViewCell.swift; sourceTree = ""; }; + 65B2BBB22222A933009A5A7B /* InvestTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InvestTableViewCell.xib; sourceTree = ""; }; + 65B2BBB82223896C009A5A7B /* Fund.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = Fund.json; sourceTree = ""; }; + 65B2BBBA22238980009A5A7B /* Form.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = Form.json; sourceTree = ""; }; + 65B2BBBE22238E5A009A5A7B /* FormDataSpec.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FormDataSpec.swift; sourceTree = ""; }; + 65B2BBC1222390F6009A5A7B /* ContactDataSourceSpec.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactDataSourceSpec.swift; sourceTree = ""; }; + 65B2BBC522239D1C009A5A7B /* StringValidatorSpec.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringValidatorSpec.swift; sourceTree = ""; }; + 65B2BBC92223A168009A5A7B /* ContactInteractSpec.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactInteractSpec.swift; sourceTree = ""; }; 65EF2622221CC3E500014212 /* TesteiOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = TesteiOS.app; sourceTree = BUILT_PRODUCTS_DIR; }; 65EF2625221CC3E500014212 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 65EF2627221CC3E500014212 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; - 65EF262A221CC3E500014212 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; 65EF262C221CC3E700014212 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 65EF262F221CC3E700014212 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 65EF2631221CC3E700014212 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 65EF2636221CC3E700014212 /* TesteiOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = TesteiOSTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 65EF263A221CC3E700014212 /* TesteiOSTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TesteiOSTests.swift; sourceTree = ""; }; 65EF263C221CC3E700014212 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 65EF2641221CC3E700014212 /* TesteiOSUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = TesteiOSUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 65EF2645221CC3E700014212 /* TesteiOSUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TesteiOSUITests.swift; sourceTree = ""; }; 65EF2647221CC3E700014212 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 90D2E8A002C9BD53CCDBA5FB /* Pods-TesteiOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TesteiOS.release.xcconfig"; path = "Target Support Files/Pods-TesteiOS/Pods-TesteiOS.release.xcconfig"; sourceTree = ""; }; + AC1FED7AFFCC9F0BB4F951CF /* Pods-TesteiOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TesteiOS.debug.xcconfig"; path = "Target Support Files/Pods-TesteiOS/Pods-TesteiOS.debug.xcconfig"; sourceTree = ""; }; + C2C7FB9A50E98EBED4E7C177 /* Pods_TesteiOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_TesteiOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + D778FDDB6EFFC6823D4DE1D7 /* Pods-TesteiOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TesteiOSTests.debug.xcconfig"; path = "Target Support Files/Pods-TesteiOSTests/Pods-TesteiOSTests.debug.xcconfig"; sourceTree = ""; }; + E53AA491062BDD9DF858AB8E /* Pods_TesteiOSTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_TesteiOSTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -54,6 +214,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + DAC11BD224CBF944124D26B8 /* Pods_TesteiOS.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -61,6 +222,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + BF30F532668E8706D861BA2D /* Pods_TesteiOSTests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -74,6 +236,361 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 1927B86FEC455B2EA23B93B9 /* Pods */ = { + isa = PBXGroup; + children = ( + AC1FED7AFFCC9F0BB4F951CF /* Pods-TesteiOS.debug.xcconfig */, + 90D2E8A002C9BD53CCDBA5FB /* Pods-TesteiOS.release.xcconfig */, + D778FDDB6EFFC6823D4DE1D7 /* Pods-TesteiOSTests.debug.xcconfig */, + 1C51913E040327570673FCE3 /* Pods-TesteiOSTests.release.xcconfig */, + ); + path = Pods; + sourceTree = ""; + }; + 65B2BAEA221F0890009A5A7B /* Scenes */ = { + isa = PBXGroup; + children = ( + 65B2BB11221F2A1A009A5A7B /* Funds */, + 65B2BB10221F2937009A5A7B /* Contact */, + ); + path = Scenes; + sourceTree = ""; + }; + 65B2BAEB221F0896009A5A7B /* Commons */ = { + isa = PBXGroup; + children = ( + 65B2BB3A221F9DDB009A5A7B /* ItemsTableViewDataSource.swift */, + 65B2BB03221F121C009A5A7B /* TabBarViewController.swift */, + ); + path = Commons; + sourceTree = ""; + }; + 65B2BAEC221F08A0009A5A7B /* Supporting Files */ = { + isa = PBXGroup; + children = ( + 65B2BB2F221F33DE009A5A7B /* Extensions */, + 65EF2625221CC3E500014212 /* AppDelegate.swift */, + 65EF2631221CC3E700014212 /* Info.plist */, + 65EF262E221CC3E700014212 /* LaunchScreen.storyboard */, + ); + path = "Supporting Files"; + sourceTree = ""; + }; + 65B2BAED221F08A9009A5A7B /* Resources */ = { + isa = PBXGroup; + children = ( + 65B2BAEE221F08C8009A5A7B /* Fonts */, + 65EF262C221CC3E700014212 /* Assets.xcassets */, + 65B2BB0E221F2750009A5A7B /* FontNames.swift */, + 65B2BB2D221F3342009A5A7B /* ColorPalette.swift */, + ); + path = Resources; + sourceTree = ""; + }; + 65B2BAEE221F08C8009A5A7B /* Fonts */ = { + isa = PBXGroup; + children = ( + 65B2BB6E221FEF53009A5A7B /* DINEngschriftStd.otf */, + 65B2BB76221FEF54009A5A7B /* DINMittelschriftStd.otf */, + 65B2BB73221FEF54009A5A7B /* DINNeuzeitGroteskStd-BdCond.otf */, + 65B2BB72221FEF54009A5A7B /* DINNeuzeitGroteskStd-Light.otf */, + 65B2BB71221FEF54009A5A7B /* DINPro-Black.otf */, + 65B2BB74221FEF54009A5A7B /* DINPro-Bold.otf */, + 65B2BB6F221FEF53009A5A7B /* DINPro-Light.otf */, + 65B2BB70221FEF53009A5A7B /* DINPro-Medium.otf */, + 65B2BB75221FEF54009A5A7B /* DINPro-Regular.otf */, + ); + path = Fonts; + sourceTree = ""; + }; + 65B2BB05221F1CE0009A5A7B /* UI */ = { + isa = PBXGroup; + children = ( + 65B2BB2A221F31A6009A5A7B /* Appearance */, + 65B2BB07221F1CF2009A5A7B /* Cells */, + 65B2BB06221F1CE9009A5A7B /* Views */, + ); + path = UI; + sourceTree = ""; + }; + 65B2BB06221F1CE9009A5A7B /* Views */ = { + isa = PBXGroup; + children = ( + 65B2BBBD22238BF7009A5A7B /* Funds */, + 65B2BBBC22238BE3009A5A7B /* Contact */, + 65B2BB0C221F252A009A5A7B /* TabBarButton.swift */, + 65B2BB08221F1D1C009A5A7B /* TabBarView.swift */, + 65B2BB0A221F1D44009A5A7B /* ViewCode.swift */, + ); + path = Views; + sourceTree = ""; + }; + 65B2BB07221F1CF2009A5A7B /* Cells */ = { + isa = PBXGroup; + children = ( + 65B2BB852221A0E5009A5A7B /* Fund */, + 65B2BB842221A0D3009A5A7B /* Contact */, + ); + path = Cells; + sourceTree = ""; + }; + 65B2BB10221F2937009A5A7B /* Contact */ = { + isa = PBXGroup; + children = ( + 65B2BB12221F2AC9009A5A7B /* ContactPresenter.swift */, + 65B2BB13221F2AC9009A5A7B /* ContactWorker.swift */, + 65B2BB14221F2AC9009A5A7B /* ContactRouter.swift */, + 65B2BB15221F2AC9009A5A7B /* ContactModels.swift */, + 65B2BB16221F2AC9009A5A7B /* ContactViewController.swift */, + 65B2BB17221F2AC9009A5A7B /* ContactInteractor.swift */, + 65B2BB36221F9BC5009A5A7B /* ContactDataSource.swift */, + 65B2BB38221F9BFE009A5A7B /* ContactDelegate.swift */, + ); + path = Contact; + sourceTree = ""; + }; + 65B2BB11221F2A1A009A5A7B /* Funds */ = { + isa = PBXGroup; + children = ( + 65B2BB1E221F2ADD009A5A7B /* FundsPresenter.swift */, + 65B2BB1F221F2ADD009A5A7B /* FundsWorker.swift */, + 65B2BB20221F2ADD009A5A7B /* FundsRouter.swift */, + 65B2BB21221F2ADD009A5A7B /* FundsModels.swift */, + 65B2BB22221F2ADD009A5A7B /* FundsViewController.swift */, + 65B2BB23221F2ADD009A5A7B /* FundsInteractor.swift */, + 65B2BB9A22222A98009A5A7B /* FundsDataSource.swift */, + 65B2BB9C22222AB3009A5A7B /* FundsDelegate.swift */, + ); + path = Funds; + sourceTree = ""; + }; + 65B2BB2A221F31A6009A5A7B /* Appearance */ = { + isa = PBXGroup; + children = ( + 65B2BB2B221F31B4009A5A7B /* AppearanceProxyHelper.swift */, + ); + path = Appearance; + sourceTree = ""; + }; + 65B2BB2F221F33DE009A5A7B /* Extensions */ = { + isa = PBXGroup; + children = ( + 65B2BB8222206527009A5A7B /* String+Validator.swift */, + 65B2BB30221F33FC009A5A7B /* UIColor+Hex.swift */, + ); + path = Extensions; + sourceTree = ""; + }; + 65B2BB3C221F9E03009A5A7B /* Services */ = { + isa = PBXGroup; + children = ( + 65B2BB3E221F9E45009A5A7B /* BankAPI.swift */, + 65B2BB42221FA075009A5A7B /* BankAPI+Testing.swift */, + 65B2BBB5222388FA009A5A7B /* StubbedResponses */, + 65B2BB40221F9F8E009A5A7B /* NetworkManager.swift */, + 65B2BB44221FA2E7009A5A7B /* DefaultAlamofireManager.swift */, + ); + path = Services; + sourceTree = ""; + }; + 65B2BB3D221F9E1D009A5A7B /* Models */ = { + isa = PBXGroup; + children = ( + 65B2BB46221FA376009A5A7B /* FormData.swift */, + 65B2BB48221FA385009A5A7B /* FundsData.swift */, + 65B2BB4A221FA481009A5A7B /* Cell.swift */, + 65B2BB8F222210BD009A5A7B /* Fund.swift */, + 65B2BB91222213E6009A5A7B /* MoreInfoData.swift */, + 65B2BB95222216CF009A5A7B /* MoreInfo.swift */, + 65B2BB9322221568009A5A7B /* Info.swift */, + ); + path = Models; + sourceTree = ""; + }; + 65B2BB842221A0D3009A5A7B /* Contact */ = { + isa = PBXGroup; + children = ( + 65B2BB8D2221F04D009A5A7B /* TextFieldTableViewCell */, + 65B2BB8C2221F035009A5A7B /* SendTableViewCell */, + 65B2BB8B2221F01C009A5A7B /* CheckboxTableViewCell */, + 65B2BB8A2221F005009A5A7B /* TextTableViewCell */, + 65B2BB6C221FC02B009A5A7B /* ContactBaseTableViewCell.swift */, + ); + path = Contact; + sourceTree = ""; + }; + 65B2BB852221A0E5009A5A7B /* Fund */ = { + isa = PBXGroup; + children = ( + 65B2BBB02222A90A009A5A7B /* InvestTableViewCell */, + 65B2BBAF22229132009A5A7B /* InfoTableViewCell */, + 65B2BBAE22229019009A5A7B /* DownInfoTableViewCell */, + 65B2BBAD22227E24009A5A7B /* MoreInfoTableViewCell */, + 65B2BBAC22227E07009A5A7B /* FundHeaderTableViewCell */, + 65B2BBA022224B6A009A5A7B /* FundBaseTableViewCell.swift */, + ); + path = Fund; + sourceTree = ""; + }; + 65B2BB8A2221F005009A5A7B /* TextTableViewCell */ = { + isa = PBXGroup; + children = ( + 65B2BB68221FB486009A5A7B /* TextTableViewCell.swift */, + 65B2BB6A221FB4AD009A5A7B /* TextTableViewCell.xib */, + ); + path = TextTableViewCell; + sourceTree = ""; + }; + 65B2BB8B2221F01C009A5A7B /* CheckboxTableViewCell */ = { + isa = PBXGroup; + children = ( + 65B2BB59221FAFDC009A5A7B /* CheckboxTableViewCell.swift */, + 65B2BB53221FAFDB009A5A7B /* CheckboxTableViewCell.xib */, + ); + path = CheckboxTableViewCell; + sourceTree = ""; + }; + 65B2BB8C2221F035009A5A7B /* SendTableViewCell */ = { + isa = PBXGroup; + children = ( + 65B2BB56221FAFDC009A5A7B /* SendTableViewCell.swift */, + 65B2BB55221FAFDC009A5A7B /* SendTableViewCell.xib */, + ); + path = SendTableViewCell; + sourceTree = ""; + }; + 65B2BB8D2221F04D009A5A7B /* TextFieldTableViewCell */ = { + isa = PBXGroup; + children = ( + 65B2BB54221FAFDC009A5A7B /* TextFieldTableViewCell.swift */, + 65B2BB57221FAFDC009A5A7B /* TextFieldTableViewCell.xib */, + ); + path = TextFieldTableViewCell; + sourceTree = ""; + }; + 65B2BB8E2221FA13009A5A7B /* FeedbackView */ = { + isa = PBXGroup; + children = ( + 65B2BB862221D411009A5A7B /* FeedbackView.swift */, + 65B2BB882221D42A009A5A7B /* FeedbackView.xib */, + ); + path = FeedbackView; + sourceTree = ""; + }; + 65B2BBAC22227E07009A5A7B /* FundHeaderTableViewCell */ = { + isa = PBXGroup; + children = ( + 65B2BB4C221FAFD8009A5A7B /* FundHeaderTableViewCell.swift */, + 65B2BB51221FAFDA009A5A7B /* FundHeaderTableViewCell.xib */, + ); + path = FundHeaderTableViewCell; + sourceTree = ""; + }; + 65B2BBAD22227E24009A5A7B /* MoreInfoTableViewCell */ = { + isa = PBXGroup; + children = ( + 65B2BBA622225520009A5A7B /* MoreInfoTableViewCell.swift */, + 65B2BBA722225520009A5A7B /* MoreInfoTableViewCell.xib */, + ); + path = MoreInfoTableViewCell; + sourceTree = ""; + }; + 65B2BBAE22229019009A5A7B /* DownInfoTableViewCell */ = { + isa = PBXGroup; + children = ( + 65B2BB4E221FAFD9009A5A7B /* DownInfoTableViewCell.swift */, + 65B2BB50221FAFDA009A5A7B /* DownInfoTableViewCell.xib */, + ); + path = DownInfoTableViewCell; + sourceTree = ""; + }; + 65B2BBAF22229132009A5A7B /* InfoTableViewCell */ = { + isa = PBXGroup; + children = ( + 65B2BB4F221FAFD9009A5A7B /* InfoTableViewCell.swift */, + 65B2BB4D221FAFD9009A5A7B /* InfoTableViewCell.xib */, + ); + path = InfoTableViewCell; + sourceTree = ""; + }; + 65B2BBB02222A90A009A5A7B /* InvestTableViewCell */ = { + isa = PBXGroup; + children = ( + 65B2BBB12222A933009A5A7B /* InvestTableViewCell.swift */, + 65B2BBB22222A933009A5A7B /* InvestTableViewCell.xib */, + ); + path = InvestTableViewCell; + sourceTree = ""; + }; + 65B2BBB5222388FA009A5A7B /* StubbedResponses */ = { + isa = PBXGroup; + children = ( + 65B2BBB82223896C009A5A7B /* Fund.json */, + 65B2BBBA22238980009A5A7B /* Form.json */, + ); + path = StubbedResponses; + sourceTree = ""; + }; + 65B2BBBC22238BE3009A5A7B /* Contact */ = { + isa = PBXGroup; + children = ( + 65B2BB8E2221FA13009A5A7B /* FeedbackView */, + 65B2BB32221F4326009A5A7B /* ContactView.swift */, + 65B2BB34221F4AAA009A5A7B /* ContactTableView.swift */, + ); + path = Contact; + sourceTree = ""; + }; + 65B2BBBD22238BF7009A5A7B /* Funds */ = { + isa = PBXGroup; + children = ( + 65B2BB98222228F7009A5A7B /* FundsView.swift */, + 65B2BBA222224F00009A5A7B /* FundsTableView.swift */, + 65B2BBAA22226BAE009A5A7B /* RiskView.swift */, + ); + path = Funds; + sourceTree = ""; + }; + 65B2BBC02223901B009A5A7B /* Models */ = { + isa = PBXGroup; + children = ( + 65B2BBBE22238E5A009A5A7B /* FormDataSpec.swift */, + ); + path = Models; + sourceTree = ""; + }; + 65B2BBC3222392E0009A5A7B /* DataSources */ = { + isa = PBXGroup; + children = ( + 65B2BBC1222390F6009A5A7B /* ContactDataSourceSpec.swift */, + ); + path = DataSources; + sourceTree = ""; + }; + 65B2BBC422239CF6009A5A7B /* Extensions */ = { + isa = PBXGroup; + children = ( + 65B2BBC522239D1C009A5A7B /* StringValidatorSpec.swift */, + ); + path = Extensions; + sourceTree = ""; + }; + 65B2BBC72223A14B009A5A7B /* Scenes */ = { + isa = PBXGroup; + children = ( + 65B2BBC82223A152009A5A7B /* Contact */, + ); + path = Scenes; + sourceTree = ""; + }; + 65B2BBC82223A152009A5A7B /* Contact */ = { + isa = PBXGroup; + children = ( + 65B2BBC92223A168009A5A7B /* ContactInteractSpec.swift */, + ); + path = Contact; + sourceTree = ""; + }; 65EF2619221CC3E500014212 = { isa = PBXGroup; children = ( @@ -81,6 +598,8 @@ 65EF2639221CC3E700014212 /* TesteiOSTests */, 65EF2644221CC3E700014212 /* TesteiOSUITests */, 65EF2623221CC3E500014212 /* Products */, + 1927B86FEC455B2EA23B93B9 /* Pods */, + F27A8A997A75DFBE5CC78888 /* Frameworks */, ); sourceTree = ""; }; @@ -97,12 +616,13 @@ 65EF2624221CC3E500014212 /* TesteiOS */ = { isa = PBXGroup; children = ( - 65EF2625221CC3E500014212 /* AppDelegate.swift */, - 65EF2627221CC3E500014212 /* ViewController.swift */, - 65EF2629221CC3E500014212 /* Main.storyboard */, - 65EF262C221CC3E700014212 /* Assets.xcassets */, - 65EF262E221CC3E700014212 /* LaunchScreen.storyboard */, - 65EF2631221CC3E700014212 /* Info.plist */, + 65B2BB3C221F9E03009A5A7B /* Services */, + 65B2BB3D221F9E1D009A5A7B /* Models */, + 65B2BB05221F1CE0009A5A7B /* UI */, + 65B2BAEB221F0896009A5A7B /* Commons */, + 65B2BAEA221F0890009A5A7B /* Scenes */, + 65B2BAED221F08A9009A5A7B /* Resources */, + 65B2BAEC221F08A0009A5A7B /* Supporting Files */, ); path = TesteiOS; sourceTree = ""; @@ -110,7 +630,10 @@ 65EF2639221CC3E700014212 /* TesteiOSTests */ = { isa = PBXGroup; children = ( - 65EF263A221CC3E700014212 /* TesteiOSTests.swift */, + 65B2BBC72223A14B009A5A7B /* Scenes */, + 65B2BBC422239CF6009A5A7B /* Extensions */, + 65B2BBC3222392E0009A5A7B /* DataSources */, + 65B2BBC02223901B009A5A7B /* Models */, 65EF263C221CC3E700014212 /* Info.plist */, ); path = TesteiOSTests; @@ -125,6 +648,15 @@ path = TesteiOSUITests; sourceTree = ""; }; + F27A8A997A75DFBE5CC78888 /* Frameworks */ = { + isa = PBXGroup; + children = ( + C2C7FB9A50E98EBED4E7C177 /* Pods_TesteiOS.framework */, + E53AA491062BDD9DF858AB8E /* Pods_TesteiOSTests.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -132,9 +664,11 @@ isa = PBXNativeTarget; buildConfigurationList = 65EF264A221CC3E700014212 /* Build configuration list for PBXNativeTarget "TesteiOS" */; buildPhases = ( + 22B64DAD4B136BFBEC1AC845 /* [CP] Check Pods Manifest.lock */, 65EF261E221CC3E500014212 /* Sources */, 65EF261F221CC3E500014212 /* Frameworks */, 65EF2620221CC3E500014212 /* Resources */, + 4D1F9A8A5F24DCE3A5EFA0D1 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -149,9 +683,11 @@ isa = PBXNativeTarget; buildConfigurationList = 65EF264D221CC3E700014212 /* Build configuration list for PBXNativeTarget "TesteiOSTests" */; buildPhases = ( + 0A7BF9C629D3FA0B1F2200C6 /* [CP] Check Pods Manifest.lock */, 65EF2632221CC3E700014212 /* Sources */, 65EF2633221CC3E700014212 /* Frameworks */, 65EF2634221CC3E700014212 /* Resources */, + 75D4754FCB19361CD2BA3DE7 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -229,9 +765,29 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 65B2BB7E221FEF54009A5A7B /* DINPro-Regular.otf in Resources */, + 65B2BB5B221FAFDC009A5A7B /* InfoTableViewCell.xib in Resources */, + 65B2BB7B221FEF54009A5A7B /* DINNeuzeitGroteskStd-Light.otf in Resources */, 65EF2630221CC3E700014212 /* LaunchScreen.storyboard in Resources */, + 65B2BB61221FAFDC009A5A7B /* CheckboxTableViewCell.xib in Resources */, 65EF262D221CC3E700014212 /* Assets.xcassets in Resources */, - 65EF262B221CC3E500014212 /* Main.storyboard in Resources */, + 65B2BBB92223896C009A5A7B /* Fund.json in Resources */, + 65B2BB7C221FEF54009A5A7B /* DINNeuzeitGroteskStd-BdCond.otf in Resources */, + 65B2BB5F221FAFDC009A5A7B /* FundHeaderTableViewCell.xib in Resources */, + 65B2BBB42222A933009A5A7B /* InvestTableViewCell.xib in Resources */, + 65B2BBA922225520009A5A7B /* MoreInfoTableViewCell.xib in Resources */, + 65B2BB7D221FEF54009A5A7B /* DINPro-Bold.otf in Resources */, + 65B2BB63221FAFDC009A5A7B /* SendTableViewCell.xib in Resources */, + 65B2BB892221D42A009A5A7B /* FeedbackView.xib in Resources */, + 65B2BB65221FAFDC009A5A7B /* TextFieldTableViewCell.xib in Resources */, + 65B2BBBB22238980009A5A7B /* Form.json in Resources */, + 65B2BB7F221FEF54009A5A7B /* DINMittelschriftStd.otf in Resources */, + 65B2BB6B221FB4AD009A5A7B /* TextTableViewCell.xib in Resources */, + 65B2BB78221FEF54009A5A7B /* DINPro-Light.otf in Resources */, + 65B2BB79221FEF54009A5A7B /* DINPro-Medium.otf in Resources */, + 65B2BB77221FEF54009A5A7B /* DINEngschriftStd.otf in Resources */, + 65B2BB7A221FEF54009A5A7B /* DINPro-Black.otf in Resources */, + 65B2BB5E221FAFDC009A5A7B /* DownInfoTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -251,13 +807,169 @@ }; /* End PBXResourcesBuildPhase section */ +/* Begin PBXShellScriptBuildPhase section */ + 0A7BF9C629D3FA0B1F2200C6 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-TesteiOSTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 22B64DAD4B136BFBEC1AC845 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-TesteiOS-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 4D1F9A8A5F24DCE3A5EFA0D1 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-TesteiOS/Pods-TesteiOS-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/Alamofire/Alamofire.framework", + "${BUILT_PRODUCTS_DIR}/JMMaskTextField-Swift/JMMaskTextField_Swift.framework", + "${BUILT_PRODUCTS_DIR}/Moya/Moya.framework", + "${BUILT_PRODUCTS_DIR}/Result/Result.framework", + "${BUILT_PRODUCTS_DIR}/Reusable/Reusable.framework", + "${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + ); + outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Alamofire.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/JMMaskTextField_Swift.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Moya.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Result.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Reusable.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SnapKit.framework", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-TesteiOS/Pods-TesteiOS-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + 75D4754FCB19361CD2BA3DE7 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-TesteiOSTests/Pods-TesteiOSTests-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/Nimble/Nimble.framework", + "${BUILT_PRODUCTS_DIR}/Quick/Quick.framework", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + ); + outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Nimble.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Quick.framework", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-TesteiOSTests/Pods-TesteiOSTests-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + /* Begin PBXSourcesBuildPhase section */ 65EF261E221CC3E500014212 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 65EF2628221CC3E500014212 /* ViewController.swift in Sources */, + 65B2BB31221F33FC009A5A7B /* UIColor+Hex.swift in Sources */, + 65B2BB9422221568009A5A7B /* Info.swift in Sources */, + 65B2BBB32222A933009A5A7B /* InvestTableViewCell.swift in Sources */, + 65B2BB33221F4326009A5A7B /* ContactView.swift in Sources */, + 65B2BBA122224B6A009A5A7B /* FundBaseTableViewCell.swift in Sources */, + 65B2BB27221F2ADD009A5A7B /* FundsModels.swift in Sources */, + 65B2BB3B221F9DDB009A5A7B /* ItemsTableViewDataSource.swift in Sources */, + 65B2BBA322224F00009A5A7B /* FundsTableView.swift in Sources */, + 65B2BB39221F9BFE009A5A7B /* ContactDelegate.swift in Sources */, + 65B2BB3F221F9E45009A5A7B /* BankAPI.swift in Sources */, + 65B2BB25221F2ADD009A5A7B /* FundsWorker.swift in Sources */, + 65B2BB04221F121C009A5A7B /* TabBarViewController.swift in Sources */, + 65B2BBAB22226BAE009A5A7B /* RiskView.swift in Sources */, + 65B2BB9D22222AB3009A5A7B /* FundsDelegate.swift in Sources */, + 65B2BB69221FB486009A5A7B /* TextTableViewCell.swift in Sources */, + 65B2BB4B221FA481009A5A7B /* Cell.swift in Sources */, + 65B2BB64221FAFDC009A5A7B /* SendTableViewCell.swift in Sources */, + 65B2BB09221F1D1C009A5A7B /* TabBarView.swift in Sources */, + 65B2BB2C221F31B4009A5A7B /* AppearanceProxyHelper.swift in Sources */, + 65B2BB26221F2ADD009A5A7B /* FundsRouter.swift in Sources */, + 65B2BB28221F2ADD009A5A7B /* FundsViewController.swift in Sources */, 65EF2626221CC3E500014212 /* AppDelegate.swift in Sources */, + 65B2BB1A221F2AC9009A5A7B /* ContactRouter.swift in Sources */, + 65B2BB18221F2AC9009A5A7B /* ContactPresenter.swift in Sources */, + 65B2BB8322206527009A5A7B /* String+Validator.swift in Sources */, + 65B2BB43221FA075009A5A7B /* BankAPI+Testing.swift in Sources */, + 65B2BB49221FA385009A5A7B /* FundsData.swift in Sources */, + 65B2BB67221FAFDC009A5A7B /* CheckboxTableViewCell.swift in Sources */, + 65B2BB1D221F2AC9009A5A7B /* ContactInteractor.swift in Sources */, + 65B2BB19221F2AC9009A5A7B /* ContactWorker.swift in Sources */, + 65B2BB24221F2ADD009A5A7B /* FundsPresenter.swift in Sources */, + 65B2BB5D221FAFDC009A5A7B /* InfoTableViewCell.swift in Sources */, + 65B2BB92222213E6009A5A7B /* MoreInfoData.swift in Sources */, + 65B2BB62221FAFDC009A5A7B /* TextFieldTableViewCell.swift in Sources */, + 65B2BB96222216CF009A5A7B /* MoreInfo.swift in Sources */, + 65B2BB1C221F2AC9009A5A7B /* ContactViewController.swift in Sources */, + 65B2BB872221D411009A5A7B /* FeedbackView.swift in Sources */, + 65B2BB0D221F252A009A5A7B /* TabBarButton.swift in Sources */, + 65B2BB99222228F7009A5A7B /* FundsView.swift in Sources */, + 65B2BB37221F9BC5009A5A7B /* ContactDataSource.swift in Sources */, + 65B2BB2E221F3342009A5A7B /* ColorPalette.swift in Sources */, + 65B2BB0B221F1D44009A5A7B /* ViewCode.swift in Sources */, + 65B2BB35221F4AAA009A5A7B /* ContactTableView.swift in Sources */, + 65B2BB5A221FAFDC009A5A7B /* FundHeaderTableViewCell.swift in Sources */, + 65B2BB6D221FC02B009A5A7B /* ContactBaseTableViewCell.swift in Sources */, + 65B2BB5C221FAFDC009A5A7B /* DownInfoTableViewCell.swift in Sources */, + 65B2BB41221F9F8E009A5A7B /* NetworkManager.swift in Sources */, + 65B2BB1B221F2AC9009A5A7B /* ContactModels.swift in Sources */, + 65B2BB47221FA376009A5A7B /* FormData.swift in Sources */, + 65B2BB0F221F2750009A5A7B /* FontNames.swift in Sources */, + 65B2BBA822225520009A5A7B /* MoreInfoTableViewCell.swift in Sources */, + 65B2BB45221FA2E7009A5A7B /* DefaultAlamofireManager.swift in Sources */, + 65B2BB9B22222A98009A5A7B /* FundsDataSource.swift in Sources */, + 65B2BB90222210BD009A5A7B /* Fund.swift in Sources */, + 65B2BB29221F2ADD009A5A7B /* FundsInteractor.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -265,7 +977,10 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 65EF263B221CC3E700014212 /* TesteiOSTests.swift in Sources */, + 65B2BBC2222390F6009A5A7B /* ContactDataSourceSpec.swift in Sources */, + 65B2BBCA2223A168009A5A7B /* ContactInteractSpec.swift in Sources */, + 65B2BBC622239D1C009A5A7B /* StringValidatorSpec.swift in Sources */, + 65B2BBBF22238E5A009A5A7B /* FormDataSpec.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -293,14 +1008,6 @@ /* End PBXTargetDependency section */ /* Begin PBXVariantGroup section */ - 65EF2629221CC3E500014212 /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 65EF262A221CC3E500014212 /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; 65EF262E221CC3E700014212 /* LaunchScreen.storyboard */ = { isa = PBXVariantGroup; children = ( @@ -430,11 +1137,12 @@ }; 65EF264B221CC3E700014212 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = AC1FED7AFFCC9F0BB4F951CF /* Pods-TesteiOS.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = 8G633XVRJD; - INFOPLIST_FILE = TesteiOS/Info.plist; + INFOPLIST_FILE = "$(SRCROOT)/TesteiOS/Supporting Files/Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -448,11 +1156,12 @@ }; 65EF264C221CC3E700014212 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 90D2E8A002C9BD53CCDBA5FB /* Pods-TesteiOS.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = 8G633XVRJD; - INFOPLIST_FILE = TesteiOS/Info.plist; + INFOPLIST_FILE = "$(SRCROOT)/TesteiOS/Supporting Files/Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -466,6 +1175,7 @@ }; 65EF264E221CC3E700014212 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = D778FDDB6EFFC6823D4DE1D7 /* Pods-TesteiOSTests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; BUNDLE_LOADER = "$(TEST_HOST)"; @@ -487,6 +1197,7 @@ }; 65EF264F221CC3E700014212 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 1C51913E040327570673FCE3 /* Pods-TesteiOSTests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; BUNDLE_LOADER = "$(TEST_HOST)"; diff --git a/TesteiOS/TesteiOS.xcodeproj/project.xcworkspace/xcuserdata/bryos.xcuserdatad/UserInterfaceState.xcuserstate b/TesteiOS/TesteiOS.xcodeproj/project.xcworkspace/xcuserdata/bryos.xcuserdatad/UserInterfaceState.xcuserstate index 4d8ab4a53606372fb6ea7b725d9d8929dfb400d4..15a24807f044750f8114353cc9685220e796d2d6 100644 GIT binary patch literal 7998 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS.xcodeproj/xcuserdata/bryos.xcuserdatad/xcschemes/xcschememanagement.plist b/TesteiOS/TesteiOS.xcodeproj/xcuserdata/bryos.xcuserdatad/xcschemes/xcschememanagement.plist index 6bf30f00..ff25e13e 100644 --- a/TesteiOS/TesteiOS.xcodeproj/xcuserdata/bryos.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/TesteiOS/TesteiOS.xcodeproj/xcuserdata/bryos.xcuserdatad/xcschemes/xcschememanagement.plist @@ -7,7 +7,25 @@ TesteiOS.xcscheme_^#shared#^_ orderHint - 0 + 9 + + + SuppressBuildableAutocreation + + 65EF2621221CC3E500014212 + + primary + + + 65EF2635221CC3E700014212 + + primary + + + 65EF2640221CC3E700014212 + + primary + diff --git a/TesteiOS/TesteiOS/Supporting Files/AppDelegate.swift b/TesteiOS/TesteiOS/Supporting Files/AppDelegate.swift index a66fa643..8c6b1247 100644 --- a/TesteiOS/TesteiOS/Supporting Files/AppDelegate.swift +++ b/TesteiOS/TesteiOS/Supporting Files/AppDelegate.swift @@ -19,13 +19,20 @@ class AppDelegate: UIResponder, UIApplicationDelegate { self.window = UIWindow(frame: UIScreen.main.bounds) self.window?.backgroundColor = UIColor.white - let tabController = TabBarViewController() + let tabBarController = TabBarViewController() + let fundsVC = FundsViewController() + let contactVC = ContactViewController() + let fundsNavigationController = UINavigationController(rootViewController: fundsVC) + let contactNavigationController = UINavigationController(rootViewController: contactVC) - self.window?.rootViewController = tabController + tabBarController.viewControllers = [fundsNavigationController, contactNavigationController] + self.window?.rootViewController = tabBarController self.window?.makeKeyAndVisible() + AppearanceProxyHelper.customizeNavigationBar() + return true } diff --git a/TesteiOS/TesteiOS/Supporting Files/Base.lproj/LaunchScreen.storyboard b/TesteiOS/TesteiOS/Supporting Files/Base.lproj/LaunchScreen.storyboard index bfa36129..4c3e9800 100644 --- a/TesteiOS/TesteiOS/Supporting Files/Base.lproj/LaunchScreen.storyboard +++ b/TesteiOS/TesteiOS/Supporting Files/Base.lproj/LaunchScreen.storyboard @@ -1,7 +1,11 @@ - - + + + + + - + + @@ -13,7 +17,16 @@ - + + + + + + + + + + @@ -22,4 +35,7 @@ + + + diff --git a/TesteiOS/TesteiOS/Supporting Files/Info.plist b/TesteiOS/TesteiOS/Supporting Files/Info.plist index 0d879866..1f636854 100644 --- a/TesteiOS/TesteiOS/Supporting Files/Info.plist +++ b/TesteiOS/TesteiOS/Supporting Files/Info.plist @@ -38,6 +38,10 @@ armv7 + UIStatusBarHidden + + UIStatusBarStyle + UIStatusBarStyleLightContent UISupportedInterfaceOrientations UIInterfaceOrientationPortrait From 695a714dc9310418718bd1a989362d94ff169649 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:22:28 -0300 Subject: [PATCH 14/22] Adding Unit Tests --- .../DataSources/ContactDataSourceSpec.swift | 18 + .../Extensions/StringValidatorSpec.swift | 46 +- .../Scenes/Contact/ContactInteractSpec.swift | 25 +- TesteiOS/coverage/AppDelegate.swift.html | 222 +++++ .../coverage/AppearanceProxyHelper.swift.html | 142 +++ TesteiOS/coverage/BankAPI+Testing.swift.html | 147 +++ TesteiOS/coverage/BankAPI.swift.html | 337 +++++++ TesteiOS/coverage/Cell.swift.html | 872 ++++++++++++++++++ .../coverage/CheckboxTableViewCell.swift.html | 217 +++++ .../ContactBaseTableViewCell.swift.html | 167 ++++ .../coverage/ContactDataSource.swift.html | 427 +++++++++ TesteiOS/coverage/ContactDelegate.swift.html | 177 ++++ .../coverage/ContactInteractor.swift.html | 272 ++++++ TesteiOS/coverage/ContactModels.swift.html | 262 ++++++ TesteiOS/coverage/ContactPresenter.swift.html | 227 +++++ TesteiOS/coverage/ContactTableView.swift.html | 217 +++++ TesteiOS/coverage/ContactView.swift.html | 402 ++++++++ .../coverage/ContactViewController.swift.html | 537 +++++++++++ TesteiOS/coverage/ContactWorker.swift.html | 167 ++++ .../DefaultAlamofireManager.swift.html | 122 +++ .../coverage/DownInfoTableViewCell.swift.html | 152 +++ TesteiOS/coverage/FeedbackView.swift.html | 132 +++ TesteiOS/coverage/FormData.swift.html | 147 +++ TesteiOS/coverage/Fund.swift.html | 277 ++++++ .../coverage/FundBaseTableViewCell.swift.html | 102 ++ .../FundHeaderTableViewCell.swift.html | 167 ++++ TesteiOS/coverage/FundsData.swift.html | 142 +++ TesteiOS/coverage/FundsDataSource.swift.html | 377 ++++++++ TesteiOS/coverage/FundsDelegate.swift.html | 152 +++ TesteiOS/coverage/FundsInteractor.swift.html | 272 ++++++ TesteiOS/coverage/FundsModels.swift.html | 252 +++++ TesteiOS/coverage/FundsPresenter.swift.html | 227 +++++ TesteiOS/coverage/FundsRouter.swift.html | 242 +++++ TesteiOS/coverage/FundsTableView.swift.html | 232 +++++ TesteiOS/coverage/FundsView.swift.html | 302 ++++++ .../coverage/FundsViewController.swift.html | 527 +++++++++++ TesteiOS/coverage/FundsWorker.swift.html | 167 ++++ TesteiOS/coverage/Info.swift.html | 167 ++++ .../coverage/InfoTableViewCell.swift.html | 122 +++ .../coverage/InvestTableViewCell.swift.html | 187 ++++ .../ItemsTableViewDataSource.swift.html | 182 ++++ TesteiOS/coverage/MoreInfo.swift.html | 157 ++++ TesteiOS/coverage/MoreInfoData.swift.html | 172 ++++ .../coverage/MoreInfoTableViewCell.swift.html | 167 ++++ TesteiOS/coverage/NetworkManager.swift.html | 322 +++++++ TesteiOS/coverage/RiskView.swift.html | 482 ++++++++++ .../coverage/SendTableViewCell.swift.html | 232 +++++ TesteiOS/coverage/String+Validator.swift.html | 362 ++++++++ TesteiOS/coverage/TabBarButton.swift.html | 182 ++++ TesteiOS/coverage/TabBarView.swift.html | 317 +++++++ .../coverage/TabBarViewController.swift.html | 262 ++++++ .../TextFieldTableViewCell.swift.html | 577 ++++++++++++ .../coverage/TextTableViewCell.swift.html | 137 +++ TesteiOS/coverage/UIColor+Hex.swift.html | 197 ++++ TesteiOS/coverage/ViewCode.swift.html | 152 +++ TesteiOS/coverage/highlight.pack.js | 1 + TesteiOS/coverage/index.html | 447 +++++++++ TesteiOS/coverage/list.min.js | 1 + TesteiOS/coverage/logo.jpg | Bin 0 -> 64627 bytes TesteiOS/coverage/slather.css | 316 +++++++ 60 files changed, 14011 insertions(+), 2 deletions(-) create mode 100644 TesteiOS/coverage/AppDelegate.swift.html create mode 100644 TesteiOS/coverage/AppearanceProxyHelper.swift.html create mode 100644 TesteiOS/coverage/BankAPI+Testing.swift.html create mode 100644 TesteiOS/coverage/BankAPI.swift.html create mode 100644 TesteiOS/coverage/Cell.swift.html create mode 100644 TesteiOS/coverage/CheckboxTableViewCell.swift.html create mode 100644 TesteiOS/coverage/ContactBaseTableViewCell.swift.html create mode 100644 TesteiOS/coverage/ContactDataSource.swift.html create mode 100644 TesteiOS/coverage/ContactDelegate.swift.html create mode 100644 TesteiOS/coverage/ContactInteractor.swift.html create mode 100644 TesteiOS/coverage/ContactModels.swift.html create mode 100644 TesteiOS/coverage/ContactPresenter.swift.html create mode 100644 TesteiOS/coverage/ContactTableView.swift.html create mode 100644 TesteiOS/coverage/ContactView.swift.html create mode 100644 TesteiOS/coverage/ContactViewController.swift.html create mode 100644 TesteiOS/coverage/ContactWorker.swift.html create mode 100644 TesteiOS/coverage/DefaultAlamofireManager.swift.html create mode 100644 TesteiOS/coverage/DownInfoTableViewCell.swift.html create mode 100644 TesteiOS/coverage/FeedbackView.swift.html create mode 100644 TesteiOS/coverage/FormData.swift.html create mode 100644 TesteiOS/coverage/Fund.swift.html create mode 100644 TesteiOS/coverage/FundBaseTableViewCell.swift.html create mode 100644 TesteiOS/coverage/FundHeaderTableViewCell.swift.html create mode 100644 TesteiOS/coverage/FundsData.swift.html create mode 100644 TesteiOS/coverage/FundsDataSource.swift.html create mode 100644 TesteiOS/coverage/FundsDelegate.swift.html create mode 100644 TesteiOS/coverage/FundsInteractor.swift.html create mode 100644 TesteiOS/coverage/FundsModels.swift.html create mode 100644 TesteiOS/coverage/FundsPresenter.swift.html create mode 100644 TesteiOS/coverage/FundsRouter.swift.html create mode 100644 TesteiOS/coverage/FundsTableView.swift.html create mode 100644 TesteiOS/coverage/FundsView.swift.html create mode 100644 TesteiOS/coverage/FundsViewController.swift.html create mode 100644 TesteiOS/coverage/FundsWorker.swift.html create mode 100644 TesteiOS/coverage/Info.swift.html create mode 100644 TesteiOS/coverage/InfoTableViewCell.swift.html create mode 100644 TesteiOS/coverage/InvestTableViewCell.swift.html create mode 100644 TesteiOS/coverage/ItemsTableViewDataSource.swift.html create mode 100644 TesteiOS/coverage/MoreInfo.swift.html create mode 100644 TesteiOS/coverage/MoreInfoData.swift.html create mode 100644 TesteiOS/coverage/MoreInfoTableViewCell.swift.html create mode 100644 TesteiOS/coverage/NetworkManager.swift.html create mode 100644 TesteiOS/coverage/RiskView.swift.html create mode 100644 TesteiOS/coverage/SendTableViewCell.swift.html create mode 100644 TesteiOS/coverage/String+Validator.swift.html create mode 100644 TesteiOS/coverage/TabBarButton.swift.html create mode 100644 TesteiOS/coverage/TabBarView.swift.html create mode 100644 TesteiOS/coverage/TabBarViewController.swift.html create mode 100644 TesteiOS/coverage/TextFieldTableViewCell.swift.html create mode 100644 TesteiOS/coverage/TextTableViewCell.swift.html create mode 100644 TesteiOS/coverage/UIColor+Hex.swift.html create mode 100644 TesteiOS/coverage/ViewCode.swift.html create mode 100644 TesteiOS/coverage/highlight.pack.js create mode 100644 TesteiOS/coverage/index.html create mode 100644 TesteiOS/coverage/list.min.js create mode 100644 TesteiOS/coverage/logo.jpg create mode 100644 TesteiOS/coverage/slather.css diff --git a/TesteiOS/TesteiOSTests/DataSources/ContactDataSourceSpec.swift b/TesteiOS/TesteiOSTests/DataSources/ContactDataSourceSpec.swift index ce63f051..0d94da0a 100644 --- a/TesteiOS/TesteiOSTests/DataSources/ContactDataSourceSpec.swift +++ b/TesteiOS/TesteiOSTests/DataSources/ContactDataSourceSpec.swift @@ -38,6 +38,7 @@ class ContactDataSourceSpec: QuickSpec { let count = dataSource.tableView(tableView, numberOfRowsInSection: 0) expect(count).to(equal(6)) } + it("should have be able to update items") { let items = [cells[0], cells[0]] dataSource.update(with: items) @@ -48,6 +49,23 @@ class ContactDataSourceSpec: QuickSpec { let cell = dataSource.tableView(tableView, cellForRowAt: IndexPath(row: 0, section: 0)) expect(cell).to(beAKindOf(ContactBaseTableViewCell.self)) } + it("should have be able to update values") { + dataSource.sendButtonPressed() + expect(dataSource.values).to(be([])) + } + it("should have the expected number of values") { + dataSource.validValue(("Email", "test@test.com")) + expect(dataSource.values.count).to(equal(1)) + } + it("should have upadeted the value data") { + dataSource.validValue(("Email", "test2@test.com")) + let data = dataSource.values[0].data as! String + expect(data).to(equal("test2@test.com")) + } + it("should remove the value") { + dataSource.validValue(("Email", "")) + expect(dataSource.values[0]).toNot(be(("Email", ""))) + } } } } diff --git a/TesteiOS/TesteiOSTests/Extensions/StringValidatorSpec.swift b/TesteiOS/TesteiOSTests/Extensions/StringValidatorSpec.swift index 51ce7393..bce659f4 100644 --- a/TesteiOS/TesteiOSTests/Extensions/StringValidatorSpec.swift +++ b/TesteiOS/TesteiOSTests/Extensions/StringValidatorSpec.swift @@ -6,4 +6,48 @@ // Copyright © 2019 Brendoon Ryos. All rights reserved. // -import Foundation +import Quick +import Nimble + +@testable import TesteiOS + +class StringValidatorSpec: QuickSpec { + override func spec() { + describe("the String Validator") { + it("should be able to check if it's an valid email") { + var email = "abc@test.com" + expect(email.isValidEmail).to(beTrue()) + email = "acv" + expect(email.isValidEmail).toNot(beTrue()) + email = "acc.com" + expect(email.isValidEmail).toNot(beTrue()) + email = "acc@" + expect(email.isValidEmail).toNot(beTrue()) + email = ".@" + expect(email.isValidEmail).toNot(beTrue()) + } + it("should be able to check if it's an valid CPF") { + var cpf = "06668090389" + expect(cpf.isValidCPF).to(beTrue()) + cpf = "06668090387" + expect(cpf.isValidCPF).toNot(beTrue()) + cpf = "0666809" + expect(cpf.isValidCPF).toNot(beTrue()) + cpf = "0666809ab" + expect(cpf.isValidCPF).toNot(beTrue()) + } + it("should be able to check if it's an valid password") { + var password = "Abc@10" + expect(password.isValidPassword()).to(beTrue()) + password = "abc" + expect(password.isValidPassword()).toNot(beTrue()) + password = "Abc" + expect(password.isValidPassword()).toNot(beTrue()) + password = "Abc@" + expect(password.isValidPassword()).toNot(beTrue()) + password = "0666809ab" + expect(password.isValidPassword()).toNot(beTrue()) + } + } + } +} diff --git a/TesteiOS/TesteiOSTests/Scenes/Contact/ContactInteractSpec.swift b/TesteiOS/TesteiOSTests/Scenes/Contact/ContactInteractSpec.swift index fc326cc7..09f9b463 100644 --- a/TesteiOS/TesteiOSTests/Scenes/Contact/ContactInteractSpec.swift +++ b/TesteiOS/TesteiOSTests/Scenes/Contact/ContactInteractSpec.swift @@ -6,4 +6,27 @@ // Copyright © 2019 Brendoon Ryos. All rights reserved. // -import Foundation +import Quick +import Nimble + +@testable import TesteiOS + +class ContactInteractorSpec: QuickSpec { + override func spec() { + describe("a ContactInteractor") { + var interact: ContactInteractor! + var request: Contact.Form.Request! + + beforeEach { + request = Contact.Form.Request() + interact = ContactInteractor() + interact.fetchForm(request: request) + interact.sendFormData(request: Contact.Send.Request(values: [])) + } + + it("should have a worker") { + expect(interact.worker).notTo(beNil()) + } + } + } +} diff --git a/TesteiOS/coverage/AppDelegate.swift.html b/TesteiOS/coverage/AppDelegate.swift.html new file mode 100644 index 00000000..0f7d2935 --- /dev/null +++ b/TesteiOS/coverage/AppDelegate.swift.html @@ -0,0 +1,222 @@ + + + +AppDelegate.swift - Slather + + + +

Slather logo
+

+Coverage for "AppDelegate.swift" : 100.00% +

+

(21 of 21 relevant lines covered)

+

TesteiOS/Supporting Files/AppDelegate.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  AppDelegate.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 19/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
@UIApplicationMain
12
class AppDelegate: UIResponder, UIApplicationDelegate {
13
14
  var window: UIWindow?
15
16
17
  func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
2x
18
    
2x
19
    self.window = UIWindow(frame: UIScreen.main.bounds)
2x
20
    self.window?.backgroundColor = UIColor.white
2x
21
    
2x
22
    let tabBarController = TabBarViewController()
2x
23
    let fundsVC = FundsViewController()
2x
24
    let contactVC = ContactViewController()
2x
25
    
2x
26
    let fundsNavigationController = UINavigationController(rootViewController: fundsVC)
2x
27
    let contactNavigationController = UINavigationController(rootViewController: contactVC)
2x
28
    
2x
29
    tabBarController.viewControllers = [fundsNavigationController, contactNavigationController]
2x
30
    
2x
31
    self.window?.rootViewController = tabBarController
2x
32
    self.window?.makeKeyAndVisible()
2x
33
    
2x
34
    AppearanceProxyHelper.customizeNavigationBar()
2x
35
    
2x
36
    return true
2x
37
  }
2x
38
39
}
40
+
+ + + diff --git a/TesteiOS/coverage/AppearanceProxyHelper.swift.html b/TesteiOS/coverage/AppearanceProxyHelper.swift.html new file mode 100644 index 00000000..124f3746 --- /dev/null +++ b/TesteiOS/coverage/AppearanceProxyHelper.swift.html @@ -0,0 +1,142 @@ + + + +AppearanceProxyHelper.swift - Slather + + + +
Slather logo
+

+Coverage for "AppearanceProxyHelper.swift" : 90.00% +

+

(9 of 10 relevant lines covered)

+

TesteiOS/UI/Appearance/AppearanceProxyHelper.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  AppearanceProxyHelper.swift
3
//  Movs
4
//
5
//  Created by Brendoon Ryos on 24/01/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
struct AppearanceProxyHelper {
12
  
13
  private init() {}
!
14
  
15
  static func customizeNavigationBar(){
2x
16
    let navBarAppearance = UINavigationBar.appearance()
2x
17
    navBarAppearance.isTranslucent = false
2x
18
    navBarAppearance.shadowImage = UIImage()
2x
19
    navBarAppearance.setBackgroundImage(UIImage(), for: .default)
2x
20
    navBarAppearance.barTintColor = ColorPalette.white
2x
21
    navBarAppearance.tintColor = ColorPalette.rossoCorsa
2x
22
    navBarAppearance.titleTextAttributes = [NSAttributedString.Key.font: UIFont(name: FontNames.medium, size: 16)!, NSAttributedString.Key.foregroundColor: ColorPalette.jet]
2x
23
  }  
2x
24
}
+
+ + + diff --git a/TesteiOS/coverage/BankAPI+Testing.swift.html b/TesteiOS/coverage/BankAPI+Testing.swift.html new file mode 100644 index 00000000..cb2fa376 --- /dev/null +++ b/TesteiOS/coverage/BankAPI+Testing.swift.html @@ -0,0 +1,147 @@ + + + +BankAPI+Testing.swift - Slather + + + +
Slather logo
+

+Coverage for "BankAPI+Testing.swift" : 87.50% +

+

(7 of 8 relevant lines covered)

+

TesteiOS/Services/BankAPI+Testing.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  BankAPI+Testing.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import Foundation
10
11
extension BankAPI {
12
  var sampleData: Data {
9x
13
    switch self {
9x
14
    case .fetchForm:
9x
15
      return stubbedResponse("Form")
9x
16
    case .fetchFund:
9x
17
      return stubbedResponse("Fund")
!
18
    }
9x
19
  }
9x
20
  
21
  func stubbedResponse(_ filename: String, bundle: Bundle = .main) -> Data! {
22
    let path = bundle.path(forResource: filename, ofType: "json")
23
    return (try? Data(contentsOf: URL(fileURLWithPath: path!)))
24
  }
25
}
+
+ + + diff --git a/TesteiOS/coverage/BankAPI.swift.html b/TesteiOS/coverage/BankAPI.swift.html new file mode 100644 index 00000000..7c6ea8b0 --- /dev/null +++ b/TesteiOS/coverage/BankAPI.swift.html @@ -0,0 +1,337 @@ + + + +BankAPI.swift - Slather + + + +
Slather logo
+

+Coverage for "BankAPI.swift" : 95.00% +

+

(38 of 40 relevant lines covered)

+

TesteiOS/Services/BankAPI.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  BankAPI.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import Foundation
10
import Moya
11
12
enum BankAPI {
13
  case fetchForm
14
  case fetchFund
15
}
16
17
extension BankAPI: TargetType {
18
  var environmentBaseURL: String {
3x
19
    switch NetworkManager.environment {
3x
20
    case .staging:
3x
21
      return "https://floating-mountain-50292.herokuapp.com"
3x
22
    case .qa:
3x
23
      return ""
!
24
    case .production:
3x
25
      return ""
!
26
    }
3x
27
  }
3x
28
  
29
  var baseURL: URL {
3x
30
    guard let url = URL(string: environmentBaseURL) else { fatalError("baseURL could not be configured.") }
3x
31
    return url
3x
32
  }
3x
33
  
34
  var path: String {
6x
35
    switch self {
6x
36
    case .fetchForm:
6x
37
      return "/cells.json"
2x
38
    case .fetchFund:
6x
39
      return "/fund.json"
4x
40
    }
6x
41
  }
6x
42
  
43
  var method: Moya.Method {
3x
44
    switch self {
3x
45
    default:
3x
46
      return .get
3x
47
    }
3x
48
  }
3x
49
  
50
  var task: Task {
3x
51
    switch self {
3x
52
    default:
3x
53
      return .requestPlain
3x
54
    }
3x
55
  }
3x
56
  
57
  var headers: [String : String]? {
3x
58
    switch self {
3x
59
    default:
3x
60
      return ["Content-type":"application/json"]
3x
61
    }
3x
62
  }
3x
63
}
+
+ + + diff --git a/TesteiOS/coverage/Cell.swift.html b/TesteiOS/coverage/Cell.swift.html new file mode 100644 index 00000000..a14d6fa2 --- /dev/null +++ b/TesteiOS/coverage/Cell.swift.html @@ -0,0 +1,872 @@ + + + +Cell.swift - Slather + + + +
Slather logo
+

+Coverage for "Cell.swift" : 60.91% +

+

(67 of 110 relevant lines covered)

+

TesteiOS/Models/Cell.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  Cell.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import Foundation
10
import Reusable
11
12
enum CellType: Int {
13
  case field = 1
14
  case text
15
  case image
16
  case checkbox
17
  case send
18
  case fundHeader
19
  case moreInfo
20
  case info
21
  case downInfo
22
  case invest
23
  
24
  func getNib() -> UINib {
60x
25
    switch self {
60x
26
    case .field:
60x
27
      return TextFieldTableViewCell.nib
24x
28
    case .text:
60x
29
      return TextTableViewCell.nib
10x
30
    case .checkbox:
60x
31
      return CheckboxTableViewCell.nib
8x
32
    case .send:
60x
33
      return SendTableViewCell.nib
8x
34
    case .fundHeader:
60x
35
      return FundHeaderTableViewCell.nib
2x
36
    case .moreInfo:
60x
37
      return MoreInfoTableViewCell.nib
2x
38
    case .info:
60x
39
      return InfoTableViewCell.nib
2x
40
    case .downInfo:
60x
41
      return DownInfoTableViewCell.nib
2x
42
    default:
60x
43
      return InvestTableViewCell.nib
2x
44
    }
60x
45
  }
60x
46
  
47
  func getIdentifier() -> String {
83x
48
    switch self {
83x
49
    case .field:
83x
50
      return TextFieldTableViewCell.reuseIdentifier
24x
51
    case .text:
83x
52
      return TextTableViewCell.reuseIdentifier
11x
53
    case .checkbox:
83x
54
      return CheckboxTableViewCell.reuseIdentifier
8x
55
    case .send:
83x
56
      return SendTableViewCell.reuseIdentifier
8x
57
    case .fundHeader:
83x
58
      return FundHeaderTableViewCell.reuseIdentifier
4x
59
    case .moreInfo:
83x
60
      return MoreInfoTableViewCell.reuseIdentifier
4x
61
    case .info:
83x
62
      return InfoTableViewCell.reuseIdentifier
16x
63
    case .downInfo:
83x
64
      return DownInfoTableViewCell.reuseIdentifier
6x
65
    default:
83x
66
      return InvestTableViewCell.reuseIdentifier
2x
67
    }
83x
68
  }
83x
69
  
70
  func getClass() -> UITableViewCell.Type {
!
71
    switch self {
!
72
    case .field:
!
73
      return TextFieldTableViewCell.self
!
74
    case .text:
!
75
      return TextTableViewCell.self
!
76
    case .checkbox:
!
77
      return CheckboxTableViewCell.self
!
78
    case .send:
!
79
      return SendTableViewCell.self
!
80
    case .fundHeader:
!
81
      return FundHeaderTableViewCell.self
!
82
    case .moreInfo:
!
83
      return MoreInfoTableViewCell.self
!
84
    case .info:
!
85
      return InfoTableViewCell.self
!
86
    case .downInfo:
!
87
      return DownInfoTableViewCell.self
!
88
    default:
!
89
      return InvestTableViewCell.self
!
90
    }
!
91
  }
!
92
  
93
  func getHeight() -> CGFloat {
66x
94
    switch self {
66x
95
    case .fundHeader:
66x
96
      return 410
6x
97
    case .moreInfo:
66x
98
      return 200
6x
99
    case .info, .downInfo:
66x
100
      return 30
54x
101
    default:
66x
102
      return 80
!
103
    }
66x
104
  }
66x
105
}
106
107
enum TypeField: Int {
108
  case text = 1
109
  case telNumber
110
  case email
111
  
112
  var contentType: UITextContentType {
!
113
    switch self {
!
114
    case .telNumber:
!
115
      return .telephoneNumber
!
116
    case .email:
!
117
      return .emailAddress
!
118
    default:
!
119
      return .name
!
120
    }
!
121
  }
!
122
  
123
  var keyboardType: UIKeyboardType {
!
124
    switch self {
!
125
    case .telNumber:
!
126
      return .phonePad
!
127
    case .email:
!
128
      return .emailAddress
!
129
    default:
!
130
      return .default
!
131
    }
!
132
  }
!
133
}
134
135
struct Cell {
136
  let id: Int
137
  let type: Int
138
  let message: String
139
  let typefield: Int?
140
  let hidden: Bool
141
  let topSpacing: Int
142
  let show: Int?
143
  let required: Bool
144
}
145
146
extension Cell: Decodable {
147
  private enum CodingKeys: String, CodingKey {
148
    case id
149
    case type
150
    case message
151
    case typefield
152
    case hidden
153
    case topSpacing
154
    case show
155
    case required
156
  }
157
  
158
  init(from decoder: Decoder) throws {
54x
159
    let container = try decoder.container(keyedBy: CodingKeys.self)
54x
160
    
54x
161
    id = try container.decode(Int.self, forKey: .id)
54x
162
    type = try container.decode(Int.self, forKey: .type)
54x
163
    message = try container.decode(String.self, forKey: .message)
54x
164
    typefield = try? container.decode(Int.self, forKey: .typefield)
54x
165
    hidden = try container.decode(Bool.self, forKey: .hidden)
54x
166
    topSpacing = try container.decode(Int.self, forKey: .topSpacing)
54x
167
    show = try? container.decode(Int.self, forKey: .show)
54x
168
    required = try container.decode(Bool.self, forKey: .required)
54x
169
  }
54x
170
}
+
+ + + diff --git a/TesteiOS/coverage/CheckboxTableViewCell.swift.html b/TesteiOS/coverage/CheckboxTableViewCell.swift.html new file mode 100644 index 00000000..ad991388 --- /dev/null +++ b/TesteiOS/coverage/CheckboxTableViewCell.swift.html @@ -0,0 +1,217 @@ + + + +CheckboxTableViewCell.swift - Slather + + + +
Slather logo
+

+Coverage for "CheckboxTableViewCell.swift" : 0.00% +

+

(0 of 22 relevant lines covered)

+

TesteiOS/UI/Cells/Contact/CheckboxTableViewCell/CheckboxTableViewCell.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  CheckboxTableViewCell.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
final class CheckboxTableViewCell: ContactBaseTableViewCell {
12
13
  @IBOutlet weak var checkboxButton: UIButton!
14
  
15
  override func awakeFromNib() {
!
16
    super.awakeFromNib()
!
17
    checkboxButton.titleLabel?.adjustsFontSizeToFitWidth = true
!
18
    checkboxButton.titleLabel?.minimumScaleFactor = 0.5
!
19
  }
!
20
  
21
  override func setup(with item: Cell) {
!
22
    super.setup(with: item)
!
23
    checkboxButton.isSelected = false
!
24
    checkboxButton.setImage(UIImage(named: "checkboxEmpty"), for: .normal)
!
25
    checkboxButton.setTitle(item.message, for: .normal)
!
26
    callback?((item.message, false))
!
27
  }
!
28
    
29
  @IBAction func checkboxButtonPressed(_ sender: UIButton) {
!
30
    if sender.isSelected {
!
31
      sender.isSelected = false
!
32
      sender.setImage(UIImage(named: "checkboxEmpty"), for: .normal)
!
33
    } else {
!
34
      sender.isSelected = true
!
35
      sender.setImage(UIImage(named: "checkboxFilled"), for: .normal)
!
36
    }
!
37
    callback?((sender.title(for: .normal)!, sender.isSelected))
!
38
  }
!
39
}
+
+ + + diff --git a/TesteiOS/coverage/ContactBaseTableViewCell.swift.html b/TesteiOS/coverage/ContactBaseTableViewCell.swift.html new file mode 100644 index 00000000..7b7092a3 --- /dev/null +++ b/TesteiOS/coverage/ContactBaseTableViewCell.swift.html @@ -0,0 +1,167 @@ + + + +ContactBaseTableViewCell.swift - Slather + + + +
Slather logo
+

+Coverage for "ContactBaseTableViewCell.swift" : 87.50% +

+

(7 of 8 relevant lines covered)

+

TesteiOS/UI/Cells/Contact/ContactBaseTableViewCell.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  ContactBaseTableViewCell.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
import Reusable
11
12
class ContactBaseTableViewCell: UITableViewCell, NibReusable {
13
  
14
  @IBOutlet weak var topSpacingConstraint: NSLayoutConstraint!
15
  
16
  var callback: ((Value) -> ())?
17
  var sendAction: (() -> ())?
18
  
19
  override func awakeFromNib() {
1x
20
    super.awakeFromNib()
1x
21
  }
1x
22
  
23
  func setup(with item: Cell) {
1x
24
    topSpacingConstraint.constant = CGFloat(item.topSpacing)
1x
25
    self.layoutIfNeeded()
1x
26
  }
1x
27
  
28
  func enableAction(_ value: Bool) {}
!
29
}
+
+ + + diff --git a/TesteiOS/coverage/ContactDataSource.swift.html b/TesteiOS/coverage/ContactDataSource.swift.html new file mode 100644 index 00000000..6233fdb8 --- /dev/null +++ b/TesteiOS/coverage/ContactDataSource.swift.html @@ -0,0 +1,427 @@ + + + +ContactDataSource.swift - Slather + + + +
Slather logo
+

+Coverage for "ContactDataSource.swift" : 80.39% +

+

(41 of 51 relevant lines covered)

+

TesteiOS/Scenes/Contact/ContactDataSource.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  ContactDataSource.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
typealias Value = (message: String, data: Any)
12
13
class ContactDataSource: NSObject, ItemsTableViewDataSource {
14
  
15
  var items: [Cell] = []
16
  var tableView: UITableView?
17
  var delegate: UITableViewDelegate?
18
  var values: [Value] = []
19
  var enableSendButton: ((Bool) -> ())?
20
  var sendAction: (([Value]) -> ())?
21
  
22
  required init(tableView: UITableView, delegate: UITableViewDelegate) {
10x
23
    self.tableView = tableView
10x
24
    self.delegate = delegate
10x
25
    super.init()
10x
26
    setupTableView()
10x
27
  }
10x
28
  
29
  func registerTableView() {
19x
30
    for item in items {
50x
31
      let type = CellType(rawValue: item.type)!
50x
32
      self.tableView?.register(type.getNib(), forCellReuseIdentifier: type.getIdentifier())
50x
33
    }
50x
34
  }
19x
35
  
36
  func update(with items: [Cell]) {
9x
37
    self.items = items
9x
38
    self.registerTableView()
9x
39
    self.tableView?.reloadData()
9x
40
  }
9x
41
  
42
  func sendButtonPressed() {
1x
43
    sendAction?(values)
1x
44
    values = []
1x
45
  }
1x
46
  
47
  func validValue(_ value: Value) {
3x
48
    if values.contains(where: { $0.message == value.message }) {
3x
49
      for i in 0..<values.count {
!
50
        guard values.count > i else { return }
!
51
        if values[i].message == value.message {
!
52
          values[i].data = value.data
!
53
          if let data = value.data as? String, data.isEmpty {
!
54
            values.remove(at: i)
!
55
            enableSendButton?(false)
!
56
          }
!
57
        }
!
58
      }
!
59
    } else {
3x
60
      values.append(value)
3x
61
    }
3x
62
    enableSendButton?(values.count == 4)
3x
63
  }
3x
64
}
65
66
extension ContactDataSource: UITableViewDataSource {
67
  func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
21x
68
    return items.count
21x
69
  }
21x
70
  
71
  func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
1x
72
    let item = items[indexPath.row]
1x
73
    let type = CellType(rawValue: item.type)!
1x
74
    let cell = tableView.dequeueReusableCell(withIdentifier: type.getIdentifier(), for: indexPath) as! ContactBaseTableViewCell
1x
75
    enableSendButton = cell.enableAction
1x
76
    cell.sendAction = sendButtonPressed
1x
77
    cell.callback = validValue
1x
78
    cell.setup(with: item)
1x
79
    return cell
1x
80
  }
1x
81
}
+
+ + + diff --git a/TesteiOS/coverage/ContactDelegate.swift.html b/TesteiOS/coverage/ContactDelegate.swift.html new file mode 100644 index 00000000..d36ab435 --- /dev/null +++ b/TesteiOS/coverage/ContactDelegate.swift.html @@ -0,0 +1,177 @@ + + + +ContactDelegate.swift - Slather + + + +
Slather logo
+

+Coverage for "ContactDelegate.swift" : 41.67% +

+

(5 of 12 relevant lines covered)

+

TesteiOS/Scenes/Contact/ContactDelegate.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  ContactDelegate.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class ContactDelegate: NSObject, UITableViewDelegate {
12
  
13
  weak var tableView: ContactTableView?
14
  
15
  var items: [Cell] = []
16
  
17
  init(tableView: ContactTableView) {
2x
18
    self.tableView = tableView
2x
19
    super.init()
2x
20
    self.tableView?.delegate = self
2x
21
  }
2x
22
  
23
  func update(with items: [Cell]) {
!
24
    self.items = items
!
25
  }
!
26
  
27
  func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
!
28
    let spacing = items[indexPath.row].topSpacing
!
29
    return CGFloat(50 + spacing)
!
30
  }
!
31
}
+
+ + + diff --git a/TesteiOS/coverage/ContactInteractor.swift.html b/TesteiOS/coverage/ContactInteractor.swift.html new file mode 100644 index 00000000..951e956b --- /dev/null +++ b/TesteiOS/coverage/ContactInteractor.swift.html @@ -0,0 +1,272 @@ + + + +ContactInteractor.swift - Slather + + + +
Slather logo
+

+Coverage for "ContactInteractor.swift" : 50.00% +

+

(9 of 18 relevant lines covered)

+

TesteiOS/Scenes/Contact/ContactInteractor.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  ContactInteractor.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright (c) 2019 Brendoon Ryos. All rights reserved.
7
//
8
//  This file was generated by the Clean Swift Xcode Templates so
9
//  you can apply clean architecture to your iOS and Mac projects,
10
//  see http://clean-swift.com
11
//
12
13
import UIKit
14
15
protocol ContactBusinessLogic {
16
  func fetchForm(request: Contact.Form.Request)
17
  func sendFormData(request: Contact.Send.Request)
18
}
19
20
protocol ContactDataStore {
21
  //var name: String { get set }
22
}
23
24
class ContactInteractor: ContactBusinessLogic, ContactDataStore {
25
  var presenter: ContactPresentationLogic?
26
  var worker: ContactWorker?
27
  //var name: String = ""
28
  
29
  // MARK: Fetch Form
30
  func fetchForm(request: Contact.Form.Request) {
1x
31
    worker = ContactWorker()
1x
32
    worker?.fetchForm(request: request, completion: { result in
1x
33
      switch result {
!
34
      case .success(let data):
!
35
        let response = Contact.Form.Response(cells: data.cells)
!
36
        self.presenter?.presentForm(response: response)
!
37
      case .failure(let error):
!
38
        let response = Contact.Form.Response(error: error)
!
39
        self.presenter?.presentErrorMessage(response: response)
!
40
      }
!
41
    })
!
42
  }
1x
43
  
44
  // MARK: Send form data
45
  func sendFormData(request: Contact.Send.Request) {
1x
46
    let response = Contact.Send.Response()
1x
47
    presenter?.presentSuccesseMessage(response: response)
1x
48
    // TODO: Send form data
1x
49
  }
1x
50
}
+
+ + + diff --git a/TesteiOS/coverage/ContactModels.swift.html b/TesteiOS/coverage/ContactModels.swift.html new file mode 100644 index 00000000..dc638ee2 --- /dev/null +++ b/TesteiOS/coverage/ContactModels.swift.html @@ -0,0 +1,262 @@ + + + +ContactModels.swift - Slather + + + +
Slather logo
+

+Coverage for "ContactModels.swift" : 0.00% +

+

(0 of 8 relevant lines covered)

+

TesteiOS/Scenes/Contact/ContactModels.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  ContactModels.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright (c) 2019 Brendoon Ryos. All rights reserved.
7
//
8
//  This file was generated by the Clean Swift Xcode Templates so
9
//  you can apply clean architecture to your iOS and Mac projects,
10
//  see http://clean-swift.com
11
//
12
13
import UIKit
14
15
enum Contact {
16
  // MARK: Use cases
17
  enum Send {
18
    struct Request{
19
      let values: [Value]
20
    }
21
    struct Response {}
22
    struct ViewModel {}
23
  }
24
  
25
  enum Form {
26
    struct Request{}
27
    
28
    struct Response {
29
      let cells: [Cell]
30
      let error: Error?
31
      
32
      init(cells: [Cell] = [], error: Error? = .none) {
!
33
        self.cells = cells
!
34
        self.error = error
!
35
      }
!
36
    }
37
    struct ViewModel {
38
      let cells: [Cell]
39
      let error: Error?
40
      
41
      init(cells: [Cell] = [], error: Error? = .none) {
!
42
        self.cells = cells
!
43
        self.error = error
!
44
      }
!
45
    }
46
  }
47
  
48
}
+
+ + + diff --git a/TesteiOS/coverage/ContactPresenter.swift.html b/TesteiOS/coverage/ContactPresenter.swift.html new file mode 100644 index 00000000..c96662b4 --- /dev/null +++ b/TesteiOS/coverage/ContactPresenter.swift.html @@ -0,0 +1,227 @@ + + + +ContactPresenter.swift - Slather + + + +
Slather logo
+

+Coverage for "ContactPresenter.swift" : 0.00% +

+

(0 of 12 relevant lines covered)

+

TesteiOS/Scenes/Contact/ContactPresenter.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  ContactPresenter.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright (c) 2019 Brendoon Ryos. All rights reserved.
7
//
8
//  This file was generated by the Clean Swift Xcode Templates so
9
//  you can apply clean architecture to your iOS and Mac projects,
10
//  see http://clean-swift.com
11
//
12
13
import UIKit
14
15
protocol ContactPresentationLogic {
16
  func presentForm(response: Contact.Form.Response)
17
  func presentSuccesseMessage(response: Contact.Send.Response)
18
  func presentErrorMessage(response: Contact.Form.Response)
19
}
20
21
class ContactPresenter: ContactPresentationLogic {
22
  weak var viewController: ContactDisplayLogic?
23
  
24
  // MARK: Present Form
25
  func presentForm(response: Contact.Form.Response) {
!
26
    let viewModel = Contact.Form.ViewModel(cells: response.cells)
!
27
    viewController?.displayForm(viewModel: viewModel)
!
28
  }
!
29
  
30
  // MARK: Present Success Message
31
  func presentSuccesseMessage(response: Contact.Send.Response) {
!
32
    let viewModel = Contact.Send.ViewModel()
!
33
    viewController?.displaySuccessMessage(viewModel: viewModel)
!
34
  }
!
35
  
36
  // MARK: Present Error Message
37
  func presentErrorMessage(response: Contact.Form.Response) {
!
38
    let viewModel = Contact.Form.ViewModel(error: response.error)
!
39
    viewController?.displayErrorMessage(viewModel: viewModel)
!
40
  }
!
41
}
+
+ + + diff --git a/TesteiOS/coverage/ContactTableView.swift.html b/TesteiOS/coverage/ContactTableView.swift.html new file mode 100644 index 00000000..c1f4621b --- /dev/null +++ b/TesteiOS/coverage/ContactTableView.swift.html @@ -0,0 +1,217 @@ + + + +ContactTableView.swift - Slather + + + +
Slather logo
+

+Coverage for "ContactTableView.swift" : 44.44% +

+

(8 of 18 relevant lines covered)

+

TesteiOS/UI/Views/Contact/ContactTableView.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  ContactTableView.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class ContactTableView: UITableView {
12
13
  fileprivate var customDataSource: ContactDataSource?
14
  fileprivate var customDelegate: ContactDelegate?
15
  convenience init() {
2x
16
    self.init(frame: .zero, style: .plain)
2x
17
  }
2x
18
  
19
  override init(frame: CGRect, style: UITableView.Style) {
2x
20
    super.init(frame: frame, style: style)
2x
21
    customDelegate = ContactDelegate(tableView: self)
2x
22
    customDataSource = ContactDataSource(tableView: self, delegate: customDelegate!)
2x
23
  }
2x
24
  
25
  required init?(coder aDecoder: NSCoder) {
!
26
    fatalError("init(coder:) has not been implemented")
!
27
  }
!
28
}
29
30
extension ContactTableView {
31
  func update(with items: [Cell]) {
!
32
    customDelegate?.update(with: items)
!
33
    customDataSource?.update(with: items)
!
34
  }
!
35
  
36
  func setSendHandler(_ handler: @escaping ([Value]) -> ()) {
!
37
    customDataSource?.sendAction = handler
!
38
  }
!
39
}
+
+ + + diff --git a/TesteiOS/coverage/ContactView.swift.html b/TesteiOS/coverage/ContactView.swift.html new file mode 100644 index 00000000..03f61c98 --- /dev/null +++ b/TesteiOS/coverage/ContactView.swift.html @@ -0,0 +1,402 @@ + + + +ContactView.swift - Slather + + + +
Slather logo
+

+Coverage for "ContactView.swift" : 85.45% +

+

(47 of 55 relevant lines covered)

+

TesteiOS/UI/Views/Contact/ContactView.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  ContactView.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class ContactView: UIView {
12
  lazy var activityIndicator: UIActivityIndicatorView = {
2x
13
    let view = UIActivityIndicatorView(style: .whiteLarge)
2x
14
    view.color = ColorPalette.black
2x
15
    return view
2x
16
  }()
2x
17
  
18
  lazy var tableView: ContactTableView = {
2x
19
    let view = ContactTableView()
2x
20
    view.separatorStyle = .none
2x
21
    view.alwaysBounceVertical = false
2x
22
    return view
2x
23
  }()
2x
24
  
25
  private lazy var feedbackView: FeedbackView = {
2x
26
    let view = FeedbackView.loadFromNib()
2x
27
    view.alpha = 0
2x
28
    return view
2x
29
  }()
2x
30
31
  override init(frame: CGRect) {
2x
32
    super.init(frame: frame)
2x
33
    setupViewCode()
2x
34
  }
2x
35
  
36
  required init?(coder aDecoder: NSCoder) {
!
37
    fatalError("init(coder:) has not been implemented")
!
38
  }
!
39
  
40
  func showFeedbackView() {
!
41
    UIView.animate(withDuration: 0.2) {
!
42
      self.feedbackView.alpha = 1
!
43
    }
!
44
  }
!
45
}
46
47
extension ContactView: ViewCode {
48
  func buildViewHierarchy() {
2x
49
    addSubview(tableView)
2x
50
    addSubview(feedbackView)
2x
51
    addSubview(activityIndicator)
2x
52
  }
2x
53
  
54
  func setupConstraints() {
2x
55
    tableView.snp.makeConstraints { make in
2x
56
      make.top.equalToSuperview()
2x
57
      make.leading.equalToSuperview()
2x
58
      make.trailing.equalToSuperview()
2x
59
      make.bottom.equalTo(-55)
2x
60
    }
2x
61
    
2x
62
    feedbackView.snp.makeConstraints { make in
2x
63
      make.top.equalToSuperview()
2x
64
      make.leading.equalToSuperview()
2x
65
      make.trailing.equalToSuperview()
2x
66
      make.bottom.equalTo(-55)
2x
67
    }
2x
68
    
2x
69
    activityIndicator.snp.makeConstraints { make in
2x
70
      make.top.equalToSuperview()
2x
71
      make.leading.equalToSuperview()
2x
72
      make.trailing.equalToSuperview()
2x
73
      make.bottom.equalTo(-55)
2x
74
    }
2x
75
  }
2x
76
}
+
+ + + diff --git a/TesteiOS/coverage/ContactViewController.swift.html b/TesteiOS/coverage/ContactViewController.swift.html new file mode 100644 index 00000000..477e22c3 --- /dev/null +++ b/TesteiOS/coverage/ContactViewController.swift.html @@ -0,0 +1,537 @@ + + + +ContactViewController.swift - Slather + + + +
Slather logo
+

+Coverage for "ContactViewController.swift" : 28.81% +

+

(17 of 59 relevant lines covered)

+

TesteiOS/Scenes/Contact/ContactViewController.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  ContactViewController.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright (c) 2019 Brendoon Ryos. All rights reserved.
7
//
8
//  This file was generated by the Clean Swift Xcode Templates so
9
//  you can apply clean architecture to your iOS and Mac projects,
10
//  see http://clean-swift.com
11
//
12
13
import UIKit
14
15
protocol ContactDisplayLogic: class {
16
  func displayForm(viewModel: Contact.Form.ViewModel)
17
  func displayErrorMessage(viewModel: Contact.Form.ViewModel)
18
  func displaySuccessMessage(viewModel: Contact.Send.ViewModel)
19
}
20
21
class ContactViewController: UIViewController {
22
  var interactor: ContactBusinessLogic?
23
  var router: (NSObjectProtocol & ContactRoutingLogic & ContactDataPassing)?
24
  
25
  let contactView = ContactView()
26
27
  // MARK: Object lifecycle
28
  init() {
2x
29
    super.init(nibName: .none, bundle: .none)
2x
30
    title = "Contato"
2x
31
    setup()
2x
32
  }
2x
33
  
34
  required init?(coder aDecoder: NSCoder) {
!
35
    super.init(coder: aDecoder)
!
36
    setup()
!
37
  }
!
38
  
39
  // MARK: Setup
40
  private func setup() {
2x
41
    let viewController = self
2x
42
    let interactor = ContactInteractor()
2x
43
    let presenter = ContactPresenter()
2x
44
    let router = ContactRouter()
2x
45
    viewController.interactor = interactor
2x
46
    viewController.router = router
2x
47
    interactor.presenter = presenter
2x
48
    presenter.viewController = viewController
2x
49
    router.viewController = viewController
2x
50
    router.dataStore = interactor
2x
51
  }
2x
52
  
53
  // MARK: View lifecycle
54
  override func viewDidLoad() {
!
55
    super.viewDidLoad()
!
56
    setupView()
!
57
    fetchForm()
!
58
  }
!
59
  
60
  override func loadView() {
!
61
    view = contactView
!
62
  }
!
63
  
64
  func setupView() {
!
65
    let tapGeture = UITapGestureRecognizer(target: self, action: #selector(hideKeyboard))
!
66
    view.addGestureRecognizer(tapGeture)
!
67
    contactView.tableView.setSendHandler(sendButtonPressed)
!
68
  }
!
69
  
70
  @objc func hideKeyboard() {
!
71
    view.endEditing(true)
!
72
  }
!
73
  
74
  func sendButtonPressed(_ values: [Value]) {
!
75
    print(values)
!
76
    let request = Contact.Send.Request(values: values)
!
77
    interactor?.sendFormData(request: request)
!
78
  }
!
79
  
80
  // MARK: Fetch Form
81
  func fetchForm() {
!
82
    let request = Contact.Form.Request()
!
83
    interactor?.fetchForm(request: request)
!
84
    contactView.activityIndicator.startAnimating()
!
85
  }
!
86
}
87
88
extension ContactViewController: ContactDisplayLogic {
89
  func displayForm(viewModel: Contact.Form.ViewModel) {
!
90
    contactView.activityIndicator.stopAnimating()
!
91
    contactView.tableView.update(with: viewModel.cells)
!
92
  }
!
93
  
94
  func displaySuccessMessage(viewModel: Contact.Send.ViewModel) {
!
95
    contactView.showFeedbackView()
!
96
    contactView.tableView.reloadData()
!
97
  }
!
98
  
99
  func displayErrorMessage(viewModel: Contact.Form.ViewModel) {
!
100
    
!
101
    contactView.activityIndicator.stopAnimating()
!
102
  }
!
103
}
+
+ + + diff --git a/TesteiOS/coverage/ContactWorker.swift.html b/TesteiOS/coverage/ContactWorker.swift.html new file mode 100644 index 00000000..c00d65f6 --- /dev/null +++ b/TesteiOS/coverage/ContactWorker.swift.html @@ -0,0 +1,167 @@ + + + +ContactWorker.swift - Slather + + + +
Slather logo
+

+Coverage for "ContactWorker.swift" : 75.00% +

+

(6 of 8 relevant lines covered)

+

TesteiOS/Scenes/Contact/ContactWorker.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  ContactWorker.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright (c) 2019 Brendoon Ryos. All rights reserved.
7
//
8
//  This file was generated by the Clean Swift Xcode Templates so
9
//  you can apply clean architecture to your iOS and Mac projects,
10
//  see http://clean-swift.com
11
//
12
13
import UIKit
14
import Alamofire
15
16
class ContactWorker {
17
  
18
  private let networkManager: NetworkManager
19
  
20
  init(networkManager: NetworkManager = NetworkManager()) {
1x
21
    self.networkManager = networkManager
1x
22
  }
1x
23
  
24
  func fetchForm(request: Contact.Form.Request, completion: @escaping (Result<FormData>) -> ()) {
1x
25
    networkManager.fetchForm(request: request) { result in
1x
26
      completion(result)
!
27
    }
!
28
  }
1x
29
}
+
+ + + diff --git a/TesteiOS/coverage/DefaultAlamofireManager.swift.html b/TesteiOS/coverage/DefaultAlamofireManager.swift.html new file mode 100644 index 00000000..98975e89 --- /dev/null +++ b/TesteiOS/coverage/DefaultAlamofireManager.swift.html @@ -0,0 +1,122 @@ + + + +DefaultAlamofireManager.swift - Slather + + + +
Slather logo
+

+Coverage for "DefaultAlamofireManager.swift" : 100.00% +

+

(8 of 8 relevant lines covered)

+

TesteiOS/Services/DefaultAlamofireManager.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  DefaultAlamofireManager.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 13/01/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import Alamofire
10
11
class DefaultAlamofireManager: Alamofire.SessionManager {
12
  static let sharedManager: DefaultAlamofireManager = {
2x
13
    let configuration = URLSessionConfiguration.default
2x
14
    configuration.httpAdditionalHeaders = Alamofire.SessionManager.defaultHTTPHeaders
2x
15
    configuration.timeoutIntervalForRequest = 30
2x
16
    configuration.timeoutIntervalForResource = 30
2x
17
    configuration.requestCachePolicy = .useProtocolCachePolicy
2x
18
    return DefaultAlamofireManager(configuration: configuration)
2x
19
  }()
2x
20
}
+
+ + + diff --git a/TesteiOS/coverage/DownInfoTableViewCell.swift.html b/TesteiOS/coverage/DownInfoTableViewCell.swift.html new file mode 100644 index 00000000..e6b8e013 --- /dev/null +++ b/TesteiOS/coverage/DownInfoTableViewCell.swift.html @@ -0,0 +1,152 @@ + + + +DownInfoTableViewCell.swift - Slather + + + +
Slather logo
+

+Coverage for "DownInfoTableViewCell.swift" : 57.14% +

+

(4 of 7 relevant lines covered)

+

TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  DownInfoTableViewCell.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class DownInfoTableViewCell: FundBaseTableViewCell {
12
    
13
  @IBOutlet weak var nameLabel: UILabel!
14
  @IBOutlet weak var downloadButton: UIButton!
15
  
16
  var data: String? = .none
17
  
18
  override func setup(with fund: Fund) {
4x
19
    nameLabel.text = fund.downInfo[tag].name
4x
20
    data = fund.downInfo[tag].data
4x
21
  }
4x
22
    
23
  @IBAction func downloadData(_ sender: UIButton){
!
24
    self.downloadAction?(data)
!
25
  }
!
26
}
+
+ + + diff --git a/TesteiOS/coverage/FeedbackView.swift.html b/TesteiOS/coverage/FeedbackView.swift.html new file mode 100644 index 00000000..bc874866 --- /dev/null +++ b/TesteiOS/coverage/FeedbackView.swift.html @@ -0,0 +1,132 @@ + + + +FeedbackView.swift - Slather + + + +
Slather logo
+

+Coverage for "FeedbackView.swift" : 44.44% +

+

(4 of 9 relevant lines covered)

+

TesteiOS/UI/Views/Contact/FeedbackView/FeedbackView.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FeedbackView.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 23/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class FeedbackView: UIView {
12
  class func loadFromNib() -> FeedbackView {
2x
13
    let nib = UINib(nibName: String(describing: self), bundle: .main)
2x
14
    return nib.instantiate(withOwner: nil, options: nil).first as! FeedbackView
2x
15
  }
2x
16
  
17
  @IBAction func sendButtonPressed(_ sender: UIButton) {
!
18
    UIView.animate(withDuration: 0.2) {
!
19
      self.alpha = 0
!
20
    }
!
21
  }
!
22
}
+
+ + + diff --git a/TesteiOS/coverage/FormData.swift.html b/TesteiOS/coverage/FormData.swift.html new file mode 100644 index 00000000..67f7d8bf --- /dev/null +++ b/TesteiOS/coverage/FormData.swift.html @@ -0,0 +1,147 @@ + + + +FormData.swift - Slather + + + +
Slather logo
+

+Coverage for "FormData.swift" : 100.00% +

+

(5 of 5 relevant lines covered)

+

TesteiOS/Models/FormData.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FormData.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import Foundation
10
11
struct FormData {
12
  let cells: [Cell]
13
}
14
15
extension FormData: Decodable {
16
  private enum CodingKeys: String, CodingKey {
17
    case cells
18
  }
19
  
20
  init(from decoder: Decoder) throws {
9x
21
    let container = try decoder.container(keyedBy: CodingKeys.self)
9x
22
    
9x
23
    cells = try container.decode([Cell].self, forKey: .cells)
9x
24
  }
9x
25
}
+
+ + + diff --git a/TesteiOS/coverage/Fund.swift.html b/TesteiOS/coverage/Fund.swift.html new file mode 100644 index 00000000..36dac32d --- /dev/null +++ b/TesteiOS/coverage/Fund.swift.html @@ -0,0 +1,277 @@ + + + +Fund.swift - Slather + + + +
Slather logo
+

+Coverage for "Fund.swift" : 100.00% +

+

(13 of 13 relevant lines covered)

+

TesteiOS/Models/Fund.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  Fund.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 23/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import Foundation
10
11
struct Fund {
12
  let title: String
13
  let fundName: String
14
  let whatIs: String
15
  let definition: String
16
  let riskTitle: String
17
  let risk: Int
18
  let infoTitle: String
19
  let moreInfo: MoreInfoData
20
  let info: [Info]
21
  let downInfo: [Info]
22
}
23
24
extension Fund: Decodable {
25
  private enum CodingKeys: String, CodingKey {
26
    case title
27
    case fundName
28
    case whatIs
29
    case definition
30
    case riskTitle
31
    case risk
32
    case infoTitle
33
    case moreInfo
34
    case info
35
    case downInfo
36
  }
37
  
38
  init(from decoder: Decoder) throws {
2x
39
    let container = try decoder.container(keyedBy: CodingKeys.self)
2x
40
    title = try container.decode(String.self, forKey: .title)
2x
41
    fundName = try container.decode(String.self, forKey: .fundName)
2x
42
    whatIs = try container.decode(String.self, forKey: .whatIs)
2x
43
    definition = try container.decode(String.self, forKey: .definition)
2x
44
    riskTitle = try container.decode(String.self, forKey: .riskTitle)
2x
45
    risk = try container.decode(Int.self, forKey: .risk)
2x
46
    infoTitle = try container.decode(String.self, forKey: .infoTitle)
2x
47
    moreInfo = try container.decode(MoreInfoData.self, forKey: .moreInfo)
2x
48
    info = try container.decode([Info].self, forKey: .info)
2x
49
    downInfo = try container.decode([Info].self, forKey: .downInfo)
2x
50
  }
2x
51
}
+
+ + + diff --git a/TesteiOS/coverage/FundBaseTableViewCell.swift.html b/TesteiOS/coverage/FundBaseTableViewCell.swift.html new file mode 100644 index 00000000..ab7195fc --- /dev/null +++ b/TesteiOS/coverage/FundBaseTableViewCell.swift.html @@ -0,0 +1,102 @@ + + + +FundBaseTableViewCell.swift - Slather + + + +
Slather logo
+

+Coverage for "FundBaseTableViewCell.swift" : 0.00% +

+

(0 of 1 relevant lines covered)

+

TesteiOS/UI/Cells/Fund/FundBaseTableViewCell.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FundBaseTableViewCell.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 24/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
import Reusable
11
12
class FundBaseTableViewCell: UITableViewCell, NibReusable {
13
  func setup(with fund: Fund) {}
!
14
  var investAction: (() -> ())?
15
  var downloadAction: ((String?) -> ())?
16
}
+
+ + + diff --git a/TesteiOS/coverage/FundHeaderTableViewCell.swift.html b/TesteiOS/coverage/FundHeaderTableViewCell.swift.html new file mode 100644 index 00000000..f1aa1d57 --- /dev/null +++ b/TesteiOS/coverage/FundHeaderTableViewCell.swift.html @@ -0,0 +1,167 @@ + + + +FundHeaderTableViewCell.swift - Slather + + + +
Slather logo
+

+Coverage for "FundHeaderTableViewCell.swift" : 100.00% +

+

(8 of 8 relevant lines covered)

+

TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FundHeaderTableViewCell.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class FundHeaderTableViewCell: FundBaseTableViewCell {
12
13
  @IBOutlet weak var titleLabel: UILabel!
14
  @IBOutlet weak var fundNameLabel: UILabel!
15
  @IBOutlet weak var whatIsLabel: UILabel!
16
  @IBOutlet weak var definitionLabel: UILabel!
17
  @IBOutlet weak var riskTitleLabel: UILabel!
18
  @IBOutlet weak var riskView: RiskView!
19
  
20
  override func setup(with fund: Fund) {
2x
21
    titleLabel.text = fund.title
2x
22
    fundNameLabel.text = fund.fundName
2x
23
    whatIsLabel.text = fund.whatIs
2x
24
    definitionLabel.text = fund.definition
2x
25
    riskTitleLabel.text = fund.riskTitle
2x
26
    riskView.setRist(risk: fund.risk)
2x
27
  }
2x
28
29
}
+
+ + + diff --git a/TesteiOS/coverage/FundsData.swift.html b/TesteiOS/coverage/FundsData.swift.html new file mode 100644 index 00000000..c95670df --- /dev/null +++ b/TesteiOS/coverage/FundsData.swift.html @@ -0,0 +1,142 @@ + + + +FundsData.swift - Slather + + + +
Slather logo
+

+Coverage for "FundsData.swift" : 100.00% +

+

(4 of 4 relevant lines covered)

+

TesteiOS/Models/FundsData.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FundsData.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import Foundation
10
11
struct FundsData {
12
  let fund: Fund
13
}
14
15
extension FundsData: Decodable {
16
  private enum CodingKeys: String, CodingKey {
17
    case fund = "screen"
18
  }
19
  
20
  init(from decoder: Decoder) throws {
2x
21
    let container = try decoder.container(keyedBy: CodingKeys.self)
2x
22
    fund = try container.decode(Fund.self, forKey: .fund)
2x
23
  }
2x
24
}
+
+ + + diff --git a/TesteiOS/coverage/FundsDataSource.swift.html b/TesteiOS/coverage/FundsDataSource.swift.html new file mode 100644 index 00000000..402c8716 --- /dev/null +++ b/TesteiOS/coverage/FundsDataSource.swift.html @@ -0,0 +1,377 @@ + + + +FundsDataSource.swift - Slather + + + +
Slather logo
+

+Coverage for "FundsDataSource.swift" : 97.67% +

+

(42 of 43 relevant lines covered)

+

TesteiOS/Scenes/Funds/FundsDataSource.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FundsDataSource.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 23/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class FundsDataSource: NSObject, ItemsTableViewDataSource {
12
  
13
  var items: [CellType] = []
14
  var fund: Fund? = .none
15
  var tableView: UITableView?
16
  var delegate: UITableViewDelegate?
17
  var investAction: (() -> ())?
18
  var downloadAction: ((String?) -> ())?
19
  
20
  required init(tableView: UITableView, delegate: UITableViewDelegate) {
2x
21
    self.tableView = tableView
2x
22
    self.delegate = delegate
2x
23
    super.init()
2x
24
    setupTableView()
2x
25
  }
2x
26
  
27
  func registerTableView() {
4x
28
    for item in items {
10x
29
      self.tableView?.register(item.getNib(), forCellReuseIdentifier: item.getIdentifier())
10x
30
    }
10x
31
  }
4x
32
  
33
  func update(with fund: Fund) {
2x
34
    self.fund = fund
2x
35
    self.items = [.fundHeader, .moreInfo, .info, .downInfo, .invest]
2x
36
    self.registerTableView()
2x
37
    self.tableView?.reloadData()
2x
38
  }
2x
39
}
40
41
extension FundsDataSource: UITableViewDataSource {
42
  
43
  func numberOfSections(in tableView: UITableView) -> Int {
10x
44
    return items.count
10x
45
  }
10x
46
  
47
  func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
10x
48
    switch section {
10x
49
    case 0, 1, 4 :
10x
50
      return 1
6x
51
    case 2:
10x
52
      return fund!.info.count
2x
53
    case 3:
10x
54
      return fund!.downInfo.count
2x
55
    default:
10x
56
      return 0
!
57
    }
10x
58
  }
10x
59
  
60
  func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
22x
61
    let type = items[indexPath.section]
22x
62
    let cell = tableView.dequeueReusableCell(withIdentifier: type.getIdentifier(), for: indexPath) as! FundBaseTableViewCell
22x
63
    
22x
64
    cell.tag = indexPath.row
22x
65
    cell.investAction = investAction
22x
66
    cell.downloadAction = downloadAction
22x
67
    cell.setup(with: fund!)
22x
68
    
22x
69
    return cell
22x
70
  }
22x
71
}
+
+ + + diff --git a/TesteiOS/coverage/FundsDelegate.swift.html b/TesteiOS/coverage/FundsDelegate.swift.html new file mode 100644 index 00000000..6fd728d4 --- /dev/null +++ b/TesteiOS/coverage/FundsDelegate.swift.html @@ -0,0 +1,152 @@ + + + +FundsDelegate.swift - Slather + + + +
Slather logo
+

+Coverage for "FundsDelegate.swift" : 100.00% +

+

(8 of 8 relevant lines covered)

+

TesteiOS/Scenes/Funds/FundsDelegate.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FundsDelegate.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 23/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class FundsDelegate: NSObject, UITableViewDelegate {
12
  
13
  weak var tableView: UITableView?
14
  
15
  var items: [CellType] = [.fundHeader, .moreInfo, .info, .downInfo, .invest]
16
  
17
  init(tableView: UITableView) {
2x
18
    self.tableView = tableView
2x
19
    super.init()
2x
20
    self.tableView?.delegate = self
2x
21
  }
2x
22
  
23
  func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
66x
24
    return items[indexPath.section].getHeight()
66x
25
  }
66x
26
}
+
+ + + diff --git a/TesteiOS/coverage/FundsInteractor.swift.html b/TesteiOS/coverage/FundsInteractor.swift.html new file mode 100644 index 00000000..46f858d9 --- /dev/null +++ b/TesteiOS/coverage/FundsInteractor.swift.html @@ -0,0 +1,272 @@ + + + +FundsInteractor.swift - Slather + + + +
Slather logo
+

+Coverage for "FundsInteractor.swift" : 61.11% +

+

(11 of 18 relevant lines covered)

+

TesteiOS/Scenes/Funds/FundsInteractor.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FundsInteractor.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright (c) 2019 Brendoon Ryos. All rights reserved.
7
//
8
//  This file was generated by the Clean Swift Xcode Templates so
9
//  you can apply clean architecture to your iOS and Mac projects,
10
//  see http://clean-swift.com
11
//
12
13
import UIKit
14
15
protocol FundsBusinessLogic {
16
  func fetchFund(request: Funds.Get.Request)
17
  func downloadData(request: Funds.Download.Request)
18
}
19
20
protocol FundsDataStore {
21
  var url: String { get set }
22
}
23
24
class FundsInteractor: FundsBusinessLogic, FundsDataStore {
25
  var presenter: FundsPresentationLogic?
26
  var worker: FundsWorker?
27
  var url: String = ""
28
  
29
  // MARK: Fetch fund
30
  func fetchFund(request: Funds.Get.Request) {
2x
31
    worker = FundsWorker()
2x
32
    worker?.fetchFund(request: request, completion: { result in
2x
33
      switch result {
2x
34
      case .success(let data):
2x
35
        let response = Funds.Get.Response(fund: data.fund)
2x
36
        self.presenter?.presentFund(response: response)
2x
37
      case .failure(let error):
2x
38
        let response = Funds.Get.Response(error: error)
!
39
        self.presenter?.presentErrorMessage(response: response)
!
40
      }
2x
41
    })
2x
42
  }
2x
43
  
44
  // MARK: Fetch data
45
  func downloadData(request: Funds.Download.Request) {
!
46
    url = request.url ?? "https://www.google.com/"
!
47
    let response = Funds.Download.Response()
!
48
    presenter?.presentDownloadedData(response: response)
!
49
  }
!
50
}
+
+ + + diff --git a/TesteiOS/coverage/FundsModels.swift.html b/TesteiOS/coverage/FundsModels.swift.html new file mode 100644 index 00000000..cb3bd088 --- /dev/null +++ b/TesteiOS/coverage/FundsModels.swift.html @@ -0,0 +1,252 @@ + + + +FundsModels.swift - Slather + + + +
Slather logo
+

+Coverage for "FundsModels.swift" : 100.00% +

+

(8 of 8 relevant lines covered)

+

TesteiOS/Scenes/Funds/FundsModels.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FundsModels.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright (c) 2019 Brendoon Ryos. All rights reserved.
7
//
8
//  This file was generated by the Clean Swift Xcode Templates so
9
//  you can apply clean architecture to your iOS and Mac projects,
10
//  see http://clean-swift.com
11
//
12
13
import UIKit
14
15
enum Funds {
16
  // MARK: Use cases
17
  enum Download {
18
    struct Request {
19
      let url: String?
20
    }
21
    struct Response {}
22
    struct ViewModel {}
23
  }
24
  
25
  enum Get {
26
    struct Request {}
27
    struct Response {
28
      let fund: Fund?
29
      let error: Error?
30
      
31
      init(fund: Fund? = .none, error: Error? = .none) {
2x
32
        self.fund = fund
2x
33
        self.error = error
2x
34
      }
2x
35
    }
36
    struct ViewModel {
37
      let fund: Fund?
38
      let error: Error?
39
      
40
      init(fund: Fund? = .none, error: Error? = .none) {
2x
41
        self.fund = fund
2x
42
        self.error = error
2x
43
      }
2x
44
    }
45
  }
46
}
+
+ + + diff --git a/TesteiOS/coverage/FundsPresenter.swift.html b/TesteiOS/coverage/FundsPresenter.swift.html new file mode 100644 index 00000000..9e83f699 --- /dev/null +++ b/TesteiOS/coverage/FundsPresenter.swift.html @@ -0,0 +1,227 @@ + + + +FundsPresenter.swift - Slather + + + +
Slather logo
+

+Coverage for "FundsPresenter.swift" : 33.33% +

+

(4 of 12 relevant lines covered)

+

TesteiOS/Scenes/Funds/FundsPresenter.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FundsPresenter.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright (c) 2019 Brendoon Ryos. All rights reserved.
7
//
8
//  This file was generated by the Clean Swift Xcode Templates so
9
//  you can apply clean architecture to your iOS and Mac projects,
10
//  see http://clean-swift.com
11
//
12
13
import UIKit
14
15
protocol FundsPresentationLogic {
16
  func presentFund(response: Funds.Get.Response)
17
  func presentDownloadedData(response: Funds.Download.Response)
18
  func presentErrorMessage(response: Funds.Get.Response)
19
}
20
21
class FundsPresenter: FundsPresentationLogic {
22
  weak var viewController: FundsDisplayLogic?
23
  
24
  // MARK: Present Fund
25
  func presentFund(response: Funds.Get.Response) {
2x
26
    let viewModel = Funds.Get.ViewModel(fund: response.fund)
2x
27
    viewController?.displayFund(viewModel: viewModel)
2x
28
  }
2x
29
  
30
  // MARK: Present Data
31
  func presentDownloadedData(response: Funds.Download.Response) {
!
32
    let viewModel = Funds.Download.ViewModel()
!
33
    viewController?.displayDownloadedData(viewModel: viewModel)
!
34
  }
!
35
  
36
  // MARK: Present Error Message
37
  func presentErrorMessage(response: Funds.Get.Response) {
!
38
    let viewModel = Funds.Get.ViewModel(error: response.error)
!
39
    viewController?.displayErrorMessage(viewModel: viewModel)
!
40
  }
!
41
}
+
+ + + diff --git a/TesteiOS/coverage/FundsRouter.swift.html b/TesteiOS/coverage/FundsRouter.swift.html new file mode 100644 index 00000000..b77bf2e2 --- /dev/null +++ b/TesteiOS/coverage/FundsRouter.swift.html @@ -0,0 +1,242 @@ + + + +FundsRouter.swift - Slather + + + +
Slather logo
+

+Coverage for "FundsRouter.swift" : 0.00% +

+

(0 of 8 relevant lines covered)

+

TesteiOS/Scenes/Funds/FundsRouter.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FundsRouter.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright (c) 2019 Brendoon Ryos. All rights reserved.
7
//
8
//  This file was generated by the Clean Swift Xcode Templates so
9
//  you can apply clean architecture to your iOS and Mac projects,
10
//  see http://clean-swift.com
11
//
12
13
import UIKit
14
import SafariServices
15
16
@objc protocol FundsRoutingLogic {
17
  func routeToDownloadData()
18
}
19
20
protocol FundsDataPassing {
21
  var dataStore: FundsDataStore? { get }
22
}
23
24
class FundsRouter: NSObject, FundsRoutingLogic, FundsDataPassing {
25
  weak var viewController: FundsViewController?
26
  var dataStore: FundsDataStore?
27
  
28
  // MARK: Routing
29
  func routeToDownloadData() {
!
30
    guard let string = dataStore?.url, let url = URL(string: string) else { return }
!
31
    let safariViewController = SFSafariViewController(url: url)
!
32
    navigateToDownloadData(source: viewController!, destination: safariViewController)
!
33
  }
!
34
35
  // MARK: Navigation
36
  func navigateToDownloadData(source: FundsViewController, destination: SFSafariViewController) {
!
37
    source.present(destination, animated: true)
!
38
  }
!
39
  
40
  // MARK: Passing data
41
//  func passDataToSomewhere(source: FundsDataStore, destination: inout SomewhereDataStore) {
42
//    destination.name = source.name
43
//  }
44
}
+
+ + + diff --git a/TesteiOS/coverage/FundsTableView.swift.html b/TesteiOS/coverage/FundsTableView.swift.html new file mode 100644 index 00000000..c8cb14a3 --- /dev/null +++ b/TesteiOS/coverage/FundsTableView.swift.html @@ -0,0 +1,232 @@ + + + +FundsTableView.swift - Slather + + + +
Slather logo
+

+Coverage for "FundsTableView.swift" : 85.00% +

+

(17 of 20 relevant lines covered)

+

TesteiOS/UI/Views/Funds/FundsTableView.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FundsTableView.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 24/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class FundsTableView: UITableView {
12
13
  fileprivate var customDataSource: FundsDataSource?
14
  fileprivate var customDelegate: FundsDelegate?
15
  convenience init() {
2x
16
    self.init(frame: .zero, style: .plain)
2x
17
  }
2x
18
  
19
  override init(frame: CGRect, style: UITableView.Style) {
2x
20
    super.init(frame: frame, style: style)
2x
21
    customDelegate = FundsDelegate(tableView: self)
2x
22
    customDataSource = FundsDataSource(tableView: self, delegate: customDelegate!)
2x
23
  }
2x
24
  
25
  required init?(coder aDecoder: NSCoder) {
!
26
    fatalError("init(coder:) has not been implemented")
!
27
  }
!
28
}
29
30
extension FundsTableView {
31
  func update(with fund: Fund) {
2x
32
    customDataSource?.update(with: fund)
2x
33
  }
2x
34
  
35
  func setInvestHandler(_ handler: @escaping () -> ()) {
2x
36
    customDataSource?.investAction = handler
2x
37
  }
2x
38
  
39
  func setDownloadHandler(_ handler: @escaping (String?) -> ()) {
2x
40
    customDataSource?.downloadAction = handler
2x
41
  }
2x
42
}
+
+ + + diff --git a/TesteiOS/coverage/FundsView.swift.html b/TesteiOS/coverage/FundsView.swift.html new file mode 100644 index 00000000..982cf093 --- /dev/null +++ b/TesteiOS/coverage/FundsView.swift.html @@ -0,0 +1,302 @@ + + + +FundsView.swift - Slather + + + +
Slather logo
+

+Coverage for "FundsView.swift" : 91.89% +

+

(34 of 37 relevant lines covered)

+

TesteiOS/UI/Views/Funds/FundsView.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FundsView.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 23/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class FundsView: UIView {
12
  lazy var activityIndicator: UIActivityIndicatorView = {
2x
13
    let view = UIActivityIndicatorView(style: .whiteLarge)
2x
14
    view.color = ColorPalette.black
2x
15
    return view
2x
16
  }()
2x
17
  
18
  lazy var tableView: FundsTableView = {
2x
19
    let view = FundsTableView()
2x
20
    view.separatorStyle = .none
2x
21
    view.alwaysBounceVertical = false
2x
22
    return view
2x
23
  }()
2x
24
25
  override init(frame: CGRect) {
2x
26
    super.init(frame: frame)
2x
27
    setupViewCode()
2x
28
  }
2x
29
  
30
  required init?(coder aDecoder: NSCoder) {
!
31
    fatalError("init(coder:) has not been implemented")
!
32
  }
!
33
}
34
35
extension FundsView: ViewCode {
36
  func buildViewHierarchy() {
2x
37
    addSubview(tableView)
2x
38
    addSubview(activityIndicator)
2x
39
  }
2x
40
  
41
  func setupConstraints() {
2x
42
    tableView.snp.makeConstraints { make in
2x
43
      make.top.equalToSuperview()
2x
44
      make.leading.equalToSuperview()
2x
45
      make.trailing.equalToSuperview()
2x
46
      make.bottom.equalTo(-55)
2x
47
    }
2x
48
    
2x
49
    activityIndicator.snp.makeConstraints { make in
2x
50
      make.top.equalToSuperview()
2x
51
      make.leading.equalToSuperview()
2x
52
      make.trailing.equalToSuperview()
2x
53
      make.bottom.equalTo(-55)
2x
54
    }
2x
55
  }
2x
56
}
+
+ + + diff --git a/TesteiOS/coverage/FundsViewController.swift.html b/TesteiOS/coverage/FundsViewController.swift.html new file mode 100644 index 00000000..b2f36c4d --- /dev/null +++ b/TesteiOS/coverage/FundsViewController.swift.html @@ -0,0 +1,527 @@ + + + +FundsViewController.swift - Slather + + + +
Slather logo
+

+Coverage for "FundsViewController.swift" : 68.42% +

+

(39 of 57 relevant lines covered)

+

TesteiOS/Scenes/Funds/FundsViewController.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FundsViewController.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright (c) 2019 Brendoon Ryos. All rights reserved.
7
//
8
//  This file was generated by the Clean Swift Xcode Templates so
9
//  you can apply clean architecture to your iOS and Mac projects,
10
//  see http://clean-swift.com
11
//
12
13
import UIKit
14
15
protocol FundsDisplayLogic: class {
16
  func displayFund(viewModel: Funds.Get.ViewModel)
17
  func displayDownloadedData(viewModel: Funds.Download.ViewModel)
18
  func displayErrorMessage(viewModel: Funds.Get.ViewModel)
19
}
20
21
class FundsViewController: UIViewController {
22
  var interactor: FundsBusinessLogic?
23
  var router: (NSObjectProtocol & FundsRoutingLogic & FundsDataPassing)?
24
  
25
  let fundsView = FundsView()
26
27
  // MARK: Object lifecycle
28
  init() {
2x
29
    super.init(nibName: .none, bundle: .none)
2x
30
    title = "Investimento"
2x
31
    navigationItem.rightBarButtonItem = UIBarButtonItem(image: UIImage(named: "share"), style: .plain, target: .none, action: .none)
2x
32
    setup()
2x
33
  }
2x
34
  
35
  required init?(coder aDecoder: NSCoder) {
!
36
    super.init(coder: aDecoder)
!
37
    setup()
!
38
  }
!
39
  
40
  // MARK: Setup
41
  private func setup() {
2x
42
    let viewController = self
2x
43
    let interactor = FundsInteractor()
2x
44
    let presenter = FundsPresenter()
2x
45
    let router = FundsRouter()
2x
46
    viewController.interactor = interactor
2x
47
    viewController.router = router
2x
48
    interactor.presenter = presenter
2x
49
    presenter.viewController = viewController
2x
50
    router.viewController = viewController
2x
51
    router.dataStore = interactor
2x
52
  }
2x
53
  
54
  // MARK: View lifecycle
55
  override func viewDidLoad() {
2x
56
    super.viewDidLoad()
2x
57
    setupView()
2x
58
    fetchFund()
2x
59
  }
2x
60
  
61
  override func loadView() {
2x
62
    view = fundsView
2x
63
  }
2x
64
  
65
  func setupView() {
2x
66
    fundsView.tableView.setInvestHandler(investButtonPressed)
2x
67
    fundsView.tableView.setDownloadHandler(downloadButtonPressed)
2x
68
  }
2x
69
  
70
  func investButtonPressed() {
!
71
    // TODO: Invest Button pressed action
!
72
    print("Investir")
!
73
  }
!
74
  
75
  func downloadButtonPressed(_ url: String?) {
!
76
    let request = Funds.Download.Request(url: url)
!
77
    interactor?.downloadData(request: request)
!
78
  }
!
79
  
80
  // MARK: Fetch Fund
81
  func fetchFund() {
2x
82
    let request = Funds.Get.Request()
2x
83
    interactor?.fetchFund(request: request)
2x
84
    fundsView.activityIndicator.startAnimating()
2x
85
  }
2x
86
}
87
88
extension FundsViewController: FundsDisplayLogic {
89
  func displayFund(viewModel: Funds.Get.ViewModel) {
2x
90
    fundsView.tableView.update(with: viewModel.fund!)
2x
91
    fundsView.activityIndicator.stopAnimating()
2x
92
  }
2x
93
  
94
  func displayDownloadedData(viewModel: Funds.Download.ViewModel) {
!
95
    router?.routeToDownloadData()
!
96
  }
!
97
  
98
  func displayErrorMessage(viewModel: Funds.Get.ViewModel) {
!
99
    fundsView.activityIndicator.stopAnimating()
!
100
  }
!
101
}
+
+ + + diff --git a/TesteiOS/coverage/FundsWorker.swift.html b/TesteiOS/coverage/FundsWorker.swift.html new file mode 100644 index 00000000..acb0f3cf --- /dev/null +++ b/TesteiOS/coverage/FundsWorker.swift.html @@ -0,0 +1,167 @@ + + + +FundsWorker.swift - Slather + + + +
Slather logo
+

+Coverage for "FundsWorker.swift" : 100.00% +

+

(8 of 8 relevant lines covered)

+

TesteiOS/Scenes/Funds/FundsWorker.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  FundsWorker.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright (c) 2019 Brendoon Ryos. All rights reserved.
7
//
8
//  This file was generated by the Clean Swift Xcode Templates so
9
//  you can apply clean architecture to your iOS and Mac projects,
10
//  see http://clean-swift.com
11
//
12
13
import UIKit
14
import Alamofire
15
16
class FundsWorker {
17
  
18
  private let networkManager: NetworkManager
19
  
20
  init(networkManager: NetworkManager = NetworkManager()) {
2x
21
    self.networkManager = networkManager
2x
22
  }
2x
23
  
24
  func fetchFund(request: Funds.Get.Request, completion: @escaping (Result<FundsData>) -> ()) {
2x
25
    networkManager.fetchFund(request: request) { result in
2x
26
      completion(result)
2x
27
    }
2x
28
  }
2x
29
}
+
+ + + diff --git a/TesteiOS/coverage/Info.swift.html b/TesteiOS/coverage/Info.swift.html new file mode 100644 index 00000000..0c92af93 --- /dev/null +++ b/TesteiOS/coverage/Info.swift.html @@ -0,0 +1,167 @@ + + + +Info.swift - Slather + + + +
Slather logo
+

+Coverage for "Info.swift" : 100.00% +

+

(5 of 5 relevant lines covered)

+

TesteiOS/Models/Info.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  Info.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 23/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import Foundation
10
11
struct Info {
12
  let name: String
13
  let data: String?
14
}
15
16
extension Info: Decodable {
17
  private enum CodingKeys: String, CodingKey {
18
    case name
19
    case data
20
  }
21
  
22
  init(from decoder: Decoder) throws {
24x
23
    let container = try decoder.container(keyedBy: CodingKeys.self)
24x
24
    name = try container.decode(String.self, forKey: .name)
24x
25
    data = try? container.decode(String.self, forKey: .data)
24x
26
  }
24x
27
}
28
29
+
+ + + diff --git a/TesteiOS/coverage/InfoTableViewCell.swift.html b/TesteiOS/coverage/InfoTableViewCell.swift.html new file mode 100644 index 00000000..ef2a26f6 --- /dev/null +++ b/TesteiOS/coverage/InfoTableViewCell.swift.html @@ -0,0 +1,122 @@ + + + +InfoTableViewCell.swift - Slather + + + +
Slather logo
+

+Coverage for "InfoTableViewCell.swift" : 100.00% +

+

(4 of 4 relevant lines covered)

+

TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewCell.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  InfoTableViewCell.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class InfoTableViewCell: FundBaseTableViewCell {
12
13
  @IBOutlet weak var nameLabel: UILabel!
14
  @IBOutlet weak var dataLabel: UILabel!
15
  
16
  override func setup(with fund: Fund) {
14x
17
    nameLabel.text = fund.info[tag].name
14x
18
    dataLabel.text = fund.info[tag].data
14x
19
  }
14x
20
}
+
+ + + diff --git a/TesteiOS/coverage/InvestTableViewCell.swift.html b/TesteiOS/coverage/InvestTableViewCell.swift.html new file mode 100644 index 00000000..5a3bfbfb --- /dev/null +++ b/TesteiOS/coverage/InvestTableViewCell.swift.html @@ -0,0 +1,187 @@ + + + +InvestTableViewCell.swift - Slather + + + +
Slather logo
+

+Coverage for "InvestTableViewCell.swift" : 0.00% +

+

(0 of 17 relevant lines covered)

+

TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  InvestTableViewCell.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 24/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class InvestTableViewCell: FundBaseTableViewCell {
12
  
13
  @IBOutlet weak var investButton: UIButton!
14
  
15
  override func awakeFromNib() {
!
16
    super.awakeFromNib()
!
17
    investButton.layer.cornerRadius = investButton.frame.height / 2
!
18
    investButton.setTitle("Investir", for: .normal)
!
19
  }
!
20
    
21
  @IBAction func investButtonPressed(_ sender: UIButton) {
!
22
    UIView.animate(withDuration: 0.2, animations: {
!
23
      sender.backgroundColor = ColorPalette.middleRedPurple
!
24
      sender.transform = CGAffineTransform(scaleX: 0.90, y: 0.83)
!
25
    }) { completed in
!
26
      UIView.animate(withDuration: 0.2, animations: {
!
27
        self.investAction?()
!
28
        sender.backgroundColor = ColorPalette.rossoCorsa
!
29
        sender.transform = CGAffineTransform.identity
!
30
      })
!
31
    }
!
32
  }
!
33
}
+
+ + + diff --git a/TesteiOS/coverage/ItemsTableViewDataSource.swift.html b/TesteiOS/coverage/ItemsTableViewDataSource.swift.html new file mode 100644 index 00000000..8a715c18 --- /dev/null +++ b/TesteiOS/coverage/ItemsTableViewDataSource.swift.html @@ -0,0 +1,182 @@ + + + +ItemsTableViewDataSource.swift - Slather + + + +
Slather logo
+

+Coverage for "ItemsTableViewDataSource.swift" : 85.71% +

+

(6 of 7 relevant lines covered)

+

TesteiOS/Commons/ItemsTableViewDataSource.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  ItemsTableViewDataSource.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 04/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
protocol ItemsTableViewDataSource: UITableViewDataSource {
12
  associatedtype T
13
  var items:[T] { get }
14
  var tableView: UITableView? { get }
15
  var delegate: UITableViewDelegate? { get }
16
  
17
  init(tableView: UITableView, delegate: UITableViewDelegate)
18
  
19
  func setupTableView()
20
  func registerTableView()
21
}
22
23
extension ItemsTableViewDataSource {
24
  func setupTableView() {
12x
25
    registerTableView()
12x
26
    self.tableView?.dataSource = self
12x
27
    self.tableView?.delegate = self.delegate
12x
28
    self.tableView?.reloadData()
12x
29
  }
12x
30
  
31
  func registerTableView() {}
!
32
}
+
+ + + diff --git a/TesteiOS/coverage/MoreInfo.swift.html b/TesteiOS/coverage/MoreInfo.swift.html new file mode 100644 index 00000000..4fabf8cc --- /dev/null +++ b/TesteiOS/coverage/MoreInfo.swift.html @@ -0,0 +1,157 @@ + + + +MoreInfo.swift - Slather + + + +
Slather logo
+

+Coverage for "MoreInfo.swift" : 100.00% +

+

(5 of 5 relevant lines covered)

+

TesteiOS/Models/MoreInfo.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  MoreInfo.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 23/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import Foundation
10
11
struct MoreInfo {
12
  let fund: Double
13
  let cdi: Double
14
}
15
16
extension MoreInfo: Decodable {
17
  private enum CodingKeys: String, CodingKey {
18
    case fund
19
    case cdi = "CDI"
20
  }
21
  
22
  init(from decoder: Decoder) throws {
6x
23
    let container = try decoder.container(keyedBy: CodingKeys.self)
6x
24
    fund = try container.decode(Double.self, forKey: .fund)
6x
25
    cdi = try container.decode(Double.self, forKey: .cdi)
6x
26
  }
6x
27
}
+
+ + + diff --git a/TesteiOS/coverage/MoreInfoData.swift.html b/TesteiOS/coverage/MoreInfoData.swift.html new file mode 100644 index 00000000..c051db76 --- /dev/null +++ b/TesteiOS/coverage/MoreInfoData.swift.html @@ -0,0 +1,172 @@ + + + +MoreInfoData.swift - Slather + + + +
Slather logo
+

+Coverage for "MoreInfoData.swift" : 100.00% +

+

(6 of 6 relevant lines covered)

+

TesteiOS/Models/MoreInfoData.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  MoreInfoData.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 23/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import Foundation
10
11
struct MoreInfoData {
12
  let month: MoreInfo
13
  let year: MoreInfo
14
  let twelveMonths: MoreInfo
15
}
16
17
extension MoreInfoData: Decodable {
18
  private enum CodingKeys: String, CodingKey {
19
    case month
20
    case year
21
    case twelveMonths = "12months"
22
  }
23
  
24
  init(from decoder: Decoder) throws {
2x
25
    let container = try decoder.container(keyedBy: CodingKeys.self)
2x
26
    month = try container.decode(MoreInfo.self, forKey: .month)
2x
27
    year = try container.decode(MoreInfo.self, forKey: .year)
2x
28
    twelveMonths = try container.decode(MoreInfo.self, forKey: .twelveMonths)
2x
29
  }
2x
30
}
+
+ + + diff --git a/TesteiOS/coverage/MoreInfoTableViewCell.swift.html b/TesteiOS/coverage/MoreInfoTableViewCell.swift.html new file mode 100644 index 00000000..ea557acd --- /dev/null +++ b/TesteiOS/coverage/MoreInfoTableViewCell.swift.html @@ -0,0 +1,167 @@ + + + +MoreInfoTableViewCell.swift - Slather + + + +
Slather logo
+

+Coverage for "MoreInfoTableViewCell.swift" : 100.00% +

+

(9 of 9 relevant lines covered)

+

TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  MoreInfoTableViewCell.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 24/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class MoreInfoTableViewCell: FundBaseTableViewCell {
12
  @IBOutlet weak var infoTitleLabel: UILabel!
13
  @IBOutlet weak var monthFundLabel: UILabel!
14
  @IBOutlet weak var monthCdiLabel: UILabel!
15
  @IBOutlet weak var yearFundLabel: UILabel!
16
  @IBOutlet weak var yearCdiLabel: UILabel!
17
  @IBOutlet weak var twelveMonthsFundLabel: UILabel!
18
  @IBOutlet weak var twelveMonthsCdiLabel: UILabel!
19
  
20
  override func setup(with fund: Fund) {
2x
21
    infoTitleLabel.text = fund.infoTitle
2x
22
    monthFundLabel.text = String(format: "%.1f %%", fund.moreInfo.month.fund)
2x
23
    monthCdiLabel.text = String(format: "%.1f %%", fund.moreInfo.month.cdi)
2x
24
    yearFundLabel.text = String(format: "%.1f %%", fund.moreInfo.year.fund)
2x
25
    yearCdiLabel.text = String(format: "%.1f %%", fund.moreInfo.year.cdi)
2x
26
    twelveMonthsFundLabel.text = String(format: "%.1f %%", fund.moreInfo.twelveMonths.fund)
2x
27
    twelveMonthsCdiLabel.text = String(format: "%.1f %%", fund.moreInfo.twelveMonths.cdi)
2x
28
  }
2x
29
}
+
+ + + diff --git a/TesteiOS/coverage/NetworkManager.swift.html b/TesteiOS/coverage/NetworkManager.swift.html new file mode 100644 index 00000000..525aaa28 --- /dev/null +++ b/TesteiOS/coverage/NetworkManager.swift.html @@ -0,0 +1,322 @@ + + + +NetworkManager.swift - Slather + + + +
Slather logo
+

+Coverage for "NetworkManager.swift" : 53.33% +

+

(16 of 30 relevant lines covered)

+

TesteiOS/Services/NetworkManager.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  NetworkManager.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import Foundation
10
import Moya
11
import Alamofire
12
13
enum APIEnvironment {
14
  case staging
15
  case qa
16
  case production
17
}
18
19
protocol Networkable {
20
  var provider: MoyaProvider<BankAPI> { get }
21
  func fetchForm(request: Contact.Form.Request, completion: @escaping (Result<FormData>) -> ())
22
  func fetchFund(request: Funds.Get.Request, completion: @escaping (Result<FundsData>) -> ())
23
}
24
25
struct NetworkManager: Networkable {
26
  let provider = MoyaProvider<BankAPI>(manager: DefaultAlamofireManager.sharedManager, plugins: [NetworkLoggerPlugin(verbose: true)])
27
  static let environment: APIEnvironment = .staging
28
  
29
  func fetchForm(request: Contact.Form.Request, completion: @escaping (Result<FormData>) -> ()) {
1x
30
    provider.request(.fetchForm) { result in
1x
31
      switch result {
!
32
      case .success(let response):
!
33
        do {
!
34
          let formData = try JSONDecoder().decode(FormData.self, from: response.data)
!
35
          completion(Result.success(formData))
!
36
        } catch let error {
!
37
          fatalError("data could not be decoded: \(error)")
!
38
        }
!
39
      case .failure(let error):
!
40
        completion(Result.failure(error))
!
41
      }
!
42
    }
!
43
  }
1x
44
  
45
  func fetchFund(request: Funds.Get.Request, completion: @escaping (Result<FundsData>) -> ()) {
2x
46
    provider.request(.fetchFund) { result in
2x
47
      switch result {
2x
48
      case .success(let response):
2x
49
        do {
2x
50
          let fundsData = try JSONDecoder().decode(FundsData.self, from: response.data)
2x
51
          completion(Result.success(fundsData))
2x
52
        } catch let error {
2x
53
          fatalError("data could not be decoded: \(error)")
!
54
        }
2x
55
      case .failure(let error):
2x
56
        completion(Result.failure(error))
!
57
      }
2x
58
    }
2x
59
  }
2x
60
}
+
+ + + diff --git a/TesteiOS/coverage/RiskView.swift.html b/TesteiOS/coverage/RiskView.swift.html new file mode 100644 index 00000000..05128478 --- /dev/null +++ b/TesteiOS/coverage/RiskView.swift.html @@ -0,0 +1,482 @@ + + + +RiskView.swift - Slather + + + +
Slather logo
+

+Coverage for "RiskView.swift" : 73.68% +

+

(42 of 57 relevant lines covered)

+

TesteiOS/UI/Views/Funds/RiskView.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  RiskView.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 24/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class RiskView: UIView {
12
  
13
  @IBOutlet weak var fisrtBar: UIView!
14
  @IBOutlet weak var lastBar: UIView!
15
  
16
  @IBOutlet weak var fisrtBarHeightConstraint: NSLayoutConstraint!
17
  @IBOutlet weak var secondBarHeightConstraint: NSLayoutConstraint!
18
  @IBOutlet weak var thirdBarHeightConstraint: NSLayoutConstraint!
19
  @IBOutlet weak var fourthHeightConstraint: NSLayoutConstraint!
20
  @IBOutlet weak var lastBarHeightConstraint: NSLayoutConstraint!
21
  
22
  @IBOutlet weak var vImageViewLeadingConstraint: NSLayoutConstraint!
23
  
24
  private let defaultHeightConstraintValue: CGFloat = 6.0
25
  private let selectedHeightConstraintValue: CGFloat = 10.0
26
  
27
  private var defaultVImageViewLeadingConstraintValue: CGFloat!
28
  
29
  func setRist(risk: Int) {
2x
30
    resetHeightConstraints()
2x
31
    
2x
32
    switch risk {
2x
33
    case 1:
2x
34
      fisrtBarHeightConstraint.constant = selectedHeightConstraintValue
!
35
      configureFirstBar(factor: selectedHeightConstraintValue)
!
36
      configureLastBar(factor: defaultHeightConstraintValue)
!
37
    case 2:
2x
38
      secondBarHeightConstraint.constant = selectedHeightConstraintValue
!
39
    case 3:
2x
40
      thirdBarHeightConstraint.constant = selectedHeightConstraintValue
!
41
    case 4:
2x
42
      fourthHeightConstraint.constant = selectedHeightConstraintValue
2x
43
    case 5:
2x
44
      lastBarHeightConstraint.constant = selectedHeightConstraintValue
!
45
      configureFirstBar(factor: defaultHeightConstraintValue)
!
46
      configureLastBar(factor: selectedHeightConstraintValue)
!
47
    default:
2x
48
      break
!
49
    }
2x
50
    
2x
51
    configureVImageView(risk: risk)
2x
52
    
2x
53
    self.layoutIfNeeded()
2x
54
  }
2x
55
  
56
  private func configureVImageView(risk: Int) {
2x
57
    let factor = (UIScreen.main.bounds.width - 70) / 5
2x
58
    let value = defaultVImageViewLeadingConstraintValue + (CGFloat(risk - 1) * factor)
2x
59
    vImageViewLeadingConstraint.constant = value
2x
60
  }
2x
61
  
62
  private func resetHeightConstraints() {
2x
63
    fisrtBarHeightConstraint.constant = defaultHeightConstraintValue
2x
64
    secondBarHeightConstraint.constant = defaultHeightConstraintValue
2x
65
    thirdBarHeightConstraint.constant = defaultHeightConstraintValue
2x
66
    fourthHeightConstraint.constant = defaultHeightConstraintValue
2x
67
    lastBarHeightConstraint.constant = defaultHeightConstraintValue
2x
68
  }
2x
69
  
70
  private func configureFirstBar(factor: CGFloat) {
!
71
    fisrtBar.layer.cornerRadius = factor / 2
!
72
  }
!
73
  
74
  private func configureLastBar(factor: CGFloat) {
!
75
    lastBar.layer.cornerRadius = factor / 2
!
76
  }
!
77
  
78
  private func configure() {
2x
79
    fisrtBar.layer.cornerRadius = fisrtBar.frame.height / 2
2x
80
    fisrtBar.layer.maskedCorners = [.layerMinXMinYCorner, .layerMinXMaxYCorner]
2x
81
    
2x
82
    lastBar.layer.cornerRadius = lastBar.frame.height / 2
2x
83
    lastBar.layer.maskedCorners = [.layerMaxXMinYCorner, .layerMaxXMaxYCorner]
2x
84
    vImageViewLeadingConstraint.constant = ((UIScreen.main.bounds.width - 70) / 5) / 2
2x
85
    defaultVImageViewLeadingConstraintValue = vImageViewLeadingConstraint.constant
2x
86
  }
2x
87
  
88
  override func awakeFromNib() {
2x
89
    super.awakeFromNib()
2x
90
    configure()
2x
91
  }
2x
92
}
+
+ + + diff --git a/TesteiOS/coverage/SendTableViewCell.swift.html b/TesteiOS/coverage/SendTableViewCell.swift.html new file mode 100644 index 00000000..b3a5d1de --- /dev/null +++ b/TesteiOS/coverage/SendTableViewCell.swift.html @@ -0,0 +1,232 @@ + + + +SendTableViewCell.swift - Slather + + + +
Slather logo
+

+Coverage for "SendTableViewCell.swift" : 0.00% +

+

(0 of 24 relevant lines covered)

+

TesteiOS/UI/Cells/Contact/SendTableViewCell/SendTableViewCell.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  SendTableViewCell.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
final class SendTableViewCell: ContactBaseTableViewCell {
12
13
  @IBOutlet weak var sendButton: UIButton!
14
  
15
  override func awakeFromNib() {
!
16
    super.awakeFromNib()
!
17
    sendButton.layer.cornerRadius = sendButton.frame.height / 2
!
18
  }
!
19
  
20
  override func setup(with item: Cell) {
!
21
    super.setup(with: item)
!
22
    sendButton.isUserInteractionEnabled = false
!
23
    sendButton.transform = CGAffineTransform.identity
!
24
    sendButton.backgroundColor = ColorPalette.middleRedPurple
!
25
    sendButton.setTitle(item.message, for: .normal)
!
26
    sendButton.addTarget(self, action: #selector(sendButtonPressed(_:)), for: .touchUpInside)
!
27
  }
!
28
  
29
  override func enableAction(_ value: Bool) {
!
30
    sendButton.backgroundColor = value ? ColorPalette.rossoCorsa : ColorPalette.middleRedPurple
!
31
    sendButton.isUserInteractionEnabled = value
!
32
  }
!
33
  
34
  @objc func sendButtonPressed(_ sender: UIButton) {
!
35
    UIView.animate(withDuration: 0.2, animations: {
!
36
      sender.backgroundColor = ColorPalette.middleRedPurple
!
37
      sender.transform = CGAffineTransform(scaleX: 0.90, y: 0.83)
!
38
    }) { completed in
!
39
      self.sendAction?()
!
40
    }
!
41
  }
!
42
}
+
+ + + diff --git a/TesteiOS/coverage/String+Validator.swift.html b/TesteiOS/coverage/String+Validator.swift.html new file mode 100644 index 00000000..9789c770 --- /dev/null +++ b/TesteiOS/coverage/String+Validator.swift.html @@ -0,0 +1,362 @@ + + + +String+Validator.swift - Slather + + + +
Slather logo
+

+Coverage for "String+Validator.swift" : 100.00% +

+

(54 of 54 relevant lines covered)

+

../../TesteiOSv2/TesteiOSv2/TesteiOSv2/Supporting Files/Extensions/String/String+Validator.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  String+Validator.swift
3
//  TesteiOSv2
4
//
5
//  Created by Brendoon Ryos on 11/01/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import Foundation
10
11
extension String {
12
  var isValidCPF: Bool {
4x
13
    
4x
14
    let numbers = self.compactMap({Int(String($0))})
38x
15
    guard numbers.count == 11 && Set(numbers).count != 1 else { return false }
4x
16
    let sum1 = 11 - ( numbers[0] * 10 +
2x
17
      numbers[1] * 9 +
2x
18
      numbers[2] * 8 +
2x
19
      numbers[3] * 7 +
2x
20
      numbers[4] * 6 +
2x
21
      numbers[5] * 5 +
2x
22
      numbers[6] * 4 +
2x
23
      numbers[7] * 3 +
2x
24
      numbers[8] * 2 ) % 11
2x
25
    let dv1 = sum1 > 9 ? 0 : sum1
2x
26
    let sum2 = 11 - ( numbers[0] * 11 +
2x
27
      numbers[1] * 10 +
2x
28
      numbers[2] * 9 +
2x
29
      numbers[3] * 8 +
2x
30
      numbers[4] * 7 +
2x
31
      numbers[5] * 6 +
2x
32
      numbers[6] * 5 +
2x
33
      numbers[7] * 4 +
2x
34
      numbers[8] * 3 +
2x
35
      numbers[9] * 2 ) % 11
2x
36
    let dv2 = sum2 > 9 ? 0 : sum2
2x
37
    return dv1 == numbers[9] && dv2 == numbers[10]
2x
38
  }
4x
39
  
40
  var isValidEmail: Bool {
5x
41
    let emailRegEx = "[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,64}"
5x
42
    
5x
43
    let emailTest = NSPredicate(format:"SELF MATCHES %@", emailRegEx)
5x
44
    return emailTest.evaluate(with: self)
5x
45
  }
5x
46
  
47
  func isValidPassword() -> Bool {
5x
48
    let capitalLetterRegEx  = ".*[A-Z]+.*"
5x
49
    let texttest = NSPredicate(format:"SELF MATCHES %@", capitalLetterRegEx)
5x
50
    if !texttest.evaluate(with: self) {
5x
51
      return false
2x
52
    }
3x
53
  
3x
54
    let specialCharacterRegEx  = ".*[!@#$%&*():_+=/?´~;{}*ºª|\\,(){}^\\[\\]\"]+.*"
3x
55
    let texttest2 = NSPredicate(format:"SELF MATCHES %@", specialCharacterRegEx)
3x
56
    if !texttest2.evaluate(with: self) {
3x
57
      return false
1x
58
    }
2x
59
    
2x
60
    let alphanumericLetterRegEx  = ".*[0-9]+.*"
2x
61
    let texttest3 = NSPredicate(format:"SELF MATCHES %@", alphanumericLetterRegEx)
2x
62
    if !texttest3.evaluate(with: self) {
2x
63
      return false
1x
64
    }
1x
65
    
1x
66
    return true
1x
67
  }
2x
68
}
+
+ + + diff --git a/TesteiOS/coverage/TabBarButton.swift.html b/TesteiOS/coverage/TabBarButton.swift.html new file mode 100644 index 00000000..c81dcb38 --- /dev/null +++ b/TesteiOS/coverage/TabBarButton.swift.html @@ -0,0 +1,182 @@ + + + +TabBarButton.swift - Slather + + + +
Slather logo
+

+Coverage for "TabBarButton.swift" : 82.35% +

+

(14 of 17 relevant lines covered)

+

TesteiOS/UI/Views/TabBarButton.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  TabBarButton.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class TabBarButton: UIButton {
12
13
  override init(frame: CGRect) {
4x
14
    super.init(frame: frame)
4x
15
    setup()
4x
16
  }
4x
17
  
18
  required init?(coder aDecoder: NSCoder) {
!
19
    fatalError("init(coder:) has not been implemented")
!
20
  }
!
21
  
22
  private func setup() {
4x
23
    contentMode = .scaleAspectFit
4x
24
    clipsToBounds = true
4x
25
    adjustsImageWhenHighlighted = false
4x
26
    adjustsImageWhenDisabled = false
4x
27
    setBackgroundImage(UIImage(named: "tabBarItemNormal"), for: .normal)
4x
28
    setBackgroundImage(UIImage(named: "tabBarItemSelected"), for: .selected)
4x
29
    tintColor = ColorPalette.white
4x
30
    titleLabel?.font = UIFont(name: FontNames.medium, size: 16)
4x
31
  }
4x
32
}
+
+ + + diff --git a/TesteiOS/coverage/TabBarView.swift.html b/TesteiOS/coverage/TabBarView.swift.html new file mode 100644 index 00000000..794c29ef --- /dev/null +++ b/TesteiOS/coverage/TabBarView.swift.html @@ -0,0 +1,317 @@ + + + +TabBarView.swift - Slather + + + +
Slather logo
+

+Coverage for "TabBarView.swift" : 91.89% +

+

(34 of 37 relevant lines covered)

+

TesteiOS/UI/Views/TabBarView.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  TabBarView.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
class TabBarView: UIView {
12
  
13
  lazy var button1: TabBarButton = {
2x
14
    let button = TabBarButton(frame: .zero)
2x
15
    button.tag = 0
2x
16
    button.setTitle("Investimento", for: .normal)
2x
17
    return button
2x
18
  }()
2x
19
  
20
  lazy var button2: TabBarButton = {
2x
21
    let button = TabBarButton(frame: .zero)
2x
22
    button.tag = 1
2x
23
    button.setTitle("Contato", for: .normal)
2x
24
    return button
2x
25
  }()
2x
26
  
27
  lazy var containerView: UIStackView = {
2x
28
    let view = UIStackView(frame: .zero)
2x
29
    view.axis = .horizontal
2x
30
    view.distribution = .fillEqually
2x
31
    return view
2x
32
  }()
2x
33
34
  override init(frame: CGRect) {
2x
35
    super.init(frame: frame)
2x
36
    setupViewCode()
2x
37
  }
2x
38
  
39
  required init?(coder aDecoder: NSCoder) {
!
40
    fatalError("init(coder:) has not been implemented")
!
41
  }
!
42
}
43
44
extension TabBarView: ViewCode {
45
  func buildViewHierarchy() {
2x
46
    addSubview(containerView)
2x
47
  }
2x
48
  
49
  func setupConstraints() {
2x
50
    containerView.snp.makeConstraints { make in
2x
51
      make.edges.equalToSuperview()
2x
52
    }
2x
53
  }
2x
54
  
55
  func configureViews() {
2x
56
    containerView.addArrangedSubview(button1)
2x
57
    containerView.addArrangedSubview(button2)
2x
58
  }
2x
59
}
+
+ + + diff --git a/TesteiOS/coverage/TabBarViewController.swift.html b/TesteiOS/coverage/TabBarViewController.swift.html new file mode 100644 index 00000000..d98b57ac --- /dev/null +++ b/TesteiOS/coverage/TabBarViewController.swift.html @@ -0,0 +1,262 @@ + + + +TabBarViewController.swift - Slather + + + +
Slather logo
+

+Coverage for "TabBarViewController.swift" : 72.41% +

+

(21 of 29 relevant lines covered)

+

TesteiOS/Commons/TabBarViewController.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  TabBarViewController.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
import SnapKit
11
12
class TabBarViewController: UITabBarController {
13
  
14
  let tabBarView = TabBarView()
15
16
  override func viewDidLoad() {
2x
17
    super.viewDidLoad()
2x
18
    setup()
2x
19
  }
2x
20
21
  private func setup() {
2x
22
    self.tabBar.isHidden = true
2x
23
    view.addSubview(tabBarView)
2x
24
    setupConstraints()
2x
25
    selectedIndex = tabBarView.button1.tag
2x
26
    tabBarView.button1.isSelected = true
2x
27
    tabBarView.button1.addTarget(self, action: #selector(tabbarItemPressed(_:)), for: .touchUpInside)
2x
28
    tabBarView.button2.addTarget(self, action: #selector(tabbarItemPressed(_:)), for: .touchUpInside)
2x
29
  }
2x
30
  
31
  func setupConstraints() {
2x
32
    tabBarView.snp.makeConstraints { make in
2x
33
      make.bottom.equalToSuperview()
2x
34
      make.height.equalTo(57)
2x
35
      make.leading.equalToSuperview()
2x
36
      make.trailing.equalToSuperview()
2x
37
    }
2x
38
  }
2x
39
  
40
  @objc func tabbarItemPressed(_ sender: UIButton) {
!
41
    selectedIndex = sender.tag
!
42
    tabBarView.button1.isSelected = tabBarView.button1.tag == sender.tag
!
43
    tabBarView.button2.isSelected = tabBarView.button2.tag == sender.tag
!
44
    
!
45
    tabBarView.button1.isUserInteractionEnabled = !tabBarView.button1.isSelected
!
46
    tabBarView.button2.isUserInteractionEnabled = !tabBarView.button2.isSelected
!
47
  }
!
48
}
+
+ + + diff --git a/TesteiOS/coverage/TextFieldTableViewCell.swift.html b/TesteiOS/coverage/TextFieldTableViewCell.swift.html new file mode 100644 index 00000000..43c3b35a --- /dev/null +++ b/TesteiOS/coverage/TextFieldTableViewCell.swift.html @@ -0,0 +1,577 @@ + + + +TextFieldTableViewCell.swift - Slather + + + +
Slather logo
+

+Coverage for "TextFieldTableViewCell.swift" : 0.00% +

+

(0 of 64 relevant lines covered)

+

TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  TextFieldTableViewCell.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
import JMMaskTextField_Swift
11
12
final class TextFieldTableViewCell: ContactBaseTableViewCell {
13
    
14
  @IBOutlet weak var titleLabel: UILabel!
15
  @IBOutlet var textField: UITextField!
16
  @IBOutlet weak var lineView: UIView!
17
  
18
  var isTextValid: Bool = false {
19
    didSet {
!
20
      lineView.backgroundColor = isTextValid ? ColorPalette.green : ColorPalette.red
!
21
      if isTextValid {
!
22
        callback?((titleLabel.text!, textField.text!))
!
23
      }
!
24
    }
!
25
  }
26
  
27
  override func awakeFromNib() {
!
28
    super.awakeFromNib()
!
29
    textField.delegate = self
!
30
    textField.addTarget(self, action: #selector(resizeTitleLabel), for: .editingDidBegin)
!
31
    textField.addTarget(self, action: #selector(textFieldDidChange(_:)), for: .editingChanged)
!
32
  }
!
33
  
34
  @objc func resizeTitleLabel() {
!
35
    titleLabel.font = UIFont(name: FontNames.regular, size: 11)
!
36
    if textField.text!.isEmpty {
!
37
      lineView.backgroundColor = ColorPalette.silverChalice
!
38
    }
!
39
  }
!
40
  
41
  @objc func textFieldDidChange(_ textField: UITextField) {
!
42
    checkTextField(textField)
!
43
  }
!
44
  
45
  override func setup(with item: Cell) {
!
46
    super.setup(with: item)
!
47
    if item.message == "Telefone" {
!
48
      textField.textContentType = UITextContentType.telephoneNumber
!
49
      textField.keyboardType = .numberPad
!
50
    } else {
!
51
      let type = TypeField(rawValue: item.typefield ?? 0)
!
52
      textField.textContentType = type?.contentType ?? .name
!
53
      textField.keyboardType = type?.keyboardType ?? .default
!
54
    }
!
55
    titleLabel.text = item.message
!
56
    textField.text = .none
!
57
    lineView.backgroundColor = ColorPalette.isabelline
!
58
    titleLabel.font = UIFont(name: FontNames.regular, size: 16)
!
59
  }
!
60
  
61
  private func checkTextField(_ textField: UITextField) {
62
    guard var text = textField.text else { return }
63
    switch textField.textContentType! {
64
    case .name:
65
      if text.last == " " {
66
        text.removeLast()
67
        textField.text = text
68
      }
69
      isTextValid = text.count >= 5
70
    case .telephoneNumber:
71
      isTextValid = text.count >= 10
72
    default:
73
      let newText = text.replacingOccurrences(of: " ", with: "")
74
      textField.text = newText
75
      isTextValid = newText.isValidEmail
76
    }
77
  }
78
}
79
80
extension TextFieldTableViewCell: UITextFieldDelegate {
81
  func textFieldShouldReturn(_ textField: UITextField) -> Bool {
!
82
    textField.resignFirstResponder()
!
83
    return true
!
84
  }
!
85
  
86
  func textFieldShouldClear(_ textField: UITextField) -> Bool {
!
87
    callback?((self.titleLabel.text!, ""))
!
88
    return true
!
89
  }
!
90
  
91
  func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
!
92
    if textField.textContentType == .telephoneNumber {
!
93
      guard let text = textField.text as NSString? else { return true }
!
94
      let newText = text.replacingCharacters(in: range, with: string)
!
95
      
!
96
      let maskTextField = textField as! JMMaskTextField
!
97
      maskTextField.maskString = "(00) 00000-0000"
!
98
      guard let unmaskedText = maskTextField.stringMask?.unmask(string: newText) else { return true }
!
99
      maskTextField.text = unmaskedText
!
100
      if unmaskedText.count >= 11 {
!
101
        maskTextField.maskString = "(00) 00000-0000"
!
102
        _ = textFieldShouldReturn(textField)
!
103
      } else {
!
104
        maskTextField.maskString = "(00) 0000-0000"
!
105
      }
!
106
      
!
107
      textFieldDidChange(maskTextField)
!
108
    }
!
109
    return true
!
110
  }
!
111
}
+
+ + + diff --git a/TesteiOS/coverage/TextTableViewCell.swift.html b/TesteiOS/coverage/TextTableViewCell.swift.html new file mode 100644 index 00000000..630eb93a --- /dev/null +++ b/TesteiOS/coverage/TextTableViewCell.swift.html @@ -0,0 +1,137 @@ + + + +TextTableViewCell.swift - Slather + + + +
Slather logo
+

+Coverage for "TextTableViewCell.swift" : 100.00% +

+

(7 of 7 relevant lines covered)

+

TesteiOS/UI/Cells/Contact/TextTableViewCell/TextTableViewCell.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  TextTableViewCell.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 22/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
final class TextTableViewCell: ContactBaseTableViewCell {
12
13
  @IBOutlet weak var messageLabel: UILabel!
14
15
  override func awakeFromNib() {
1x
16
      super.awakeFromNib()
1x
17
  }
1x
18
  
19
  override func setup(with item: Cell) {
1x
20
    super.setup(with: item)
1x
21
    messageLabel.text = item.message
1x
22
  }
1x
23
}
+
+ + + diff --git a/TesteiOS/coverage/UIColor+Hex.swift.html b/TesteiOS/coverage/UIColor+Hex.swift.html new file mode 100644 index 00000000..623bbf73 --- /dev/null +++ b/TesteiOS/coverage/UIColor+Hex.swift.html @@ -0,0 +1,197 @@ + + + +UIColor+Hex.swift - Slather + + + +
Slather logo
+

+Coverage for "UIColor+Hex.swift" : 86.36% +

+

(19 of 22 relevant lines covered)

+

TesteiOS/Supporting Files/Extensions/UIColor+Hex.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  UIColor+Hex.swift
3
//  Movs
4
//
5
//  Created by Brendoon Ryos on 25/01/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import UIKit
10
11
extension UIColor {
12
  static func rgb(red: CGFloat, green: CGFloat, blue: CGFloat) -> UIColor {
!
13
    return UIColor(red: red/255, green: green/255, blue: blue/255, alpha: 1)
!
14
  }
!
15
  
16
  public convenience init(hex: String, alpha: CGFloat = 1) {
8x
17
    let scanner = Scanner(string: hex)
8x
18
    scanner.scanLocation = 0
8x
19
    
8x
20
    var rgbValue: UInt64 = 0
8x
21
    
8x
22
    scanner.scanHexInt64(&rgbValue)
8x
23
    
8x
24
    let r = (rgbValue & 0xff0000) >> 16
8x
25
    let g = (rgbValue & 0xff00) >> 8
8x
26
    let b = rgbValue & 0xff
8x
27
    
8x
28
    self.init(
8x
29
      red: CGFloat(r) / 0xff,
8x
30
      green: CGFloat(g) / 0xff,
8x
31
      blue: CGFloat(b) / 0xff,
8x
32
      alpha: alpha
8x
33
    )
8x
34
  }
8x
35
}
+
+ + + diff --git a/TesteiOS/coverage/ViewCode.swift.html b/TesteiOS/coverage/ViewCode.swift.html new file mode 100644 index 00000000..61c857bf --- /dev/null +++ b/TesteiOS/coverage/ViewCode.swift.html @@ -0,0 +1,152 @@ + + + +ViewCode.swift - Slather + + + +
Slather logo
+

+Coverage for "ViewCode.swift" : 100.00% +

+

(6 of 6 relevant lines covered)

+

TesteiOS/UI/Views/ViewCode.swift

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
//
2
//  ViewCode.swift
3
//  TesteiOS
4
//
5
//  Created by Brendoon Ryos on 21/02/19.
6
//  Copyright © 2019 Brendoon Ryos. All rights reserved.
7
//
8
9
import Foundation
10
11
protocol ViewCode: class {
12
  func setupConstraints()
13
  func buildViewHierarchy()
14
  func setupViewCode()
15
  func configureViews()
16
}
17
18
extension ViewCode {
19
  func setupViewCode() {
6x
20
    buildViewHierarchy()
6x
21
    setupConstraints()
6x
22
    configureViews()
6x
23
  }
6x
24
  
25
  func configureViews() {}
4x
26
}
+
+ + + diff --git a/TesteiOS/coverage/highlight.pack.js b/TesteiOS/coverage/highlight.pack.js new file mode 100644 index 00000000..1fbbace2 --- /dev/null +++ b/TesteiOS/coverage/highlight.pack.js @@ -0,0 +1 @@ +!function(e){"undefined"!=typeof exports?e(exports):(window.hljs=e({}),"function"==typeof define&&define.amd&&define("hljs",[],function(){return window.hljs}))}(function(e){function n(e){return e.replace(/&/gm,"&").replace(//gm,">")}function t(e){return e.nodeName.toLowerCase()}function r(e,n){var t=e&&e.exec(n);return t&&0==t.index}function a(e){return/no-?highlight|plain|text/.test(e)}function i(e){var n,t,r,i=e.className+" ";if(i+=e.parentNode?e.parentNode.className:"",t=/\blang(?:uage)?-([\w-]+)\b/.exec(i))return E(t[1])?t[1]:"no-highlight";for(i=i.split(/\s+/),n=0,r=i.length;r>n;n++)if(E(i[n])||a(i[n]))return i[n]}function o(e,n){var t,r={};for(t in e)r[t]=e[t];if(n)for(t in n)r[t]=n[t];return r}function u(e){var n=[];return function r(e,a){for(var i=e.firstChild;i;i=i.nextSibling)3==i.nodeType?a+=i.nodeValue.length:1==i.nodeType&&(n.push({event:"start",offset:a,node:i}),a=r(i,a),t(i).match(/br|hr|img|input/)||n.push({event:"stop",offset:a,node:i}));return a}(e,0),n}function c(e,r,a){function i(){return e.length&&r.length?e[0].offset!=r[0].offset?e[0].offset"}function u(e){f+=""}function c(e){("start"==e.event?o:u)(e.node)}for(var s=0,f="",l=[];e.length||r.length;){var g=i();if(f+=n(a.substr(s,g[0].offset-s)),s=g[0].offset,g==e){l.reverse().forEach(u);do c(g.splice(0,1)[0]),g=i();while(g==e&&g.length&&g[0].offset==s);l.reverse().forEach(o)}else"start"==g[0].event?l.push(g[0].node):l.pop(),c(g.splice(0,1)[0])}return f+n(a.substr(s))}function s(e){function n(e){return e&&e.source||e}function t(t,r){return new RegExp(n(t),"m"+(e.cI?"i":"")+(r?"g":""))}function r(a,i){if(!a.compiled){if(a.compiled=!0,a.k=a.k||a.bK,a.k){var u={},c=function(n,t){e.cI&&(t=t.toLowerCase()),t.split(" ").forEach(function(e){var t=e.split("|");u[t[0]]=[n,t[1]?Number(t[1]):1]})};"string"==typeof a.k?c("keyword",a.k):Object.keys(a.k).forEach(function(e){c(e,a.k[e])}),a.k=u}a.lR=t(a.l||/\b\w+\b/,!0),i&&(a.bK&&(a.b="\\b("+a.bK.split(" ").join("|")+")\\b"),a.b||(a.b=/\B|\b/),a.bR=t(a.b),a.e||a.eW||(a.e=/\B|\b/),a.e&&(a.eR=t(a.e)),a.tE=n(a.e)||"",a.eW&&i.tE&&(a.tE+=(a.e?"|":"")+i.tE)),a.i&&(a.iR=t(a.i)),void 0===a.r&&(a.r=1),a.c||(a.c=[]);var s=[];a.c.forEach(function(e){e.v?e.v.forEach(function(n){s.push(o(e,n))}):s.push("self"==e?a:e)}),a.c=s,a.c.forEach(function(e){r(e,a)}),a.starts&&r(a.starts,i);var f=a.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([a.tE,a.i]).map(n).filter(Boolean);a.t=f.length?t(f.join("|"),!0):{exec:function(){return null}}}}r(e)}function f(e,t,a,i){function o(e,n){for(var t=0;t";return i+=e+'">',i+n+o}function p(){if(!L.k)return n(B);var e="",t=0;L.lR.lastIndex=0;for(var r=L.lR.exec(B);r;){e+=n(B.substr(t,r.index-t));var a=g(L,r);a?(y+=a[1],e+=h(a[0],n(r[0]))):e+=n(r[0]),t=L.lR.lastIndex,r=L.lR.exec(B)}return e+n(B.substr(t))}function d(){if(L.sL&&!x[L.sL])return n(B);var e=L.sL?f(L.sL,B,!0,M[L.sL]):l(B);return L.r>0&&(y+=e.r),"continuous"==L.subLanguageMode&&(M[L.sL]=e.top),h(e.language,e.value,!1,!0)}function b(){return void 0!==L.sL?d():p()}function v(e,t){var r=e.cN?h(e.cN,"",!0):"";e.rB?(k+=r,B=""):e.eB?(k+=n(t)+r,B=""):(k+=r,B=t),L=Object.create(e,{parent:{value:L}})}function m(e,t){if(B+=e,void 0===t)return k+=b(),0;var r=o(t,L);if(r)return k+=b(),v(r,t),r.rB?0:t.length;var a=u(L,t);if(a){var i=L;i.rE||i.eE||(B+=t),k+=b();do L.cN&&(k+=""),y+=L.r,L=L.parent;while(L!=a.parent);return i.eE&&(k+=n(t)),B="",a.starts&&v(a.starts,""),i.rE?0:t.length}if(c(t,L))throw new Error('Illegal lexeme "'+t+'" for mode "'+(L.cN||"")+'"');return B+=t,t.length||1}var N=E(e);if(!N)throw new Error('Unknown language: "'+e+'"');s(N);var R,L=i||N,M={},k="";for(R=L;R!=N;R=R.parent)R.cN&&(k=h(R.cN,"",!0)+k);var B="",y=0;try{for(var C,j,I=0;;){if(L.t.lastIndex=I,C=L.t.exec(t),!C)break;j=m(t.substr(I,C.index-I),C[0]),I=C.index+j}for(m(t.substr(I)),R=L;R.parent;R=R.parent)R.cN&&(k+="");return{r:y,value:k,language:e,top:L}}catch(O){if(-1!=O.message.indexOf("Illegal"))return{r:0,value:n(t)};throw O}}function l(e,t){t=t||w.languages||Object.keys(x);var r={r:0,value:n(e)},a=r;return t.forEach(function(n){if(E(n)){var t=f(n,e,!1);t.language=n,t.r>a.r&&(a=t),t.r>r.r&&(a=r,r=t)}}),a.language&&(r.second_best=a),r}function g(e){return w.tabReplace&&(e=e.replace(/^((<[^>]+>|\t)+)/gm,function(e,n){return n.replace(/\t/g,w.tabReplace)})),w.useBR&&(e=e.replace(/\n/g,"
")),e}function h(e,n,t){var r=n?R[n]:t,a=[e.trim()];return e.match(/\bhljs\b/)||a.push("hljs"),-1===e.indexOf(r)&&a.push(r),a.join(" ").trim()}function p(e){var n=i(e);if(!a(n)){var t;w.useBR?(t=document.createElementNS("http://www.w3.org/1999/xhtml","div"),t.innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n")):t=e;var r=t.textContent,o=n?f(n,r,!0):l(r),s=u(t);if(s.length){var p=document.createElementNS("http://www.w3.org/1999/xhtml","div");p.innerHTML=o.value,o.value=c(s,u(p),r)}o.value=g(o.value),e.innerHTML=o.value,e.className=h(e.className,n,o.language),e.result={language:o.language,re:o.r},o.second_best&&(e.second_best={language:o.second_best.language,re:o.second_best.r})}}function d(e){w=o(w,e)}function b(){if(!b.called){b.called=!0;var e=document.querySelectorAll("pre code");Array.prototype.forEach.call(e,p)}}function v(){addEventListener("DOMContentLoaded",b,!1),addEventListener("load",b,!1)}function m(n,t){var r=x[n]=t(e);r.aliases&&r.aliases.forEach(function(e){R[e]=n})}function N(){return Object.keys(x)}function E(e){return x[e]||x[R[e]]}var w={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0},x={},R={};return e.highlight=f,e.highlightAuto=l,e.fixMarkup=g,e.highlightBlock=p,e.configure=d,e.initHighlighting=b,e.initHighlightingOnLoad=v,e.registerLanguage=m,e.listLanguages=N,e.getLanguage=E,e.inherit=o,e.IR="[a-zA-Z]\\w*",e.UIR="[a-zA-Z_]\\w*",e.NR="\\b\\d+(\\.\\d+)?",e.CNR="\\b(0[xX][a-fA-F0-9]+|(\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",e.BNR="\\b(0b[01]+)",e.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",e.BE={b:"\\\\[\\s\\S]",r:0},e.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[e.BE]},e.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[e.BE]},e.PWM={b:/\b(a|an|the|are|I|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such)\b/},e.C=function(n,t,r){var a=e.inherit({cN:"comment",b:n,e:t,c:[]},r||{});return a.c.push(e.PWM),a.c.push({cN:"doctag",bK:"TODO FIXME NOTE BUG XXX",r:0}),a},e.CLCM=e.C("//","$"),e.CBCM=e.C("/\\*","\\*/"),e.HCM=e.C("#","$"),e.NM={cN:"number",b:e.NR,r:0},e.CNM={cN:"number",b:e.CNR,r:0},e.BNM={cN:"number",b:e.BNR,r:0},e.CSSNM={cN:"number",b:e.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},e.RM={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[e.BE,{b:/\[/,e:/\]/,r:0,c:[e.BE]}]},e.TM={cN:"title",b:e.IR,r:0},e.UTM={cN:"title",b:e.UIR,r:0},e});hljs.registerLanguage("json",function(e){var t={literal:"true false null"},i=[e.QSM,e.CNM],l={cN:"value",e:",",eW:!0,eE:!0,c:i,k:t},c={b:"{",e:"}",c:[{cN:"attribute",b:'\\s*"',e:'"\\s*:\\s*',eB:!0,eE:!0,c:[e.BE],i:"\\n",starts:l}],i:"\\S"},n={b:"\\[",e:"\\]",c:[e.inherit(l,{cN:null})],i:"\\S"};return i.splice(i.length,0,c,n),{c:i,k:t,i:"\\S"}});hljs.registerLanguage("objectivec",function(e){var t={cN:"built_in",b:"(AV|CA|CF|CG|CI|MK|MP|NS|UI)\\w+"},i={keyword:"int float while char export sizeof typedef const struct for union unsigned long volatile static bool mutable if do return goto void enum else break extern asm case short default double register explicit signed typename this switch continue wchar_t inline readonly assign readwrite self @synchronized id typeof nonatomic super unichar IBOutlet IBAction strong weak copy in out inout bycopy byref oneway __strong __weak __block __autoreleasing @private @protected @public @try @property @end @throw @catch @finally @autoreleasepool @synthesize @dynamic @selector @optional @required",literal:"false true FALSE TRUE nil YES NO NULL",built_in:"BOOL dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once"},o=/[a-zA-Z@][a-zA-Z0-9_]*/,n="@interface @class @protocol @implementation";return{aliases:["mm","objc","obj-c"],k:i,l:o,i:""}]}]},{cN:"class",b:"("+n.split(" ").join("|")+")\\b",e:"({|$)",eE:!0,k:n,l:o,c:[e.UTM]},{cN:"variable",b:"\\."+e.UIR,r:0}]}});hljs.registerLanguage("cpp",function(t){var e={cN:"keyword",b:"[a-z\\d_]*_t"},r={keyword:"false int float while private char catch export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const struct for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using true class asm case typeid short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignof constexpr decltype noexcept nullptr static_assert thread_local restrict _Bool complex _Complex _Imaginary atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong",built_in:"std string cin cout cerr clog stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr abort abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf"};return{aliases:["c","cc","h","c++","h++","hpp"],k:r,i:""]',k:"include",i:"\\n"},t.CLCM]},{b:"\\b(deque|list|queue|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",e:">",k:r,c:["self",e]},{b:t.IR+"::",k:r},{bK:"new throw return else",r:0},{cN:"function",b:"("+t.IR+"\\s+)+"+t.IR+"\\s*\\(",rB:!0,e:/[{;=]/,eE:!0,k:r,c:[{b:t.IR+"\\s*\\(",rB:!0,c:[t.TM],r:0},{cN:"params",b:/\(/,e:/\)/,k:r,r:0,c:[t.CBCM]},t.CLCM,t.CBCM]}]}}); \ No newline at end of file diff --git a/TesteiOS/coverage/index.html b/TesteiOS/coverage/index.html new file mode 100644 index 00000000..622ce08f --- /dev/null +++ b/TesteiOS/coverage/index.html @@ -0,0 +1,447 @@ + + + +TesteiOS.xcodeproj - Slather + + + +
Slather logo
+

Files for "TesteiOS.xcodeproj"

+

+Total Coverage : 65.87% +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
%FileLinesRelevantCoveredMissed
85.71ItemsTableViewDataSource.swift32761
72.41TabBarViewController.swift4829218
60.91Cell.swift1701106743
100.00FormData.swift25550
100.00Fund.swift5113130
100.00FundsData.swift24440
100.00Info.swift29550
100.00MoreInfo.swift27550
100.00MoreInfoData.swift30660
80.39ContactDataSource.swift81514110
41.67ContactDelegate.swift311257
50.00ContactInteractor.swift501899
0.00ContactModels.swift48808
0.00ContactPresenter.swift4112012
28.81ContactViewController.swift103591742
75.00ContactWorker.swift29862
97.67FundsDataSource.swift7143421
100.00FundsDelegate.swift26880
61.11FundsInteractor.swift5018117
100.00FundsModels.swift46880
33.33FundsPresenter.swift411248
0.00FundsRouter.swift44808
68.42FundsViewController.swift101573918
100.00FundsWorker.swift29880
87.50BankAPI+Testing.swift25871
95.00BankAPI.swift6340382
100.00DefaultAlamofireManager.swift20880
53.33NetworkManager.swift60301614
100.00AppDelegate.swift4021210
86.36UIColor+Hex.swift3522193
90.00AppearanceProxyHelper.swift241091
0.00CheckboxTableViewCell.swift3922022
87.50ContactBaseTableViewCell.swift29871
0.00SendTableViewCell.swift4224024
0.00TextFieldTableViewCell.swift11164064
100.00TextTableViewCell.swift23770
57.14DownInfoTableViewCell.swift26743
0.00FundBaseTableViewCell.swift16101
100.00FundHeaderTableViewCell.swift29880
100.00InfoTableViewCell.swift20440
0.00InvestTableViewCell.swift3317017
100.00MoreInfoTableViewCell.swift29990
44.44ContactTableView.swift3918810
85.45ContactView.swift7655478
44.44FeedbackView.swift22945
85.00FundsTableView.swift4220173
91.89FundsView.swift5637343
73.68RiskView.swift92574215
82.35TabBarButton.swift3217143
91.89TabBarView.swift5937343
100.00ViewCode.swift26660
100.00String+Validator.swift6854540
+
+ + + diff --git a/TesteiOS/coverage/list.min.js b/TesteiOS/coverage/list.min.js new file mode 100644 index 00000000..8327aaf1 --- /dev/null +++ b/TesteiOS/coverage/list.min.js @@ -0,0 +1 @@ +var List=function(t){function e(n){if(r[n])return r[n].exports;var i=r[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,e),i.l=!0,i.exports}var r={};return e.m=t,e.c=r,e.i=function(t){return t},e.d=function(t,r,n){e.o(t,r)||Object.defineProperty(t,r,{configurable:!1,enumerable:!0,get:n})},e.n=function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,"a",r),r},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=11)}([function(t,e,r){function n(t){if(!t||!t.nodeType)throw new Error("A DOM element reference is required");this.el=t,this.list=t.classList}var i=r(4),s=/\s+/;Object.prototype.toString;t.exports=function(t){return new n(t)},n.prototype.add=function(t){if(this.list)return this.list.add(t),this;var e=this.array(),r=i(e,t);return~r||e.push(t),this.el.className=e.join(" "),this},n.prototype.remove=function(t){if(this.list)return this.list.remove(t),this;var e=this.array(),r=i(e,t);return~r&&e.splice(r,1),this.el.className=e.join(" "),this},n.prototype.toggle=function(t,e){return this.list?("undefined"!=typeof e?e!==this.list.toggle(t,e)&&this.list.toggle(t):this.list.toggle(t),this):("undefined"!=typeof e?e?this.add(t):this.remove(t):this.has(t)?this.remove(t):this.add(t),this)},n.prototype.array=function(){var t=this.el.getAttribute("class")||"",e=t.replace(/^\s+|\s+$/g,""),r=e.split(s);return""===r[0]&&r.shift(),r},n.prototype.has=n.prototype.contains=function(t){return this.list?this.list.contains(t):!!~i(this.array(),t)}},function(t,e,r){var n=window.addEventListener?"addEventListener":"attachEvent",i=window.removeEventListener?"removeEventListener":"detachEvent",s="addEventListener"!==n?"on":"",a=r(5);e.bind=function(t,e,r,i){t=a(t);for(var o=0;o0?setTimeout(function(){e(r,n,i)},1):(t.update(),n(i))};return e}},function(t,e){t.exports=function(t){return t.handlers.filterStart=t.handlers.filterStart||[],t.handlers.filterComplete=t.handlers.filterComplete||[],function(e){if(t.trigger("filterStart"),t.i=1,t.reset.filter(),void 0===e)t.filtered=!1;else{t.filtered=!0;for(var r=t.items,n=0,i=r.length;nv.page,a=new m(t[i],void 0,n),v.items.push(a),r.push(a)}return v.update(),r}},this.show=function(t,e){return this.i=t,this.page=e,v.update(),v},this.remove=function(t,e,r){for(var n=0,i=0,s=v.items.length;i-1&&r.splice(n,1),v},this.trigger=function(t){for(var e=v.handlers[t].length;e--;)v.handlers[t][e](v);return v},this.reset={filter:function(){for(var t=v.items,e=t.length;e--;)t[e].filtered=!1;return v},search:function(){for(var t=v.items,e=t.length;e--;)t[e].found=!1;return v}},this.update=function(){var t=v.items,e=t.length;v.visibleItems=[],v.matchingItems=[],v.templater.clear();for(var r=0;r=v.i&&v.visibleItems.lengthe},innerWindow:function(t,e,r){return t>=e-r&&t<=e+r},dotted:function(t,e,r,n,i,s,a){return this.dottedLeft(t,e,r,n,i,s)||this.dottedRight(t,e,r,n,i,s,a)},dottedLeft:function(t,e,r,n,i,s){return e==r+1&&!this.innerWindow(e,i,s)&&!this.right(e,n)},dottedRight:function(t,e,r,n,i,s,a){return!t.items[a-1].values().dotted&&(e==n&&!this.innerWindow(e,i,s)&&!this.right(e,n))}},a=function(e,r,n){i.bind(e,"click",function(){t.show((r-1)*n+1,n)})};return function(r){var n=new s(t.listContainer.id,{listClass:r.paginationClass||"pagination",item:"
  • ",valueNames:["page","dotted"],searchClass:"pagination-search-that-is-not-supposed-to-exist",sortClass:"pagination-sort-that-is-not-supposed-to-exist"});t.on("updated",function(){e(n,r)}),e(n,r)}}},function(t,e,r){t.exports=function(t){var e=r(2)(t),n=function(t){for(var e=t.childNodes,r=[],n=0,i=e.length;n0?setTimeout(function(){s(e,r)},1):(t.update(),t.trigger("parseComplete"))};return t.handlers.parseComplete=t.handlers.parseComplete||[],function(){var e=n(t.list),r=t.valueNames;t.indexAsync?s(e,r):i(e,r)}}},function(t,e){t.exports=function(t){var e,r,n,i,s={resetList:function(){t.i=1,t.templater.clear(),i=void 0},setOptions:function(t){2==t.length&&t[1]instanceof Array?r=t[1]:2==t.length&&"function"==typeof t[1]?(r=void 0,i=t[1]):3==t.length?(r=t[1],i=t[2]):r=void 0},setColumns:function(){0!==t.items.length&&void 0===r&&(r=void 0===t.searchColumns?s.toArray(t.items[0].values()):t.searchColumns)},setSearchString:function(e){e=t.utils.toString(e).toLowerCase(),e=e.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&"),n=e},toArray:function(t){var e=[];for(var r in t)e.push(r);return e}},a={list:function(){for(var e=0,r=t.items.length;e-1))},reset:function(){t.reset.search(),t.searched=!1}},o=function(e){return t.trigger("searchStart"),s.resetList(),s.setSearchString(e),s.setOptions(arguments),s.setColumns(),""===n?a.reset():(t.searched=!0,i?i(n,r):a.list()),t.update(),t.trigger("searchComplete"),t.visibleItems};return t.handlers.searchStart=t.handlers.searchStart||[],t.handlers.searchComplete=t.handlers.searchComplete||[],t.utils.events.bind(t.utils.getByClass(t.listContainer,t.searchClass),"keyup",function(e){var r=e.target||e.srcElement,n=""===r.value&&!t.searched;n||o(r.value)}),t.utils.events.bind(t.utils.getByClass(t.listContainer,t.searchClass),"input",function(t){var e=t.target||t.srcElement;""===e.value&&o("")}),o}},function(t,e){t.exports=function(t){var e={els:void 0,clear:function(){for(var r=0,n=e.els.length;r]/g.exec(e)){var s=document.createElement("tbody");return s.innerHTML=e,s.firstChild}if(e.indexOf("<")!==-1){var a=document.createElement("div");return a.innerHTML=e,a.firstChild}var o=document.getElementById(t.item);if(o)return o}},this.get=function(e,n){r.create(e);for(var i={},s=0,a=n.length;s=1;)t.list.removeChild(t.list.firstChild)},n()};t.exports=function(t){return new r(t)}},function(t,e){t.exports=function(t,e){var r=t.getAttribute&&t.getAttribute(e)||null;if(!r)for(var n=t.attributes,i=n.length,s=0;s=48&&t<=57}function i(t,e){for(var r=(t+="").length,i=(e+="").length,s=0,l=0;s32)return!1;var o=i,l=function(){var t,r={};for(t=0;t=p;b--){var w=l[t.charAt(b-1)];if(0===g?y[b]=(y[b+1]<<1|1)&w:y[b]=(y[b+1]<<1|1)&w|((v[b+1]|v[b])<<1|1)|v[b+1],y[b]&f){var x=n(g,b-1);if(x<=u){if(u=x,c=b-1,!(c>o))break;p=Math.max(1,2*o-c)}}}if(n(g+1,o)>u)break;v=y}return!(c<0)}}]); \ No newline at end of file diff --git a/TesteiOS/coverage/logo.jpg b/TesteiOS/coverage/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..74466044eb0eeccfaad9118a4fd9017444903535 GIT binary patch literal 64627 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 literal 0 HcmV?d00001 diff --git a/TesteiOS/coverage/slather.css b/TesteiOS/coverage/slather.css new file mode 100644 index 00000000..d09c0086 --- /dev/null +++ b/TesteiOS/coverage/slather.css @@ -0,0 +1,316 @@ +/* -------------------------------------------------------- +Slather stylesheet + +version: 0.1 +author: Ikhsan Assaat (@ixnixnixn) +----------------------------------------------------------*/ + +/* General */ +html { + position: relative; + min-height: 100%; +} +body { + font: 16px "Helvetica", sans-serif; + margin: 0 0 120px; + color: #333; +} +.row { margin: 0 2em; } + +/* Header */ +header { margin-top: 1em; } +header img { width: auto; height: 120px; } + +/* Coverage */ +#reports > h2 { margin-bottom: 0; } +#reports > h4 { margin-top: 5px; } +.percentage { + padding: 4px ; + font-weight: bold; +} +.cov_high { color: #67CF7C; } +.cov_medium { color: #F89404; } +.cov_low { color: #F86769; } +.cov_title { margin-bottom: 0; } +.cov_subtitle { margin-top: 0.2em; } +.cov_filepath { font-style: italic; } + +/* Index Table */ +table.coverage_list { + width: 90%; + min-width: 400px; +} +table.coverage_list th, +table.coverage_list td { + padding: .6em .5em; + text-align: left; +} +table.coverage_list th.col_num { width: 70px; } +table.coverage_list th.col_percent { width: 75px; } +table.coverage_list thead, tfoot { background: #FDCD9B; } +table.coverage_list tbody tr:hover { background: #FCF2E6; } +table.coverage_list tbody td { border-bottom: 1px solid #CCC; } +table.coverage_list td a { + color: #333; + text-decoration: none; + border-bottom: 1px dotted; +} +table.coverage_list td a:hover { + border-bottom: none; +} + +/* Source Code */ +table.source_code { + width: 100%; + max-width: 1200px; + min-width: 400px; + font-size: 13px; + border-spacing: 0; + background: #FCF2E6; + padding: 1.2em 1em; + margin-bottom: 2em; +} + +table.source_code td { + padding-bottom: 0.3em; +} +table.source_code tr.missed td { background-color: rgba(248, 103, 105, 0.2); } +table.source_code tr.covered td { background-color: rgba(103, 207, 124, 0.2); } +table.source_code td.num { + border-right: 1px rgba(0,0,0,0.1) solid; + text-align: right; + padding-right: 1em; + width: 30px; +} +table.source_code td.src { + border-left: 1px rgba(255,255,255,0.7) solid; + padding-left: 1em; +} +table.source_code td.src pre { + white-space: pre-wrap; + white-space: -moz-pre-wrap; + white-space: -pre-wrap; + white-space: -o-pre-wrap; + word-wrap: break-word; + margin: 0; +} +table.source_code td.src pre code { font: 13px "Menlo", "Courier New"; } + +table.source_code td.coverage { + text-align: right; + padding-right: 0.5em; +} + +/* Footer */ +footer { + background-color: #67CDCF; + height: 80px; + + position: absolute; + left: 0; + bottom: 0; + width: 100%; + overflow:hidden; +} + +footer p, footer a { + color: #ffffff; + font-weight: bold; + text-align: center; +} + + +/* ---------------------------------------------------------- +Syntax Highlighting using highlight.js (https://highlightjs.org) +------------------------------------------------------------- */ +.hljs { + display: block; + overflow-x: auto; + -webkit-text-size-adjust: none; +} + +.hljs, +.hljs-subst, +.hljs-tag .hljs-title, +.nginx .hljs-title { + color: #333; +} + +.hljs-string, +.hljs-title, +.hljs-constant, +.hljs-parent, +.hljs-tag .hljs-value, +.hljs-rule .hljs-value, +.hljs-preprocessor, +.hljs-pragma, +.hljs-name, +.haml .hljs-symbol, +.ruby .hljs-symbol, +.ruby .hljs-symbol .hljs-string, +.hljs-template_tag, +.django .hljs-variable, +.smalltalk .hljs-class, +.hljs-addition, +.hljs-flow, +.hljs-stream, +.bash .hljs-variable, +.pf .hljs-variable, +.apache .hljs-tag, +.apache .hljs-cbracket, +.tex .hljs-command, +.tex .hljs-special, +.erlang_repl .hljs-function_or_atom, +.asciidoc .hljs-header, +.markdown .hljs-header, +.coffeescript .hljs-attribute, +.tp .hljs-variable { + color: #D14F4F; +} + +.smartquote, +.hljs-comment, +.hljs-annotation, +.diff .hljs-header, +.hljs-chunk, +.asciidoc .hljs-blockquote, +.markdown .hljs-blockquote { + color: #888; +} + +.hljs-number, +.hljs-date, +.hljs-regexp, +.hljs-literal, +.hljs-hexcolor, +.smalltalk .hljs-symbol, +.smalltalk .hljs-char, +.go .hljs-constant, +.hljs-change, +.lasso .hljs-variable, +.makefile .hljs-variable, +.asciidoc .hljs-bullet, +.markdown .hljs-bullet, +.asciidoc .hljs-link_url, +.markdown .hljs-link_url { + color: #05A5A8; +} + +.hljs-label, +.ruby .hljs-string, +.hljs-decorator, +.hljs-filter .hljs-argument, +.hljs-localvars, +.hljs-array, +.hljs-attr_selector, +.hljs-important, +.hljs-pseudo, +.hljs-pi, +.haml .hljs-bullet, +.hljs-doctype, +.hljs-deletion, +.hljs-envvar, +.hljs-shebang, +.apache .hljs-sqbracket, +.nginx .hljs-built_in, +.tex .hljs-formula, +.erlang_repl .hljs-reserved, +.hljs-prompt, +.asciidoc .hljs-link_label, +.markdown .hljs-link_label, +.vhdl .hljs-attribute, +.clojure .hljs-attribute, +.asciidoc .hljs-attribute, +.lasso .hljs-attribute, +.coffeescript .hljs-property, +.hljs-phony { + color: #087599; +} + +.hljs-keyword, +.hljs-id, +.hljs-title, +.hljs-built_in, +.css .hljs-tag, +.hljs-doctag, +.smalltalk .hljs-class, +.hljs-winutils, +.bash .hljs-variable, +.pf .hljs-variable, +.apache .hljs-tag, +.hljs-type, +.hljs-typename, +.tex .hljs-command, +.asciidoc .hljs-strong, +.markdown .hljs-strong, +.hljs-request, +.hljs-status, +.tp .hljs-data, +.tp .hljs-io { + font-weight: bold; +} + +.asciidoc .hljs-emphasis, +.markdown .hljs-emphasis, +.tp .hljs-units { + font-style: italic; +} + +.nginx .hljs-built_in { + font-weight: normal; +} + +.coffeescript .javascript, +.javascript .xml, +.lasso .markup, +.tex .hljs-formula, +.xml .javascript, +.xml .vbscript, +.xml .css, +.xml .hljs-cdata { + opacity: 0.5; +} + +/* ------------------------------------------------------- +Sorting & Filtering with List.js (http://www.listjs.com/) +------------------------------------------------------- */ + +input.search { + border:solid 1px #ccc; + border-radius: 4px; + padding:7px; + margin-bottom:10px; + font-size: 12px; +} +input.search:focus { + outline:none; + border-color:#aaa; +} + +th.sort::-moz-selection { background:transparent; } +th.sort::selection { background:transparent; } +th.sort { cursor:pointer; } +th.sort:after { + content:''; + display:inline-block; + width: 0; + height: 0; + position: relative; + top: -3px; + right: -6px; + border-width:0 4px 4px; + border-style:solid; + border-color:#404040 transparent; + visibility:hidden; +} + th.sort:hover:after { visibility:visible; } + th.sort.desc:after, + th.sort.asc:after, + th.sort.asc:hover:after { + visibility:visible; + opacity:0.6; +} + th.sort.desc:after { + border-bottom:none; + border-width:4px 4px 0; +} From 2c360bbf80e26b8b4a4b3f6312d648029ca7ad47 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:27:40 -0300 Subject: [PATCH 15/22] Removing duplicated files --- .../DINEngschriftStd.otf | Bin 29432 -> 0 bytes .../DINMittelschriftStd.otf | Bin 29448 -> 0 bytes .../DINNeuzeitGroteskStd-BdCond.otf | Bin 30452 -> 0 bytes .../DINNeuzeitGroteskStd-Light.otf | Bin 30424 -> 0 bytes .../DINPro-Black.otf | Bin 88940 -> 0 bytes .../DINPro-Bold.otf | Bin 90228 -> 0 bytes .../DINPro-Light.otf | Bin 88240 -> 0 bytes .../DINPro-Medium.otf | Bin 89060 -> 0 bytes .../DINPro-Regular.otf | Bin 87364 -> 0 bytes 9 files changed, 0 insertions(+), 0 deletions(-) delete mode 100755 20. Din [1926 - Ludwig Goller]/DINEngschriftStd.otf delete mode 100755 20. Din [1926 - Ludwig Goller]/DINMittelschriftStd.otf delete mode 100755 20. Din [1926 - Ludwig Goller]/DINNeuzeitGroteskStd-BdCond.otf delete mode 100755 20. Din [1926 - Ludwig Goller]/DINNeuzeitGroteskStd-Light.otf delete mode 100755 20. Din [1926 - Ludwig Goller]/DINPro-Black.otf delete mode 100755 20. Din [1926 - Ludwig Goller]/DINPro-Bold.otf delete mode 100755 20. Din [1926 - Ludwig Goller]/DINPro-Light.otf delete mode 100755 20. Din [1926 - Ludwig Goller]/DINPro-Medium.otf delete mode 100755 20. Din [1926 - Ludwig Goller]/DINPro-Regular.otf diff --git a/20. Din [1926 - Ludwig Goller]/DINEngschriftStd.otf b/20. Din [1926 - Ludwig Goller]/DINEngschriftStd.otf deleted file mode 100755 index ae85f8ee3b9487c8ed754a72d2d14ee5c5004243..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29432 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 Y%kQT5oru3neL=`iEUtfENfi+I7d^Ox6aWAK diff --git a/20. Din [1926 - Ludwig Goller]/DINMittelschriftStd.otf b/20. Din [1926 - Ludwig Goller]/DINMittelschriftStd.otf deleted file mode 100755 index 9a6e0d4ff5d0db37d9e7c5e3c6c479a47f21debd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29448 zcmce;2S60bwlG{hGu?yTIx6F!&d@U>3I-Gba~8!MPyt0H4KM^HNfg9{qL@%jn8lnC z#fXTAm_<=mS4`lp-gQOYon6;zw(#f`3& z;f9)^1xSh}3~_NEwxad=69`T3fDr0Cbog-nl)}QP2sMsIsK1}9`=}9a(d+L)dJsY_ z_l}t0=3e^#b$^81LJ{JMM!0(pc`>C7(#F0+NRr~_-qm@kB6=V~)L^L3KQO`&9i18+ zgOGeLLbAi5Mnlk>uKpJw?HRb9p%B45lG;Q57Vz9IG$L;Hy9G8)5E@wq`K==iv!f~b z1W2NK!;OhFL>SMt-=Tr$Ylo=9>0x-3B8eCaKPV@;@%JipL;42Nr$Z^RrmudK9H9wFydx=9Nv%ON zl1Y|Jyx@6Ey-)cfXUY-k;TWkz{K>?;UsZuzT!#!pgOQ#{8rnLHe%G7Zh8vOGfV_Gn zmTFBo|Iz*cc&>+qLXFXYhOh*Ba8yHBinM5QLs*8?D6Sz)qy8wPA&s7Y*E>2w(9yA9XjEKaRAhqQ$-&W~hf}`@!%SmTT(CoUSOBCuIQ8z? z%jsV<BD0627O$NA;=hEh?%L63f7Mei;Rj(iZ<#;LYwlS2P3- zgHU~K|GKXFn*P09lg)6(0u)hzr~XeZP5_wn(7t0stQhJCFh>ETB1IwrKarv$j1B;! z6Qo7}+%ut0F;6hWhC|H(4dopmM{m><^#cD3Mcn^H1)~{;e~p7GX`sW$YJ7TZJLY^>4jf1;Li&((+pIa9D!T?YOo4F$n;OUFH!j)*g93brr z=Q)^Z8Ubl>0GSB4$WQ-SiLO9z5fcOW4(9R^5c)!EC)C~COJ8{HU(>mM<$%>g(xPD& zwiahR^D{#UFb_9ExFO}s`T&vt?T>=hP73P_jTj^c*cu@gaj>Q|K?>9qHABsjC9D!H zkP2C$mZ%kK4Qq)8StB0S7ajCN8)SppqISp@*`fBR1L}x6A$u6dT>#Urz=2M{W!=me ziX7G(MtNW0$NsQp4Mc-r-AjhiGZbhs3=Ic<7zrbCG#UdvHV#In8!WC9VeGjh59A4} z*%ai3rlM(RI`T$7$QStmW(Uz>bQB#!r_ni7h_0Y(s03X_H_&x-6V|p;bQ|44chP-x z50#+@s2n{)-=K%+TT}tE#uM}uIAjO(O8{^}44Q@3p?I-r=CmUyAFV`dfuolK zC&t4(VS%>0*2>N z0lJ7Tq17k_%|-Lje6#?iqD5#iN<&LP-q;9vf`F1V^n%z2egM%tl#TYFI?9O}Lb+20 zYBn{GS}VCOxhZ)rJtQrV7U`SmTjj&r+3u%)w}ACwo$gRX=B&M!A4@k*fh1V zv{BipZL~J_HY08PZH%_Jsz4m6tAp0`=AQNkx@7~s_ChNz)FjFuTA2&2T!U5~|Ivz4 z-%4+-*PC1E^B1i&hgMqu(Mk}sf(TVtSN9URfK!9>s=I_xoiDTtzq(Nf{kyXdhzDPqZj2buD>|)V*QKE zr(Hlw{O9p88KPLKF{J?iD_37T)r_*FtSI%Dw*Jwlpu&IniQ^H$s1HKhfx8w0Uo8Xv zSdVIeX7hmSHd8bu15Vojd>4%tQBvTk1hf@x0;(nf2ki%rIAZ4Sbl~t@;PD*bj#CZX zkp&!o-pnES!1;TDQ!knMq!1OMEx^auU@VltIJgQUAp^!jDU1ejEZm3DAdZDSFd81g zc=!g!!b9N9Oc)Op<`MB6?F24ej@Fp@_X2v1icux--jW8+O9L)kZ02i`r^PiY9{5+B z*<)aQ>_)YS0NyZ5iNCtjF#iAIM*-s^7yvE)Lbws*I|&1jFpv@kHAcc~F~-J)MTn9mY;t0vW}7p*8pGoZ(P3ec z!C{eMaY^CE*jRIXSY(_rB*qXPZHS2rGlU0)1qX|@baUww8y^9cfB-fuJ|@Z#92VBo z$+>qQNOX2~YVdl5MOsyBizyF_vR=r24Q6Cf*5*B9& z4^Pq?LEsMpAveMh7z%w0a<3uC5D;$E$3_LmB^qLk`rxP-eSJTMMTY3(LXE861Ektu zL!dEMA08HHjEsfyaZ&oDsCZGr4*Wt9i0u&A@hiG?);j~${=DOGV9mRXN%gyoNndsu z03}rQ2MiE~hD9)-v*MCO$^B3J7WPjY7qc862Ah_8=%Qj`JO3ft1B2F!_w^_lgF5Tu z0shW<7KjoX9d1YxA0ncF;ljiaLzUj!NA4F632uc*(86iEmZ`_B-o7l(@2 z9`r+uKHLENHAoi6QOsX=OK+!!4jE~LD#8PdF(HuEH6}iAW`qGYbpS%7-erUX0RC4S z!TK&T!}u57^WWDglKabM>tFWBf7TyB`@iUszv_?w9yAB@VEnSf{qv?w9Hw7VP>MLY zwgvgk71pqsu!^mOb>||iBclBD3jIQbQqj~(Y6G>ExM(G^sGU-NXp0r5%K>9@bQu<0-E&VKODYKS!mkp4OmifuTW%FcmvMSuCg-W4-9VJ<1}eL$UV_BNc(g= zJ%}Z3XWjR}OvbC!i+*;O$#R`U-z~2lTSW0B=S?(rIQ;`l> z)&aMHOZEYG&gYCxiZHOIR&2R(R z(3xAaQ*^WUr|slA^9ofZgKeC74%@BUdEmJAz^>dqg&K~`5;~RQk)_m@3aqP;ZV|4j z#%0Fui_%8yKRx%nCja#2L;H364rK1SslJ)EYt{knp=iTqAC0$RZbY2;g3 zGB#=U@0uSI5j#IDHg@g0cwLf#o_92N!C}pvtA}o%nvvtNaKW-=X}V<$C&fc|s-k+* z5esAH&eBBKA7gG7?W#DS!;yk8lP8T6z+pU-uP4E+>m{XBW(DReq=` z4sIc-A<^1Pe)P7Dn=&tIjvQYWtV<#?`DmlRyHBoPb>9B0>`l5=Ooc3L;eyeTGuH0j zvwQt9?Ndgf@#b}-S&lkm!d@onhAP$gJKsh;*I@RCk`K=ew{6zydS%jHtLN<6rOw&4 z?@sZl*-?4gTMy~eQ{DDEYxI34x9fg$YUN_x>qT@<`u+tWYJWrg#1YeXo$=FhR>E`> z`3W0wK{YABe)uO77s4ywIkL)Ut}KykHJtR4Q-}JoRvEQUA zLziePnVfY8wjI_S-4_=X7M0+qo5?6rS5)Jd6_~1~#Og-ycn7)W&JXtwoHWrtuS|=J zZRK1kjGV0A%PMnmBb+ynSC-A-r?81E!=+UNoTc8tIa7HlcWMU9Sxzy}GSoy?%6SFvIS|ib zB;{mYEOk^+NRL_xifXc!!E5mg`dKYII7Gf4dS_S%$3ee z#LnfGII^;TC0AzU4-KZKg|OUnE0f@2s<7o$NB3{oqUE5^S0{29@E+wy_mY>Mr4{rT zmebt3v*+qX-9R3fad%(RibY4Gj%!au`W_gknZnKHP0)2?S&EC|aaZCR1(S~Bm6;E< z=c>64D@?+t^{kn1Im><3IM~FM&%lyiL_#Pz?u^gUy%>&Q8b+>3Zu^tzC)y$#A}!y!eEj(CA#SPVsiy{(?6QDf}xpD$RrwUSofgCA3*;l9qCKrm7P9!IFz6V-xUn6TZg{4-9m33j`L1 z?9~`5l~r?TP^pPJVJb37PjC;{RKBfV)4#t6_hy)AHghDQ@JSv=1`fajIXtj}4CJbX z+C+{aSsaX7PWY6_QHYv}qU=ysW3*3-4)>*YQ`CM5m5He3h}wauwTRkGQL7QP5mBoU zwFyyM5w#P6rk>h>;Qa)(0#WM`m5!+Gh+2uLWr%{80ojOJil}Xf%0kp$3Pn($0f7xD z>?)~U@ODEK0Yr7oOi()9g^hkZRVQgK874`V_Reu$X7b zF3^tje0nu~fWA$C&&U}MIV0!fk@A)Do$|f%OY+|=v=$vKJS`SkEVnpsan<5hBd*cN zMtd6NHoDX3ej^j>z#7<@Yz(`U&0=%dN9>R6Z=8(l%T3`{a%;I=jXO6U*mz9i$i|x+ z?`!;|@w>*qHPJWmZnCP$+9rif?lpO@=&bNp%uvKCt|^{0b!eK`_(623X#n(xkg^4|P>ekXsEzt6wn zf7eR1tX8Y-p&g+0(}rkgYnN#=wY#*(w5PNWv?i^fv(UBHb<%a#Ip`d9&bscpI9-Bn zw(gF8nErSh=Qi8hTyFDAn~$L6+22;%c3azL?HaY~*=}jO^mfbJt!#JGR%XlCTG+C- zjcpaS&1@}gTi9CJw(?nVQFwRJ67KCTwp<|-(rYHvrZYH$Tvd^QcpZ)3Fhoy^R9Jkd zT`R9;e9d7zkiat|T!JUEj)+eR1v$0Cw3VkSOwwPltE!MWDIBFq3ue=2Z8Iu#j=K77tI21l?i#hy;=b1~xqjZr zLBv9BTQD3}3oVJ2kIf7^5O&f6TjPx?kL}3^^VMZXkDScZ7Ltdm+w->t`l=@;28>V9 zDxwqE!jgw2r@$#M6yev{p&vVGaetm93F;oKGO;L$H>JHE3t+ysJo$RwYpj0_a#A=B z5K2_JhYsiE9SRQ)Nr)H~0}Flpv4d*-ZEcAPH)cSnX`6TY$o1??tsRf2_$LKL2Dc`i z@ff-)?^sc(`sJ8!?d``5>M?!q^kYF<<*Dwz)B5*PlSY5D#p-WwA3J+ZJK>Sa*LzBm zpT>23@uQ1}FP5LwDTGfZpjDYk>95Q#6OO{fPO@vf6RGPaDc)$Sa>JG(fU&I_+aAZ( z*RiEGkg*|+CX+6NR};R7boodcX&cI53zKwbjkoGLu{=(!iLIL0h7fBvVyVqzKH^42 zxC`dhn4gTh*kG~HWMM-hj)ED}?z$A)3EfrK-!V^p4xR5^_@Xf4d_N!hom(e)zw;43 zFT8qt9rAg4o>p82R+&+OXRPP(ITe{P0M8)eBg7H74PX=z>?D4LX(Map#V+F4rKu_y zyr?FWh7_3Sg>5M;euE9F)jTeiXRxH0+*r&f0|!R)crsu-*~(PoZOhoX&>(*Q{E$|R z%3@8_5fk<`Nsm|wolImegOhL`eJFR+seCo2o&QESy^}MsSgtiOx7VCKS**E{>oqlD zX?%Q?jvOXG(~9LherW1qQog~i_>t-ibN!;hb(oj`q=}J73TEqU8N%)OZcMcXH+lOK zx4Ig8-R*=<`SZ0C+lnu%f9?H&DDAp;w_60YU)^~2z!^S8sX zVv=6OPhod)X3xQ`CpDEjCiWk>qDT8lVMhuVh>*43^7E7*G!HJH%sr?(d~#FnTQz2r zbAnE556tr3mA$+Yx`YyN{&xYOVKW4a3_3uJU_SAQg!8gaKD}&Grh+J=01ITKKF`FoD+aGsX~*q zP*|-p{emYlB(3%n9mWGTpJ-EUM>$Y-x5-&-%Gsp+MfnbEg^jAa7jrIMx)?fgNzJ)hd4>a&k>YEI)L^EM`A^k1g*;lz1N3D&L(xaq#R-HI_ps%8A_Bk;um#^gC^Y zBAy`;lSZmdD^+(cU$}AO^7PT8J*ST!?|I>l);w9AdyVIr8n6_42$rht$Jd`at;XsO zFFLeoJDT(&+NW->x9!Tv+yYxb(urIKxHm&S*jPNRDn62bGcUMbKc8TConnOvHwSjb zi7Eq6p8Ept_D#TvCUHbYmu&zc5(F>Y+?T&BY)qu`UrY0Ggi6RD@pPrUwmTjsfD?ma zjN&q8DzKu0$`>*q-(6K4OAgE8ScSQ)5D0}AL0KG6mqP*YddY?EWLPaYTG3l%^n<1o za7pn1n7d6S%)X56n|EmchMUtn4`k&4evP_3>R{KcmtLD_l0Q9t@Z!n*Fpq>q@yT&o zXVQ$04_`VfNKMjwdAv5Q;_h{~Qk-ApHB|S+85)321JIsTjSdW|D{&ZJ2igBAXcm`>#A#Q}j&4E8VVJU8fCt+ty zbtWzC2M}&ja$455EvvU@Zr44Q74R)A0JuaBIeWI zp5UhC#)kv8>sHB?!i(HpCD+tgHuMS6X~{tb@2}OXlpmiS_i}d+@#?1|eenziJK`dh zQmDxF_HYmO8K5JM*q>2s7{gPAKD;mvPgl9HU$ha5pUQFT13E<|h|+5&unb1FDy(7x zSVrN;_GcBTFzc0wg7p*@m(=eJgJEY_JDpM7&gAg~6OM#8g|Lah*YFt?whd;S$BgUa z&1<{<(S!|_!PQ2GZAqqFVS);8SL3URqEws%@EENyN@U4Zl7p`j^w}FDd>iL5u%2fp zz;fWpD@JGXu(0E6KK#n>R33S^jIiOAW4a34=!E&8yoi%`8a~6*e@6EH*;+-VxfDPf z0ooGW5>JMS5Vv5+8eu4&jgN^U0XbhQrI!iPF{~n%7e0Z9LszkabtsFGFaZ=N9m!kz zHF)?fy{dKsM&iUwylaDqzYs**G779+#o`CBUoxAap-z=+dJf z)VISg2OiTNHF|G$(~!fA;s7vBGLN%;`0lL22PVeaY6^S7Ud9W0O{m3Fs%w|n<0%X% zUplag4bl8cp-_q!Sb>S_>O!Ahvbw z29emq&DmwO8De&=kOAu^(bhl7gbXOWFq&T|6iJ2tR-n@&kphMN@lPvR7_lpe4PLR5 z#s1_c5?M>pkPbs&JFW16wRO5lI*eCDXR+13tRkMJ%3n*%fyKv_cCH!twv>!x6pMJg zLR_s$!)gtgu*GXBwg^#m9)-u%6q9kI-ZC)7l_cQzl_0WQ6w;Ns7x8gWeksdvU;G~T zCGY79Iq@;rnH5-Eda)X zR)SF$6v;!6SwNbnviW;*j_BIs-&Jqd z^cv!_q*rJAB~PAIta(zcQ-DUto&{mbtd=pWQAPl8B*gT~Og1fX8NX8HIz4DaP-ynv z7;XQtwAZ=Pusa%T@#}ruMJFt>l`G$Q%JYl?JEv$y`Ob)p(?uFnXOlK+qF+DzpivvS z``nCD%_VdD#0Pt;p0C=xeYbY|=6%_xG z+1uypl6EiK{7en{9oB@WCsI>*sVfhZVHBY}ZfX*B5M@@WJUKOw6(66Nq)$9l#`rm* z+DQ96=H<-iHG88z(`X_D$ELQP&I5N zV8^@y8gS?FwH0i&y~(oNgnhi(7S_swa;T!1nJCI}BiZ585`7HX+>nriuA2Egs0fwM zE~m2qEtHwYE6=%tR_igu_<-d^Z|KtIYSJu~J+g+n0vbTh1pwFZy+i@rtVW~C zP116ZeY^$~k`kuhCEo|yqG}@(vtR>gIxjq|aKR4gtdSS-8^$VUPiB?phVlyAP@YN? zyrp=gIQ+*8t3e^kfkKoM6`~64x&p%rC~AN#SJeb4qlHj$66h&rQ|5Mpd~yt2%n*43 z-$^Wid)BUoiQzYhT?GOsRK7v*hq(=BsfY{7GLLcu@&Y0Q#4vHeSuhq?u4L^uG(Un|R$Rh#i%m9ngG`F_ulYEYvOI~P!-tty?y z%$$Gfv<|nB|1kbY@*3?b`L;DTa=uq%mHc$psUzBg(w@v@-+*B{(pEk?+QSR>5|72V z$y9lTw47w9Dt=D^fghTw7MrQcuvJwtMdwc4*WtGEJNt_ZwaT(mxw6V@W%T8{YTQPC z-}lsHZO>5!%#o}BgO0S2cfB!l+Y;?EdGeC+q21I(B{$3un5ms6&Oak6QY$RWgaD=g zM?6e*Z1>*WJk9R7w&G*)~=D|{f&9BuISjw^MmiUN|+TjJ7|#wz9&Dq=)mmkS�v3OYaenCm)= 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

    (C`csk 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 axGu^Di+^-cwl!H^xyk;UG0O%)dj20v|70ov diff --git a/20. Din [1926 - Ludwig Goller]/DINPro-Light.otf b/20. Din [1926 - Ludwig Goller]/DINPro-Light.otf deleted file mode 100755 index 8a7f085abd28e11f37fba052fd493514a3be21ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 88240 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 Mo`yNvtp)A*A0xKva{vGU diff --git a/20. Din [1926 - Ludwig Goller]/DINPro-Medium.otf b/20. Din [1926 - Ludwig Goller]/DINPro-Medium.otf deleted file mode 100755 index b4608d06d170998c463a5451d552b533149dabef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 89060 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 From 0d5ca4d4e60012d8530b9dbbd9530f4d914a155c Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 03:23:40 -0300 Subject: [PATCH 16/22] Updating Contact scene - Check if cell should be visible --- TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift | 4 ++-- TesteiOS/TesteiOS/Scenes/Contact/ContactDelegate.swift | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift b/TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift index fab38a35..4b6aa2c4 100644 --- a/TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift +++ b/TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift @@ -34,7 +34,7 @@ class ContactDataSource: NSObject, ItemsTableViewDataSource { } func update(with items: [Cell]) { - self.items = items + self.items = items.filter { !$0.hidden } self.registerTableView() self.tableView?.reloadData() } @@ -59,7 +59,7 @@ class ContactDataSource: NSObject, ItemsTableViewDataSource { } else { values.append(value) } - enableSendButton?(values.count == 4) + enableSendButton?(values.count == items.count - 2) } } diff --git a/TesteiOS/TesteiOS/Scenes/Contact/ContactDelegate.swift b/TesteiOS/TesteiOS/Scenes/Contact/ContactDelegate.swift index 840eb02d..ead6c56d 100644 --- a/TesteiOS/TesteiOS/Scenes/Contact/ContactDelegate.swift +++ b/TesteiOS/TesteiOS/Scenes/Contact/ContactDelegate.swift @@ -21,7 +21,7 @@ class ContactDelegate: NSObject, UITableViewDelegate { } func update(with items: [Cell]) { - self.items = items + self.items = items.filter { !$0.hidden } } func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { From c41eb7bada54b07b63cc35c306fe79538a608065 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 04:34:26 -0300 Subject: [PATCH 17/22] Adding more Unit Tests --- TesteiOS/TesteiOS.xcodeproj/project.pbxproj | 16 +++ .../Scenes/Contact/ContactInteractor.swift | 5 +- .../Scenes/Contact/ContactWorker.swift | 4 +- .../Scenes/Funds/FundsInteractor.swift | 5 +- .../TesteiOS/Scenes/Funds/FundsWorker.swift | 4 +- .../DataSources/ContactDataSourceSpec.swift | 10 +- .../Scenes/Contact/ContactInteractSpec.swift | 6 +- .../Scenes/Contact/ContactWorkerSpec.swift | 63 ++++++++++++ .../Scenes/Funds/FundsInteractorSpec.swift | 34 +++++++ TesteiOS/coverage/BankAPI+Testing.swift.html | 14 +-- TesteiOS/coverage/BankAPI.swift.html | 80 +++++++-------- TesteiOS/coverage/Cell.swift.html | 92 +++++++++--------- .../coverage/ContactDataSource.swift.html | 44 ++++----- TesteiOS/coverage/ContactDelegate.swift.html | 2 +- .../coverage/ContactInteractor.swift.html | 97 +++++++++++-------- TesteiOS/coverage/ContactModels.swift.html | 20 ++-- TesteiOS/coverage/ContactWorker.swift.html | 28 +++--- TesteiOS/coverage/FormData.swift.html | 10 +- TesteiOS/coverage/FundsInteractor.swift.html | 89 ++++++++++------- TesteiOS/coverage/FundsWorker.swift.html | 10 +- .../ItemsTableViewDataSource.swift.html | 12 +-- TesteiOS/coverage/NetworkManager.swift.html | 16 +-- TesteiOS/coverage/index.html | 46 ++++----- 23 files changed, 431 insertions(+), 276 deletions(-) create mode 100644 TesteiOS/TesteiOSTests/Scenes/Contact/ContactWorkerSpec.swift create mode 100644 TesteiOS/TesteiOSTests/Scenes/Funds/FundsInteractorSpec.swift diff --git a/TesteiOS/TesteiOS.xcodeproj/project.pbxproj b/TesteiOS/TesteiOS.xcodeproj/project.pbxproj index d7444ba4..94114000 100644 --- a/TesteiOS/TesteiOS.xcodeproj/project.pbxproj +++ b/TesteiOS/TesteiOS.xcodeproj/project.pbxproj @@ -90,6 +90,8 @@ 65EF262D221CC3E700014212 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 65EF262C221CC3E700014212 /* Assets.xcassets */; }; 65EF2630221CC3E700014212 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 65EF262E221CC3E700014212 /* LaunchScreen.storyboard */; }; 65EF2646221CC3E700014212 /* TesteiOSUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65EF2645221CC3E700014212 /* TesteiOSUITests.swift */; }; + 65F791642223C5E400F1058A /* ContactWorkerSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65F791632223C5E400F1058A /* ContactWorkerSpec.swift */; }; + 65F791662223D01600F1058A /* FundsInteractorSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65F791652223D01600F1058A /* FundsInteractorSpec.swift */; }; BF30F532668E8706D861BA2D /* Pods_TesteiOSTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E53AA491062BDD9DF858AB8E /* Pods_TesteiOSTests.framework */; }; DAC11BD224CBF944124D26B8 /* Pods_TesteiOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C2C7FB9A50E98EBED4E7C177 /* Pods_TesteiOS.framework */; }; /* End PBXBuildFile section */ @@ -202,6 +204,8 @@ 65EF2641221CC3E700014212 /* TesteiOSUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = TesteiOSUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 65EF2645221CC3E700014212 /* TesteiOSUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TesteiOSUITests.swift; sourceTree = ""; }; 65EF2647221CC3E700014212 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 65F791632223C5E400F1058A /* ContactWorkerSpec.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactWorkerSpec.swift; sourceTree = ""; }; + 65F791652223D01600F1058A /* FundsInteractorSpec.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundsInteractorSpec.swift; sourceTree = ""; }; 90D2E8A002C9BD53CCDBA5FB /* Pods-TesteiOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TesteiOS.release.xcconfig"; path = "Target Support Files/Pods-TesteiOS/Pods-TesteiOS.release.xcconfig"; sourceTree = ""; }; AC1FED7AFFCC9F0BB4F951CF /* Pods-TesteiOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TesteiOS.debug.xcconfig"; path = "Target Support Files/Pods-TesteiOS/Pods-TesteiOS.debug.xcconfig"; sourceTree = ""; }; C2C7FB9A50E98EBED4E7C177 /* Pods_TesteiOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_TesteiOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -578,6 +582,7 @@ 65B2BBC72223A14B009A5A7B /* Scenes */ = { isa = PBXGroup; children = ( + 65F791672223D01C00F1058A /* Funds */, 65B2BBC82223A152009A5A7B /* Contact */, ); path = Scenes; @@ -587,6 +592,7 @@ isa = PBXGroup; children = ( 65B2BBC92223A168009A5A7B /* ContactInteractSpec.swift */, + 65F791632223C5E400F1058A /* ContactWorkerSpec.swift */, ); path = Contact; sourceTree = ""; @@ -648,6 +654,14 @@ path = TesteiOSUITests; sourceTree = ""; }; + 65F791672223D01C00F1058A /* Funds */ = { + isa = PBXGroup; + children = ( + 65F791652223D01600F1058A /* FundsInteractorSpec.swift */, + ); + path = Funds; + sourceTree = ""; + }; F27A8A997A75DFBE5CC78888 /* Frameworks */ = { isa = PBXGroup; children = ( @@ -977,7 +991,9 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 65F791662223D01600F1058A /* FundsInteractorSpec.swift in Sources */, 65B2BBC2222390F6009A5A7B /* ContactDataSourceSpec.swift in Sources */, + 65F791642223C5E400F1058A /* ContactWorkerSpec.swift in Sources */, 65B2BBCA2223A168009A5A7B /* ContactInteractSpec.swift in Sources */, 65B2BBC622239D1C009A5A7B /* StringValidatorSpec.swift in Sources */, 65B2BBBF22238E5A009A5A7B /* FormDataSpec.swift in Sources */, diff --git a/TesteiOS/TesteiOS/Scenes/Contact/ContactInteractor.swift b/TesteiOS/TesteiOS/Scenes/Contact/ContactInteractor.swift index 47ddcc07..62d85835 100644 --- a/TesteiOS/TesteiOS/Scenes/Contact/ContactInteractor.swift +++ b/TesteiOS/TesteiOS/Scenes/Contact/ContactInteractor.swift @@ -26,9 +26,12 @@ class ContactInteractor: ContactBusinessLogic, ContactDataStore { var worker: ContactWorker? //var name: String = "" + init(worker: ContactWorker? = ContactWorker()) { + self.worker = worker + } + // MARK: Fetch Form func fetchForm(request: Contact.Form.Request) { - worker = ContactWorker() worker?.fetchForm(request: request, completion: { result in switch result { case .success(let data): diff --git a/TesteiOS/TesteiOS/Scenes/Contact/ContactWorker.swift b/TesteiOS/TesteiOS/Scenes/Contact/ContactWorker.swift index 50f47612..a347ae96 100644 --- a/TesteiOS/TesteiOS/Scenes/Contact/ContactWorker.swift +++ b/TesteiOS/TesteiOS/Scenes/Contact/ContactWorker.swift @@ -15,9 +15,9 @@ import Alamofire class ContactWorker { - private let networkManager: NetworkManager + private let networkManager: Networkable - init(networkManager: NetworkManager = NetworkManager()) { + init(networkManager: Networkable = NetworkManager()) { self.networkManager = networkManager } diff --git a/TesteiOS/TesteiOS/Scenes/Funds/FundsInteractor.swift b/TesteiOS/TesteiOS/Scenes/Funds/FundsInteractor.swift index bad8c688..bce0b29b 100644 --- a/TesteiOS/TesteiOS/Scenes/Funds/FundsInteractor.swift +++ b/TesteiOS/TesteiOS/Scenes/Funds/FundsInteractor.swift @@ -26,9 +26,12 @@ class FundsInteractor: FundsBusinessLogic, FundsDataStore { var worker: FundsWorker? var url: String = "" + init(worker: FundsWorker? = FundsWorker()) { + self.worker = worker + } + // MARK: Fetch fund func fetchFund(request: Funds.Get.Request) { - worker = FundsWorker() worker?.fetchFund(request: request, completion: { result in switch result { case .success(let data): diff --git a/TesteiOS/TesteiOS/Scenes/Funds/FundsWorker.swift b/TesteiOS/TesteiOS/Scenes/Funds/FundsWorker.swift index f2b99a6d..5afed537 100644 --- a/TesteiOS/TesteiOS/Scenes/Funds/FundsWorker.swift +++ b/TesteiOS/TesteiOS/Scenes/Funds/FundsWorker.swift @@ -15,9 +15,9 @@ import Alamofire class FundsWorker { - private let networkManager: NetworkManager + private let networkManager: Networkable - init(networkManager: NetworkManager = NetworkManager()) { + init(networkManager: Networkable = NetworkManager()) { self.networkManager = networkManager } diff --git a/TesteiOS/TesteiOSTests/DataSources/ContactDataSourceSpec.swift b/TesteiOS/TesteiOSTests/DataSources/ContactDataSourceSpec.swift index 0d94da0a..e4787311 100644 --- a/TesteiOS/TesteiOSTests/DataSources/ContactDataSourceSpec.swift +++ b/TesteiOS/TesteiOSTests/DataSources/ContactDataSourceSpec.swift @@ -36,9 +36,15 @@ class ContactDataSourceSpec: QuickSpec { } it("should have the expected number of items") { let count = dataSource.tableView(tableView, numberOfRowsInSection: 0) - expect(count).to(equal(6)) + expect(count).to(equal(5)) + } + it("should show only the not hidden cells") { + let items = [cells[2], cells[0]] + dataSource.update(with: items) + let count = dataSource.tableView(tableView, numberOfRowsInSection: 0) + expect(cells[2].hidden).to(beTrue()) + expect(count).to(equal(1)) } - it("should have be able to update items") { let items = [cells[0], cells[0]] dataSource.update(with: items) diff --git a/TesteiOS/TesteiOSTests/Scenes/Contact/ContactInteractSpec.swift b/TesteiOS/TesteiOSTests/Scenes/Contact/ContactInteractSpec.swift index 09f9b463..d145990b 100644 --- a/TesteiOS/TesteiOSTests/Scenes/Contact/ContactInteractSpec.swift +++ b/TesteiOS/TesteiOSTests/Scenes/Contact/ContactInteractSpec.swift @@ -15,11 +15,11 @@ class ContactInteractorSpec: QuickSpec { override func spec() { describe("a ContactInteractor") { var interact: ContactInteractor! - var request: Contact.Form.Request! beforeEach { - request = Contact.Form.Request() - interact = ContactInteractor() + let request = Contact.Form.Request() + let worker = ContactWorker(networkManager: NetworkManagerMock()) + interact = ContactInteractor(worker: worker) interact.fetchForm(request: request) interact.sendFormData(request: Contact.Send.Request(values: [])) } diff --git a/TesteiOS/TesteiOSTests/Scenes/Contact/ContactWorkerSpec.swift b/TesteiOS/TesteiOSTests/Scenes/Contact/ContactWorkerSpec.swift new file mode 100644 index 00000000..af457ccf --- /dev/null +++ b/TesteiOS/TesteiOSTests/Scenes/Contact/ContactWorkerSpec.swift @@ -0,0 +1,63 @@ +// +// ContactWorkerSpec.swift +// TesteiOSTests +// +// Created by Brendoon Ryos on 25/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Quick +import Nimble +import Moya +import Alamofire + +@testable import TesteiOS + +class NetworkManagerMock: Networkable { + var provider: MoyaProvider = MoyaProvider() + + func fetchForm(request: Contact.Form.Request, completion: @escaping (Result) -> ()) { + let sampleData = BankAPI.fetchForm.sampleData + let formData = try? JSONDecoder().decode(FormData.self, from: sampleData) + if let form = formData { + completion(Result.success(form)) + } else { + completion(Result.failure(NSError())) + } + } + + func fetchFund(request: Funds.Get.Request, completion: @escaping (Result) -> ()) { + let sampleData = BankAPI.fetchFund.sampleData + let fundsData = try? JSONDecoder().decode(FundsData.self, from: sampleData) + + if let funds = fundsData { + completion(Result.success(funds)) + } else { + completion(Result.failure(NSError())) + } + + } +} + +class ContactWorkerSpec: QuickSpec { + override func spec() { + describe("a ContactWorker") { + var worker: ContactWorker! + + beforeEach { + worker = ContactWorker(networkManager: NetworkManagerMock()) + } + + it("should have a result value") { + worker.fetchForm(request: Contact.Form.Request(), completion: { result in + expect(result.value).notTo(beNil()) + }) + } + it("should haven't a error ") { + worker.fetchForm(request: Contact.Form.Request(), completion: { result in + expect(result.error).to(beNil()) + }) + } + } + } +} diff --git a/TesteiOS/TesteiOSTests/Scenes/Funds/FundsInteractorSpec.swift b/TesteiOS/TesteiOSTests/Scenes/Funds/FundsInteractorSpec.swift new file mode 100644 index 00000000..f36b22fe --- /dev/null +++ b/TesteiOS/TesteiOSTests/Scenes/Funds/FundsInteractorSpec.swift @@ -0,0 +1,34 @@ +// +// FundsInteractorSpec.swift +// TesteiOSTests +// +// Created by Brendoon Ryos on 25/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Quick +import Nimble + +@testable import TesteiOS + +class FundsInteractorSpec: QuickSpec { + override func spec() { + describe("a ContactInteractor") { + var interact: FundsInteractor! + + beforeEach { + let request = Funds.Download.Request(url: .none) + let worker = FundsWorker(networkManager: NetworkManagerMock()) + interact = FundsInteractor(worker: worker) + interact.downloadData(request: request) + } + + it("should have a worker") { + expect(interact.worker).notTo(beNil()) + } + it("should have an url") { + expect(interact.url).to(equal("https://www.google.com/")) + } + } + } +} diff --git a/TesteiOS/coverage/BankAPI+Testing.swift.html b/TesteiOS/coverage/BankAPI+Testing.swift.html index cb2fa376..ed1d52cc 100644 --- a/TesteiOS/coverage/BankAPI+Testing.swift.html +++ b/TesteiOS/coverage/BankAPI+Testing.swift.html @@ -70,27 +70,27 @@

    TesteiOS/Services/BankAPI+Testing.swift

    12
      var sampleData: Data {
    -9x +13x 13
        switch self {
    -9x +13x 14
        case .fetchForm:
    -9x +13x 15
          return stubbedResponse("Form")
    -9x +13x 16
        case .fetchFund:
    -9x +13x 17 @@ -100,12 +100,12 @@

    TesteiOS/Services/BankAPI+Testing.swift

    18
        }
    -9x +13x 19
      }
    -9x +13x 20 diff --git a/TesteiOS/coverage/BankAPI.swift.html b/TesteiOS/coverage/BankAPI.swift.html index 7c6ea8b0..2b414836 100644 --- a/TesteiOS/coverage/BankAPI.swift.html +++ b/TesteiOS/coverage/BankAPI.swift.html @@ -7,9 +7,9 @@
    Slather logo

    -Coverage for "BankAPI.swift" : 95.00% +Coverage for "BankAPI.swift" : 92.50%

    -

    (38 of 40 relevant lines covered)

    +

    (37 of 40 relevant lines covered)

    TesteiOS/Services/BankAPI.swift

    @@ -100,27 +100,27 @@

    TesteiOS/Services/BankAPI.swift

    - + - + - + - + - + @@ -130,7 +130,7 @@

    TesteiOS/Services/BankAPI.swift

    - + @@ -140,12 +140,12 @@

    TesteiOS/Services/BankAPI.swift

    - + - + @@ -155,22 +155,22 @@

    TesteiOS/Services/BankAPI.swift

    - + - + - + - + @@ -180,27 +180,27 @@

    TesteiOS/Services/BankAPI.swift

    - + - + - + - + - + - + @@ -210,12 +210,12 @@

    TesteiOS/Services/BankAPI.swift

    - + - + @@ -225,32 +225,32 @@

    TesteiOS/Services/BankAPI.swift

    - + - + - + - + - + - + @@ -260,32 +260,32 @@

    TesteiOS/Services/BankAPI.swift

    - + - + - + - + - + - + @@ -295,32 +295,32 @@

    TesteiOS/Services/BankAPI.swift

    - + - + - + - + - + - + diff --git a/TesteiOS/coverage/Cell.swift.html b/TesteiOS/coverage/Cell.swift.html index a14d6fa2..840e00d3 100644 --- a/TesteiOS/coverage/Cell.swift.html +++ b/TesteiOS/coverage/Cell.swift.html @@ -130,57 +130,57 @@

    TesteiOS/Models/Cell.swift

    - + - + - + - + - + - + - + - + - + - + - + @@ -190,7 +190,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -200,7 +200,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -210,7 +210,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -220,7 +220,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -230,12 +230,12 @@

    TesteiOS/Models/Cell.swift

    - + - + @@ -245,57 +245,57 @@

    TesteiOS/Models/Cell.swift

    - + - + - + - + - + - + - + - + - + - + - + @@ -305,7 +305,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -315,7 +315,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -325,7 +325,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -335,7 +335,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -345,12 +345,12 @@

    TesteiOS/Models/Cell.swift

    - + - + @@ -800,62 +800,62 @@

    TesteiOS/Models/Cell.swift

    - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/TesteiOS/coverage/ContactDataSource.swift.html b/TesteiOS/coverage/ContactDataSource.swift.html index 6233fdb8..65bacaba 100644 --- a/TesteiOS/coverage/ContactDataSource.swift.html +++ b/TesteiOS/coverage/ContactDataSource.swift.html @@ -120,32 +120,32 @@

    TesteiOS/Scenes/Contact/ContactDataSource.swift

    - + - + - + - + - + - + @@ -155,32 +155,32 @@

    TesteiOS/Scenes/Contact/ContactDataSource.swift

    - + - + - + - + - + - + @@ -190,27 +190,27 @@

    TesteiOS/Scenes/Contact/ContactDataSource.swift

    - + - - + + - + - + - + @@ -319,7 +319,7 @@

    TesteiOS/Scenes/Contact/ContactDataSource.swift

    - + @@ -345,17 +345,17 @@

    TesteiOS/Scenes/Contact/ContactDataSource.swift

    - + - + - + diff --git a/TesteiOS/coverage/ContactDelegate.swift.html b/TesteiOS/coverage/ContactDelegate.swift.html index d36ab435..9c3e1d46 100644 --- a/TesteiOS/coverage/ContactDelegate.swift.html +++ b/TesteiOS/coverage/ContactDelegate.swift.html @@ -129,7 +129,7 @@

    TesteiOS/Scenes/Contact/ContactDelegate.swift

    - + diff --git a/TesteiOS/coverage/ContactInteractor.swift.html b/TesteiOS/coverage/ContactInteractor.swift.html index 951e956b..4180829c 100644 --- a/TesteiOS/coverage/ContactInteractor.swift.html +++ b/TesteiOS/coverage/ContactInteractor.swift.html @@ -7,9 +7,9 @@
    Slather logo

    -Coverage for "ContactInteractor.swift" : 50.00% +Coverage for "ContactInteractor.swift" : 90.00%

    -

    (9 of 18 relevant lines covered)

    +

    (18 of 20 relevant lines covered)

    TesteiOS/Scenes/Contact/ContactInteractor.swift

    18
      var environmentBaseURL: String {
    3x2x
    19
        switch NetworkManager.environment {
    3x2x
    20
        case .staging:
    3x2x
    21
          return "https://floating-mountain-50292.herokuapp.com"
    3x2x
    22
        case .qa:
    3x2x
    23
    24
        case .production:
    3x2x
    25
    26
        }
    3x2x
    27
      }
    3x2x
    28
    29
      var baseURL: URL {
    3x2x
    30
        guard let url = URL(string: environmentBaseURL) else { fatalError("baseURL could not be configured.") }
    3x2x
    31
        return url
    3x2x
    32
      }
    3x2x
    33
    34
      var path: String {
    6x4x
    35
        switch self {
    6x4x
    36
        case .fetchForm:
    6x4x
    37
          return "/cells.json"
    2x!
    38
        case .fetchFund:
    6x4x
    39
    40
        }
    6x4x
    41
      }
    6x4x
    42
    43
      var method: Moya.Method {
    3x2x
    44
        switch self {
    3x2x
    45
        default:
    3x2x
    46
          return .get
    3x2x
    47
        }
    3x2x
    48
      }
    3x2x
    49
    50
      var task: Task {
    3x2x
    51
        switch self {
    3x2x
    52
        default:
    3x2x
    53
          return .requestPlain
    3x2x
    54
        }
    3x2x
    55
      }
    3x2x
    56
    57
      var headers: [String : String]? {
    3x2x
    58
        switch self {
    3x2x
    59
        default:
    3x2x
    60
          return ["Content-type":"application/json"]
    3x2x
    61
        }
    3x2x
    62
      }
    3x2x
    63
    24
      func getNib() -> UINib {
    60x58x
    25
        switch self {
    60x58x
    26
        case .field:
    60x58x
    27
          return TextFieldTableViewCell.nib
    24x18x
    28
        case .text:
    60x58x
    29
          return TextTableViewCell.nib
    10x12x
    30
        case .checkbox:
    60x58x
    31
          return CheckboxTableViewCell.nib
    8x9x
    32
        case .send:
    60x58x
    33
          return SendTableViewCell.nib
    8x9x
    34
        case .fundHeader:
    60x58x
    35
    36
        case .moreInfo:
    60x58x
    37
    38
        case .info:
    60x58x
    39
    40
        case .downInfo:
    60x58x
    41
    42
        default:
    60x58x
    43
    44
        }
    60x58x
    45
      }
    60x58x
    46
    47
      func getIdentifier() -> String {
    83x81x
    48
        switch self {
    83x81x
    49
        case .field:
    83x81x
    50
          return TextFieldTableViewCell.reuseIdentifier
    24x18x
    51
        case .text:
    83x81x
    52
          return TextTableViewCell.reuseIdentifier
    11x13x
    53
        case .checkbox:
    83x81x
    54
          return CheckboxTableViewCell.reuseIdentifier
    8x9x
    55
        case .send:
    83x81x
    56
          return SendTableViewCell.reuseIdentifier
    8x9x
    57
        case .fundHeader:
    83x81x
    58
    59
        case .moreInfo:
    83x81x
    60
    61
        case .info:
    83x81x
    62
    63
        case .downInfo:
    83x81x
    64
    65
        default:
    83x81x
    66
    67
        }
    83x81x
    68
      }
    83x81x
    69
    158
      init(from decoder: Decoder) throws {
    54x78x
    159
        let container = try decoder.container(keyedBy: CodingKeys.self)
    54x78x
    160
        
    54x78x
    161
        id = try container.decode(Int.self, forKey: .id)
    54x78x
    162
        type = try container.decode(Int.self, forKey: .type)
    54x78x
    163
        message = try container.decode(String.self, forKey: .message)
    54x78x
    164
        typefield = try? container.decode(Int.self, forKey: .typefield)
    54x78x
    165
        hidden = try container.decode(Bool.self, forKey: .hidden)
    54x78x
    166
        topSpacing = try container.decode(Int.self, forKey: .topSpacing)
    54x78x
    167
        show = try? container.decode(Int.self, forKey: .show)
    54x78x
    168
        required = try container.decode(Bool.self, forKey: .required)
    54x78x
    169
      }
    54x78x
    170
    22
      required init(tableView: UITableView, delegate: UITableViewDelegate) {
    10x11x
    23
        self.tableView = tableView
    10x11x
    24
        self.delegate = delegate
    10x11x
    25
        super.init()
    10x11x
    26
        setupTableView()
    10x11x
    27
      }
    10x11x
    28
    29
      func registerTableView() {
    19x22x
    30
        for item in items {
    50x48x
    31
          let type = CellType(rawValue: item.type)!
    50x48x
    32
          self.tableView?.register(type.getNib(), forCellReuseIdentifier: type.getIdentifier())
    50x48x
    33
        }
    50x48x
    34
      }
    19x22x
    35
    36
      func update(with items: [Cell]) {
    9x11x
    37
        self.items = items
    9x
        self.items = items.filter { !$0.hidden }
    58x
    38
        self.registerTableView()
    9x11x
    39
        self.tableView?.reloadData()
    9x11x
    40
      }
    9x11x
    41
    62
        enableSendButton?(values.count == 4)
        enableSendButton?(values.count == items.count - 2)
    3x
    67
      func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    21x25x
    68
        return items.count
    21x25x
    69
      }
    21x25x
    70
    24
        self.items = items
        self.items = items.filter { !$0.hidden }
    !
    @@ -152,113 +152,128 @@

    TesteiOS/Scenes/Contact/ContactInteractor.swift

    - + - - + + - - + + - + + + + + + + + + + + + + + + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - + - + - + - + - + - + - + - + - + - + diff --git a/TesteiOS/coverage/ContactModels.swift.html b/TesteiOS/coverage/ContactModels.swift.html index dc638ee2..7fc04ac0 100644 --- a/TesteiOS/coverage/ContactModels.swift.html +++ b/TesteiOS/coverage/ContactModels.swift.html @@ -7,9 +7,9 @@
    Slather logo

    -Coverage for "ContactModels.swift" : 0.00% +Coverage for "ContactModels.swift" : 50.00%

    -

    (0 of 8 relevant lines covered)

    +

    (4 of 8 relevant lines covered)

    TesteiOS/Scenes/Contact/ContactModels.swift

      
    29
      // MARK: Fetch Form
      init(worker: ContactWorker? = ContactWorker()) {
    3x
    30
      func fetchForm(request: Contact.Form.Request) {
    1x
        self.worker = worker
    3x
    31
        worker = ContactWorker()
      }
    3x
    32
      
    33
      // MARK: Fetch Form
    34
      func fetchForm(request: Contact.Form.Request) {
    1x
    3235
        worker?.fetchForm(request: request, completion: { result in
    1x
    33
    36
          switch result {
    !1x
    34
    37
          case .success(let data):
    !1x
    35
    38
            let response = Contact.Form.Response(cells: data.cells)
    !1x
    36
    39
            self.presenter?.presentForm(response: response)
    !1x
    37
    40
          case .failure(let error):
    !1x
    3841
            let response = Contact.Form.Response(error: error)
    !
    3942
            self.presenter?.presentErrorMessage(response: response)
    !
    40
    43
          }
    !1x
    41
    44
        })
    !1x
    4245
      }
    1x
    4346
      
    4447
      // MARK: Send form data
    4548
      func sendFormData(request: Contact.Send.Request) {
    1x
    4649
        let response = Contact.Send.Response()
    1x
    4750
        presenter?.presentSuccesseMessage(response: response)
    1x
    4851
        // TODO: Send form data
    1x
    4952
      }
    1x
    5053
    }
    @@ -167,25 +167,25 @@

    TesteiOS/Scenes/Contact/ContactModels.swift

    - + - + - + - + - + - + - + - + diff --git a/TesteiOS/coverage/ContactWorker.swift.html b/TesteiOS/coverage/ContactWorker.swift.html index c00d65f6..a561771d 100644 --- a/TesteiOS/coverage/ContactWorker.swift.html +++ b/TesteiOS/coverage/ContactWorker.swift.html @@ -7,9 +7,9 @@
    Slather logo

    -Coverage for "ContactWorker.swift" : 75.00% +Coverage for "ContactWorker.swift" : 100.00%

    -

    (6 of 8 relevant lines covered)

    +

    (8 of 8 relevant lines covered)

    TesteiOS/Scenes/Contact/ContactWorker.swift

          
    32
          init(cells: [Cell] = [], error: Error? = .none) {
    !1x
    33
            self.cells = cells
    !1x
    34
            self.error = error
    !1x
    35
          }
    !1x
    36
    @@ -99,7 +99,7 @@

    TesteiOS/Scenes/Contact/ContactWorker.swift

    - + @@ -109,18 +109,18 @@

    TesteiOS/Scenes/Contact/ContactWorker.swift

    - - + + - + - + @@ -130,27 +130,27 @@

    TesteiOS/Scenes/Contact/ContactWorker.swift

    - + - + - + - + - + - + - + diff --git a/TesteiOS/coverage/FormData.swift.html b/TesteiOS/coverage/FormData.swift.html index 67f7d8bf..d12ce008 100644 --- a/TesteiOS/coverage/FormData.swift.html +++ b/TesteiOS/coverage/FormData.swift.html @@ -110,27 +110,27 @@

    TesteiOS/Models/FormData.swift

    - + - + - + - + - + diff --git a/TesteiOS/coverage/FundsInteractor.swift.html b/TesteiOS/coverage/FundsInteractor.swift.html index 46f858d9..cdf463ec 100644 --- a/TesteiOS/coverage/FundsInteractor.swift.html +++ b/TesteiOS/coverage/FundsInteractor.swift.html @@ -7,9 +7,9 @@
    Slather logo

    -Coverage for "FundsInteractor.swift" : 61.11% +Coverage for "FundsInteractor.swift" : 90.00%

    -

    (11 of 18 relevant lines covered)

    +

    (18 of 20 relevant lines covered)

    TesteiOS/Scenes/Funds/FundsInteractor.swift

    18
      private let networkManager: NetworkManager
      private let networkManager: Networkable
    20
      init(networkManager: NetworkManager = NetworkManager()) {
    1x
      init(networkManager: Networkable = NetworkManager()) {
    5x
    21
        self.networkManager = networkManager
    1x5x
    22
      }
    1x5x
    23
    24
      func fetchForm(request: Contact.Form.Request, completion: @escaping (Result<FormData>) -> ()) {
    1x3x
    25
        networkManager.fetchForm(request: request) { result in
    1x3x
    26
          completion(result)
    !3x
    27
        }
    !3x
    28
      }
    1x3x
    29
    20
      init(from decoder: Decoder) throws {
    9x13x
    21
        let container = try decoder.container(keyedBy: CodingKeys.self)
    9x13x
    22
        
    9x13x
    23
        cells = try container.decode([Cell].self, forKey: .cells)
    9x13x
    24
      }
    9x13x
    25
    @@ -152,113 +152,128 @@

    TesteiOS/Scenes/Funds/FundsInteractor.swift

    - + - - + + - - + + - + + + + + + + + + + + + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - + diff --git a/TesteiOS/coverage/FundsWorker.swift.html b/TesteiOS/coverage/FundsWorker.swift.html index acb0f3cf..48179220 100644 --- a/TesteiOS/coverage/FundsWorker.swift.html +++ b/TesteiOS/coverage/FundsWorker.swift.html @@ -99,7 +99,7 @@

    TesteiOS/Scenes/Funds/FundsWorker.swift

    - + @@ -109,18 +109,18 @@

    TesteiOS/Scenes/Funds/FundsWorker.swift

    - - + + - + - + diff --git a/TesteiOS/coverage/ItemsTableViewDataSource.swift.html b/TesteiOS/coverage/ItemsTableViewDataSource.swift.html index 8a715c18..b1fd866e 100644 --- a/TesteiOS/coverage/ItemsTableViewDataSource.swift.html +++ b/TesteiOS/coverage/ItemsTableViewDataSource.swift.html @@ -130,32 +130,32 @@

    TesteiOS/Commons/ItemsTableViewDataSource.swift

    - + - + - + - + - + - + diff --git a/TesteiOS/coverage/NetworkManager.swift.html b/TesteiOS/coverage/NetworkManager.swift.html index 525aaa28..31770551 100644 --- a/TesteiOS/coverage/NetworkManager.swift.html +++ b/TesteiOS/coverage/NetworkManager.swift.html @@ -7,9 +7,9 @@
    Slather logo

    -Coverage for "NetworkManager.swift" : 53.33% +Coverage for "NetworkManager.swift" : 43.33%

    -

    (16 of 30 relevant lines covered)

    +

    (13 of 30 relevant lines covered)

    TesteiOS/Services/NetworkManager.swift

      
    29
      // MARK: Fetch fund
      init(worker: FundsWorker? = FundsWorker()) {
    4x
    30
      func fetchFund(request: Funds.Get.Request) {
    2x
        self.worker = worker
    4x
    31
        worker = FundsWorker()
      }
    4x
    32
      
    33
      // MARK: Fetch fund
    34
      func fetchFund(request: Funds.Get.Request) {
    2x
    3235
        worker?.fetchFund(request: request, completion: { result in
    2x
    3336
          switch result {
    2x
    3437
          case .success(let data):
    2x
    3538
            let response = Funds.Get.Response(fund: data.fund)
    2x
    3639
            self.presenter?.presentFund(response: response)
    2x
    3740
          case .failure(let error):
    2x
    3841
            let response = Funds.Get.Response(error: error)
    !
    3942
            self.presenter?.presentErrorMessage(response: response)
    !
    4043
          }
    2x
    4144
        })
    2x
    4245
      }
    2x
    4346
      
    4447
      // MARK: Fetch data
    45
    48
      func downloadData(request: Funds.Download.Request) {
    !2x
    46
    49
        url = request.url ?? "https://www.google.com/"
    !2x
    47
    50
        let response = Funds.Download.Response()
    !2x
    48
    51
        presenter?.presentDownloadedData(response: response)
    !2x
    49
    52
      }
    !2x
    5053
    }
    18
      private let networkManager: NetworkManager
      private let networkManager: Networkable
    20
      init(networkManager: NetworkManager = NetworkManager()) {
    2x
      init(networkManager: Networkable = NetworkManager()) {
    4x
    21
        self.networkManager = networkManager
    2x4x
    22
      }
    2x4x
    23
    24
      func setupTableView() {
    12x13x
    25
        registerTableView()
    12x13x
    26
        self.tableView?.dataSource = self
    12x13x
    27
        self.tableView?.delegate = self.delegate
    12x13x
    28
        self.tableView?.reloadData()
    12x13x
    29
      }
    12x13x
    30
    @@ -152,15 +152,15 @@

    TesteiOS/Services/NetworkManager.swift

    - + - + - + - + @@ -222,10 +222,10 @@

    TesteiOS/Services/NetworkManager.swift

    - + - + diff --git a/TesteiOS/coverage/index.html b/TesteiOS/coverage/index.html index 622ce08f..d87e5a72 100644 --- a/TesteiOS/coverage/index.html +++ b/TesteiOS/coverage/index.html @@ -8,7 +8,7 @@
    Slather logo

    Files for "TesteiOS.xcodeproj"

    -Total Coverage : 65.87% +Total Coverage : 67.22%

      
    29
      func fetchForm(request: Contact.Form.Request, completion: @escaping (Result<FormData>) -> ()) {
    1x!
    30
        provider.request(.fetchForm) { result in
    1x!
    31
        }
    !
    43
      }
    1x!
    44
    @@ -109,20 +109,20 @@

    - + - - - - + + + + - + - - + + @@ -141,12 +141,12 @@

    - + - - + + @@ -165,12 +165,12 @@

    - + - - - - + + + + @@ -221,12 +221,12 @@

    - + - - + + @@ -237,12 +237,12 @@

    - + - - + + From 95b11868d5f2f16c144f0ed889d5f7a6dd62aa4c Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Rocha Aboboreira Date: Thu, 14 Mar 2019 12:31:22 -0300 Subject: [PATCH 18/22] Required fields feature --- TesteiOS/TesteiOS.xcodeproj/project.pbxproj | 8 ++++---- TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/TesteiOS/TesteiOS.xcodeproj/project.pbxproj b/TesteiOS/TesteiOS.xcodeproj/project.pbxproj index 94114000..406cc68e 100644 --- a/TesteiOS/TesteiOS.xcodeproj/project.pbxproj +++ b/TesteiOS/TesteiOS.xcodeproj/project.pbxproj @@ -63,7 +63,6 @@ 65B2BB7D221FEF54009A5A7B /* DINPro-Bold.otf in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB74221FEF54009A5A7B /* DINPro-Bold.otf */; }; 65B2BB7E221FEF54009A5A7B /* DINPro-Regular.otf in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB75221FEF54009A5A7B /* DINPro-Regular.otf */; }; 65B2BB7F221FEF54009A5A7B /* DINMittelschriftStd.otf in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB76221FEF54009A5A7B /* DINMittelschriftStd.otf */; }; - 65B2BB8322206527009A5A7B /* String+Validator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB8222206527009A5A7B /* String+Validator.swift */; }; 65B2BB872221D411009A5A7B /* FeedbackView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB862221D411009A5A7B /* FeedbackView.swift */; }; 65B2BB892221D42A009A5A7B /* FeedbackView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65B2BB882221D42A009A5A7B /* FeedbackView.xib */; }; 65B2BB90222210BD009A5A7B /* Fund.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65B2BB8F222210BD009A5A7B /* Fund.swift */; }; @@ -92,6 +91,7 @@ 65EF2646221CC3E700014212 /* TesteiOSUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65EF2645221CC3E700014212 /* TesteiOSUITests.swift */; }; 65F791642223C5E400F1058A /* ContactWorkerSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65F791632223C5E400F1058A /* ContactWorkerSpec.swift */; }; 65F791662223D01600F1058A /* FundsInteractorSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65F791652223D01600F1058A /* FundsInteractorSpec.swift */; }; + A56D8254223AA8B100A33990 /* String+Validator.swift in Sources */ = {isa = PBXBuildFile; fileRef = A56D8253223AA8B100A33990 /* String+Validator.swift */; }; BF30F532668E8706D861BA2D /* Pods_TesteiOSTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E53AA491062BDD9DF858AB8E /* Pods_TesteiOSTests.framework */; }; DAC11BD224CBF944124D26B8 /* Pods_TesteiOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C2C7FB9A50E98EBED4E7C177 /* Pods_TesteiOS.framework */; }; /* End PBXBuildFile section */ @@ -171,7 +171,6 @@ 65B2BB74221FEF54009A5A7B /* DINPro-Bold.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "DINPro-Bold.otf"; sourceTree = ""; }; 65B2BB75221FEF54009A5A7B /* DINPro-Regular.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "DINPro-Regular.otf"; sourceTree = ""; }; 65B2BB76221FEF54009A5A7B /* DINMittelschriftStd.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = DINMittelschriftStd.otf; sourceTree = ""; }; - 65B2BB8222206527009A5A7B /* String+Validator.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = "String+Validator.swift"; path = "../../../../../TesteiOSv2/TesteiOSv2/TesteiOSv2/Supporting Files/Extensions/String/String+Validator.swift"; sourceTree = ""; }; 65B2BB862221D411009A5A7B /* FeedbackView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbackView.swift; sourceTree = ""; }; 65B2BB882221D42A009A5A7B /* FeedbackView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FeedbackView.xib; sourceTree = ""; }; 65B2BB8F222210BD009A5A7B /* Fund.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Fund.swift; sourceTree = ""; }; @@ -207,6 +206,7 @@ 65F791632223C5E400F1058A /* ContactWorkerSpec.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactWorkerSpec.swift; sourceTree = ""; }; 65F791652223D01600F1058A /* FundsInteractorSpec.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundsInteractorSpec.swift; sourceTree = ""; }; 90D2E8A002C9BD53CCDBA5FB /* Pods-TesteiOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TesteiOS.release.xcconfig"; path = "Target Support Files/Pods-TesteiOS/Pods-TesteiOS.release.xcconfig"; sourceTree = ""; }; + A56D8253223AA8B100A33990 /* String+Validator.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "String+Validator.swift"; sourceTree = ""; }; AC1FED7AFFCC9F0BB4F951CF /* Pods-TesteiOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TesteiOS.debug.xcconfig"; path = "Target Support Files/Pods-TesteiOS/Pods-TesteiOS.debug.xcconfig"; sourceTree = ""; }; C2C7FB9A50E98EBED4E7C177 /* Pods_TesteiOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_TesteiOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; D778FDDB6EFFC6823D4DE1D7 /* Pods-TesteiOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TesteiOSTests.debug.xcconfig"; path = "Target Support Files/Pods-TesteiOSTests/Pods-TesteiOSTests.debug.xcconfig"; sourceTree = ""; }; @@ -379,7 +379,7 @@ 65B2BB2F221F33DE009A5A7B /* Extensions */ = { isa = PBXGroup; children = ( - 65B2BB8222206527009A5A7B /* String+Validator.swift */, + A56D8253223AA8B100A33990 /* String+Validator.swift */, 65B2BB30221F33FC009A5A7B /* UIColor+Hex.swift */, ); path = Extensions; @@ -953,7 +953,6 @@ 65EF2626221CC3E500014212 /* AppDelegate.swift in Sources */, 65B2BB1A221F2AC9009A5A7B /* ContactRouter.swift in Sources */, 65B2BB18221F2AC9009A5A7B /* ContactPresenter.swift in Sources */, - 65B2BB8322206527009A5A7B /* String+Validator.swift in Sources */, 65B2BB43221FA075009A5A7B /* BankAPI+Testing.swift in Sources */, 65B2BB49221FA385009A5A7B /* FundsData.swift in Sources */, 65B2BB67221FAFDC009A5A7B /* CheckboxTableViewCell.swift in Sources */, @@ -978,6 +977,7 @@ 65B2BB41221F9F8E009A5A7B /* NetworkManager.swift in Sources */, 65B2BB1B221F2AC9009A5A7B /* ContactModels.swift in Sources */, 65B2BB47221FA376009A5A7B /* FormData.swift in Sources */, + A56D8254223AA8B100A33990 /* String+Validator.swift in Sources */, 65B2BB0F221F2750009A5A7B /* FontNames.swift in Sources */, 65B2BBA822225520009A5A7B /* MoreInfoTableViewCell.swift in Sources */, 65B2BB45221FA2E7009A5A7B /* DefaultAlamofireManager.swift in Sources */, diff --git a/TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift b/TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift index 4b6aa2c4..aa802334 100644 --- a/TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift +++ b/TesteiOS/TesteiOS/Scenes/Contact/ContactDataSource.swift @@ -59,7 +59,7 @@ class ContactDataSource: NSObject, ItemsTableViewDataSource { } else { values.append(value) } - enableSendButton?(values.count == items.count - 2) + enableSendButton?(values.count == items.filter{ $0.required }.count) } } From 170ef818c417eb5593b638e6ab1821cc8ef70714 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Rocha Aboboreira Date: Thu, 14 Mar 2019 12:32:37 -0300 Subject: [PATCH 19/22] Updating Unit Tests --- TesteiOS/Gemfile.lock | 10 +- TesteiOS/coverage/Cell.swift.html | 94 +++++++++---------- .../coverage/DownInfoTableViewCell.swift.html | 8 +- TesteiOS/coverage/Fund.swift.html | 26 ++--- .../FundHeaderTableViewCell.swift.html | 16 ++-- TesteiOS/coverage/FundsData.swift.html | 8 +- TesteiOS/coverage/FundsDataSource.swift.html | 72 +++++++------- TesteiOS/coverage/FundsDelegate.swift.html | 6 +- TesteiOS/coverage/FundsInteractor.swift.html | 14 +-- TesteiOS/coverage/FundsModels.swift.html | 16 ++-- TesteiOS/coverage/FundsPresenter.swift.html | 8 +- TesteiOS/coverage/FundsTableView.swift.html | 6 +- .../coverage/FundsViewController.swift.html | 8 +- TesteiOS/coverage/FundsWorker.swift.html | 4 +- TesteiOS/coverage/Info.swift.html | 10 +- .../coverage/InfoTableViewCell.swift.html | 8 +- TesteiOS/coverage/MoreInfo.swift.html | 10 +- TesteiOS/coverage/MoreInfoData.swift.html | 12 +-- .../coverage/MoreInfoTableViewCell.swift.html | 18 ++-- TesteiOS/coverage/NetworkManager.swift.html | 20 ++-- TesteiOS/coverage/RiskView.swift.html | 84 ++++++++--------- TesteiOS/coverage/String+Validator.swift.html | 2 +- TesteiOS/coverage/index.html | 16 ++-- 23 files changed, 238 insertions(+), 238 deletions(-) diff --git a/TesteiOS/Gemfile.lock b/TesteiOS/Gemfile.lock index d2fd0e4d..e4a61c31 100644 --- a/TesteiOS/Gemfile.lock +++ b/TesteiOS/Gemfile.lock @@ -85,7 +85,7 @@ GEM digest-crc (0.4.1) domain_name (0.5.20180417) unf (>= 0.0.5, < 1.0.0) - dotenv (2.6.0) + dotenv (2.7.1) emoji_regex (1.0.1) escape (0.0.4) excon (0.62.0) @@ -99,7 +99,7 @@ GEM faraday_middleware (0.13.1) faraday (>= 0.7.4, < 1.0) fastimage (2.1.5) - fastlane (2.116.1) + fastlane (2.117.1) CFPropertyList (>= 2.3, < 4.0.0) addressable (>= 2.3, < 3.0.0) babosa (>= 1.0.2, < 2.0.0) @@ -170,7 +170,7 @@ GEM httpclient (2.8.3) i18n (0.9.5) concurrent-ruby (~> 1.0) - json (2.1.0) + json (2.2.0) jwt (2.1.0) kramdown (1.17.0) memoist (0.16.0) @@ -230,7 +230,7 @@ GEM terminal-table (1.8.0) unicode-display_width (~> 1.1, >= 1.1.1) thread_safe (0.3.6) - tty-cursor (0.6.0) + tty-cursor (0.6.1) tty-screen (0.6.5) tty-spinner (0.9.0) tty-cursor (~> 0.6.0) @@ -240,7 +240,7 @@ GEM unf (0.1.4) unf_ext unf_ext (0.0.7.5) - unicode-display_width (1.4.1) + unicode-display_width (1.5.0) word_wrap (1.0.0) xcodeproj (1.8.1) CFPropertyList (>= 2.3.3, < 4.0) diff --git a/TesteiOS/coverage/Cell.swift.html b/TesteiOS/coverage/Cell.swift.html index 840e00d3..694b83a3 100644 --- a/TesteiOS/coverage/Cell.swift.html +++ b/TesteiOS/coverage/Cell.swift.html @@ -130,17 +130,17 @@

    TesteiOS/Models/Cell.swift

    - + - + - + @@ -150,7 +150,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -160,7 +160,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -170,7 +170,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -180,62 +180,62 @@

    TesteiOS/Models/Cell.swift

    - + - + - + - + - + - + - + - + - + - + - + - + @@ -245,17 +245,17 @@

    TesteiOS/Models/Cell.swift

    - + - + - + @@ -265,7 +265,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -275,7 +275,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -285,7 +285,7 @@

    TesteiOS/Models/Cell.swift

    - + @@ -295,62 +295,62 @@

    TesteiOS/Models/Cell.swift

    - + - + - + - + - + - + - + - + - + - + - + - + @@ -475,47 +475,47 @@

    TesteiOS/Models/Cell.swift

    - + - + - + - + - + - + - + - + - + @@ -525,12 +525,12 @@

    TesteiOS/Models/Cell.swift

    - + - + diff --git a/TesteiOS/coverage/DownInfoTableViewCell.swift.html b/TesteiOS/coverage/DownInfoTableViewCell.swift.html index e6b8e013..3ec66a72 100644 --- a/TesteiOS/coverage/DownInfoTableViewCell.swift.html +++ b/TesteiOS/coverage/DownInfoTableViewCell.swift.html @@ -100,22 +100,22 @@

    TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTa

    - + - + - + - + diff --git a/TesteiOS/coverage/Fund.swift.html b/TesteiOS/coverage/Fund.swift.html index 36dac32d..c3cbb031 100644 --- a/TesteiOS/coverage/Fund.swift.html +++ b/TesteiOS/coverage/Fund.swift.html @@ -200,67 +200,67 @@

    TesteiOS/Models/Fund.swift

    - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/TesteiOS/coverage/FundHeaderTableViewCell.swift.html b/TesteiOS/coverage/FundHeaderTableViewCell.swift.html index f1aa1d57..b45d211d 100644 --- a/TesteiOS/coverage/FundHeaderTableViewCell.swift.html +++ b/TesteiOS/coverage/FundHeaderTableViewCell.swift.html @@ -110,42 +110,42 @@

    TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHead

    - + - + - + - + - + - + - + - + diff --git a/TesteiOS/coverage/FundsData.swift.html b/TesteiOS/coverage/FundsData.swift.html index c95670df..3fd9b82a 100644 --- a/TesteiOS/coverage/FundsData.swift.html +++ b/TesteiOS/coverage/FundsData.swift.html @@ -110,22 +110,22 @@

    TesteiOS/Models/FundsData.swift

    - + - + - + - + diff --git a/TesteiOS/coverage/FundsDataSource.swift.html b/TesteiOS/coverage/FundsDataSource.swift.html index 402c8716..4f0c7f4b 100644 --- a/TesteiOS/coverage/FundsDataSource.swift.html +++ b/TesteiOS/coverage/FundsDataSource.swift.html @@ -145,27 +145,27 @@

    TesteiOS/Scenes/Funds/FundsDataSource.swift

    - + - + - + - + - + @@ -175,32 +175,32 @@

    TesteiOS/Scenes/Funds/FundsDataSource.swift

    - + - + - + - + - + - + @@ -225,17 +225,17 @@

    TesteiOS/Scenes/Funds/FundsDataSource.swift

    - + - + - + @@ -245,47 +245,47 @@

    TesteiOS/Scenes/Funds/FundsDataSource.swift

    - + - + - + - + - + - + - + - + - + @@ -295,12 +295,12 @@

    TesteiOS/Scenes/Funds/FundsDataSource.swift

    - + - + @@ -310,57 +310,57 @@

    TesteiOS/Scenes/Funds/FundsDataSource.swift

    - + - + - + - + - + - + - + - + - + - + - + diff --git a/TesteiOS/coverage/FundsDelegate.swift.html b/TesteiOS/coverage/FundsDelegate.swift.html index 6fd728d4..26872c8b 100644 --- a/TesteiOS/coverage/FundsDelegate.swift.html +++ b/TesteiOS/coverage/FundsDelegate.swift.html @@ -125,17 +125,17 @@

    TesteiOS/Scenes/Funds/FundsDelegate.swift

    - + - + - + diff --git a/TesteiOS/coverage/FundsInteractor.swift.html b/TesteiOS/coverage/FundsInteractor.swift.html index cdf463ec..b4a14d82 100644 --- a/TesteiOS/coverage/FundsInteractor.swift.html +++ b/TesteiOS/coverage/FundsInteractor.swift.html @@ -190,27 +190,27 @@

    TesteiOS/Scenes/Funds/FundsInteractor.swift

    - + - + - + - + - + @@ -225,12 +225,12 @@

    TesteiOS/Scenes/Funds/FundsInteractor.swift

    - + - + diff --git a/TesteiOS/coverage/FundsModels.swift.html b/TesteiOS/coverage/FundsModels.swift.html index cb3bd088..41c86bff 100644 --- a/TesteiOS/coverage/FundsModels.swift.html +++ b/TesteiOS/coverage/FundsModels.swift.html @@ -165,22 +165,22 @@

    TesteiOS/Scenes/Funds/FundsModels.swift

    - + - + - + - + @@ -210,22 +210,22 @@

    TesteiOS/Scenes/Funds/FundsModels.swift

    - + - + - + - + diff --git a/TesteiOS/coverage/FundsPresenter.swift.html b/TesteiOS/coverage/FundsPresenter.swift.html index 9e83f699..5d801dea 100644 --- a/TesteiOS/coverage/FundsPresenter.swift.html +++ b/TesteiOS/coverage/FundsPresenter.swift.html @@ -135,22 +135,22 @@

    TesteiOS/Scenes/Funds/FundsPresenter.swift

    - + - + - + - + diff --git a/TesteiOS/coverage/FundsTableView.swift.html b/TesteiOS/coverage/FundsTableView.swift.html index c8cb14a3..a44b8b12 100644 --- a/TesteiOS/coverage/FundsTableView.swift.html +++ b/TesteiOS/coverage/FundsTableView.swift.html @@ -165,17 +165,17 @@

    TesteiOS/UI/Views/Funds/FundsTableView.swift

    - + - + - + diff --git a/TesteiOS/coverage/FundsViewController.swift.html b/TesteiOS/coverage/FundsViewController.swift.html index b2f36c4d..d66c1f25 100644 --- a/TesteiOS/coverage/FundsViewController.swift.html +++ b/TesteiOS/coverage/FundsViewController.swift.html @@ -455,22 +455,22 @@

    TesteiOS/Scenes/Funds/FundsViewController.swift

    - + - + - + - + diff --git a/TesteiOS/coverage/FundsWorker.swift.html b/TesteiOS/coverage/FundsWorker.swift.html index 48179220..709be292 100644 --- a/TesteiOS/coverage/FundsWorker.swift.html +++ b/TesteiOS/coverage/FundsWorker.swift.html @@ -140,12 +140,12 @@

    TesteiOS/Scenes/Funds/FundsWorker.swift

    - + - + diff --git a/TesteiOS/coverage/Info.swift.html b/TesteiOS/coverage/Info.swift.html index 0c92af93..44cb35a7 100644 --- a/TesteiOS/coverage/Info.swift.html +++ b/TesteiOS/coverage/Info.swift.html @@ -120,27 +120,27 @@

    TesteiOS/Models/Info.swift

    - + - + - + - + - + diff --git a/TesteiOS/coverage/InfoTableViewCell.swift.html b/TesteiOS/coverage/InfoTableViewCell.swift.html index ef2a26f6..4e644051 100644 --- a/TesteiOS/coverage/InfoTableViewCell.swift.html +++ b/TesteiOS/coverage/InfoTableViewCell.swift.html @@ -90,22 +90,22 @@

    TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewC

    - + - + - + - + diff --git a/TesteiOS/coverage/MoreInfo.swift.html b/TesteiOS/coverage/MoreInfo.swift.html index 4fabf8cc..97c592d1 100644 --- a/TesteiOS/coverage/MoreInfo.swift.html +++ b/TesteiOS/coverage/MoreInfo.swift.html @@ -120,27 +120,27 @@

    TesteiOS/Models/MoreInfo.swift

    - + - + - + - + - + diff --git a/TesteiOS/coverage/MoreInfoData.swift.html b/TesteiOS/coverage/MoreInfoData.swift.html index c051db76..b7f0b983 100644 --- a/TesteiOS/coverage/MoreInfoData.swift.html +++ b/TesteiOS/coverage/MoreInfoData.swift.html @@ -130,32 +130,32 @@

    TesteiOS/Models/MoreInfoData.swift

    - + - + - + - + - + - + diff --git a/TesteiOS/coverage/MoreInfoTableViewCell.swift.html b/TesteiOS/coverage/MoreInfoTableViewCell.swift.html index ea557acd..d4c15bbc 100644 --- a/TesteiOS/coverage/MoreInfoTableViewCell.swift.html +++ b/TesteiOS/coverage/MoreInfoTableViewCell.swift.html @@ -110,47 +110,47 @@

    TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTa

    - + - + - + - + - + - + - + - + - + diff --git a/TesteiOS/coverage/NetworkManager.swift.html b/TesteiOS/coverage/NetworkManager.swift.html index 31770551..7478d873 100644 --- a/TesteiOS/coverage/NetworkManager.swift.html +++ b/TesteiOS/coverage/NetworkManager.swift.html @@ -245,32 +245,32 @@

    TesteiOS/Services/NetworkManager.swift

    - + - + - + - + - + - + @@ -280,12 +280,12 @@

    TesteiOS/Services/NetworkManager.swift

    - + - + @@ -295,12 +295,12 @@

    TesteiOS/Services/NetworkManager.swift

    - + - + diff --git a/TesteiOS/coverage/RiskView.swift.html b/TesteiOS/coverage/RiskView.swift.html index 05128478..0e4cd6c7 100644 --- a/TesteiOS/coverage/RiskView.swift.html +++ b/TesteiOS/coverage/RiskView.swift.html @@ -155,27 +155,27 @@

    TesteiOS/UI/Views/Funds/RiskView.swift

    - + - + - + - + - + @@ -195,7 +195,7 @@

    TesteiOS/UI/Views/Funds/RiskView.swift

    - + @@ -205,7 +205,7 @@

    TesteiOS/UI/Views/Funds/RiskView.swift

    - + @@ -215,17 +215,17 @@

    TesteiOS/UI/Views/Funds/RiskView.swift

    - + - + - + @@ -245,7 +245,7 @@

    TesteiOS/UI/Views/Funds/RiskView.swift

    - + @@ -255,32 +255,32 @@

    TesteiOS/UI/Views/Funds/RiskView.swift

    - + - + - + - + - + - + @@ -290,27 +290,27 @@

    TesteiOS/UI/Views/Funds/RiskView.swift

    - + - + - + - + - + @@ -320,37 +320,37 @@

    TesteiOS/UI/Views/Funds/RiskView.swift

    - + - + - + - + - + - + - + @@ -400,47 +400,47 @@

    TesteiOS/UI/Views/Funds/RiskView.swift

    - + - + - + - + - + - + - + - + - + @@ -450,22 +450,22 @@

    TesteiOS/UI/Views/Funds/RiskView.swift

    - + - + - + - + diff --git a/TesteiOS/coverage/String+Validator.swift.html b/TesteiOS/coverage/String+Validator.swift.html index 9789c770..a697cdde 100644 --- a/TesteiOS/coverage/String+Validator.swift.html +++ b/TesteiOS/coverage/String+Validator.swift.html @@ -10,7 +10,7 @@

    Coverage for "String+Validator.swift" : 100.00%

    (54 of 54 relevant lines covered)

    -

    ../../TesteiOSv2/TesteiOSv2/TesteiOSv2/Supporting Files/Extensions/String/String+Validator.swift

    +

    TesteiOS/Supporting Files/Extensions/String+Validator.swift

    7
    50.0090.00 ContactInteractor.swift5018995320182
    0.0050.00 ContactModels.swift 48 80844
    0.0042
    75.00100.00 ContactWorker.swift 29 86280
    97.670
    61.1190.00 FundsInteractor.swift50181175320182
    100.001
    95.0092.50 BankAPI.swift 63 40382373
    100.000
    53.3343.33 NetworkManager.swift 60 3016141317
    100.00
    24
      func getNib() -> UINib {
    58x53x
    25
        switch self {
    58x53x
    26
        case .field:
    58x53x
    27
    28
        case .text:
    58x53x
    29
    30
        case .checkbox:
    58x53x
    31
    32
        case .send:
    58x53x
    33
    34
        case .fundHeader:
    58x53x
    35
          return FundHeaderTableViewCell.nib
    2x1x
    36
        case .moreInfo:
    58x53x
    37
          return MoreInfoTableViewCell.nib
    2x1x
    38
        case .info:
    58x53x
    39
          return InfoTableViewCell.nib
    2x1x
    40
        case .downInfo:
    58x53x
    41
          return DownInfoTableViewCell.nib
    2x1x
    42
        default:
    58x53x
    43
          return InvestTableViewCell.nib
    2x1x
    44
        }
    58x53x
    45
      }
    58x53x
    46
    47
      func getIdentifier() -> String {
    81x65x
    48
        switch self {
    81x65x
    49
        case .field:
    81x65x
    50
    51
        case .text:
    81x65x
    52
    53
        case .checkbox:
    81x65x
    54
    55
        case .send:
    81x65x
    56
    57
        case .fundHeader:
    81x65x
    58
          return FundHeaderTableViewCell.reuseIdentifier
    4x2x
    59
        case .moreInfo:
    81x65x
    60
          return MoreInfoTableViewCell.reuseIdentifier
    4x2x
    61
        case .info:
    81x65x
    62
          return InfoTableViewCell.reuseIdentifier
    16x8x
    63
        case .downInfo:
    81x65x
    64
          return DownInfoTableViewCell.reuseIdentifier
    6x3x
    65
        default:
    81x65x
    66
          return InvestTableViewCell.reuseIdentifier
    2x1x
    67
        }
    81x65x
    68
      }
    81x65x
    69
    93
      func getHeight() -> CGFloat {
    66x33x
    94
        switch self {
    66x33x
    95
        case .fundHeader:
    66x33x
    96
          return 410
    6x3x
    97
        case .moreInfo:
    66x33x
    98
          return 200
    6x3x
    99
        case .info, .downInfo:
    66x33x
    100
          return 30
    54x27x
    101
        default:
    66x33x
    102
    103
        }
    66x33x
    104
      }
    66x33x
    105
    18
      override func setup(with fund: Fund) {
    4x2x
    19
        nameLabel.text = fund.downInfo[tag].name
    4x2x
    20
        data = fund.downInfo[tag].data
    4x2x
    21
      }
    4x2x
    22
    38
      init(from decoder: Decoder) throws {
    2x1x
    39
        let container = try decoder.container(keyedBy: CodingKeys.self)
    2x1x
    40
        title = try container.decode(String.self, forKey: .title)
    2x1x
    41
        fundName = try container.decode(String.self, forKey: .fundName)
    2x1x
    42
        whatIs = try container.decode(String.self, forKey: .whatIs)
    2x1x
    43
        definition = try container.decode(String.self, forKey: .definition)
    2x1x
    44
        riskTitle = try container.decode(String.self, forKey: .riskTitle)
    2x1x
    45
        risk = try container.decode(Int.self, forKey: .risk)
    2x1x
    46
        infoTitle = try container.decode(String.self, forKey: .infoTitle)
    2x1x
    47
        moreInfo = try container.decode(MoreInfoData.self, forKey: .moreInfo)
    2x1x
    48
        info = try container.decode([Info].self, forKey: .info)
    2x1x
    49
        downInfo = try container.decode([Info].self, forKey: .downInfo)
    2x1x
    50
      }
    2x1x
    51
    20
      override func setup(with fund: Fund) {
    2x1x
    21
        titleLabel.text = fund.title
    2x1x
    22
        fundNameLabel.text = fund.fundName
    2x1x
    23
        whatIsLabel.text = fund.whatIs
    2x1x
    24
        definitionLabel.text = fund.definition
    2x1x
    25
        riskTitleLabel.text = fund.riskTitle
    2x1x
    26
        riskView.setRist(risk: fund.risk)
    2x1x
    27
      }
    2x1x
    28
    20
      init(from decoder: Decoder) throws {
    2x1x
    21
        let container = try decoder.container(keyedBy: CodingKeys.self)
    2x1x
    22
        fund = try container.decode(Fund.self, forKey: .fund)
    2x1x
    23
      }
    2x1x
    24
    27
      func registerTableView() {
    4x3x
    28
        for item in items {
    10x5x
    29
          self.tableView?.register(item.getNib(), forCellReuseIdentifier: item.getIdentifier())
    10x5x
    30
        }
    10x5x
    31
      }
    4x3x
    32
    33
      func update(with fund: Fund) {
    2x1x
    34
        self.fund = fund
    2x1x
    35
        self.items = [.fundHeader, .moreInfo, .info, .downInfo, .invest]
    2x1x
    36
        self.registerTableView()
    2x1x
    37
        self.tableView?.reloadData()
    2x1x
    38
      }
    2x1x
    39
    43
      func numberOfSections(in tableView: UITableView) -> Int {
    10x9x
    44
        return items.count
    10x9x
    45
      }
    10x9x
    46
    47
      func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    10x5x
    48
        switch section {
    10x5x
    49
        case 0, 1, 4 :
    10x5x
    50
          return 1
    6x3x
    51
        case 2:
    10x5x
    52
          return fund!.info.count
    2x1x
    53
        case 3:
    10x5x
    54
          return fund!.downInfo.count
    2x1x
    55
        default:
    10x5x
    56
    57
        }
    10x5x
    58
      }
    10x5x
    59
    60
      func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    22x11x
    61
        let type = items[indexPath.section]
    22x11x
    62
        let cell = tableView.dequeueReusableCell(withIdentifier: type.getIdentifier(), for: indexPath) as! FundBaseTableViewCell
    22x11x
    63
        
    22x11x
    64
        cell.tag = indexPath.row
    22x11x
    65
        cell.investAction = investAction
    22x11x
    66
        cell.downloadAction = downloadAction
    22x11x
    67
        cell.setup(with: fund!)
    22x11x
    68
        
    22x11x
    69
        return cell
    22x11x
    70
      }
    22x11x
    71
    23
      func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
    66x33x
    24
        return items[indexPath.section].getHeight()
    66x33x
    25
      }
    66x33x
    26
    36
          switch result {
    2x1x
    37
          case .success(let data):
    2x1x
    38
            let response = Funds.Get.Response(fund: data.fund)
    2x1x
    39
            self.presenter?.presentFund(response: response)
    2x1x
    40
          case .failure(let error):
    2x1x
    41
    43
          }
    2x1x
    44
        })
    2x1x
    45
    31
          init(fund: Fund? = .none, error: Error? = .none) {
    2x1x
    32
            self.fund = fund
    2x1x
    33
            self.error = error
    2x1x
    34
          }
    2x1x
    35
    40
          init(fund: Fund? = .none, error: Error? = .none) {
    2x1x
    41
            self.fund = fund
    2x1x
    42
            self.error = error
    2x1x
    43
          }
    2x1x
    44
    25
      func presentFund(response: Funds.Get.Response) {
    2x1x
    26
        let viewModel = Funds.Get.ViewModel(fund: response.fund)
    2x1x
    27
        viewController?.displayFund(viewModel: viewModel)
    2x1x
    28
      }
    2x1x
    29
    31
      func update(with fund: Fund) {
    2x1x
    32
        customDataSource?.update(with: fund)
    2x1x
    33
      }
    2x1x
    34
    89
      func displayFund(viewModel: Funds.Get.ViewModel) {
    2x1x
    90
        fundsView.tableView.update(with: viewModel.fund!)
    2x1x
    91
        fundsView.activityIndicator.stopAnimating()
    2x1x
    92
      }
    2x1x
    93
    26
          completion(result)
    2x1x
    27
        }
    2x1x
    28
    22
      init(from decoder: Decoder) throws {
    24x12x
    23
        let container = try decoder.container(keyedBy: CodingKeys.self)
    24x12x
    24
        name = try container.decode(String.self, forKey: .name)
    24x12x
    25
        data = try? container.decode(String.self, forKey: .data)
    24x12x
    26
      }
    24x12x
    27
    16
      override func setup(with fund: Fund) {
    14x7x
    17
        nameLabel.text = fund.info[tag].name
    14x7x
    18
        dataLabel.text = fund.info[tag].data
    14x7x
    19
      }
    14x7x
    20
    22
      init(from decoder: Decoder) throws {
    6x3x
    23
        let container = try decoder.container(keyedBy: CodingKeys.self)
    6x3x
    24
        fund = try container.decode(Double.self, forKey: .fund)
    6x3x
    25
        cdi = try container.decode(Double.self, forKey: .cdi)
    6x3x
    26
      }
    6x3x
    27
    24
      init(from decoder: Decoder) throws {
    2x1x
    25
        let container = try decoder.container(keyedBy: CodingKeys.self)
    2x1x
    26
        month = try container.decode(MoreInfo.self, forKey: .month)
    2x1x
    27
        year = try container.decode(MoreInfo.self, forKey: .year)
    2x1x
    28
        twelveMonths = try container.decode(MoreInfo.self, forKey: .twelveMonths)
    2x1x
    29
      }
    2x1x
    30
    20
      override func setup(with fund: Fund) {
    2x1x
    21
        infoTitleLabel.text = fund.infoTitle
    2x1x
    22
        monthFundLabel.text = String(format: "%.1f %%", fund.moreInfo.month.fund)
    2x1x
    23
        monthCdiLabel.text = String(format: "%.1f %%", fund.moreInfo.month.cdi)
    2x1x
    24
        yearFundLabel.text = String(format: "%.1f %%", fund.moreInfo.year.fund)
    2x1x
    25
        yearCdiLabel.text = String(format: "%.1f %%", fund.moreInfo.year.cdi)
    2x1x
    26
        twelveMonthsFundLabel.text = String(format: "%.1f %%", fund.moreInfo.twelveMonths.fund)
    2x1x
    27
        twelveMonthsCdiLabel.text = String(format: "%.1f %%", fund.moreInfo.twelveMonths.cdi)
    2x1x
    28
      }
    2x1x
    29
    47
          switch result {
    2x1x
    48
          case .success(let response):
    2x1x
    49
            do {
    2x1x
    50
              let fundsData = try JSONDecoder().decode(FundsData.self, from: response.data)
    2x1x
    51
              completion(Result.success(fundsData))
    2x1x
    52
            } catch let error {
    2x1x
    53
    54
            }
    2x1x
    55
          case .failure(let error):
    2x1x
    56
    57
          }
    2x1x
    58
        }
    2x1x
    59
    29
      func setRist(risk: Int) {
    2x1x
    30
        resetHeightConstraints()
    2x1x
    31
        
    2x1x
    32
        switch risk {
    2x1x
    33
        case 1:
    2x1x
    34
    37
        case 2:
    2x1x
    38
    39
        case 3:
    2x1x
    40
    41
        case 4:
    2x1x
    42
          fourthHeightConstraint.constant = selectedHeightConstraintValue
    2x1x
    43
        case 5:
    2x1x
    44
    47
        default:
    2x1x
    48
    49
        }
    2x1x
    50
        
    2x1x
    51
        configureVImageView(risk: risk)
    2x1x
    52
        
    2x1x
    53
        self.layoutIfNeeded()
    2x1x
    54
      }
    2x1x
    55
    56
      private func configureVImageView(risk: Int) {
    2x1x
    57
        let factor = (UIScreen.main.bounds.width - 70) / 5
    2x1x
    58
        let value = defaultVImageViewLeadingConstraintValue + (CGFloat(risk - 1) * factor)
    2x1x
    59
        vImageViewLeadingConstraint.constant = value
    2x1x
    60
      }
    2x1x
    61
    62
      private func resetHeightConstraints() {
    2x1x
    63
        fisrtBarHeightConstraint.constant = defaultHeightConstraintValue
    2x1x
    64
        secondBarHeightConstraint.constant = defaultHeightConstraintValue
    2x1x
    65
        thirdBarHeightConstraint.constant = defaultHeightConstraintValue
    2x1x
    66
        fourthHeightConstraint.constant = defaultHeightConstraintValue
    2x1x
    67
        lastBarHeightConstraint.constant = defaultHeightConstraintValue
    2x1x
    68
      }
    2x1x
    69
    78
      private func configure() {
    2x1x
    79
        fisrtBar.layer.cornerRadius = fisrtBar.frame.height / 2
    2x1x
    80
        fisrtBar.layer.maskedCorners = [.layerMinXMinYCorner, .layerMinXMaxYCorner]
    2x1x
    81
        
    2x1x
    82
        lastBar.layer.cornerRadius = lastBar.frame.height / 2
    2x1x
    83
        lastBar.layer.maskedCorners = [.layerMaxXMinYCorner, .layerMaxXMaxYCorner]
    2x1x
    84
        vImageViewLeadingConstraint.constant = ((UIScreen.main.bounds.width - 70) / 5) / 2
    2x1x
    85
        defaultVImageViewLeadingConstraintValue = vImageViewLeadingConstraint.constant
    2x1x
    86
      }
    2x1x
    87
    88
      override func awakeFromNib() {
    2x1x
    89
        super.awakeFromNib()
    2x1x
    90
        configure()
    2x1x
    91
      }
    2x1x
    92
    diff --git a/TesteiOS/coverage/index.html b/TesteiOS/coverage/index.html index d87e5a72..d7650040 100644 --- a/TesteiOS/coverage/index.html +++ b/TesteiOS/coverage/index.html @@ -253,6 +253,14 @@

    + + + + + + + + @@ -428,14 +436,6 @@

    - - - - - - - -
    10
    100.00String+Validator.swift6854540
    86.36 UIColor+Hex.swift 356 0
    100.00String+Validator.swift6854540
    From 340855ae368b5f30e99915fbdf7e22df5f9b1b64 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Rocha Aboboreira Date: Thu, 14 Mar 2019 14:25:02 -0300 Subject: [PATCH 20/22] Updating .gitignore folder --- .gitignore | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..4774569d --- /dev/null +++ b/.gitignore @@ -0,0 +1,79 @@ +# Xcode +# +# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore + +## Build generated +build/ +DerivedData/ + +## Various settings +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 +xcuserdata/ + +## Other +*.moved-aside +*.xccheckout +*.xcscmblueprint + +## Obj-C/Swift specific +*.hmap +*.ipa +*.dSYM.zip +*.dSYM + +## Playgrounds +timeline.xctimeline +playground.xcworkspace + +# Swift Package Manager +# +# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies. +# Packages/ +# Package.pins +# Package.resolved +.build/ + +# CocoaPods +# +# We recommend against adding the Pods directory to your .gitignore. However +# you should judge for yourself, the pros and cons are mentioned at: +# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control +# + +Pods/ + +# +# Add this line if you want to avoid checking in source code from the Xcode workspace +*.xcworkspace + +# Carthage +# +# Add this line if you want to avoid checking in source code from Carthage dependencies. + +Carthage/ + +# fastlane +# +# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the +# screenshots whenever they are needed. +# For more information about the recommended setup visit: +# https://docs.fastlane.tools/best-practices/source-control/#source-control + +fastlane/report.xml +fastlane/Preview.html +fastlane/screenshots/**/*.png +fastlane/test_output + +# Code Injection +# +# After new code Injection tools there's a generated folder /iOSInjectionProject +# https://github.com/johnno1962/injectionforxcode + +iOSInjectionProject/.DS_Store From b4b8484acd200585979e4f374794b539ca8c25d6 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Rocha Aboboreira Date: Thu, 14 Mar 2019 14:27:27 -0300 Subject: [PATCH 21/22] Updating .gitignore folder --- TesteiOS/.gitignore | 79 ---- TesteiOS/fastlane/report.xml | 33 ++ TesteiOS/fastlane/test_output/report.html | 419 +++++++++++++++++++++ TesteiOS/fastlane/test_output/report.junit | 36 ++ 4 files changed, 488 insertions(+), 79 deletions(-) delete mode 100644 TesteiOS/.gitignore create mode 100644 TesteiOS/fastlane/report.xml create mode 100644 TesteiOS/fastlane/test_output/report.html create mode 100644 TesteiOS/fastlane/test_output/report.junit diff --git a/TesteiOS/.gitignore b/TesteiOS/.gitignore deleted file mode 100644 index 4774569d..00000000 --- a/TesteiOS/.gitignore +++ /dev/null @@ -1,79 +0,0 @@ -# Xcode -# -# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore - -## Build generated -build/ -DerivedData/ - -## Various settings -*.pbxuser -!default.pbxuser -*.mode1v3 -!default.mode1v3 -*.mode2v3 -!default.mode2v3 -*.perspectivev3 -!default.perspectivev3 -xcuserdata/ - -## Other -*.moved-aside -*.xccheckout -*.xcscmblueprint - -## Obj-C/Swift specific -*.hmap -*.ipa -*.dSYM.zip -*.dSYM - -## Playgrounds -timeline.xctimeline -playground.xcworkspace - -# Swift Package Manager -# -# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies. -# Packages/ -# Package.pins -# Package.resolved -.build/ - -# CocoaPods -# -# We recommend against adding the Pods directory to your .gitignore. However -# you should judge for yourself, the pros and cons are mentioned at: -# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control -# - -Pods/ - -# -# Add this line if you want to avoid checking in source code from the Xcode workspace -*.xcworkspace - -# Carthage -# -# Add this line if you want to avoid checking in source code from Carthage dependencies. - -Carthage/ - -# fastlane -# -# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the -# screenshots whenever they are needed. -# For more information about the recommended setup visit: -# https://docs.fastlane.tools/best-practices/source-control/#source-control - -fastlane/report.xml -fastlane/Preview.html -fastlane/screenshots/**/*.png -fastlane/test_output - -# Code Injection -# -# After new code Injection tools there's a generated folder /iOSInjectionProject -# https://github.com/johnno1962/injectionforxcode - -iOSInjectionProject/.DS_Store diff --git a/TesteiOS/fastlane/report.xml b/TesteiOS/fastlane/report.xml new file mode 100644 index 00000000..45e739f4 --- /dev/null +++ b/TesteiOS/fastlane/report.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/fastlane/test_output/report.html b/TesteiOS/fastlane/test_output/report.html new file mode 100644 index 00000000..0263fb56 --- /dev/null +++ b/TesteiOS/fastlane/test_output/report.html @@ -0,0 +1,419 @@ + + + + + Test Results | xcpretty + + + + +
    +
    +

    Test Results

    +
    +
    +
    +

    19 tests

    + +
    +
    + AllFailingPassing +
    +
    +
    +
    + + +
    +
    +

    TesteiOSTests.ContactDataSourceSpec

    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +

    0.067s

    + +

    a_ContactDataSource__should_have_a_valid_dataSource

    + +

    0.014s

    + +

    a_ContactDataSource__should_have_the_expected_number_of_items

    + +

    0.002s

    + +

    a_ContactDataSource__should_show_only_the_not_hidden_cells

    + +

    0.002s

    + +

    a_ContactDataSource__should_have_be_able_to_update_items

    + +

    0.021s

    + +

    a_ContactDataSource__should_return_the_expected_cell

    + +

    0.003s

    + +

    a_ContactDataSource__should_have_be_able_to_update_values

    + +

    0.002s

    + +

    a_ContactDataSource__should_have_the_expected_number_of_values

    + +

    0.002s

    + +

    a_ContactDataSource__should_have_upadeted_the_value_data

    + +

    0.002s

    + +

    a_ContactDataSource__should_remove_the_value

    +
    +
    + + +
    +
    +

    TesteiOSTests.ContactInteractorSpec

    +
    +
    + + + + + + + + + +
    + +

    0.001s

    + +

    a_ContactInteractor__should_have_a_worker

    +
    +
    + + +
    +
    +

    TesteiOSTests.ContactWorkerSpec

    +
    +
    + + + + + + + + + + + + + + + + +
    + +

    0.004s

    + +

    a_ContactWorker__should_have_a_result_value

    + +

    0.001s

    + +

    a_ContactWorker__should_haven_t_a_error_

    +
    +
    + + +
    +
    +

    TesteiOSTests.FormDataSpec

    +
    +
    + + + + + + + + + +
    + +

    0.001s

    + +

    a_FormData__should_be_able_to_create_a_formData_from_json

    +
    +
    + + +
    +
    +

    TesteiOSTests.FundsInteractorSpec

    +
    +
    + + + + + + + + + + + + + + + + +
    + +

    0.001s

    + +

    a_ContactInteractor__should_have_a_worker

    + +

    0.001s

    + +

    a_ContactInteractor__should_have_an_url

    +
    +
    + + +
    +
    +

    TesteiOSTests.StringValidatorSpec

    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + +
    + +

    0.008s

    + +

    the_String_Validator__should_be_able_to_check_if_it_s_an_valid_email

    + +

    0.003s

    + +

    the_String_Validator__should_be_able_to_check_if_it_s_an_valid_CPF

    + +

    0.003s

    + +

    the_String_Validator__should_be_able_to_check_if_it_s_an_valid_password

    +
    +
    + + +
    +
    +

    TesteiOSUITests.TesteiOSUITests

    +
    +
    + + + + + + + + + +
    + +

    5.570s

    + +

    testExample

    +
    +
    + +
    + + + diff --git a/TesteiOS/fastlane/test_output/report.junit b/TesteiOS/fastlane/test_output/report.junit new file mode 100644 index 00000000..b60485b0 --- /dev/null +++ b/TesteiOS/fastlane/test_output/report.junit @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From e62fb5eac108dfc95acb6551591b99bbe7bb94f6 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Rocha Aboboreira Date: Thu, 14 Mar 2019 15:03:14 -0300 Subject: [PATCH 22/22] TextField bugfix --- .../TextFieldTableViewCell/TextFieldTableViewCell.swift | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.swift index 6f54270c..f32dd96d 100755 --- a/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.swift +++ b/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.swift @@ -59,13 +59,9 @@ final class TextFieldTableViewCell: ContactBaseTableViewCell { } private func checkTextField(_ textField: UITextField) { - guard var text = textField.text else { return } + guard let text = textField.text else { return } switch textField.textContentType! { case .name: - if text.last == " " { - text.removeLast() - textField.text = text - } isTextValid = text.count >= 5 case .telephoneNumber: isTextValid = text.count >= 10

    (C`csk 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 axGu^Di+^-cwl!H^xyk;UG0O%)dj20v|70ov literal 0 HcmV?d00001 diff --git a/20. Din [1926 - Ludwig Goller]/DINPro-Light.otf b/20. Din [1926 - Ludwig Goller]/DINPro-Light.otf new file mode 100755 index 0000000000000000000000000000000000000000..8a7f085abd28e11f37fba052fd493514a3be21ad GIT binary patch literal 88240 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 Mo`yNvtp)A*A0xKva{vGU literal 0 HcmV?d00001 diff --git a/20. Din [1926 - Ludwig Goller]/DINPro-Medium.otf b/20. Din [1926 - Ludwig Goller]/DINPro-Medium.otf new file mode 100755 index 0000000000000000000000000000000000000000..b4608d06d170998c463a5451d552b533149dabef GIT binary patch literal 89060 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 literal 0 HcmV?d00001 diff --git a/TesteiOS/Podfile b/TesteiOS/Podfile new file mode 100644 index 00000000..7c8bbf64 --- /dev/null +++ b/TesteiOS/Podfile @@ -0,0 +1,27 @@ +# Uncomment the next line to define a global platform for your project +# platform :ios, '9.0' + +target 'TesteiOS' do + # Comment the next line if you're not using Swift and don't want to use dynamic frameworks + use_frameworks! + + # Pods for Movs + pod 'Reusable' + pod 'SnapKit', '~> 4.0.0' + pod 'Moya' + pod "JMMaskTextField-Swift" + + target 'TesteiOSTests' do + inherit! :search_paths + # Pods for testing + pod 'Quick' + pod 'Nimble' + end + + #target 'TesteiOSUITests' do + inherit! :search_paths + # Pods for testing + #pod 'iOSSnapshotTestCase' + #end*/ + +end diff --git a/TesteiOS/Podfile.lock b/TesteiOS/Podfile.lock new file mode 100644 index 00000000..39a5d508 --- /dev/null +++ b/TesteiOS/Podfile.lock @@ -0,0 +1,50 @@ +PODS: + - Alamofire (4.8.0) + - JMMaskTextField-Swift (0.1.3) + - Moya (12.0.1): + - Moya/Core (= 12.0.1) + - Moya/Core (12.0.1): + - Alamofire (~> 4.1) + - Result (~> 4.0) + - Nimble (7.3.1) + - Quick (1.3.2) + - Result (4.1.0) + - Reusable (4.0.5): + - Reusable/Storyboard (= 4.0.5) + - Reusable/View (= 4.0.5) + - Reusable/Storyboard (4.0.5) + - Reusable/View (4.0.5) + - SnapKit (4.0.1) + +DEPENDENCIES: + - JMMaskTextField-Swift + - Moya + - Nimble + - Quick + - Reusable + - SnapKit (~> 4.0.0) + +SPEC REPOS: + https://github.com/cocoapods/specs.git: + - Alamofire + - JMMaskTextField-Swift + - Moya + - Nimble + - Quick + - Result + - Reusable + - SnapKit + +SPEC CHECKSUMS: + Alamofire: 3ec537f71edc9804815215393ae2b1a8ea33a844 + JMMaskTextField-Swift: 16aa552605b121285e6c2f0817ab31cea5f4704b + Moya: cf730b3cd9e005401ef37a85143aa141a12fd38f + Nimble: 04f732da099ea4d153122aec8c2a88fd0c7219ae + Quick: 2623cb30d7a7f41ca62f684f679586558f483d46 + Result: bd966fac789cc6c1563440b348ab2598cc24d5c7 + Reusable: 188be1a54ac0691bc66e5bb24ec6eb91971b315b + SnapKit: 0de968a9fec17499afa29683b05d0c775b6d1c29 + +PODFILE CHECKSUM: 150f7556c521bdbfbd19230f37d0c436fabe7925 + +COCOAPODS: 1.6.0 diff --git a/TesteiOS/TesteiOS.xcodeproj/project.pbxproj b/TesteiOS/TesteiOS.xcodeproj/project.pbxproj new file mode 100644 index 00000000..1f187d7a --- /dev/null +++ b/TesteiOS/TesteiOS.xcodeproj/project.pbxproj @@ -0,0 +1,591 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 50; + objects = { + +/* Begin PBXBuildFile section */ + 65EF2626221CC3E500014212 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65EF2625221CC3E500014212 /* AppDelegate.swift */; }; + 65EF2628221CC3E500014212 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65EF2627221CC3E500014212 /* ViewController.swift */; }; + 65EF262B221CC3E500014212 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 65EF2629221CC3E500014212 /* Main.storyboard */; }; + 65EF262D221CC3E700014212 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 65EF262C221CC3E700014212 /* Assets.xcassets */; }; + 65EF2630221CC3E700014212 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 65EF262E221CC3E700014212 /* LaunchScreen.storyboard */; }; + 65EF263B221CC3E700014212 /* TesteiOSTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65EF263A221CC3E700014212 /* TesteiOSTests.swift */; }; + 65EF2646221CC3E700014212 /* TesteiOSUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65EF2645221CC3E700014212 /* TesteiOSUITests.swift */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 65EF2637221CC3E700014212 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 65EF261A221CC3E500014212 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 65EF2621221CC3E500014212; + remoteInfo = TesteiOS; + }; + 65EF2642221CC3E700014212 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 65EF261A221CC3E500014212 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 65EF2621221CC3E500014212; + remoteInfo = TesteiOS; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 65EF2622221CC3E500014212 /* TesteiOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = TesteiOS.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 65EF2625221CC3E500014212 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 65EF2627221CC3E500014212 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; + 65EF262A221CC3E500014212 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 65EF262C221CC3E700014212 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 65EF262F221CC3E700014212 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 65EF2631221CC3E700014212 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 65EF2636221CC3E700014212 /* TesteiOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = TesteiOSTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 65EF263A221CC3E700014212 /* TesteiOSTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TesteiOSTests.swift; sourceTree = ""; }; + 65EF263C221CC3E700014212 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 65EF2641221CC3E700014212 /* TesteiOSUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = TesteiOSUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 65EF2645221CC3E700014212 /* TesteiOSUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TesteiOSUITests.swift; sourceTree = ""; }; + 65EF2647221CC3E700014212 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 65EF261F221CC3E500014212 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 65EF2633221CC3E700014212 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 65EF263E221CC3E700014212 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 65EF2619221CC3E500014212 = { + isa = PBXGroup; + children = ( + 65EF2624221CC3E500014212 /* TesteiOS */, + 65EF2639221CC3E700014212 /* TesteiOSTests */, + 65EF2644221CC3E700014212 /* TesteiOSUITests */, + 65EF2623221CC3E500014212 /* Products */, + ); + sourceTree = ""; + }; + 65EF2623221CC3E500014212 /* Products */ = { + isa = PBXGroup; + children = ( + 65EF2622221CC3E500014212 /* TesteiOS.app */, + 65EF2636221CC3E700014212 /* TesteiOSTests.xctest */, + 65EF2641221CC3E700014212 /* TesteiOSUITests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 65EF2624221CC3E500014212 /* TesteiOS */ = { + isa = PBXGroup; + children = ( + 65EF2625221CC3E500014212 /* AppDelegate.swift */, + 65EF2627221CC3E500014212 /* ViewController.swift */, + 65EF2629221CC3E500014212 /* Main.storyboard */, + 65EF262C221CC3E700014212 /* Assets.xcassets */, + 65EF262E221CC3E700014212 /* LaunchScreen.storyboard */, + 65EF2631221CC3E700014212 /* Info.plist */, + ); + path = TesteiOS; + sourceTree = ""; + }; + 65EF2639221CC3E700014212 /* TesteiOSTests */ = { + isa = PBXGroup; + children = ( + 65EF263A221CC3E700014212 /* TesteiOSTests.swift */, + 65EF263C221CC3E700014212 /* Info.plist */, + ); + path = TesteiOSTests; + sourceTree = ""; + }; + 65EF2644221CC3E700014212 /* TesteiOSUITests */ = { + isa = PBXGroup; + children = ( + 65EF2645221CC3E700014212 /* TesteiOSUITests.swift */, + 65EF2647221CC3E700014212 /* Info.plist */, + ); + path = TesteiOSUITests; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 65EF2621221CC3E500014212 /* TesteiOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = 65EF264A221CC3E700014212 /* Build configuration list for PBXNativeTarget "TesteiOS" */; + buildPhases = ( + 65EF261E221CC3E500014212 /* Sources */, + 65EF261F221CC3E500014212 /* Frameworks */, + 65EF2620221CC3E500014212 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = TesteiOS; + productName = TesteiOS; + productReference = 65EF2622221CC3E500014212 /* TesteiOS.app */; + productType = "com.apple.product-type.application"; + }; + 65EF2635221CC3E700014212 /* TesteiOSTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 65EF264D221CC3E700014212 /* Build configuration list for PBXNativeTarget "TesteiOSTests" */; + buildPhases = ( + 65EF2632221CC3E700014212 /* Sources */, + 65EF2633221CC3E700014212 /* Frameworks */, + 65EF2634221CC3E700014212 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 65EF2638221CC3E700014212 /* PBXTargetDependency */, + ); + name = TesteiOSTests; + productName = TesteiOSTests; + productReference = 65EF2636221CC3E700014212 /* TesteiOSTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 65EF2640221CC3E700014212 /* TesteiOSUITests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 65EF2650221CC3E700014212 /* Build configuration list for PBXNativeTarget "TesteiOSUITests" */; + buildPhases = ( + 65EF263D221CC3E700014212 /* Sources */, + 65EF263E221CC3E700014212 /* Frameworks */, + 65EF263F221CC3E700014212 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 65EF2643221CC3E700014212 /* PBXTargetDependency */, + ); + name = TesteiOSUITests; + productName = TesteiOSUITests; + productReference = 65EF2641221CC3E700014212 /* TesteiOSUITests.xctest */; + productType = "com.apple.product-type.bundle.ui-testing"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 65EF261A221CC3E500014212 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 1010; + LastUpgradeCheck = 1010; + ORGANIZATIONNAME = "Brendoon Ryos"; + TargetAttributes = { + 65EF2621221CC3E500014212 = { + CreatedOnToolsVersion = 10.1; + }; + 65EF2635221CC3E700014212 = { + CreatedOnToolsVersion = 10.1; + TestTargetID = 65EF2621221CC3E500014212; + }; + 65EF2640221CC3E700014212 = { + CreatedOnToolsVersion = 10.1; + TestTargetID = 65EF2621221CC3E500014212; + }; + }; + }; + buildConfigurationList = 65EF261D221CC3E500014212 /* Build configuration list for PBXProject "TesteiOS" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 65EF2619221CC3E500014212; + productRefGroup = 65EF2623221CC3E500014212 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 65EF2621221CC3E500014212 /* TesteiOS */, + 65EF2635221CC3E700014212 /* TesteiOSTests */, + 65EF2640221CC3E700014212 /* TesteiOSUITests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 65EF2620221CC3E500014212 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 65EF2630221CC3E700014212 /* LaunchScreen.storyboard in Resources */, + 65EF262D221CC3E700014212 /* Assets.xcassets in Resources */, + 65EF262B221CC3E500014212 /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 65EF2634221CC3E700014212 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 65EF263F221CC3E700014212 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 65EF261E221CC3E500014212 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 65EF2628221CC3E500014212 /* ViewController.swift in Sources */, + 65EF2626221CC3E500014212 /* AppDelegate.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 65EF2632221CC3E700014212 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 65EF263B221CC3E700014212 /* TesteiOSTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 65EF263D221CC3E700014212 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 65EF2646221CC3E700014212 /* TesteiOSUITests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 65EF2638221CC3E700014212 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 65EF2621221CC3E500014212 /* TesteiOS */; + targetProxy = 65EF2637221CC3E700014212 /* PBXContainerItemProxy */; + }; + 65EF2643221CC3E700014212 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 65EF2621221CC3E500014212 /* TesteiOS */; + targetProxy = 65EF2642221CC3E700014212 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 65EF2629221CC3E500014212 /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 65EF262A221CC3E500014212 /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 65EF262E221CC3E700014212 /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 65EF262F221CC3E700014212 /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 65EF2648221CC3E700014212 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 65EF2649221CC3E700014212 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 65EF264B221CC3E700014212 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 8G633XVRJD; + INFOPLIST_FILE = TesteiOS/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = br.bryos.TesteiOS; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 65EF264C221CC3E700014212 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 8G633XVRJD; + INFOPLIST_FILE = TesteiOS/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = br.bryos.TesteiOS; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; + 65EF264E221CC3E700014212 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 8G633XVRJD; + INFOPLIST_FILE = TesteiOSTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = br.bryos.TesteiOSTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/TesteiOS.app/TesteiOS"; + }; + name = Debug; + }; + 65EF264F221CC3E700014212 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 8G633XVRJD; + INFOPLIST_FILE = TesteiOSTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = br.bryos.TesteiOSTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/TesteiOS.app/TesteiOS"; + }; + name = Release; + }; + 65EF2651221CC3E700014212 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 8G633XVRJD; + INFOPLIST_FILE = TesteiOSUITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = br.bryos.TesteiOSUITests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = TesteiOS; + }; + name = Debug; + }; + 65EF2652221CC3E700014212 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 8G633XVRJD; + INFOPLIST_FILE = TesteiOSUITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = br.bryos.TesteiOSUITests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = TesteiOS; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 65EF261D221CC3E500014212 /* Build configuration list for PBXProject "TesteiOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 65EF2648221CC3E700014212 /* Debug */, + 65EF2649221CC3E700014212 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 65EF264A221CC3E700014212 /* Build configuration list for PBXNativeTarget "TesteiOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 65EF264B221CC3E700014212 /* Debug */, + 65EF264C221CC3E700014212 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 65EF264D221CC3E700014212 /* Build configuration list for PBXNativeTarget "TesteiOSTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 65EF264E221CC3E700014212 /* Debug */, + 65EF264F221CC3E700014212 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 65EF2650221CC3E700014212 /* Build configuration list for PBXNativeTarget "TesteiOSUITests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 65EF2651221CC3E700014212 /* Debug */, + 65EF2652221CC3E700014212 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 65EF261A221CC3E500014212 /* Project object */; +} diff --git a/TesteiOS/TesteiOS.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/TesteiOS/TesteiOS.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 00000000..313ba99d --- /dev/null +++ b/TesteiOS/TesteiOS.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/TesteiOS/TesteiOS.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/TesteiOS/TesteiOS.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/TesteiOS/TesteiOS.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/TesteiOS/TesteiOS.xcodeproj/project.xcworkspace/xcuserdata/bryos.xcuserdatad/UserInterfaceState.xcuserstate b/TesteiOS/TesteiOS.xcodeproj/project.xcworkspace/xcuserdata/bryos.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..4d8ab4a53606372fb6ea7b725d9d8929dfb400d4 GIT binary patch literal 5151 zcma)A33MFQm3_aeySCO+vgO@i*=jG?mfTuet7WUDmT=pWY^$|dvea&Mm!v|i?xw0+ zvTy_+Fg6U3z<2@#0!XsK4&ZSJ*~la@b0&nvnBWD5LrBPC7$BLjoG>8}U|vpT!(fCU@afg?AP{TMbp(-w8I(ey-Eos^j*%N z78+1-xW$=>#peJyFn&T-fd>KRLN?5Um9Pp{!y32(*1|d{05@!eYVg7q*al6o19n0P z!k|DO^uqwCa1{)~7+ee20fp<~2DlOS!%c82+y=M9A^11A8}5e(;0XLXoPck`@wNhPT!Tgf)kK-x$<=^%T^RU}4qGD7x|>sp=BWF&G9M3BG%X^;tX+ME3O zgUYDhiO;EUv^hhOpsr6sI%H6WvXdY~7PZlN)E$tsecrnEm^P@#gCWHm3nhn?Xd)mx zJ#J62x1_Enuf|Rr-R-NTM#RCSsaD5lkq0eN1a@ZotV*zY@XYSHjcF7d9&)RB5eF zDYF)5*Jw&`FdkE*3EdM)sKcl#oZ8TO$Oq>HMvI+*4K$5roHYYn2*u_gO+O1IPzq&G z-f6`)8XQtOtXDJccx`Zx03SF=px}gV`%sb<1?ej zK#zHX^%{mCAa9xprAM65^sUGKCh&YuF@|NY*)Rq+F6_mN^ zN{dT8<@IId0eRK5MwG4zYVAS2P1RKlX1kgg@T<}Oh=MZ#dCg2qmJfj@f3u<^FpSun z;P3_$!GOFBmzrm+Oe1}^Yx1ItR%5Y9Z&354tOn$T7w1fmW=zfBx6idc$6YkGK4)J+ zVHv)c78Z|SPNZ$gP0_21{!EzE!2#D7ZBJ#ep~=o>VD0`8+5Ovk)! zEz^7SC6u8l!3UxEFpR?lOi~vup=C5ZrQ{*_7R)&e55rM7Mhj>mEjo;6nhTHNS!UB> z>h4CBzAzRWwNF*F-Nx5N2+8x$OXQ_ml_B3VYukg8H<`ei7 z{sy1XZM1N;e`B2WAP8=#B|UqEANpV)52v5v5*@ zBoxiqtW2i1MY71;R8o;_>YuuK$O0&yBn!zR+Ctl=lZPxNIhTO*UC1T581-!0YQTAf z&O{b0`m$?d00ZqradgDohc7D8Xi`WO|*;lT=dXG z>i*sysYiQT=x(&vP2IcjkS%cLR;znvS#BgdFOhAAZqh;nm>GMF)XOxXjJ#$l8FH(4 zKV|ATPj-<`(ghB(n{<;N5(vn1v{)=*;mg2llbH((`jx1f)GZH;J5|}6ux1v?Q+9GrM7b2U6rnSW}{H@gV+9bcGDP(S(5tL{xZ+ z3wlf{ZNPGNqIJbIHI;N|DMS?tvuzEcwE@^~*rH)vf(y+0OybZuL3+?Ri;(Ddvnzj}>g@P6vRHp1ocl++cKmE_gd71rjt>*@;g zYHQ2gdG&=gC8ge4Z+%%wLDv*_Ds#EU&gLv%k^4_b^-TMdE1c6r`rNA3S!=FX8;}<@ z`K_H>KF%Vh%Vy8b)MZjvnoculCYH&6OzAL`=7eho)hjI>GyKipfP{ah-N}3>4i^;8 zqVAIg&K}p^(!OACNqNZaE_b`IEHwGIDWgi*N-;%yL(VKIEi136+*q|~bG4_Y)>~J9 zF>1d~|$=~Yp zc`e(uMZ=2L)#R@=TE!-l%gfVRt$6A7*DNb@KG2#n!Xi*amhNJHTGWM%XADXEip#4zoA02iaTLTiM&$ud#QshuE*P zN7y%Q8Mbm;muU-dVA7-v;8jnJ@$v}$Lx>TkK0e!AGbekf7||%{bTzl_Rs8JaD-dQ<#QXj z0&WxM;cB^hZVR`S>*4yjC>Q56F2N0RH*){N-Nt>DyMw!%`v!L(cR%+acbxkXcba>J zdxN{ceZYOpeZu{X`<%D)JTLMNKAoS>=kja$^?W|>;!F8*zLKxvH}lPW7eBy{^85HP z{yP48{zm>L{vdw~e=q+{{sDfRpX8755A(=Al}u+S&OgsTNzND3pusBnXDn{c;qLin-pwD64ZoN!7wExaPUD!eAVF8o^fjqtg+ zMBF5{i(#=}RKmYbx>I^UdPq7deM@>&`i}Hn>HE?Tr5{NzNH0ro zNuN6AIb4oHN3o;CQRdj`=yU`fLykKf-*i0S7v+@P`9r?YfoMWsfIXEljK>pzW E0k|jh7ytkO literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS.xcodeproj/xcuserdata/bryos.xcuserdatad/xcschemes/xcschememanagement.plist b/TesteiOS/TesteiOS.xcodeproj/xcuserdata/bryos.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 00000000..6bf30f00 --- /dev/null +++ b/TesteiOS/TesteiOS.xcodeproj/xcuserdata/bryos.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,14 @@ + + + + + SchemeUserState + + TesteiOS.xcscheme_^#shared#^_ + + orderHint + 0 + + + + diff --git a/TesteiOS/TesteiOS/Commons/ItemsTableViewDataSource.swift b/TesteiOS/TesteiOS/Commons/ItemsTableViewDataSource.swift new file mode 100644 index 00000000..75e494b1 --- /dev/null +++ b/TesteiOS/TesteiOS/Commons/ItemsTableViewDataSource.swift @@ -0,0 +1,33 @@ +// +// ItemsTableViewDataSource.swift +// Movs +// +// Created by Brendoon Ryos on 04/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +protocol ItemsTableViewDataSource: UITableViewDataSource { + associatedtype T + var items:[T] { get } + var tableView: UITableView? { get } + var delegate: UITableViewDelegate? { get } + + init(tableView: UITableView, delegate: UITableViewDelegate) + + func setupTableView() + func registerTableView() +} + +extension ItemsTableViewDataSource { + func setupTableView() { + registerTableView() + self.tableView?.dataSource = self + self.tableView?.delegate = self.delegate + } + + func registerTableView() { + + } +} diff --git a/TesteiOS/TesteiOS/Commons/TabBarViewController.swift b/TesteiOS/TesteiOS/Commons/TabBarViewController.swift new file mode 100644 index 00000000..1bc389b0 --- /dev/null +++ b/TesteiOS/TesteiOS/Commons/TabBarViewController.swift @@ -0,0 +1,45 @@ +// +// TabBarViewController.swift +// TesteiOS +// +// Created by Brendoon Ryos on 21/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit +import SnapKit + +class TabBarViewController: UITabBarController { + + let tabBarView = TabBarView() + + override func viewDidLoad() { + super.viewDidLoad() + setup() + } + + private func setup() { + self.tabBar.isHidden = true + view.addSubview(tabBarView) + setupConstraints() + selectedIndex = tabBarView.button1.tag + tabBarView.button1.isSelected = true + tabBarView.button1.addTarget(self, action: #selector(tabbarItemPressed(_:)), for: .touchUpInside) + tabBarView.button2.addTarget(self, action: #selector(tabbarItemPressed(_:)), for: .touchUpInside) + } + + func setupConstraints() { + tabBarView.snp.makeConstraints { make in + make.bottom.equalToSuperview() + make.height.equalTo(57) + make.leading.equalToSuperview() + make.trailing.equalToSuperview() + } + } + + @objc func tabbarItemPressed(_ sender: UIButton) { + selectedIndex = sender.tag + tabBarView.button1.isSelected = tabBarView.button1.tag == sender.tag + tabBarView.button2.isSelected = tabBarView.button2.tag == sender.tag + } +} diff --git a/TesteiOS/TesteiOS/Models/Cell.swift b/TesteiOS/TesteiOS/Models/Cell.swift new file mode 100644 index 00000000..3914ed90 --- /dev/null +++ b/TesteiOS/TesteiOS/Models/Cell.swift @@ -0,0 +1,9 @@ +// +// Cell.swift +// TesteiOS +// +// Created by Brendoon Ryos on 22/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Foundation diff --git a/TesteiOS/TesteiOS/Models/FormData.swift b/TesteiOS/TesteiOS/Models/FormData.swift new file mode 100644 index 00000000..897a3546 --- /dev/null +++ b/TesteiOS/TesteiOS/Models/FormData.swift @@ -0,0 +1,9 @@ +// +// FormData.swift +// TesteiOS +// +// Created by Brendoon Ryos on 22/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Foundation diff --git a/TesteiOS/TesteiOS/Models/Fund.swift b/TesteiOS/TesteiOS/Models/Fund.swift new file mode 100644 index 00000000..9865b44a --- /dev/null +++ b/TesteiOS/TesteiOS/Models/Fund.swift @@ -0,0 +1,9 @@ +// +// Fund.swift +// TesteiOS +// +// Created by Brendoon Ryos on 23/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Foundation diff --git a/TesteiOS/TesteiOS/Models/FundData.swift b/TesteiOS/TesteiOS/Models/FundData.swift new file mode 100644 index 00000000..d32024e6 --- /dev/null +++ b/TesteiOS/TesteiOS/Models/FundData.swift @@ -0,0 +1,9 @@ +// +// FundData.swift +// TesteiOS +// +// Created by Brendoon Ryos on 22/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Foundation diff --git a/TesteiOS/TesteiOS/Models/Info.swift b/TesteiOS/TesteiOS/Models/Info.swift new file mode 100644 index 00000000..e4b927dc --- /dev/null +++ b/TesteiOS/TesteiOS/Models/Info.swift @@ -0,0 +1,9 @@ +// +// Info.swift +// TesteiOS +// +// Created by Brendoon Ryos on 23/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Foundation diff --git a/TesteiOS/TesteiOS/Models/MoreInfo.swift b/TesteiOS/TesteiOS/Models/MoreInfo.swift new file mode 100644 index 00000000..78df00c3 --- /dev/null +++ b/TesteiOS/TesteiOS/Models/MoreInfo.swift @@ -0,0 +1,9 @@ +// +// MoreInfo.swift +// TesteiOS +// +// Created by Brendoon Ryos on 23/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Foundation diff --git a/TesteiOS/TesteiOS/Models/MoreInfoData.swift b/TesteiOS/TesteiOS/Models/MoreInfoData.swift new file mode 100644 index 00000000..dbe020ce --- /dev/null +++ b/TesteiOS/TesteiOS/Models/MoreInfoData.swift @@ -0,0 +1,16 @@ +// +// MoreInfo.swift +// TesteiOS +// +// Created by Brendoon Ryos on 23/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Foundation + +struct MoreInfo { + let month: + "month": { "fund": 0.3, "CDI": 0.3 }, + "year": { "fund": 13.01, "CDI": 12.08 }, + "12months": { "fund": 17.9, "CDI": 17.6 } +} diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json b/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100755 index 00000000..8d8f4bb4 --- /dev/null +++ b/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "ItunesArtwork@2x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/Contents.json b/TesteiOS/TesteiOS/Resources/Assets.xcassets/Contents.json new file mode 100644 index 00000000..da4a164c --- /dev/null +++ b/TesteiOS/TesteiOS/Resources/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxEmpty.imageset/Contents.json b/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxEmpty.imageset/Contents.json new file mode 100644 index 00000000..660a5e19 --- /dev/null +++ b/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxEmpty.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "checkboxEmpty.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "checkboxEmpty@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "checkboxEmpty@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxEmpty.imageset/checkboxEmpty.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxEmpty.imageset/checkboxEmpty.png new file mode 100644 index 0000000000000000000000000000000000000000..fa3f552b8a6131594cf6c9c25a5dc506e59c927f GIT binary patch literal 226 zcmeAS@N?(olHy`uVBq!ia0vp^!XV7S1|*9D%+3HQ#^NA%Cx&(BWL^R}b39!fLo5W7 zW430A-v0gl{p|n$|I2e9nZ%>Q>$?srSVJinZy}(wZH0vVw-(!Pspg{2tDcQm2#^( z(c5-2W5z=cMzw%S7A?1e6T+%Im-vm?Q*I;$RJyEd-0+DfPx$XGugsR9Fe^m_2U7KoEtqE0t;1&qP5h%C; z5?v~n{>gg?kVSzs5%E&YO6&cb<$Zo0nlUfuR@b#j({zGyjNZd`=W_PXV{VMuqtC-I z{Ki;Q&+w5X$y-%b3ru~k9k#W#b`(X?(W6rUTLNYP+5--z*xT~34M3U#-9C)@g04@4 zFb)Y7Vv!Ka^St*U2!7fCy4A?C?6oM09iX}}C$gA~8APXCK~bODWZ;}k1Y@FevE}Hp zT^Pt@0do5HwUtx%UcAB3A=pzk1(SXjbxa+TIv|bL98<@n4oKrQ$J8;Y1JZcSF?CGp zfHYonOdXRtAdS}?`-@{aFR|((z5M9-219O9<=In!rJzR(Nq-MDix1u*6T#+Olw~<% zDTs3y?W{ecHkk}4O&rH7tbJ^_F5Gp&ut9O<^IGZz;1Ye{!mWnpwbXe6;{ly}rsD7~ XjcBkaz!o~deHsq2q%h<-DR%I;>>o%24o zj3ci^c(=6C?3lFt=N|X+?{75ePkB21;@dL*<(FS_Mp^Gzwd2%&o3JTMIa_KTNKNxv zdfRRBM*%KxF>!|NrnAphRnB{_w=R2@x~EaYz0YB*zv}IJK7rv5^8;Ci>q}N{W%{D+ zdpUW>FCRAcn|a&K4eJFRY^FTk*IpI5G9>QxSF89=r@p%V@pApgZ(pcmYm{7-{Aqz{ z!@jjuPsN!!e*4=L+{!VV&*drF@rkWxgUzcFEAtiC6C&05_gC$>@BK%y`26`xjxp>} z3@a^V81Aw^P}X~{!MAwvmHCT4<@g&bDDJ7VdcpQH=*$n}hiox>rtEwsRq#e&la_-` zO3J#OY%-xv=jvZ{*L3|$zs%fcq&U4!;>o6n9KTtUyUGs4g}bJ?E}b>`;@iM0ChDRy zMW<%@xovk3ygVl)B`jo>rQ}^XSKs2GiIIUTpQV&kiDTHx=YA`4$;20jKhGqw6uueTk<$J~IUzoAU6`-d!uN&+jbwwDe4la)J2+ zrN@&`bi`${el-ku7OQ&0T46r-SEW;P81q`x7T=U!(eGir+FQ^0d;b%oh;y0ql%J){ zG=5=IaVJ4Tw(r`Lt5ZvJr~W$WD0k7WJV-2}Hl;fApZF)<%+}W@tat4w0VXd7Pgg&e IbxsLQ05m=x>i_@% literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxFilled.imageset/Contents.json b/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxFilled.imageset/Contents.json new file mode 100644 index 00000000..b14c979e --- /dev/null +++ b/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxFilled.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "checkboxFilled.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "checkboxFilled@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "checkboxFilled@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxFilled.imageset/checkboxFilled.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxFilled.imageset/checkboxFilled.png new file mode 100644 index 0000000000000000000000000000000000000000..6488e68de14eecd4f8384e03b6f07dff52004d9a GIT binary patch literal 282 zcmeAS@N?(olHy`uVBq!ia0vp^!XV7S1|*9D%+3HQ#^NA%Cx&(BWL^R}S3F%DLo5W7 zW430A-v0gl{p|n$|I2e9nZ%>Q-`1l z7ZE;@tsp)zOW=glgrf?z3V#)fXC$msIO=L(YrvdXvm?=f(d$LvVGsVj7Y(F!64_2| zS+cvekug$Uc!dp7(8A5T-G@yGywn(4Q*Qh literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxFilled.imageset/checkboxFilled@2x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxFilled.imageset/checkboxFilled@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..b7ea965bd8a01150c9dd7adfd0be76f102fefc5b GIT binary patch literal 571 zcmV-B0>u4^P)Px$^+`lQR9Fe^Sg}q5K@?<{F$xVvT(?x5IBj<@gK?#?j#C>W9WA5u!uYPD_f%b?I#XGevEdzy+51H`XE(+ICar%Hs6t)CX>la z+;Nv1KC{`wh2z{Oq%0xL`w!VrK1vADGt%k1qse5*GtuMK`F#Eikv@kv* zoKE{FRFOtSicooC5Q~^BcpS*dK<@tfyq=Pd)4*ldb0oGtme;pl zi#iLz3=qRNIEb1@$oYYm2@ng}w3U)3rYgHuOe?0Ufa-ePV_Gp)1ytAT9@C1cDxkVv z_n1~pRRPuYy2m!5SS+4}k7xihc$N6u?%Nc78iGk;V0vxxyL&s2eDaYih1TG>#@hpANRWM^zBu%s3B z0%8>~-L`R80Eai2E9X#jdAA_g!Bb|w#j&zFU1B6c<#x#&{sYVO^y=lSmG}Sv002ov JPDHLkV1jLg0o4Ei literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxFilled.imageset/checkboxFilled@3x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/checkboxFilled.imageset/checkboxFilled@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6ace6a7b424e472fabf8fbd37fa70089ad1e7fc3 GIT binary patch literal 872 zcmeAS@N?(olHy`uVBq!ia0vp^mLSZ*1|)kVnp=SsV{wqX6T`Z5GA|hzn3X(T978f# z-$vW!3pG#l>$Q>i(9m2x-VzO4t`FW>AE(oY@`|0|FxwXyXL6;oU!F6xuDF|jv zm~>4fP>Jil;pRJ=`!3Jz&aIgKX0loS_q*>h)6(duSQ>M@5?j14_kfJO5~35B!wM} zP468(Y_ieGX1f^gC}7jHYW~TC6LPlS)_&37s-SjM;`@a1Raak4uiAS~d7;s-zjdib zGw(2c^JTc>W;RD?QMSUbTt&x!K^#dnJ)Hit&puP1y2faM5Tlz$zt!Ax(obRwb~@Sp z`C@SI!({Jgw%3CkxBO03^f+^q;o@$E9qnl%M^nEPDDHGk&C~auFq!}GhL=Y_8vE?( zT=sC;)91wup>b<{mdkc2vvkPMmlw_1;8w?IRIlcf@Tu?1%z8at-Fp6}euW=QheJ(x zSvY$w!aBQubWC>bljFTVtL%K3Y0M`m@Km zzQT82wMU)yeD-*?II;7@#4UF$N>9(3^h#wT%abWI;OOm{locDn>b_Lqy^ZRAu{}Q7 zKNoOB7@q7|zWfDi)++-&(L}|QGtZbjKI!tffKuE zPio~C%(zUT8B$LB|ro0gSm>{4?N wf0cUrh`-zuzopr06yrX`2YX_ literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/download.imageset/Contents.json b/TesteiOS/TesteiOS/Resources/Assets.xcassets/download.imageset/Contents.json new file mode 100644 index 00000000..e3e7ef6c --- /dev/null +++ b/TesteiOS/TesteiOS/Resources/Assets.xcassets/download.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "download.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "download@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "download@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/download.imageset/download.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/download.imageset/download.png new file mode 100644 index 0000000000000000000000000000000000000000..4da26871324f7e866d2591749f33974b4e6f24e7 GIT binary patch literal 334 zcmV-U0kQsxP)Px$2uVaiR45g_Qcp_)K@^{vc35ZG*76W)Qc}<%$V1*cM14{}MIfSIKuE!Zqo4_e zhv*>6u5Ppap0FVJ&OMlUZ+?H^y~hZ_#MGE8E9GDkh8GMi6bH)P?m83V;Ur0_9M76K z;UV_Vris=~4BoZAe|y+QUR$jn$5QsJF*U;W?Ri>%qOND#ZEx!Pce$7{8AO`4QJ$Sf z(GOvJQ+>1fQiZ}3-id?JId@NF>Rgiy*yKkLhR@~Ya!t6TE02XSmvJ0-Ai4qOf&4{1 zgyE&OT7BobqdW_O3i==6WSFzRh@#Swhy&;+SfyI?V)2~g<=FFHg>&rIID=AZDAC3{ g$Ob3iFwFV(2Mu^nFe#>bn*aa+07*qoM6N<$f)(4AK>z>% literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/download.imageset/download@2x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/download.imageset/download@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..03332568f311e831b8646081e8c4ac13e04eb170 GIT binary patch literal 590 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 literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/logo.imageset/Contents.json b/TesteiOS/TesteiOS/Resources/Assets.xcassets/logo.imageset/Contents.json new file mode 100644 index 00000000..d1c759f7 --- /dev/null +++ b/TesteiOS/TesteiOS/Resources/Assets.xcassets/logo.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "path2-6-2-path.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "path2-6-2-path@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "path2-6-2-path@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/logo.imageset/path2-6-2-path.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/logo.imageset/path2-6-2-path.png new file mode 100644 index 0000000000000000000000000000000000000000..05667bdc9bd5366655041be40d05b3062bebb530 GIT binary patch literal 4160 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 KMNUMnLSTY+cJ1W= literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/logo.imageset/path2-6-2-path@2x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/logo.imageset/path2-6-2-path@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fb77530ec3a16fa23e02235a792d127300733854 GIT binary patch literal 9871 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 literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/logo.imageset/path2-6-2-path@3x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/logo.imageset/path2-6-2-path@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..b1ad623a531fa81e5808b7bb1c1a1087f63b865c GIT binary patch literal 16504 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 literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/share.imageset/Compartilhar.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/share.imageset/Compartilhar.png new file mode 100644 index 0000000000000000000000000000000000000000..91439b8601f1d92777de80e7756db0f65001d1ea GIT binary patch literal 450 zcmV;z0X_bSP)Px$d`Uz>R5%gsRIyIOKn(R=4vB;TwlFZ#0r(0AKA{5(GXlW`3kwJ#K7f@Gwu=9N zA7E%QfP_#~fj~r6hSEEpQ_@7rr6@4#1v+z0N!e1`|asW6E6-y?{Rr0yjQ^ s5!SN)2%w=vl9Y$2Px&JV``BR9Fe^SkFrpQ53#+X5ItyNm}|!utn-qOt6Ro+vLJ93Ks>rtah~xS_$o< zAB&(xEpid~FVvzI>ZXMl?JA0VFNt*X62(HpX6DW9JA*gojWhG!{7@lg;BwFX&N<)t z=FFWR3}Xo#B~`sV&-qf3^F^`~po~ueA=eRDk82g77>cbG=j9JAY+h0BqTqcm zGB1o`DaXqfgoP4@vwy^dxZ@ zSig}N%@B9Wxel`H7N%+1bBI~S5RCJQ?xCS8g;ME{A9;Rxc|F(OegW|>DTZ>1!!JG- zF2=^x#g2{!HwhlBpX39UY`4FZ%jHFXf7Xrf__~&`C;~J}DrPc+%rwWbaR<=yeI7&t zz9P?LZWeTXTSq+Nw?W^s**@Jco`Js?PE6H@ebX@Zfoa->QUo~ymGR-MC>|o4( z$024I^!&Qy7Z8LShVc;ovjP0ryzD49%~5C?Q7V4ZEB*cM`5LBNV5mP`TPm!`J1C#)P%TXXYmzP7eRU2$rU+33jPd^V|67ug1|A2<*Clwe{Z}!X~(?#;*X{s^Y4wfC+(PbU;NQTI)<---?D_$mROWI8DWa@6oM-DfE`7M zJIDUCc7tKp-IdDZLSy4=%Inn?_{XN&TGl-eN*www|(zOmzQ>vy7cI*1b YzwD0%t_-8KrT_o{07*qoM6N<$f;9oNX8-^I literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/share.imageset/Compartilhar@3x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/share.imageset/Compartilhar@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..27eb73c7e914070eb092bad0b45d731dd4a0b43a GIT binary patch literal 1372 zcmV-i1*7_jP)Px)7D+@wRCodHTTP4T6KSB)fgrGM7axMm?)5d z5>3_v!5BqRNVsTBG%+!12p1($j(QqJqiA+^oF&Quh|3TlGSfZPes9<&z5TO2J>6Bh zq&hpPe*f=#uezqXXWK9o9Sz&wSYzzFX~wS6_=jyjqA0Y%R0Nta%_lq|zVr-ZnI8{< zZ!pfcRXUxoe4eb4%W~}d1;8hT5GR5FNk%mBN$%^)8l{4)o95F1@)?pJNB}TEa?(qX z7s8eXa@sU^0Kg~6(n`tHB0bVi(d%0*1!Rr$T}+4%FeQ8PPkN+Jc6}pR#IUC%7O{_r zW;oyLdEPN3o@r4deX=9_h|`>mLP1V*{+jT-xANpf_T(pzkFaf~YKM)3G^W}ibmHY8 zFV8t+?2SnwUdiLbw=JZTm}2jy0Q|-e7#vaI(?L3TPX5Smkk{{dZjk8UVN9_X6BA%; zKR3-oadKvw2hp+D<7C7mzwrNdlDt=bE|7KGei#+s9TyB;@(jjy-YdkLadMxBDLKU% zd)24IBmD2F+4lM{KMS1;B);F)Bm{E}&YuOq;|cNw?1~TvQIP!$m_b5_bwM)gc`lF^ z=hbe<0#QM?IOp3ZJ002x^n6gqF?IKZ4Z8k0{~^rJLgxZG<~V1N*ggboQ&1#?t*E&L zo9+`?lJIpgb>BgOcEC?_-d~ISPdd(zzRrI(HbzI6)dmNLlMEl!Z$Obgg&gz#&Kh%bh4{-gT?@%Tfs>`wIn zE)p8RE}{X?(US*WFO}{Fz)$-HNZwKDry@}bV047o-VZu&vd|AMPesBHY6J*LbA8R)0ht-?^h~(ixVV9H3(w!-$n}!rOs|);8&y z{ONW8vj~PW_%}Kh`-;&bMoUY?*eUks$Vlm*^XGp>=3`4M`}AxvRcpq?#6#WHXvVfT z2-p1_W~1q*OG5*|>ZWaP8*jIN?tV{J9H(lR%j@te(fbgd!>6+}pe)RCKJQsvgGY>^ eq4fliH2wvQ$BT}*;Cdtg0000{lXc%N0!9skr>mdKI;Vst0NR(f AuK)l5 literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemNormal.imageset/Rectangle@2x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemNormal.imageset/Rectangle@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..1bd7c9d89553b601c64bfec15f313bf75599f470 GIT binary patch literal 1225 zcmeAS@N?(olHy`uVBq!ia0y~yU@QZ&i#XVTr2CFv$AJ`Mage(c!@6@aFBuqEnmt_{ zLn;{GUfIZbz(IidVEy;_g|jzS-|#pXqbE?jpjd{HiG@Qz!J&ZxjS;}|uKIm=lMzUE zgXV{vYnQq}N>()_t}iMA3QC9?yjk2I*bNj6J+L9%(h_J+50}KZi^o^EHZU}5CEQp& z2V}S#E6?v2$ybyd8XSN+LjC%H8WuCP)qXL|5>#+l0MwzS?he!t$avW9m&8_}Z2_!2 z)l(-cJ2V_v(U2%#+Y<$}Z3R=?-cu)m8WKVdZ0NUh(*@cV!gx6D=@Xy^1E6K@@{7er koi`eKqiJu@Wexi)TbZ_h(PO?2ESnfSUHx3vIVCg!0L}!R;{X5v literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemNormal.imageset/Rectangle@3x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemNormal.imageset/Rectangle@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..a87c4a2ba589de9b76352b0ef52dd527a5605fe7 GIT binary patch literal 2310 zcmeAS@N?(olHy`uVBq!ia0y~yU@`=v{i>#F)G8vG8zV>VF1c*qv>EY3`WzzXuU96 fH{xm^JYbic!mO&m8ubP0l+XkKePa2% literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemSelected.imageset/Contents.json b/TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemSelected.imageset/Contents.json new file mode 100644 index 00000000..15f05dce --- /dev/null +++ b/TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemSelected.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "Rectangle 3.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "Rectangle 3@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "Rectangle 3@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemSelected.imageset/Rectangle 3.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemSelected.imageset/Rectangle 3.png new file mode 100644 index 0000000000000000000000000000000000000000..5e31a34da2d897bfabe3154df9f063c04f2309f9 GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^dw|%IgAGXbm^dB)QjEnx?oJHr&dIz4vJE|5978G? z-(F!9Y%maDF`V}(UO{O?09#JZs|VkV=T@i5&tsa%l%BGDCf6U`a7h>idN literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemSelected.imageset/Rectangle 3@2x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/tabBarItemSelected.imageset/Rectangle 3@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..c08fc9ba825e317ecec86cc253945abb4f7eeb91 GIT binary patch literal 1072 zcmeAS@N?(olHy`uVBq!ia0y~yV5|VLi#XVTWMtu~5+KD`9OUlAuo$ z4j~5)xOaTlbb{_UZ%LjwaN6AMQR>$wlNZRdj7 z0tz3vB}}@YGEZ1}X4SOtDL}Y9QnFCiCnh#uJ12Gl2>1GCF;<{4Af7|i0r^=aHFEwC zlWUmRdgY+1DjA#A Bool { + + self.window = UIWindow(frame: UIScreen.main.bounds) + self.window?.backgroundColor = UIColor.white + + let tabController = TabBarViewController() + + + self.window?.rootViewController = tabController + + self.window?.makeKeyAndVisible() + + return true + } + +} + diff --git a/TesteiOS/TesteiOS/Supporting Files/Base.lproj/LaunchScreen.storyboard b/TesteiOS/TesteiOS/Supporting Files/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 00000000..bfa36129 --- /dev/null +++ b/TesteiOS/TesteiOS/Supporting Files/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS/Supporting Files/Extensions/String+Validator.swift b/TesteiOS/TesteiOS/Supporting Files/Extensions/String+Validator.swift new file mode 100644 index 00000000..6bbacac5 --- /dev/null +++ b/TesteiOS/TesteiOS/Supporting Files/Extensions/String+Validator.swift @@ -0,0 +1,68 @@ +// +// String+Validator.swift +// TesteiOSv2 +// +// Created by Brendoon Ryos on 11/01/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Foundation + +extension String { + var isValidCPF: Bool { + + let numbers = self.compactMap({Int(String($0))}) + guard numbers.count == 11 && Set(numbers).count != 1 else { return false } + let sum1 = 11 - ( numbers[0] * 10 + + numbers[1] * 9 + + numbers[2] * 8 + + numbers[3] * 7 + + numbers[4] * 6 + + numbers[5] * 5 + + numbers[6] * 4 + + numbers[7] * 3 + + numbers[8] * 2 ) % 11 + let dv1 = sum1 > 9 ? 0 : sum1 + let sum2 = 11 - ( numbers[0] * 11 + + numbers[1] * 10 + + numbers[2] * 9 + + numbers[3] * 8 + + numbers[4] * 7 + + numbers[5] * 6 + + numbers[6] * 5 + + numbers[7] * 4 + + numbers[8] * 3 + + numbers[9] * 2 ) % 11 + let dv2 = sum2 > 9 ? 0 : sum2 + return dv1 == numbers[9] && dv2 == numbers[10] + } + + var isValidEmail: Bool { + let emailRegEx = "[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,64}" + + let emailTest = NSPredicate(format:"SELF MATCHES %@", emailRegEx) + return emailTest.evaluate(with: self) + } + + func isValidPassword() -> Bool { + let capitalLetterRegEx = ".*[A-Z]+.*" + let texttest = NSPredicate(format:"SELF MATCHES %@", capitalLetterRegEx) + if !texttest.evaluate(with: self) { + return false + } + + let specialCharacterRegEx = ".*[!@#$%&*():_+=/?´~;{}*ºª|\\,(){}^\\[\\]\"]+.*" + let texttest2 = NSPredicate(format:"SELF MATCHES %@", specialCharacterRegEx) + if !texttest2.evaluate(with: self) { + return false + } + + let alphanumericLetterRegEx = ".*[0-9]+.*" + let texttest3 = NSPredicate(format:"SELF MATCHES %@", alphanumericLetterRegEx) + if !texttest3.evaluate(with: self) { + return false + } + + return true + } +} diff --git a/TesteiOS/TesteiOS/Supporting Files/Extensions/UIColor+Hex.swift b/TesteiOS/TesteiOS/Supporting Files/Extensions/UIColor+Hex.swift new file mode 100644 index 00000000..27016718 --- /dev/null +++ b/TesteiOS/TesteiOS/Supporting Files/Extensions/UIColor+Hex.swift @@ -0,0 +1,35 @@ +// +// UIColor+Hex.swift +// Movs +// +// Created by Brendoon Ryos on 25/01/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +extension UIColor { + static func rgb(red: CGFloat, green: CGFloat, blue: CGFloat) -> UIColor { + return UIColor(red: red/255, green: green/255, blue: blue/255, alpha: 1) + } + + public convenience init(hex: String, alpha: CGFloat = 1) { + let scanner = Scanner(string: hex) + scanner.scanLocation = 0 + + var rgbValue: UInt64 = 0 + + scanner.scanHexInt64(&rgbValue) + + let r = (rgbValue & 0xff0000) >> 16 + let g = (rgbValue & 0xff00) >> 8 + let b = rgbValue & 0xff + + self.init( + red: CGFloat(r) / 0xff, + green: CGFloat(g) / 0xff, + blue: CGFloat(b) / 0xff, + alpha: alpha + ) + } +} diff --git a/TesteiOS/TesteiOS/Supporting Files/Info.plist b/TesteiOS/TesteiOS/Supporting Files/Info.plist new file mode 100644 index 00000000..0d879866 --- /dev/null +++ b/TesteiOS/TesteiOS/Supporting Files/Info.plist @@ -0,0 +1,53 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + LSRequiresIPhoneOS + + UIAppFonts + + DINEngschriftStd.otf + DINMittelschriftStd.otf + DINNeuzeitGroteskStd-BdCond.otf + DINNeuzeitGroteskStd-Light.otf + DINPro-Black.otf + DINPro-Bold.otf + DINPro-Light.otf + DINPro-Medium.otf + DINPro-Regular.otf + + UILaunchStoryboardName + LaunchScreen + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/TesteiOS/TesteiOS/UI/Appearance/AppearanceProxyHelper.swift b/TesteiOS/TesteiOS/UI/Appearance/AppearanceProxyHelper.swift new file mode 100644 index 00000000..6ef55b99 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Appearance/AppearanceProxyHelper.swift @@ -0,0 +1,29 @@ +// +// AppearanceProxyHelper.swift +// Movs +// +// Created by Brendoon Ryos on 24/01/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +struct AppearanceProxyHelper { + + private init() {} + + static let collectionViewSpacing: CGFloat = 15 + + static func customizeTabBar(){ + let tabBarAppearance = UITabBar.appearance() + tabBarAppearance.tintColor = ColorPalette.black + tabBarAppearance.barTintColor = ColorPalette.white + } + + static func customizeNavigationBar(){ + let navBarAppearance = UINavigationBar.appearance() + navBarAppearance.tintColor = ColorPalette.black + navBarAppearance.barTintColor = ColorPalette.white + navBarAppearance.prefersLargeTitles = true + } +} diff --git a/TesteiOS/TesteiOS/UI/Cells/Contact/CheckboxTableViewCell/CheckboxTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Contact/CheckboxTableViewCell/CheckboxTableViewCell.swift new file mode 100755 index 00000000..aa871716 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Contact/CheckboxTableViewCell/CheckboxTableViewCell.swift @@ -0,0 +1,33 @@ +// +// CheckboxTableViewCell.swift +// TesteiOS +// +// Created by Brendoon Ryos on 22/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +final class CheckboxTableViewCell: ContactBaseTableViewCell { + + @IBOutlet weak var checkboxButton: UIButton! + + override func setup(with item: Cell) { + super.setup(with: item) + checkboxButton.isSelected = false + checkboxButton.setImage(UIImage(named: "checkboxEmpty"), for: .normal) + checkboxButton.setTitle(item.message, for: .normal) + callback?((item.message, false)) + } + + @IBAction func checkboxButtonPressed(_ sender: UIButton) { + if sender.isSelected { + sender.isSelected = false + sender.setImage(UIImage(named: "checkboxEmpty"), for: .normal) + } else { + sender.isSelected = true + sender.setImage(UIImage(named: "checkboxFilled"), for: .normal) + } + callback?((sender.title(for: .normal)!, sender.isSelected)) + } +} diff --git a/TesteiOS/TesteiOS/UI/Cells/Contact/CheckboxTableViewCell/CheckboxTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Contact/CheckboxTableViewCell/CheckboxTableViewCell.xib new file mode 100755 index 00000000..872daa79 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Contact/CheckboxTableViewCell/CheckboxTableViewCell.xib @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + DINPro-Regular + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS/UI/Cells/Contact/ContactBaseTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Contact/ContactBaseTableViewCell.swift new file mode 100644 index 00000000..07f24606 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Contact/ContactBaseTableViewCell.swift @@ -0,0 +1,28 @@ +// +// ContactBaseTableViewCell.swift +// TesteiOS +// +// Created by Brendoon Ryos on 22/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit +import Reusable + +class ContactBaseTableViewCell: UITableViewCell, NibReusable { + + @IBOutlet weak var topSpacingConstraint: NSLayoutConstraint! + + var callback: (((String, Any)) -> ())? + + override func awakeFromNib() { + super.awakeFromNib() + } + + func setup(with item: Cell) { + topSpacingConstraint.constant = CGFloat(item.topSpacing) + self.layoutIfNeeded() + } + + func enableAction(_ value: Bool) {} +} diff --git a/TesteiOS/TesteiOS/UI/Cells/Contact/SendTableViewCell/SendTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Contact/SendTableViewCell/SendTableViewCell.swift new file mode 100755 index 00000000..2fc29ef9 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Contact/SendTableViewCell/SendTableViewCell.swift @@ -0,0 +1,42 @@ +// +// SendTableViewCell.swift +// TesteiOS +// +// Created by Brendoon Ryos on 22/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +final class SendTableViewCell: ContactBaseTableViewCell { + + @IBOutlet weak var sendButton: UIButton! + + override func awakeFromNib() { + super.awakeFromNib() + sendButton.layer.cornerRadius = sendButton.frame.height / 2 + } + + override func setup(with item: Cell) { + super.setup(with: item) + sendButton.isUserInteractionEnabled = false + sendButton.transform = CGAffineTransform.identity + sendButton.backgroundColor = ColorPalette.middleRedPurple + sendButton.setTitle(item.message, for: .normal) + sendButton.addTarget(self, action: #selector(sendButtonPressed(_:)), for: .touchUpInside) + } + + override func enableAction(_ value: Bool) { + sendButton.backgroundColor = value ? ColorPalette.rossoCorsa : ColorPalette.middleRedPurple + sendButton.isUserInteractionEnabled = value + } + + @objc func sendButtonPressed(_ sender: UIButton) { + UIView.animate(withDuration: 0.2, animations: { + sender.backgroundColor = ColorPalette.middleRedPurple + sender.transform = CGAffineTransform(scaleX: 0.90, y: 0.83) + }) { completed in + self.sendAction?() + } + } +} diff --git a/TesteiOS/TesteiOS/UI/Cells/Contact/SendTableViewCell/SendTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Contact/SendTableViewCell/SendTableViewCell.xib new file mode 100755 index 00000000..eb22ca5a --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Contact/SendTableViewCell/SendTableViewCell.xib @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + DINPro-Medium + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.swift new file mode 100755 index 00000000..f32dd96d --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.swift @@ -0,0 +1,107 @@ +// +// TextFieldTableViewCell.swift +// TesteiOS +// +// Created by Brendoon Ryos on 22/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit +import JMMaskTextField_Swift + +final class TextFieldTableViewCell: ContactBaseTableViewCell { + + @IBOutlet weak var titleLabel: UILabel! + @IBOutlet var textField: UITextField! + @IBOutlet weak var lineView: UIView! + + var isTextValid: Bool = false { + didSet { + lineView.backgroundColor = isTextValid ? ColorPalette.green : ColorPalette.red + if isTextValid { + callback?((titleLabel.text!, textField.text!)) + } + } + } + + override func awakeFromNib() { + super.awakeFromNib() + textField.delegate = self + textField.addTarget(self, action: #selector(resizeTitleLabel), for: .editingDidBegin) + textField.addTarget(self, action: #selector(textFieldDidChange(_:)), for: .editingChanged) + } + + @objc func resizeTitleLabel() { + titleLabel.font = UIFont(name: FontNames.regular, size: 11) + if textField.text!.isEmpty { + lineView.backgroundColor = ColorPalette.silverChalice + } + } + + @objc func textFieldDidChange(_ textField: UITextField) { + checkTextField(textField) + } + + override func setup(with item: Cell) { + super.setup(with: item) + if item.message == "Telefone" { + textField.textContentType = UITextContentType.telephoneNumber + textField.keyboardType = .numberPad + } else { + let type = TypeField(rawValue: item.typefield ?? 0) + textField.textContentType = type?.contentType ?? .name + textField.keyboardType = type?.keyboardType ?? .default + } + titleLabel.text = item.message + textField.text = .none + lineView.backgroundColor = ColorPalette.isabelline + titleLabel.font = UIFont(name: FontNames.regular, size: 16) + } + + private func checkTextField(_ textField: UITextField) { + guard let text = textField.text else { return } + switch textField.textContentType! { + case .name: + isTextValid = text.count >= 5 + case .telephoneNumber: + isTextValid = text.count >= 10 + default: + let newText = text.replacingOccurrences(of: " ", with: "") + textField.text = newText + isTextValid = newText.isValidEmail + } + } +} + +extension TextFieldTableViewCell: UITextFieldDelegate { + func textFieldShouldReturn(_ textField: UITextField) -> Bool { + textField.resignFirstResponder() + return true + } + + func textFieldShouldClear(_ textField: UITextField) -> Bool { + callback?((self.titleLabel.text!, "")) + return true + } + + func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool { + if textField.textContentType == .telephoneNumber { + guard let text = textField.text as NSString? else { return true } + let newText = text.replacingCharacters(in: range, with: string) + + let maskTextField = textField as! JMMaskTextField + maskTextField.maskString = "(00) 00000-0000" + guard let unmaskedText = maskTextField.stringMask?.unmask(string: newText) else { return true } + maskTextField.text = unmaskedText + if unmaskedText.count >= 11 { + maskTextField.maskString = "(00) 00000-0000" + _ = textFieldShouldReturn(textField) + } else { + maskTextField.maskString = "(00) 0000-0000" + } + + textFieldDidChange(maskTextField) + } + return true + } +} diff --git a/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.xib new file mode 100755 index 00000000..e8fe5b8c --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Contact/TextFieldTableViewCell/TextFieldTableViewCell.xib @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + DINPro-Medium + + + DINPro-Regular + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS/UI/Cells/Contact/TextTableViewCell/TextTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Contact/TextTableViewCell/TextTableViewCell.swift new file mode 100755 index 00000000..149c2430 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Contact/TextTableViewCell/TextTableViewCell.swift @@ -0,0 +1,23 @@ +// +// TextTableViewCell.swift +// TesteiOS +// +// Created by Brendoon Ryos on 22/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +final class TextTableViewCell: ContactBaseTableViewCell { + + @IBOutlet weak var messageLabel: UILabel! + + override func awakeFromNib() { + super.awakeFromNib() + } + + override func setup(with item: Cell) { + super.setup(with: item) + messageLabel.text = item.message + } +} diff --git a/TesteiOS/TesteiOS/UI/Cells/Contact/TextTableViewCell/TextTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Contact/TextTableViewCell/TextTableViewCell.xib new file mode 100755 index 00000000..8018043d --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Contact/TextTableViewCell/TextTableViewCell.xib @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + DINPro-Regular + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.swift new file mode 100755 index 00000000..69377cfc --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.swift @@ -0,0 +1,27 @@ +// +// InfoDownTableViewCell.swift +// TesteiOS +// +// Created by Brendoon Ryos on 22/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class InfoDownTableViewCell: FundBaseTableViewCell { + + @IBOutlet weak var nameLabel: UILabel! + @IBOutlet weak var downloadButton: UIButton! + + override func awakeFromNib() { + super.awakeFromNib() + } + + override func setup(with fund: Fund) { + nameLabel.text = fund.downInfo[tag].name + } + + @IBAction func downloadData(_ sender: UIButton){ + UIApplication.shared.openURL(NSURL(string: "http://www.google.com")! as URL) + } +} diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.xib new file mode 100755 index 00000000..32df4a93 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/DownInfoTableViewCell/DownInfoTableViewCell.xib @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + DINPro-Regular + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/FundBaseTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Fund/FundBaseTableViewCell.swift new file mode 100644 index 00000000..f6810d9f --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/FundBaseTableViewCell.swift @@ -0,0 +1,24 @@ +// +// FundBaseTableViewCell.swift +// TesteiOS +// +// Created by Brendoon Ryos on 24/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class FundBaseTableViewCell: UITableViewCell { + + override func awakeFromNib() { + super.awakeFromNib() + // Initialization code + } + + override func setSelected(_ selected: Bool, animated: Bool) { + super.setSelected(selected, animated: animated) + + // Configure the view for the selected state + } + +} diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.swift new file mode 100755 index 00000000..3bc3c87c --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.swift @@ -0,0 +1,31 @@ +// +// FundHeaderTableViewCell.swift +// TesteiOS +// +// Created by Brendoon Ryos on 22/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class FundHeaderTableViewCell: FundBaseTableViewCell { + + @IBOutlet weak var titleLabel: UILabel! + @IBOutlet weak var fundNameLabel: UILabel! + @IBOutlet weak var whatIsLabel: UILabel! + @IBOutlet weak var definitionLabel: UILabel! + @IBOutlet weak var riskTitleLabel: UILabel! + @IBOutlet weak var riskView: RiskView! + @IBOutlet weak var infoTitleLabel: UILabel! + + override func setup(with fund: Fund) { + titleLabel.text = fund.title + fundNameLabel.text = fund.fundName + whatIsLabel.text = fund.whatIs + definitionLabel.text = fund.definition + riskTitleLabel.text = fund.riskTitle + riskView.setRist(risk: fund.risk) + infoTitleLabel.text = fund.infoTitle + } + +} diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.xib new file mode 100755 index 00000000..69e33866 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/FundHeaderTableViewCell/FundHeaderTableViewCell.xib @@ -0,0 +1,262 @@ + + + + + + + + + + + + + + DINPro-Light + + + DINPro-Medium + + + DINPro-Regular + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell.swift new file mode 100755 index 00000000..f9447087 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell.swift @@ -0,0 +1,27 @@ +// +// InfoTableViewCell.swift +// TesteiOS +// +// Created by Brendoon Ryos on 22/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class InfoTableViewCell: UITableViewCell { + + @IBOutlet weak var labelName: UILabel! + @IBOutlet weak var labelData: UILabel! + + override func awakeFromNib() { + super.awakeFromNib() + // Initialization code + } + + override func setSelected(_ selected: Bool, animated: Bool) { + super.setSelected(selected, animated: animated) + + // Configure the view for the selected state + } + +} diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewCell.xib new file mode 100755 index 00000000..9e9862e1 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/InfoTableViewCell/InfoTableViewCell.xib @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.swift new file mode 100644 index 00000000..b021d4af --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.swift @@ -0,0 +1,24 @@ +// +// InvestTableViewCell.swift +// TesteiOS +// +// Created by Brendoon Ryos on 24/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class InvestTableViewCell: UITableViewCell { + + override func awakeFromNib() { + super.awakeFromNib() + // Initialization code + } + + override func setSelected(_ selected: Bool, animated: Bool) { + super.setSelected(selected, animated: animated) + + // Configure the view for the selected state + } + +} diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.xib new file mode 100644 index 00000000..5dfb2962 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/InvestTableViewCell/InvestTableViewCell.xib @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.swift b/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.swift new file mode 100644 index 00000000..81269067 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.swift @@ -0,0 +1,16 @@ +// +// MoreInfoTableViewCell.swift +// TesteiOS +// +// Created by Brendoon Ryos on 24/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class MoreInfoTableViewCell: FundBaseTableViewCell { + + override func awakeFromNib() { + super.awakeFromNib() + } +} diff --git a/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.xib b/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.xib new file mode 100644 index 00000000..80a28506 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Cells/Fund/MoreInfoTableViewCell/MoreInfoTableViewCell.xib @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS/UI/Views/Contact/ContactTableView.swift b/TesteiOS/TesteiOS/UI/Views/Contact/ContactTableView.swift new file mode 100644 index 00000000..72235cf0 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Views/Contact/ContactTableView.swift @@ -0,0 +1,39 @@ +// +// ContactTableView.swift +// TesteiOS +// +// Created by Brendoon Ryos on 21/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class ContactTableView: UITableView { + + fileprivate var customDataSource: ContactDataSource? + fileprivate var customDelegate: ContactDelegate? + convenience init() { + self.init(frame: .zero, style: .plain) + } + + override init(frame: CGRect, style: UITableView.Style) { + super.init(frame: frame, style: style) + customDelegate = ContactDelegate(tableView: self) + customDataSource = ContactDataSource(tableView: self, delegate: customDelegate!) + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } +} + +extension ContactTableView { + func update(with items: [Cell]) { + customDelegate?.update(with: items) + customDataSource?.update(with: items) + } + + func setSendHandler(_ handler: @escaping ([Value]) -> ()) { + customDataSource?.sendAction = handler + } +} diff --git a/TesteiOS/TesteiOS/UI/Views/Contact/ContactView.swift b/TesteiOS/TesteiOS/UI/Views/Contact/ContactView.swift new file mode 100644 index 00000000..d2c285b0 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Views/Contact/ContactView.swift @@ -0,0 +1,76 @@ +// +// ContactView.swift +// TesteiOS +// +// Created by Brendoon Ryos on 21/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class ContactView: UIView { + lazy var activityIndicator: UIActivityIndicatorView = { + let view = UIActivityIndicatorView(style: .whiteLarge) + view.color = ColorPalette.black + return view + }() + + lazy var tableView: ContactTableView = { + let view = ContactTableView() + view.separatorStyle = .none + view.alwaysBounceVertical = false + return view + }() + + private lazy var feedbackView: FeedbackView = { + let view = FeedbackView.loadFromNib() + view.alpha = 0 + return view + }() + + override init(frame: CGRect) { + super.init(frame: frame) + setupViewCode() + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + func showFeedbackView() { + UIView.animate(withDuration: 0.2) { + self.feedbackView.alpha = 1 + } + } +} + +extension ContactView: ViewCode { + func buildViewHierarchy() { + addSubview(tableView) + addSubview(feedbackView) + addSubview(activityIndicator) + } + + func setupConstraints() { + tableView.snp.makeConstraints { make in + make.top.equalToSuperview() + make.leading.equalToSuperview() + make.trailing.equalToSuperview() + make.bottom.equalTo(-55) + } + + feedbackView.snp.makeConstraints { make in + make.top.equalToSuperview() + make.leading.equalToSuperview() + make.trailing.equalToSuperview() + make.bottom.equalTo(-55) + } + + activityIndicator.snp.makeConstraints { make in + make.top.equalToSuperview() + make.leading.equalToSuperview() + make.trailing.equalToSuperview() + make.bottom.equalTo(-55) + } + } +} diff --git a/TesteiOS/TesteiOS/UI/Views/Contact/FeedbackView/FeedbackView.swift b/TesteiOS/TesteiOS/UI/Views/Contact/FeedbackView/FeedbackView.swift new file mode 100644 index 00000000..3a4fe94a --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Views/Contact/FeedbackView/FeedbackView.swift @@ -0,0 +1,22 @@ +// +// FeedbackView.swift +// TesteiOS +// +// Created by Brendoon Ryos on 23/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class FeedbackView: UIView { + class func loadFromNib() -> FeedbackView { + let nib = UINib(nibName: String(describing: self), bundle: .main) + return nib.instantiate(withOwner: nil, options: nil).first as! FeedbackView + } + + @IBAction func sendButtonPressed(_ sender: UIButton) { + UIView.animate(withDuration: 0.2) { + self.alpha = 0 + } + } +} diff --git a/TesteiOS/TesteiOS/UI/Views/Contact/FeedbackView/FeedbackView.xib b/TesteiOS/TesteiOS/UI/Views/Contact/FeedbackView/FeedbackView.xib new file mode 100644 index 00000000..911418ef --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Views/Contact/FeedbackView/FeedbackView.xib @@ -0,0 +1,195 @@ + + + + + + + + + + + + + + DINPro-Medium + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TesteiOS/TesteiOS/UI/Views/Funds/FundsTableView.swift b/TesteiOS/TesteiOS/UI/Views/Funds/FundsTableView.swift new file mode 100644 index 00000000..d6df12ff --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Views/Funds/FundsTableView.swift @@ -0,0 +1,42 @@ +// +// FundsTableView.swift +// TesteiOS +// +// Created by Brendoon Ryos on 24/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class FundsTableView: UITableView { + + fileprivate var customDataSource: FundsDataSource? + fileprivate var customDelegate: FundsDelegate? + convenience init() { + self.init(frame: .zero, style: .plain) + } + + override init(frame: CGRect, style: UITableView.Style) { + super.init(frame: frame, style: style) + customDelegate = FundsDelegate(tableView: self) + customDataSource = FundsDataSource(tableView: self, delegate: customDelegate!) + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } +} + +extension FundsTableView { + func update(with fund: Fund) { + customDataSource?.update(with: fund) + } + + func setInvestHandler(_ handler: @escaping () -> ()) { + customDataSource?.investAction = handler + } + + func setDownloadHandler(_ handler: @escaping (String?) -> ()) { + customDataSource?.downloadAction = handler + } +} diff --git a/TesteiOS/TesteiOS/UI/Views/Funds/FundsView.swift b/TesteiOS/TesteiOS/UI/Views/Funds/FundsView.swift new file mode 100644 index 00000000..c70eb3a8 --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Views/Funds/FundsView.swift @@ -0,0 +1,56 @@ +// +// FundsView.swift +// TesteiOS +// +// Created by Brendoon Ryos on 23/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class FundsView: UIView { + lazy var activityIndicator: UIActivityIndicatorView = { + let view = UIActivityIndicatorView(style: .whiteLarge) + view.color = ColorPalette.black + return view + }() + + lazy var tableView: FundsTableView = { + let view = FundsTableView() + view.separatorStyle = .none + view.alwaysBounceVertical = false + return view + }() + + override init(frame: CGRect) { + super.init(frame: frame) + setupViewCode() + } + + required init?(coder aDecoder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } +} + +extension FundsView: ViewCode { + func buildViewHierarchy() { + addSubview(tableView) + addSubview(activityIndicator) + } + + func setupConstraints() { + tableView.snp.makeConstraints { make in + make.top.equalToSuperview() + make.leading.equalToSuperview() + make.trailing.equalToSuperview() + make.bottom.equalTo(-55) + } + + activityIndicator.snp.makeConstraints { make in + make.top.equalToSuperview() + make.leading.equalToSuperview() + make.trailing.equalToSuperview() + make.bottom.equalTo(-55) + } + } +} diff --git a/TesteiOS/TesteiOS/UI/Views/Funds/RiskView.swift b/TesteiOS/TesteiOS/UI/Views/Funds/RiskView.swift new file mode 100644 index 00000000..f81ac53a --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Views/Funds/RiskView.swift @@ -0,0 +1,92 @@ +// +// RiskView.swift +// TesteiOS +// +// Created by Brendoon Ryos on 24/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class RiskView: UIView { + + @IBOutlet weak var fisrtBar: UIView! + @IBOutlet weak var lastBar: UIView! + + @IBOutlet weak var fisrtBarHeightConstraint: NSLayoutConstraint! + @IBOutlet weak var secondBarHeightConstraint: NSLayoutConstraint! + @IBOutlet weak var thirdBarHeightConstraint: NSLayoutConstraint! + @IBOutlet weak var fourthHeightConstraint: NSLayoutConstraint! + @IBOutlet weak var lastBarHeightConstraint: NSLayoutConstraint! + + @IBOutlet weak var vImageViewLeadingConstraint: NSLayoutConstraint! + + private let defaultHeightConstraintValue: CGFloat = 6.0 + private let selectedHeightConstraintValue: CGFloat = 10.0 + + private var defaultVImageViewLeadingConstraintValue: CGFloat! + + func setRist(risk: Int) { + resetHeightConstraints() + + switch risk { + case 1: + fisrtBarHeightConstraint.constant = selectedHeightConstraintValue + configureFirstBar(factor: selectedHeightConstraintValue) + configureLastBar(factor: defaultHeightConstraintValue) + case 2: + secondBarHeightConstraint.constant = selectedHeightConstraintValue + case 3: + thirdBarHeightConstraint.constant = selectedHeightConstraintValue + case 4: + fourthHeightConstraint.constant = selectedHeightConstraintValue + case 5: + lastBarHeightConstraint.constant = selectedHeightConstraintValue + configureFirstBar(factor: defaultHeightConstraintValue) + configureLastBar(factor: selectedHeightConstraintValue) + default: + break + } + + configureVImageView(risk: risk) + + self.layoutIfNeeded() + } + + private func configureVImageView(risk: Int) { + let factor = self.frame.width / 5 + let value = defaultVImageViewLeadingConstraintValue + (CGFloat(risk - 1) * factor) + vImageViewLeadingConstraint.constant = value + } + + private func resetHeightConstraints() { + fisrtBarHeightConstraint.constant = defaultHeightConstraintValue + secondBarHeightConstraint.constant = defaultHeightConstraintValue + thirdBarHeightConstraint.constant = defaultHeightConstraintValue + fourthHeightConstraint.constant = defaultHeightConstraintValue + lastBarHeightConstraint.constant = defaultHeightConstraintValue + } + + private func configureFirstBar(factor: CGFloat) { + fisrtBar.layer.cornerRadius = factor / 2 + } + + private func configureLastBar(factor: CGFloat) { + lastBar.layer.cornerRadius = factor / 2 + } + + private func configure() { + fisrtBar.layer.cornerRadius = fisrtBar.frame.height / 2 + fisrtBar.layer.maskedCorners = [.layerMinXMinYCorner, .layerMinXMaxYCorner] + + lastBar.layer.cornerRadius = lastBar.frame.height / 2 + lastBar.layer.maskedCorners = [.layerMaxXMinYCorner, .layerMaxXMaxYCorner] + + defaultVImageViewLeadingConstraintValue = vImageViewLeadingConstraint.constant + } + + override func awakeFromNib() { + super.awakeFromNib() + configure() + } +} diff --git a/TesteiOS/TesteiOS/UI/Views/TabBarButton.swift b/TesteiOS/TesteiOS/UI/Views/TabBarButton.swift new file mode 100644 index 00000000..07dd76dc --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Views/TabBarButton.swift @@ -0,0 +1,21 @@ +// +// TabBarButton.swift +// TesteiOS +// +// Created by Brendoon Ryos on 21/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class TabBarButton: UIButton { + + /* + // Only override draw() if you perform custom drawing. + // An empty implementation adversely affects performance during animation. + override func draw(_ rect: CGRect) { + // Drawing code + } + */ + +} diff --git a/TesteiOS/TesteiOS/UI/Views/TabBarView.swift b/TesteiOS/TesteiOS/UI/Views/TabBarView.swift new file mode 100644 index 00000000..130d4f1a --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Views/TabBarView.swift @@ -0,0 +1,21 @@ +// +// TabBarView.swift +// TesteiOS +// +// Created by Brendoon Ryos on 21/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import UIKit + +class TabBarView: UIView { + + /* + // Only override draw() if you perform custom drawing. + // An empty implementation adversely affects performance during animation. + override func draw(_ rect: CGRect) { + // Drawing code + } + */ + +} diff --git a/TesteiOS/TesteiOS/UI/Views/ViewCode.swift b/TesteiOS/TesteiOS/UI/Views/ViewCode.swift new file mode 100644 index 00000000..7ca831cf --- /dev/null +++ b/TesteiOS/TesteiOS/UI/Views/ViewCode.swift @@ -0,0 +1,9 @@ +// +// ViewCode.swift +// TesteiOS +// +// Created by Brendoon Ryos on 21/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Foundation diff --git a/TesteiOS/TesteiOSTests/DataSources/ContactDataSourceSpec.swift b/TesteiOS/TesteiOSTests/DataSources/ContactDataSourceSpec.swift new file mode 100644 index 00000000..ce63f051 --- /dev/null +++ b/TesteiOS/TesteiOSTests/DataSources/ContactDataSourceSpec.swift @@ -0,0 +1,53 @@ +// +// ContactDataSourceSpec.swift +// TesteiOSTests +// +// Created by Brendoon Ryos on 24/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Quick +import Nimble + +@testable import TesteiOS + +class TableViewDelegateMock: NSObject, UITableViewDelegate { + +} + +class ContactDataSourceSpec: QuickSpec { + override func spec() { + describe("a ContactDataSource") { + var dataSource: ContactDataSource! + var cells: [Cell]! + var tableView: UITableView! + + beforeEach { + let sampleData = BankAPI.fetchForm.sampleData + let formData = try? JSONDecoder().decode(FormData.self, from: sampleData) + cells = formData?.cells + + tableView = UITableView(frame: CGRect(x: 0, y: 0, width: 300, height: 500)) + dataSource = ContactDataSource(tableView: tableView, delegate: TableViewDelegateMock()) + dataSource.update(with: cells) + } + it("should have a valid dataSource") { + expect(dataSource).toNot(beNil()) + } + it("should have the expected number of items") { + let count = dataSource.tableView(tableView, numberOfRowsInSection: 0) + expect(count).to(equal(6)) + } + it("should have be able to update items") { + let items = [cells[0], cells[0]] + dataSource.update(with: items) + let count = dataSource.tableView(tableView, numberOfRowsInSection: 0) + expect(count).to(equal(2)) + } + it("should return the expected cell") { + let cell = dataSource.tableView(tableView, cellForRowAt: IndexPath(row: 0, section: 0)) + expect(cell).to(beAKindOf(ContactBaseTableViewCell.self)) + } + } + } +} diff --git a/TesteiOS/TesteiOSTests/Extensions/StringValidatorSpec.swift b/TesteiOS/TesteiOSTests/Extensions/StringValidatorSpec.swift new file mode 100644 index 00000000..51ce7393 --- /dev/null +++ b/TesteiOS/TesteiOSTests/Extensions/StringValidatorSpec.swift @@ -0,0 +1,9 @@ +// +// StringValidatorSpec.swift +// TesteiOSTests +// +// Created by Brendoon Ryos on 25/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Foundation diff --git a/TesteiOS/TesteiOSTests/Info.plist b/TesteiOS/TesteiOSTests/Info.plist new file mode 100644 index 00000000..6c40a6cd --- /dev/null +++ b/TesteiOS/TesteiOSTests/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/TesteiOS/TesteiOSTests/Models/FormDataSpec.swift b/TesteiOS/TesteiOSTests/Models/FormDataSpec.swift new file mode 100644 index 00000000..b16ff874 --- /dev/null +++ b/TesteiOS/TesteiOSTests/Models/FormDataSpec.swift @@ -0,0 +1,31 @@ +// +// FormDataSpec.swift +// TesteiOSTests +// +// Created by Brendoon Ryos on 24/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Quick +import Nimble + +@testable import TesteiOS + +class FormDataSpec: QuickSpec { + override func spec() { + describe("a FormData") { + var formData: FormData! + + beforeEach { + let sampleData = BankAPI.fetchForm.sampleData + formData = try? JSONDecoder().decode(FormData.self, from: sampleData) + } + + it("should be able to create a formData from json") { + expect(formData).notTo(beNil()) + } + } + } +} + + diff --git a/TesteiOS/TesteiOSTests/Scenes/Contact/ContactInteractSpec.swift b/TesteiOS/TesteiOSTests/Scenes/Contact/ContactInteractSpec.swift new file mode 100644 index 00000000..fc326cc7 --- /dev/null +++ b/TesteiOS/TesteiOSTests/Scenes/Contact/ContactInteractSpec.swift @@ -0,0 +1,9 @@ +// +// ContactInteractSpec.swift +// TesteiOSTests +// +// Created by Brendoon Ryos on 25/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import Foundation diff --git a/TesteiOS/TesteiOSUITests/Info.plist b/TesteiOS/TesteiOSUITests/Info.plist new file mode 100644 index 00000000..6c40a6cd --- /dev/null +++ b/TesteiOS/TesteiOSUITests/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/TesteiOS/TesteiOSUITests/TesteiOSUITests.swift b/TesteiOS/TesteiOSUITests/TesteiOSUITests.swift new file mode 100644 index 00000000..b32a69b9 --- /dev/null +++ b/TesteiOS/TesteiOSUITests/TesteiOSUITests.swift @@ -0,0 +1,34 @@ +// +// TesteiOSUITests.swift +// TesteiOSUITests +// +// Created by Brendoon Ryos on 19/02/19. +// Copyright © 2019 Brendoon Ryos. All rights reserved. +// + +import XCTest + +class TesteiOSUITests: XCTestCase { + + override func setUp() { + // Put setup code here. This method is called before the invocation of each test method in the class. + + // In UI tests it is usually best to stop immediately when a failure occurs. + continueAfterFailure = false + + // UI tests must launch the application that they test. Doing this in setup will make sure it happens for each test method. + XCUIApplication().launch() + + // In UI tests it’s important to set the initial state - such as interface orientation - required for your tests before they run. The setUp method is a good place to do this. + } + + override func tearDown() { + // Put teardown code here. This method is called after the invocation of each test method in the class. + } + + func testExample() { + // Use recording to get started writing UI tests. + // Use XCTAssert and related functions to verify your tests produce the correct results. + } + +} From 90d661c3da88a42bdbf37b9c089bed385633baef Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:07:18 -0300 Subject: [PATCH 02/22] Adding fastlane --- TesteiOS/Gemfile | 10 ++ TesteiOS/Gemfile.lock | 268 ++++++++++++++++++++++++++++++++++++ TesteiOS/fastlane/Appfile | 6 + TesteiOS/fastlane/Fastfile | 50 +++++++ TesteiOS/fastlane/README.md | 39 ++++++ 5 files changed, 373 insertions(+) create mode 100755 TesteiOS/Gemfile create mode 100644 TesteiOS/Gemfile.lock create mode 100644 TesteiOS/fastlane/Appfile create mode 100644 TesteiOS/fastlane/Fastfile create mode 100644 TesteiOS/fastlane/README.md diff --git a/TesteiOS/Gemfile b/TesteiOS/Gemfile new file mode 100755 index 00000000..44c02d0f --- /dev/null +++ b/TesteiOS/Gemfile @@ -0,0 +1,10 @@ +# frozen_string_literal: true +source "https://rubygems.org" + +# gem "rails" +gem 'cocoapods' +gem 'cocoapods-keys' +gem 'slather' +gem 'fastlane' +gem 'danger' +gem 'danger-slather' diff --git a/TesteiOS/Gemfile.lock b/TesteiOS/Gemfile.lock new file mode 100644 index 00000000..d2fd0e4d --- /dev/null +++ b/TesteiOS/Gemfile.lock @@ -0,0 +1,268 @@ +GEM + remote: https://rubygems.org/ + specs: + CFPropertyList (2.3.6) + RubyInline (3.12.4) + ZenTest (~> 4.3) + ZenTest (4.11.2) + activesupport (4.2.11) + i18n (~> 0.7) + minitest (~> 5.1) + thread_safe (~> 0.3, >= 0.3.4) + tzinfo (~> 1.1) + addressable (2.5.2) + public_suffix (>= 2.0.2, < 4.0) + atomos (0.1.3) + babosa (1.0.2) + claide (1.0.2) + claide-plugins (0.9.2) + cork + nap + open4 (~> 1.3) + clamp (0.6.5) + cocoapods (1.6.0) + activesupport (>= 4.0.2, < 5) + claide (>= 1.0.2, < 2.0) + cocoapods-core (= 1.6.0) + cocoapods-deintegrate (>= 1.0.2, < 2.0) + cocoapods-downloader (>= 1.2.2, < 2.0) + cocoapods-plugins (>= 1.0.0, < 2.0) + cocoapods-search (>= 1.0.0, < 2.0) + cocoapods-stats (>= 1.0.0, < 2.0) + cocoapods-trunk (>= 1.3.1, < 2.0) + cocoapods-try (>= 1.1.0, < 2.0) + colored2 (~> 3.1) + escape (~> 0.0.4) + fourflusher (>= 2.2.0, < 3.0) + gh_inspector (~> 1.0) + molinillo (~> 0.6.6) + nap (~> 1.0) + ruby-macho (~> 1.3, >= 1.3.1) + xcodeproj (>= 1.8.0, < 2.0) + cocoapods-core (1.6.0) + activesupport (>= 4.0.2, < 6) + fuzzy_match (~> 2.0.4) + nap (~> 1.0) + cocoapods-deintegrate (1.0.2) + cocoapods-downloader (1.2.2) + cocoapods-keys (2.1.0) + dotenv + osx_keychain + cocoapods-plugins (1.0.0) + nap + cocoapods-search (1.0.0) + cocoapods-stats (1.1.0) + cocoapods-trunk (1.3.1) + nap (>= 0.8, < 2.0) + netrc (~> 0.11) + cocoapods-try (1.1.0) + colored (1.2) + colored2 (3.1.2) + commander-fastlane (4.4.6) + highline (~> 1.7.2) + concurrent-ruby (1.1.4) + cork (0.3.0) + colored2 (~> 3.1) + danger (5.14.0) + claide (~> 1.0) + claide-plugins (>= 0.9.2) + colored2 (~> 3.1) + cork (~> 0.1) + faraday (~> 0.9) + faraday-http-cache (~> 1.0) + git (~> 1.5) + kramdown (~> 1.5) + no_proxy_fix + octokit (~> 4.7) + terminal-table (~> 1) + danger-plugin-api (1.0.0) + danger (> 2.0) + danger-slather (0.0.6) + danger-plugin-api (~> 1.0) + slather (~> 2.3) + declarative (0.0.10) + declarative-option (0.1.0) + digest-crc (0.4.1) + domain_name (0.5.20180417) + unf (>= 0.0.5, < 1.0.0) + dotenv (2.6.0) + emoji_regex (1.0.1) + escape (0.0.4) + excon (0.62.0) + faraday (0.15.4) + multipart-post (>= 1.2, < 3) + faraday-cookie_jar (0.0.6) + faraday (>= 0.7.4) + http-cookie (~> 1.0.0) + faraday-http-cache (1.3.1) + faraday (~> 0.8) + faraday_middleware (0.13.1) + faraday (>= 0.7.4, < 1.0) + fastimage (2.1.5) + fastlane (2.116.1) + CFPropertyList (>= 2.3, < 4.0.0) + addressable (>= 2.3, < 3.0.0) + babosa (>= 1.0.2, < 2.0.0) + bundler (>= 1.12.0, < 3.0.0) + colored + commander-fastlane (>= 4.4.6, < 5.0.0) + dotenv (>= 2.1.1, < 3.0.0) + emoji_regex (>= 0.1, < 2.0) + excon (>= 0.45.0, < 1.0.0) + faraday (~> 0.9) + faraday-cookie_jar (~> 0.0.6) + faraday_middleware (~> 0.9) + fastimage (>= 2.1.0, < 3.0.0) + gh_inspector (>= 1.1.2, < 2.0.0) + google-api-client (>= 0.21.2, < 0.24.0) + google-cloud-storage (>= 1.15.0, < 2.0.0) + highline (>= 1.7.2, < 2.0.0) + json (< 3.0.0) + mini_magick (~> 4.5.1) + multi_json + multi_xml (~> 0.5) + multipart-post (~> 2.0.0) + plist (>= 3.1.0, < 4.0.0) + public_suffix (~> 2.0.0) + rubyzip (>= 1.2.2, < 2.0.0) + security (= 0.1.3) + simctl (~> 1.6.3) + slack-notifier (>= 2.0.0, < 3.0.0) + terminal-notifier (>= 1.6.2, < 2.0.0) + terminal-table (>= 1.4.5, < 2.0.0) + tty-screen (>= 0.6.3, < 1.0.0) + tty-spinner (>= 0.8.0, < 1.0.0) + word_wrap (~> 1.0.0) + xcodeproj (>= 1.6.0, < 2.0.0) + xcpretty (~> 0.3.0) + xcpretty-travis-formatter (>= 0.0.3) + fourflusher (2.2.0) + fuzzy_match (2.0.4) + gh_inspector (1.1.3) + git (1.5.0) + google-api-client (0.23.9) + addressable (~> 2.5, >= 2.5.1) + googleauth (>= 0.5, < 0.7.0) + httpclient (>= 2.8.1, < 3.0) + mime-types (~> 3.0) + representable (~> 3.0) + retriable (>= 2.0, < 4.0) + signet (~> 0.9) + google-cloud-core (1.3.0) + google-cloud-env (~> 1.0) + google-cloud-env (1.0.5) + faraday (~> 0.11) + google-cloud-storage (1.16.0) + digest-crc (~> 0.4) + google-api-client (~> 0.23) + google-cloud-core (~> 1.2) + googleauth (>= 0.6.2, < 0.10.0) + googleauth (0.6.7) + faraday (~> 0.12) + jwt (>= 1.4, < 3.0) + memoist (~> 0.16) + multi_json (~> 1.11) + os (>= 0.9, < 2.0) + signet (~> 0.7) + highline (1.7.10) + http-cookie (1.0.3) + domain_name (~> 0.5) + httpclient (2.8.3) + i18n (0.9.5) + concurrent-ruby (~> 1.0) + json (2.1.0) + jwt (2.1.0) + kramdown (1.17.0) + memoist (0.16.0) + mime-types (3.2.2) + mime-types-data (~> 3.2015) + mime-types-data (3.2018.0812) + mini_magick (4.5.1) + mini_portile2 (2.3.0) + minitest (5.11.3) + molinillo (0.6.6) + multi_json (1.13.1) + multi_xml (0.6.0) + multipart-post (2.0.0) + nanaimo (0.2.6) + nap (1.1.0) + naturally (2.2.0) + netrc (0.11.0) + no_proxy_fix (0.1.2) + nokogiri (1.8.5) + mini_portile2 (~> 2.3.0) + octokit (4.13.0) + sawyer (~> 0.8.0, >= 0.5.3) + open4 (1.3.4) + os (1.0.0) + osx_keychain (1.0.2) + RubyInline (~> 3) + plist (3.5.0) + public_suffix (2.0.5) + representable (3.0.4) + declarative (< 0.1.0) + declarative-option (< 0.2.0) + uber (< 0.2.0) + retriable (3.1.2) + rouge (2.0.7) + ruby-macho (1.3.1) + rubyzip (1.2.2) + sawyer (0.8.1) + addressable (>= 2.3.5, < 2.6) + faraday (~> 0.8, < 1.0) + security (0.1.3) + signet (0.11.0) + addressable (~> 2.3) + faraday (~> 0.9) + jwt (>= 1.5, < 3.0) + multi_json (~> 1.10) + simctl (1.6.5) + CFPropertyList + naturally + slack-notifier (2.3.2) + slather (2.4.6) + CFPropertyList (~> 2.2) + activesupport (>= 4.0.2) + clamp (~> 0.6) + nokogiri (~> 1.8.2) + xcodeproj (~> 1.4) + terminal-notifier (1.8.0) + terminal-table (1.8.0) + unicode-display_width (~> 1.1, >= 1.1.1) + thread_safe (0.3.6) + tty-cursor (0.6.0) + tty-screen (0.6.5) + tty-spinner (0.9.0) + tty-cursor (~> 0.6.0) + tzinfo (1.2.5) + thread_safe (~> 0.1) + uber (0.1.0) + unf (0.1.4) + unf_ext + unf_ext (0.0.7.5) + unicode-display_width (1.4.1) + word_wrap (1.0.0) + xcodeproj (1.8.1) + CFPropertyList (>= 2.3.3, < 4.0) + atomos (~> 0.1.3) + claide (>= 1.0.2, < 2.0) + colored2 (~> 3.1) + nanaimo (~> 0.2.6) + xcpretty (0.3.0) + rouge (~> 2.0.7) + xcpretty-travis-formatter (1.0.0) + xcpretty (~> 0.2, >= 0.0.7) + +PLATFORMS + ruby + +DEPENDENCIES + cocoapods + cocoapods-keys + danger + danger-slather + fastlane + slather + +BUNDLED WITH + 2.0.1 diff --git a/TesteiOS/fastlane/Appfile b/TesteiOS/fastlane/Appfile new file mode 100644 index 00000000..18030630 --- /dev/null +++ b/TesteiOS/fastlane/Appfile @@ -0,0 +1,6 @@ +# app_identifier("[[APP_IDENTIFIER]]") # The bundle identifier of your app +# apple_id("[[APPLE_ID]]") # Your Apple email address + + +# For more information about the Appfile, see: +# https://docs.fastlane.tools/advanced/#appfile diff --git a/TesteiOS/fastlane/Fastfile b/TesteiOS/fastlane/Fastfile new file mode 100644 index 00000000..a01e497a --- /dev/null +++ b/TesteiOS/fastlane/Fastfile @@ -0,0 +1,50 @@ +# This file contains the fastlane.tools configuration +# You can find the documentation at https://docs.fastlane.tools +# +# For a list of all available actions, check out +# +# https://docs.fastlane.tools/actions +# +# For a list of all available plugins, check out +# +# https://docs.fastlane.tools/plugins/available-plugins +# + +# Uncomment the line if you want fastlane to automatically update itself +update_fastlane + +default_platform(:ios) + +platform :ios do + before_all do + # ENV["SLACK_URL"] = "https://hooks.slack.com/services/..." + cocoapods + end + + desc "Push a new beta build to TestFlight" + lane :beta do + gym(scheme: "TesteiOS") # Build your app - more options available + pilot + end + + desc "Deploy a new version to the App Store" + lane :release do + # match(type: "appstore") + # snapshot + gym(scheme: "TesteiOS") # Build your app - more options available + deliver(force: true) + # frameit + end + + desc "Runs all the tests" + lane :test do + scan(scheme: "TesteiOS") + slather( + output_directory: "coverage", + workspace: "TesteiOS.xcworkspace", + scheme: "TesteiOS", + proj: "TesteiOS.xcodeproj", + html: true + ) + end +end diff --git a/TesteiOS/fastlane/README.md b/TesteiOS/fastlane/README.md new file mode 100644 index 00000000..20932363 --- /dev/null +++ b/TesteiOS/fastlane/README.md @@ -0,0 +1,39 @@ +fastlane documentation +================ +# Installation + +Make sure you have the latest version of the Xcode command line tools installed: + +``` +xcode-select --install +``` + +Install _fastlane_ using +``` +[sudo] gem install fastlane -NV +``` +or alternatively using `brew cask install fastlane` + +# Available Actions +## iOS +### ios beta +``` +fastlane ios beta +``` +Push a new beta build to TestFlight +### ios release +``` +fastlane ios release +``` +Deploy a new version to the App Store +### ios test +``` +fastlane ios test +``` +Runs all the tests + +---- + +This README.md is auto-generated and will be re-generated every time [fastlane](https://fastlane.tools) is run. +More information about fastlane can be found on [fastlane.tools](https://fastlane.tools). +The documentation of fastlane can be found on [docs.fastlane.tools](https://docs.fastlane.tools). From 1db185f8c8c544f0ef5cfb98026386bd1152af47 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:07:59 -0300 Subject: [PATCH 03/22] Adding assets --- .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 579 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 1267 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 2009 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 909 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 1976 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 3062 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 1267 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 2822 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 4303 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 4303 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 6558 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 2685 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 5463 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 6031 bytes .../AppIcon.appiconset/ItunesArtwork@2x.png | Bin 0 -> 28153 bytes 15 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/ItunesArtwork@2x.png diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..6120803bd9aefc5fd937afd7aee0178453302874 GIT binary patch literal 579 zcmV-J0=)f+P)3@8@1DNN@R*a#LDmOgJ z6x0+hYc%-hpR+|0FeYkPyl|W0o{!<4nPX)$@rC8S5;i>0tldLYFwBs=?{Ghdetbjc z5HOO>GP<;c2Z+V~A85|uB}Nt(nabxuYWM#F6-5N&<226BNMtfhtgjPA5%$3?2LsI@ z2$00jlM|xbTORiIn9An~l1XF+Zm_if)H&omJ`C{^iA;vn{yw)`TUav5#Ks0;7(x^c zgj&zTHp6>Qe0rM6ogJRf&+(6s%oGazo|$26WrZKRyF45p^XKS@@cJ6(T<>1XW-6Ph z9E<77Ox0{wVXY=fYF=FE7pQr8sYbD=%KW^#72e#an$7B}qwR8ffuQG7Ns{EBo+L>( ztE;LkEJ%|6o}NnH%Qu^nq~}seSI`6OUqZ)00Ynk0!$V%mWg3M7V{2=u)#{raY>F8& z<1UvYs@HL&qY#S`q|;1pZxhw)?Xh?qOC*Tub?$Pxw&SmU&_GkZ&Cc?DbCcxqGV!^& zw!nLEj<8apQ7rOsaKKBo+GmRO#g}s^its=z2nfa8C*8M%LT8*gH!a@6icmDbN zzz)=$Lt%)z`vk1p@pwBh-oW6!wDG};b0a|0Q@i-QkefbikByaCtiq4!tYmEqG$3wB^VL=G2F*uc#sLh*+y?H}m z<3_6Azb8;$jypES=+2#($w~hvYcsQE4+^C)KtW3jrQO|NE$+kwe_p>1QW7XHXH$DS z+L%-d{G$Mq65PI>@c#YeH#Pz=b>|MVuU~_;L@!?^TvLN_-8Gk;%ufjcN~LnkS_{Td z+S!S89E>rHU%l#W4TUIfYr{(E?O#Lb$p~PQnZ|W-V=(~c-o6DX3GLoZ^xQeHmg(VP zzW4S55IJ}dX$?k8K}55GXH4kB{?5 zO%3kE1fl9`s@}arhQmzVy~|W@FR>?2Fs_SCmY_6C$wu9Hjx0W2_HCsz$eD5R~|7gT_Rjti;>b>1B_q5Lv?j*xp$9>-d>1A zJl(5+TooWfP|?@NhLa~fV9Bzf6vgfB$Y5|WF@ix#ZruW7u&(Q^Ddn-)7;GZJhL#p8 z`ufru&z1!!0s)NHL|a?QZ)(EE;|Ry`3@L@xnow;mMd#0Z#CZ0M?++dT5IJ&$f<1e1 zwryKtO(Glz8;_IU)I`(|_e$MnS%B70;QZsqy?j|x$Aq7o#T^|urKKPxY>nE~$C-KKB zfat}G6koZ5vt!5NyZGfK_Vg(#8YNU$=NVnX&cw%$OmuZIdHc4fTFO19Dd(~R=$%;b4dS|3AgRCt z3uz&ePjWOfCgaIE^A84V=RF`LLWtC}c$-a4ESY#Ldw`2kq&)Jg{(}C`ejfb-SqGS{ dtOLwe{sx7-0}}SpxJUp1002ovPDHLkV1gKUOhEtu literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..3d4ecc897ab9cc7dc3248800c92f22a845a04ed2 GIT binary patch literal 2009 zcmV;~2PXK5P)q14X3D-pfiC12szON5$OvR&IQNl(k9H46JR;nL+jH(SA zP)b!a%9XPu1V(GzXcVud1%#ksa1bgS<%(x%5sBbbR|8Pf(LuDM10^NGbt_`OvU?cN z)6?kbX?wvK8U_Y%LLrPX6*;OZN7xwfJX9vb+%La?F_>(Y&|PaKd3*V3c7$FF)aY_6@Rf?)TsAHLVem2o3%H_RQ59 z*LAr#FhFi>%tl!$LTznSKl&&}h_Xa^`3O6Xbx>=xl;~_0Aq1I`5%lC_VcFJpc2c`- z8!DGW_&#!GhKaY|wv(b10FehDL@EV&1-6Vw)zU|D9B^HXQdT0yV#J<)n#cnWfDp)Z znyF7dDMT5dVQ|o9>s$`k^O*YL3;y};J484PN>SU{NxZWYQCEkQ(w@)DM0`mjh=8b; zlJNcabK6HBv3_)vHD7*7)z+ zx3l)d2~wk@tQi`js=Xa8C1x3t*`f&x*F{N*-`dKW||D@Eq#pY41EHZaDHDFo4-J4u~BO?=lbGkghDh7 z49pi7(ddnBdmdH8)!&bdzI31nMc-(?fXOx`MjOoIT6rhaVP}HO7#5;|(HhZG`W+$42{R$4@Ys zUUM_G9UZnHDIv-wEolRUH*T~}EhO-RmaJ1-OT)o~^XkfRNFO|i{NoQqC-Chc|Ad)H0*=q*cPVp{WTCwN)Y{`5!jzQbEYI8pajB3DI6iVeDWk} zV#0PNig7YfW06gph`;axDwo4C26^rrdTMHZ;);z{&=pY=6I?!d5+_(C#iIBK8-wGz z$aI?Vo*tV#f~2z$ME;n1?>*dj91}Qca=D_-=Y23i#vkwLL8j9<`4v(mN=sTnPipe$ zQ7#@jgz$a)!$LD0Opdp9E%m*<#|9>odTMWvwhT_2GC zySJAMU0pUxL0QO6BAzcD6K}prD48U*VMCz?zF|Hv#*V4A-5R+Z7rMImySEp|^A?`y z>tJzOIv_o9_%P=-Z)SFQxKJkMGq1@znxBB+QHzK~i0|G_^ttEk5rW8@0AVB_OY-rtIUE{FZ?0 zsy00{!|d=dlS4zyo;n4vsAYVW&r5#SG7t+o$k?G&it5K7r+V8qBJJ&Xsnq;lUjQbT zLynD+`RONSzx|fkZ@wWrHWrw1u4*DI7E33bN4}g>s-S+{PzbN31;4cwucZaAsR<{M zu$>JdFqsT`auWIHpUCs)$^G^l^89&JHfxP43Kji<{;>Urc(tsR-}DZ0^jQ@B7Z2`R1y!Qo<33K5D@K zL8FCIzW~&^qX*60yN8O$j{vk&Qk6_H{_r8GTeq+xC}R$n=1})kDa1K+B0;`V!PV=m zojV7u7Knr+LL5%12wpZz&}_0>D&d_v#n|1uSZh%_da7tjI|{vt364L1&R;ifFf=*I zA4^LBtY5rHdvh}cj?iES(^CpO4~#({JI3(zG@~;!G&VNadGZ9EPBUICB1)k=FVa;S zthB@2i6B61Y>d&V_7Yv<1+trn-3mhdJg`8+m8yI#j=9Rd$f++V5IIBOAL6wca^aK9)kB|XC!`3SO6C`jY& zTM-d)t(N>bJS?lZoCMq3;u;NEJ99?L@wfzEzsi0z-o2BJLP0))l#S`lt(5fAF$QNX z$*Cz$&d-y$as}~yl;<&e=MMgtFH|2rLM0Mp=jL#}kNfrwtVP;w5|=M?a(>%!sX4Lz&Kn>qVrwupleO zNLlLxlyHh_#>;*}1upy$Dzvo@Wq*q+>CHN`S@U=#19d=?zeK!GsG5^d*FnsU86#&kK3HJ#MnvW3CK>r;P jAL>EzoBe|RZlHeySrXRQ(OtAl00000NkvXXu0mjf{fw|y literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9553d81422995c9f83e6353ed9c308c516dd9b32 GIT binary patch literal 1976 zcmV;p2S@mcP)qy4GYJ=vtF?pleOmfvz>VJ3vkO$=F>1Dm<_3Hp>Up zanQz4wSPa!S6)FGgK*ulnJ*hqAp{0Uyzl~beSJtFFj|+(eEEQyFvO9P*tTuBt*s=V zdk&>k*`it=ph94bK_(J7jg4Ro^@D@B$s|T85TfKRlrMDw69jo+Zc`KW$Bv=2M#$2; zQ3eZ<3CBTaGKAyfU<@V_|~mxr54te%8in02OGgCY8ps?{<%$6r4aEr4ez~& zF$PiM^er9G2w26weRv%m=%^UYeDVouVgliLm>{6~$tS6P>@idrg5#9Vosww=FowpV zA*!Ew25k%?79*IPg&t*O%sMpzV=#v zEn1U0ejIk6A2my2hq{K6hbih#v7QqIm?cWA@Th4c&U`7hN~Ra)d4Dm zbvD|YI-5mEN%rbhvRAGkq{IXPiD#dsYTrIoHjDIq=ElaDe*b-N97_@F>+w4}P+EiI zWJgIA$IEgz^5AOtE55s3t~FTF&|*I&~*I!axCzwMi@%k=Ot!PTp_ z!Uh5Hy?aR>I)n-Wgzpo~%y9GFcWnXFnq+S;ZKI8F?=K)5d9wQG!T-;TL;3!^pO zrcJbsjUg&4L8(6xhhTi1sS_ud`S3&Qa1{BXU0yCoXX8eizxaZCKKcl+z1;#=3XCDP zYZrcJr;V!bGyBT-*~8NVlbh){zk^_wUDq;le(09E?&3&!g`3*KLK3(rvP@&#rY{ z+iqTcm3T*oCG>#4dDGg+JtL(pMiJo3#~-J4WCXXRWm#YgUmd+^5sT4u?i^lcXFe4d z8_hXa)7?$w0}r6)=W${&GM6qfd-^mYs<5J>f`$_(Fj^yoK-SbO*!j!L&GlNZvy-NC z=Mb@2(R8t3pu%xbT2tH8Lu}6;3-X_aT+uwJ;p9pCTWh40+<5a%)QuZ9g~O2Q0|%&l z_+dmWhS%Bo_ds*@qeDP!&mL-fdh9v2h-zFgP@@!52oi@6=Z{_gC{YSmKKdv%Pd|+c z0;KPgotR+it+#9jL@8U_+e_6GPavzRmYg<-h%P1$AGR~6NJk-3Sk=w-y=0QMv9bI( zYKsOKQq2_CuFnv7IE*TOZeNi+5S5{jhUOn-Mo2eozeelVuJClTTwGJ7JLD7 z;=)sxXcQ6zg*_1UMQ_U%>W&_@gg$CFxmIDc#!00tNGN#E<@_k7s}=^-7;s%wCd2&b zsQq0)+T>C#b?g{^QxkfA9w`L3M@H;Eb{wm#(8+z&zUD_qQJIXb-~~QgbVHgR8p==g zmXzG|ucn5Ex8JrE))>O;*U{<=xd=Mpst=7f#L1Xe&er9->^u>$FNN=H1TttmQIu6&59AWm%8SAhRmIy2r zVJT@mbqb8Z-MkrDRaH>&F%i!dp2zH&Gh9D%#DXmHqN-@1L=(H;y1SX^>qDp03rDnw zCEejf)NbMrJw#Pk7xBG&t-8O9$RhfeJO1f(nu)$Xe(UbG)52o*btKCp^|_OaQp7tu zsT&v|aqu9rvT|XKQVV0us67cOxpmnZbC*hCh|XltQ&R-L{6g^K zkIa4lJ#*iFOZKOq^17t!+G@MPo41t%&54wDWDS{zqg&mjyCY#0F zzKu?&(Tmm!>^w=huALpN($(VX0bMK+XkfwF2>hRn!@`m5uj^M?N^?1>^_`cz(PZ!r z$yM1BUkaD+Zv8HNps`riKfhUPvJP~u$vV)rChI`gnydp|Yw~|o9D91gjUP7v0000< KMNUMnLSTY(H_cuE literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..fc89fb9c7ef10c1ba751ddc2591a1b87cd31e09c GIT binary patch literal 3062 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 literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..382b185a6fd6f28b7ed82a9c588efe2dfb21b183 GIT binary patch literal 2822 zcmaKuXEYlO7snMfVnxJOD`vE`MQzPvCu-JstSTyY)vBO)LR8J7_9pgfRYjE;EisGQ znxJA+d$yF<^YQ)gz8~(rAMX91d(XM|ocoJ0Hq>PT@Bk<%D45`STBcXg_+O)=x$=pu z`?VAlfUj_^zsyj%Te)_g;0azrxC`j@1+hf<#2=FoM5-=fJ7>4PBCRvu0z% zOY?9oVrL>bPl>-24}KoxuZGV1S?@IfV<`ztQd3l?Z?Uk)dSE)n7)rE|iQsJ!0QE~P zbVrf|kPCF3QnUEKllwU^p^p9?A?0TNj{6!2upp-QNbf>s|6q}wvK0K>SyY=v^`D4V zbH_)Ci0ONvOq>H1yGo#NTE7kZiYU7O;2owAb>tqKE-h+d6L;9!YUaS7*sB4De<(t) zk(wV9Q@!T%o1laDDWhQ5l4lxN_Z0gBB(2)>we%VCHzT}OgE82oKoP3#hee}q6qvd zh=rWyz4J;+8NFrmN?uOTPC;fgoAeqc`Od4j0lB`Dz(94lMWjUt-IS^@ta*|WJKJIs zlrp)L4twYWzGa6viWU(5dLF&%pu+rRK76=FY3N*Pa2WZ3I4Gt=mhJ?eaS9^IIPHra&u>J|bern+N#;Hrl}isiTX z^h(8&E?+*=*;(80#ROOs7dye)TEebfef6cVFHU6u2=a0-UKq^k@RE_X>wo4Vp1$}` zsvxy62lnF7O_+%Z3tqKr{v4&`xBL67@vdJXfdmDy z+PJu4>}7}(6RGX{08>P$A#+j)=e=Df;WpGA(ap*A5r4kaO-ChWs%U1P#pydY>a5%h z`pOKtcACXq+zhtqsn>zMhR+GId{YTiE=HQr{ob{JgXP3?}YKf+H$fy1JQ$|ER0Ft5#;)w ztB$s=o{WhHwi)XJp;~+28-o*Nb)Y$6q*kvc}VfzXH z`rIQ=`&l+sBSTj@2DWqrV%yULd$9zEKHnN$3gXWk@hvkFA07GU?t;4#bESU9$2Jek zq{Zv(J?FntagENSJd*X8$7{W;yE)Zj3R;q(0>cpBlUcLY3*{qmBh%wS*XVdSv8quNEgZ82rD$ll6Qlu>1 z$*H3YY3$Zvb@ys(nN&dE{NCIF1TE57Ha*2Rk}GOT&L=Eo*`u9>bai$wPBrZhcMysL zqbC-C1N1k2-aeJU(G^HeuP7ozwWx2u8lK4R|Ri zmHhbk!k6i^H17S2E!9$;Xe7ssrGob);J64Z%rj9|lxi4$Q>wu?khe0{sMyY=^YBY_ zJt&5#eo_F8g*gyW`MNXdx3pHjYL<>&8uCBUXsB}ccm2(-YspD#DV zqaW~?hc@~pZF7uE$9llTNJM$eP|m+vwow3YIM1TW+Ks@G-2s_T)#R3itqzgS{($wi z%P>=yVVZ@ikxClx?OGo06j9_g92h zdr~9slMt--tz0ct?w(73m63Y^2JPi8Gxyf3Et_$nA!X#-BHb&);`NWOb$d*%4a7T< zB%`DIfr%24PeP4ozOK=ScNSdS@_>6y%mE7PG8M0v#ZJcQG z{^!o>%HE710Sw3??qozGah@u#TFkV!XJcjGg6DnFm&p1#2$Z*=N7Z-!6j2s z9oATPUww+_uUz{G7=NeKRR>*R#sL3kJ~MYs#SN*yV(LNb!ZhdU=YS-OdAC8*9D(XfX=5NfxuZxGhD}&yC`cK2Tj_6D0bj4x1ZjIvfMf#x}S- z93R!#?-Q3LDqjQup=(sXyZVZRuFA&nPv{j|J{^w2o@0eY#M(-|2Ro?91_r6>m#Slv zHJwmNdS-h55fMTYrmWI3y6rq=I`m{=e4Ki{N8#Wo7uj zljiQi0}(M7lfI>AqXEeeSDbH(c7u! zUtd_xgVunN1!0H{a`#~I=vGBIUnc3RHZr`ysN{OrHa?>`T0m^?M`Ra=bXR4yrk3#H zr&dI{PfH6tPqlBi-idU&!fRS?M0@g{Pq*3+#7Qbg2Bus6ZJA%rIr$Cgpo>)u2+-o; zjgh-Y9?V4hP1*e&I2V)lfTpX;pGQd!(;9Z;WZ#(-#|bY`(fv(Qx;mfMWL9vtoP$*- zzRa;{a@^ay;U+$*1pHAN5WyM$)achv18rt#?&W76|3JNdxH)m&VdIh{AJQf(wB7#V zwCsl_jNpF}9BIH5j4y1+lIAV P-%`M}4Ylet9!LBKesg5L literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..f3f00bbebcb6ce1e5fb973ee59145155a2059717 GIT binary patch literal 4303 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 Q&7uO(e5k8du8P9^564U=C;$Ke literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..f3f00bbebcb6ce1e5fb973ee59145155a2059717 GIT binary patch literal 4303 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 Q&7uO(e5k8du8P9^564U=C;$Ke literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..7b25300021e518ae415805c92df77632508c841d GIT binary patch literal 6558 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 b@`85lR~CV(Nb-oRy8zUbG!<(VEW`dEkj!if literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..7d8205d714dd5067bbb715d7d49cb8cc3a5e2cfd GIT binary patch literal 2685 zcma);`9BkmAIIlt^&y{(DI}2AAY@@~f;>{o z|IP{E(QbckdkFv#FtISXjtF87_D$0_JJ8E$QQi^tNmF~huH$n#;*Y? z|NakAhDH5BW~?Ku%MDgj(nXHNLZ4(tfGFU?f1fP2JiXY_Xx@DZ+v2wxS)C+l@ss%s zE#S(m|2fJ(H$p-qWh2`tR&CkYv83m-LVvQU)b*miEEq_Ezl$5&lV>%+ck29%pYjAV z4LNT|nmeV|ZOoGv11!VTG;?2!jGC6cmtJbX&Y3xIi_YMx@AmRudnj%1r*7v%e~MK0 z(eRw&K@}B6S_8Vc7sKWuaQpJM0OyWqY8I@SWDKDGB&6=MOJ>Iwv+@@T`$Vpz!Ymd)K9q$i>u-StQqKGTzynLr& zXe`=Z*6>P+ZKeShXztbuEE_~31mxv2g(so@{1ptBR$dZvyyh-(lJ3MzJnPvrIr*g; zffUKoNzps^C=%uH?5eH1-ksu#B?($u}Q!79!e8jPzNjSsl zs8V?%+)<@Ycw5JzmV(E%k6_%PXSYq%hLqj8X+?4glN@^1NDr;zk4M_?v3)N&9*iUOeIT5 z3dYC7;e`pO)j7KhYyOq}Jwj?Sh{&^N&qi1&z5Y|GCEj!sj27so?Q%-;#X}aPUIGRS z%L;47O5TajHE2qBXbSe2#8u+u)V8{>%mVF>PMtxm%_Kx!w?n#NPSZoTXPg_g35ui^ zOl9OwQHrdqsm}aRgrZC{jSm3tns#U{u}->ib(FkbI~LpbQc@h1Kyc zovbmF9Db1Fw=73!A4iCRpT*Y{6c_{HggG&q#EX$b!gEZ=Hex%khH>+cCE#NmCGYBPao3rCl~& zPb}Q!rcuEFqN8t^Z+U{V-AB5jjmW+G!xn$X=c#gob3QPOi+eci7P#Do^8X<%CGKhr7y)$Zh`++|NNdzhP$g7!yQdGR)N~N(Gt2EQ*_f z2JncZ4P2S#qd53E5?-ueSF|qV{V`bzta`iP92v5`GSzT%rL-cMd9sF*fuFMMj28#Kq6xO6gN0+Iok1s2qeJ=&EN}?dKiY8vT?XQg?N>-;?+_@?bRaM=pane>kgpUXZIlqlH$G^eh)~$Bc zL?m^P`yCfVrO8UgZ+q1UQ-|l>ZaqiVKh&(EP@2On9VtF(6OKnYAXB2IstE*Q`?EyR zH#G4j4K)G#%TK7$LJ@naH}bFLP@1qTrWa;WkO5JcB$M*G;6yviU)b-3VVSELU^vh=LuJ)zBfAh_qDo( z1R|r62I<@1MgN?nYQFHmMd;|7v%AE?Uc%m;EJ@P{9bhV2r?NRidqXF`-G$2kULIu* zL`g{X?woYMYC1Ya6ZKpC5XRH2rYzj{puy{!)y0c+DXCw3O1WCykA#RK-89HiDsY&z zWA~6=Uhfy;+o}4#*cOT-Sj=P6kRjypT4JmY@4hi8ufoX7BvallUg~f4Kl>|1x;S{O zd`;E1V`<4jA3pYGNHOr!r^+H*SuL&k$0sR;Surhsi>%s&gCeu4p11<47kfm2?}w?` zaYI$rSKq!Bu!ZM|C#~6Mp(n2W{mnSHL0_uMbt?i1tkuwhTH4$a)X~@f#PLRME@ikpO?5c>fpswJUM;@yq>&7{Q zn3wXmQ|IDKEAez4ei2D+#M^?jOP1+PkfA4a=j^unj35FU@dJCoY&4mZ?!tP z3oJ9_eAuze-3SiS7#}&7nt{`GO~f4fh$s4_e=5x=yJO|X^@K}D{PjFyFk_4V#Kv1R zj!DK|fo#|(wptT|f9uyV_R~Miw%3QT!2*^0oa)&^t>y_%J;^uNOEsWp$!btmQ;w687=?Qiz#ywf27u#o95iLW16NmgE?B?12B6n;K- zP0)9~M+WI)a|G-N^Z52;v@<5o&M`jLln3GN-a(dWdT-POJ2*eWvSN?9SUA(;nM2Vg zX2s2xh8+`*fjU;O%4us^-K^O$?r+Jx!>L~Af_v%Fn1$fHEWdLrxhhO!I*Q=8S0rJnB@d#K?IHlMv)k$M%5-}i^dFU&l**ls;#y6iWM_ftD!NfwQ8%Pwg^?LW^H1X zplWZ*>-#Uf=Y7w4#yQXV{PLW0@BMu4jW^WSyhX)E1pokUX+4G+-`tu1Z3^<6lLg1c z4FE86YQa=Y1G4|-1bdi{bNpy0;G46ycz0l&L<~Zsq#Dr{kbRLIb7mfn*TNRHwYa6S-l@$_42O}#5M|36zdTYjjVe}` zF-U{l>q7uBfIeHAGM%2@`lP|LB;~e+r1Y(HiRk+VF$gRGpgeea#)T4$ZRZe(;8XF7 zw4{TQLdYF36e!Llc%Ym}KXE#E7Js2WxW$tZnaxnCr&4cDh9 zrovtyRdudUGs01^f+Ex%o-3(P@B1QSre*^~d=OwvWV>s&ho$c*Og*we8yM6NCg!P)EbaLb-tDPTwN zwh=Aj&dqzolP9Yo#M}ZiweeOE8O>=bzUq7QfRXFV*y}r0)W3Wo{i+Uuay56uG8Hak zM!qEJzDUR3fu~0T;!Mr4gKuOD4o`o7hM=hfO%32>sx^u~r85K5SVdc!B;rM;CWQ^eZvVcd)8Vgvs{LuL~-nKJX)jj>*VxdsNzi-OQ8p4Vg=G$f#x zJ?Gp0Mh%|4nQ!Sus44v?unjkq0!otBZM)7 zrMnP-&EgrZ=gg4{PKin5IO zS`@`EKUjbTOo#xK4-cKQSs&8J!A`aInsoI@Ueah7F`S#4sSf>I1&QPau&fA9ppoA8 z_D<)ACfjf2ZV5DTZ8&yN5XtDV1O`%|I9!X>FV2tD2J=(ofm(vdBIme}D>?sDWTCbX z$9p2HT2Ef3--GHQz0`taM&udgb?GSC8!BRr(q+NW=7NqJu4ma1kO z8E+vjvb?8M<0d~8ZHznfL*$O~7rdyIxGLfg-(Q9?xlO^XN~3ppZA|LyC@t=d))a`+ ze%TnmT3)Wj6zirKuqM(+fG7YBgL@!F6Q>zzJH4#6Eh$TokM)nbKJ90Ld+G}LJYtfq z^87$#nR)T}Bl~ko-A7Z=mJFkgGu1>-HDdCIx>%wroj=>uQB8oKKa{`Rcc1oNSFkB>#JY3NC&dmlCK> zoBRoF7GSXDQz{yI=V9ebph(Dls5l*2nHk@QO@@w{((j2m;zH$_AX;AOQ27s-&1K%c zT1J+9CbsY*wb%e~23C?mk3@u8?qH4E!fY*jmJbIy3O@N1cHu_|)RsUpVI+}skfs26 zgBeO19GiObUCrOWd%KXKFD1ni?51^rzk8}(HjJxXCvS_r;N>CV{SO^sN*3Uq`_1)O zY0=7Y?iiwe>5<(DE5Pj(fkHm28=1@o-u0oiGNk$m8TQ#^YP&qDVvH4y&O|NSva|+A z@oArJ@c2L@oY@R^c}WLq8hArFYO-3+ivVPU#3% z*ld$Fs@$6p6%YKW%gA&&`^M5NW*Egvp^u3kc+ojri%=R&VjYtO>x?N2syjFfy8T<{ z6~o+Xw66Wa;0UCJ9bN_!M5q|(nvd>YE3Z|*xNM^R^h(i-G^yD?|El8K@Zk^wC#mP8 ztdk}0Noz@9%3Kfn9Du!Q3uVZKvRl$A#tqcem=()z%a{6LDCT(gn{%~{mcdr1xF7f$;T=fLrmY$LP&%rCVezhL6 zVGObX04GfM^94%eL?h{a&f9e&^neJX{M2SRk?P4jP?V|0;AK&7nKC;$hVE|nbo0&{ zh~MUyO;@v9S$VXL#nh(!Yx*$-f@U&o!%G>IAR06MB()l(VBujXd>uZXsaH z67F$$lnebB+j;3e>5oWP9rJ~imAy4M>Z&btTInu$=kt5*mbpzBt8%trN#;o+M`pP3 z60DB#sBP1O_r}>N%78^X*Tix$A zT`$oMQ&R^%6Z<~-tf&YJ`}RU3pTZz3#)^&;wv9txx=a2ngf7_ZEvhY?qYnn}c$E_V zofutrvukA(L>S*NiWjkA{G*yof(Ft(>~jhM#D=>`+9JDIyuuE7=Yn>*a8eFflm=tf zkS>w20UXEbh(=nORjBR_=IkE*os}%~BAJh@wdkN^T-=!+lN07~D2 zW^=^%SNU_ggSo~ods2X#o(T2Q^j8Kp1=;OKg?Hpeo8W5;R;Z!VmBb$bNbuiMhW`?%c9IS|+htc5TiKbob=HsGn-eQ8;Z%iBOy;{x*A(cC z-b1p>hOY-Ldt2-Fax31okWRq%qzT}^kig1i9y5O!2#%nP&3y_AYT55I7ZwYoT#{N< zJi8}(apHgcKAO4toS?LF!wq~}wYnv%7vZNXV|^+pv5Pcfp3BS*TL0R0nu&)Dw$_M^ zE9#KcV|sKzgZt`;SY2KQGmHbJq>LKELie9QZ9Uz_#|*ytr0GwC(s>Z$LZ@Edv(cg~ zfP785J%woM^k`v-6a50`(D$cL{f;``OEKg^xX<25cPg)R zL^Yi6_aDzWej4I3M-s%JbNWANC|_KWh3Q%|m)j&^^Hc=Cv?dX5JEHbVz|M8@*mCeq zxBc-s8(qMlr#9aAuG+;l2RuPVw5GU6DhZ@nq%-sRz!r|;Ryz%JL)^eSF;dv=>A>-F z4z_E~)~Snv)ZPdGwp z;D=E3g>F1&OL@WA9IBL0=S_^LoxJaMBpG~>PBs|-2*7cXYG1GJv2VvRJ)K+Gey9Pj z(U@H97*0%(5BXuSA+`GG>LD=+P~L4DU;1WHVdvg+3u-QD@B7l$n($K(QjO%T%cvcaKzVopO;CALRr6n&#ix9cG>2K{O zZkvmXz;3!n593j1i^YY&PDy)hy46^14V<{u(SS}|OlU(lC!u^}%jraG@qI;ejM?SOE;@6t`bhdDeIykPFQUdqLGW;&{OS;US1?gC3@A zIy9u&A&%Iv(26yp!m(8To&E9lHiubsa1v@-2C+{`;l`77e1C7Pw=d*~k)J+oI+xQ= za5TYQ>6j%_E#_Wj0dE`4NFvy3CMSWI@kG+=@*xku{#1v(_-)LbC zYmnUu8gcqjUjdE#E-_+KY}o3?;bVQ$LVe;VA}T^!QT1b0laoj!(drgmvv%-Uw0(c- zNSQhA(B)0qlFFYuaMXfAKkmPhimH=W7$MLQBdz_hQ|HycQ`?)V6P8F;l*{!%uV+w0 zMb~ZeXi5QDKy1q)IN}@f#e+K9;Vf;YAH#xAlbQVs>ForZ+?p(!Ka+lCEvmeP{Pky+vkqX?Y1{ z24PTr{QPJ*RFMnWMOJ{p0<7%nX6u(O*GJ;+KxbS^LNs|q&9A(NR1VHgxk!~gmSJM` zw7OCC@q&f)azRW4%@mEl^{)j5#kiQs$N@!^orKOh5}-$A%bgoTQ+pEx6r$uw8{LhZ z1yxOo_dh@6?m5Sw0DL@71a!>eFASUQsR!R>tjt7^K#WbFDVI{wv``Pzkd#-_W`IR; z$i0=3!=>2QE)IL>M9{_&omD3tSwHGZD+XF>ch)xx!n%C(c@bUB13w z)bx?b?Duc25JiOIfAuk~!7q9ek_9E7>cR+u#3CRo3seUMG8O7C<^>Xib?2!Z3+jqx z`1AgYmH2ga{H@2b8rv#jq#dYjIPlx&AdRt(?yiXXy&X(8D<}4^CqD5fH439J7 zBg;GcNAWW=BKrrYng@=QzI{P4g%YtLEKI!I9cR>4omnm+OsC1?H1`#FV`0@hlR5Iz zD5|n{Oy!~K8$QG&*hwQ7jHooAM?g^JKUZ$~b>>&!H_^_YRND^fAmPss(e)d{+`q0@ z#Xm2!as1@r=mDW)BM4a^y{UA0$assix8@bMo2WYkP3W^9GQ799ANKN^X)_xPRz;D& z^gnB0CF;9goy!Zken>(bv`U4cJ!D&jml|du)T~=ndqMPd^9n6X=s9+Mgd|9X zsMh23noh|AL#m_9M}a%{c61 z9-et>AtRIbJggUy0-Jdj1qf$K7b(NXH@6=TACdV%KM8*|m+b9ROjpIn{c(T%iQOkO z_Ob0X*v!-~tNtziJDD%Eq*X7Pz3Y|YIF;TCj;o-s-bEoN)GxifnXkiAap+k@wWI%=vkyN_F0a2tyO1fdB8&pyxq`PBi9YO)68Ni{t z^Um*2xF7EQaO&A>?{l7g)_(VTceJjy8U@({G5`QTq5f3)1@2n>-$6ozJHKPl+y($Z zhU&@+`rbJ^pZr`?CNBm$_w2lCTbmOJX-T+pyOt>QSCgKDm@5lf{Ir}RYb{d&kUtp+4`&TH{3XORt?<0Z-7 zx|bw>%H<;~4jjsEZ`*5K^hZmL?tq_AgoZ+(s2``K)XD-+bHW-DV5Cm$ZnQIs7_Pc- zl)3|Xbn+MjEpMI>m$stW|0Mt$jS>N9?`Z4X=R(twz6^4DbtM=9#N7wkn7B%*?Iv*# zw*Gq{g2o#eK7CE$`!t6afCg)h^bD%8sUW)XT>%j`h^smxI2ZcXcGeonUip>iy~@2F z1B0p%1=oS0)6D;TZo);u0J6O%f+gnQp=6robqT?%r@0m(%lx4Pd+?2k0m4? zfGqHsGst7CYe5d@)g_`O0vO+XW5dlz09HDVc}Oj_C({(CG*!!%0K39VSMo*dngbNe z6CR#mQXkg(xhnx^Us;I)yF6{w3P?V?MZoN{dS0|V;yA)`c77%L;bxt1vQ5W@?yvM8OX*yH90cP+Bx34DhG~zq!e57oM|7d0`C3*en<^eg ze84p2KAF<_(W7{v6ra&zlLdGQuC~1wvbJW8v-)$qTz5X9p~n*o>DH$LV43X$WS_D6 z5F$Nd9k|eQuSJSjg`zribCEOv+!H za*_yOgk9dz(dhU^H!&t->uW%pIrG{h)37<8qrv)Bf@pF22zJBel7ES0Qcy{`lN8W| z=3R~AHg|o!h?Ch5i=mKHvgle#O**9Ls%3x_{>nhH&YUZA#@FbyX-lQ);xE2&XYVR0 zrd1qfp!cu$BUeqI5k%MWx;s0laPaxx`VfvvYZ&)JV?n*pZWiK?XLAIAjw!kbJdp^D z)eTv960Iq7QPA#FD&R=S2$(EQDAd3-W@>!HF6yD4TSs@p>O~VClmg+YW=~21)q)w(%~oBA+-YBN28Bf;Dt+y$-D)a+EHsl ze9S?K@_Y@p5VyGX>kE<`ce17xh=>h-{^X>ql#ZNa zO8pkg-33)v;1N^hxzI_r`t%D(P@;}Z;)0sACcE3I;x4AIr)DViGOBeif?w#RH0))S zCS4?302oIE#UC4=IW062!^so9)>8E+#tCSPdqlcehz+$VIY5>qU?QYEV9qm9++X@I zT@dfc%tT}Bfs1p0-qqgdx9apn^NGY{C2kh=1Q>k;9uWlgns(c51tt3H7^QcOV~@Ls ze_yW!D9vtpknJ`I9WQrEw(x=@@@{E$2&}-(GN0QDc^*QdnTfgJ!1ES8khkNG3Aoe? z>@2)5>}3I6@HDdD6Ntg0@ z_bzlS*_rnmuL)?EY}AadL)$Ch#jph!|L*-Yrj6N-mT+IKCN_ZULSquk4DC|t@>o3_ z`pBvp9^VO`7be9GmYdx7B91-+BVC)$R$j<78(Do^R{>qbMv7)Md_-Hcj+vWnnOIqA z(&6}~KY>S!twum{6LnLo(xkYfQBVccxzMbztFz+3Ak7&* z-+cwbm>A^=RicWb0^#6>R8 z>4Hr+@56ND=H=G3n$sHIc8^OqeqcFzwv8i&%{~15@H3J7e9?OB*vNyMtMPjOR#@8b za7p1uYie$>*PL|INw2eD?-u>7)#5MhVZk1R+EVwr`Sl{4o+hI*!)#2fa|&)gN&?RH z^@dYDk84H}y!z-fo6`izEv`d)2K zga%4*CnY`p?2T{Fmy+o?R5Nz`TQ4f`!fvLV`=pQL^ZTqn-mxetWp!FEFN>xF@4XF| zi55@i#kjbi*>oz-uPxKXBbHM5`Py#Y-xX3wUDw7@LKpnKR82Gt-9*g?@b)(G0d6e4 z%HNdE1Skr!AuRk){kDzon+L+(ziQJ@m0*d5gsgs*8eoh%8x!MBFju=uRdv55Ux&6n z(wyxd|Hw3c+t^uT&RlYPxa@PJdmYLKfnYyt%RFMR245<&_}V=X`}t8SE~88V_;Gwh zSk2i}LJ^xoP@4;&&`4VvygaFTdu6=kkY!yFTkX;oyk3+}c2LNKSzC<1-t~gHjtEux z`Tax)lK*g{mc=sbzx~TW_>WU;7q))6Enep|6V@8hW`tVd9g8fl5uKw;S9U(XMQc%!A>wD>~$ zyYPOGW(3FS$k9t|Y|N>o-5YSzy~V^1ww{{04s5{nhnh3U&(7W71zd}oTKbZH7w$y< z`3%R@360D?wc!&vA0Ql|wRL9}nO5=c2d2QU1O>J>MK(8zX*%{56UTR9L0cgMD?xVM z0{rS0JtJVj5ygSi9oXUVugpmT1(J%@XkOH)tcUuVxl8GHdf6%cv|l2$ZXf#FgkPY2 zur>%Mq5tCf&Pyw!<=EytRiwYz0HeQ6EYTNVk7cYxF$j}`Y`4E^eLJ7-R5o#OtFD4n zJY?W#5Rw()FO;{ln@PtaNjp~wsJd=W&0L%_X$`2LUXKnzLLu4R`dv`qyMRMdY1zwf zejy$)TPFj}*6td=yUh$Vdx6U+#q+$66JB1bg~9q5o@q zBE2?N(@D7U0GLX?O>psH78m5!N4E=GBW^#Wblyt$cN|gXgRHjw-H09Se=X4#*ReXw zQ2NcmkO9m0kbZk`W#MLJV~P5h9rnSOmIU&+re?e>lE4EUWFbzo%e!dCj-3qgGENfY zVHt#9mltoon7&0nk++(i_{MJjQ-VkS>go0~lq zDHS%}yJ5U9W_l}ZAR~3AyK`dG$8Yy_e8hn^G)G6zulIX5%znC3{&_rS46GLJc*?vb zJe(v=S&p$yxjk*<3tXc&E>P{(TB9GM-syXdgLyMAXNo^R7!BmuD=iD-TO*z=o=!;< z+{<#bR^#X}k+X!4!Owyk>n~K_w>TY$dDzc1wX)Ch^xs`s?X_!z-)L{b1}*AH=-K?k z_P77Kt{f<^>wf<)a*j8%kAwvH?5va1b+beuI!A~U`&7%C4O;Eh+DQKr^`5pDAlBS?o5mxX|3zV3#8A90XQ)# zBmPq^Qz@a|yS;W1CH6&@M{S1UHLQHehT^UkVZu$2aUrgs&9w~;x8`wj4MNu?%Od@4 zhh$`xotA#&rA4q*5%P)_GCRj9E3*UIIZov+m6k0z2cog?b}zT4lP ztG#Qxa<=z}S%89vpCOGqWSpjwGP7qF%Z7j_x5&KhJ`l|(3GxbL)<%RS2CC(XwgJ)G z9ABP@=*O)N#kdcq)*I-DVeYOve`GZcce1q|p~FOO7}St9sKYf91H-S^_{Mg2{vF5_ zRigVyYwCjO%18@+uJRW9ajx&^{sddblizw(4q*oN3 zem8Sl4F`$6ktk>hPboL|L2f;xpSq_FH<0}h6yZOD@5THlH5GiaW##x6U+qgd7bEZJ zrzfDby|!d&4J-n(vb2*eSrD)wvxwvv?TLR7K0GQHX`q`R>&U+WKSgJTHk>Vj_Smt3 zs(fJwPu_R2%H5(yzx(T+`7E~iILx>Gy_+GX_7^O!<5Qu66Iut2*c6@Ut21?InHM?o zPmKljQpslclraLh9UK4h> zI{Fe{Ir*d9#MK;>cr>bpTbS)$)g^$%Uh<2%ux{%<&E}yrjY@Wl>nc=_CR}>k4E;SU zom@x}T?56vKbB1Wi%)j?yTkdt5RW*T8Zz;+*4N)E(5a~;npuQj)#-?ZP^5t1XuA4u zfg5RciRyGl)AVL-+kb-pO_sH9C=5@hPiOz9L+#PZbuBZqOA=*+5eOWoIvElM@5}2>%k+wt*?CKP6?3+!hyHJUc z<@KfOaHp651-G=^^;qX>Po)eZ==th&3?JHtW3&$WlmMk=)06h8#lJjPm=p$HODo|^+fC?P$xU$n^Ato? zU+go?`uP&U!SUP5E^!s<<<v1KgtTNFlIN5hnvya(@pXtet_>U z`c>XB2v1zDA3bLyPiOk^xWYKN0`8|wuA)`WlbZ}<_uz73(ke45@LcIv-cq#Ctteu< z14||I7JCYnz@eUQ4rgIcC~+H~?@W^UuTM4?ve)eyzoSUyo18W2C?w~@Dx7AO)ub#4 z1tQ^`yu{q`@Tpcu^@=~=^YhDdYdKY}2bG;u z&vF-byNxWP=Pr&~2j=bc2Y(C&TUdUEeWiJpfwT8_Y;K}HKYc)fCA&e9dY7Gf`@>Hk z83+A|V=*PwfBwSk;a66HyXSVs2KrqO;HEN9Io$+o`rmJNE!-oguB@DXYOT4uyRG~DKW+ZpSB z_-c#Rx|~-$1>a%8Ve<14MB5fs0JYCPJk>t(4arFcl|^6fnBQAk=GO&#C_ie~w+tdW zf?eDbeanOc5&3}xgJ#Ea+ePqx_K`xWlT8I92pSh+BA8slX8&ZYi{*T0SNAMsdcts_ zksjjqC}4DiZnhUPQtdgp@waB_@#FmEekQl2DKorGbaAUlumVIIu)r}?;{>fV35DaB zw6>Ps>UH=t`WRH?Pqcb z+!A^>Im!JVXc*6?n6D3nyYalt>d6|W$OoeYq;(B>F6k{?@!U&GsbzMc)kgLL=4Tl) z1J0yu?WC}cgLYZTpCLo=cO*E0D34WR%UiiQ8*jEF$52o#C4@k=Tz*w`H;oOY zDY}eww)fhoW(6Lpx*j5MGavH2514(9-#b~Nh-b4rzFS}R1^W+2q3?TsA>^x**&mXTtaoSEnP-O{ zrC6pQ-nW2WQzU%cgCHwdRrO2DP&YK(do}+XmWN>B=yxX3gC8{+@30rCH427N7Ok~T>9beR!`8?*z|RkW2W6s<%4 E2STKfivR!s literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/ItunesArtwork@2x.png b/TesteiOS/TesteiOS/Resources/Assets.xcassets/AppIcon.appiconset/ItunesArtwork@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..d530bc1e29c9b24c846d23cd1c6dbb752bae523a GIT binary patch literal 28153 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 Date: Mon, 25 Feb 2019 02:08:47 -0300 Subject: [PATCH 04/22] Adding .gitignore --- TesteiOS/.gitignore | 79 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 TesteiOS/.gitignore diff --git a/TesteiOS/.gitignore b/TesteiOS/.gitignore new file mode 100644 index 00000000..4774569d --- /dev/null +++ b/TesteiOS/.gitignore @@ -0,0 +1,79 @@ +# Xcode +# +# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore + +## Build generated +build/ +DerivedData/ + +## Various settings +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 +xcuserdata/ + +## Other +*.moved-aside +*.xccheckout +*.xcscmblueprint + +## Obj-C/Swift specific +*.hmap +*.ipa +*.dSYM.zip +*.dSYM + +## Playgrounds +timeline.xctimeline +playground.xcworkspace + +# Swift Package Manager +# +# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies. +# Packages/ +# Package.pins +# Package.resolved +.build/ + +# CocoaPods +# +# We recommend against adding the Pods directory to your .gitignore. However +# you should judge for yourself, the pros and cons are mentioned at: +# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control +# + +Pods/ + +# +# Add this line if you want to avoid checking in source code from the Xcode workspace +*.xcworkspace + +# Carthage +# +# Add this line if you want to avoid checking in source code from Carthage dependencies. + +Carthage/ + +# fastlane +# +# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the +# screenshots whenever they are needed. +# For more information about the recommended setup visit: +# https://docs.fastlane.tools/best-practices/source-control/#source-control + +fastlane/report.xml +fastlane/Preview.html +fastlane/screenshots/**/*.png +fastlane/test_output + +# Code Injection +# +# After new code Injection tools there's a generated folder /iOSInjectionProject +# https://github.com/johnno1962/injectionforxcode + +iOSInjectionProject/.DS_Store From 55caab87a0e440b637c34368a9b2ea2ade11b9f5 Mon Sep 17 00:00:00 2001 From: Brendoon Ryos Date: Mon, 25 Feb 2019 02:10:00 -0300 Subject: [PATCH 05/22] Adding color palette and custom fonts --- .../TesteiOS/Resources/ColorPalette.swift | 22 +++++++++++++++++- TesteiOS/TesteiOS/Resources/FontNames.swift | 8 +++++++ .../Resources/Fonts/DINEngschriftStd.otf | Bin 0 -> 29432 bytes .../Resources/Fonts/DINMittelschriftStd.otf | Bin 0 -> 29448 bytes .../Fonts/DINNeuzeitGroteskStd-BdCond.otf | Bin 0 -> 30452 bytes .../Fonts/DINNeuzeitGroteskStd-Light.otf | Bin 0 -> 30424 bytes .../TesteiOS/Resources/Fonts/DINPro-Black.otf | Bin 0 -> 88940 bytes .../TesteiOS/Resources/Fonts/DINPro-Bold.otf | Bin 0 -> 90228 bytes .../TesteiOS/Resources/Fonts/DINPro-Light.otf | Bin 0 -> 88240 bytes .../Resources/Fonts/DINPro-Medium.otf | Bin 0 -> 89060 bytes .../Resources/Fonts/DINPro-Regular.otf | Bin 0 -> 87364 bytes 11 files changed, 29 insertions(+), 1 deletion(-) create mode 100755 TesteiOS/TesteiOS/Resources/Fonts/DINEngschriftStd.otf create mode 100755 TesteiOS/TesteiOS/Resources/Fonts/DINMittelschriftStd.otf create mode 100755 TesteiOS/TesteiOS/Resources/Fonts/DINNeuzeitGroteskStd-BdCond.otf create mode 100755 TesteiOS/TesteiOS/Resources/Fonts/DINNeuzeitGroteskStd-Light.otf create mode 100755 TesteiOS/TesteiOS/Resources/Fonts/DINPro-Black.otf create mode 100755 TesteiOS/TesteiOS/Resources/Fonts/DINPro-Bold.otf create mode 100755 TesteiOS/TesteiOS/Resources/Fonts/DINPro-Light.otf create mode 100755 TesteiOS/TesteiOS/Resources/Fonts/DINPro-Medium.otf create mode 100755 TesteiOS/TesteiOS/Resources/Fonts/DINPro-Regular.otf diff --git a/TesteiOS/TesteiOS/Resources/ColorPalette.swift b/TesteiOS/TesteiOS/Resources/ColorPalette.swift index 6567554d..45cf15b5 100644 --- a/TesteiOS/TesteiOS/Resources/ColorPalette.swift +++ b/TesteiOS/TesteiOS/Resources/ColorPalette.swift @@ -6,4 +6,24 @@ // Copyright © 2019 Brendoon Ryos. All rights reserved. // -import Foundation +import UIKit + +enum ColorPalette { + static let jet = UIColor(hex: "333333") + + static let white = UIColor(hex: "FFFFFF") + + static let black = UIColor(hex: "333333") + + static let rossoCorsa = UIColor(hex: "DA0101") + + static let middleRedPurple = UIColor(hex: "EB7676") + + static let silverChalice = UIColor(hex: "ACACAC") + + static let green = UIColor(hex: "65BE30") + + static let red = UIColor(hex: "FF1F1F") + + static let isabelline = UIColor(hex: "EFEEED") +} diff --git a/TesteiOS/TesteiOS/Resources/FontNames.swift b/TesteiOS/TesteiOS/Resources/FontNames.swift index 90151b89..60d21adc 100644 --- a/TesteiOS/TesteiOS/Resources/FontNames.swift +++ b/TesteiOS/TesteiOS/Resources/FontNames.swift @@ -7,3 +7,11 @@ // import Foundation + +enum FontNames { + static let black = "DINPro-Black" + static let bold = "DINPro-Bold" + static let medium = "DINPro-Medium" + static let light = "DINPro-Light" + static let regular = "DINPro-Regular" +} diff --git a/TesteiOS/TesteiOS/Resources/Fonts/DINEngschriftStd.otf b/TesteiOS/TesteiOS/Resources/Fonts/DINEngschriftStd.otf new file mode 100755 index 0000000000000000000000000000000000000000..ae85f8ee3b9487c8ed754a72d2d14ee5c5004243 GIT binary patch literal 29432 zcmce;2V4|K`#3&($L`{;o`&^M@7%q!U_&YPE*9(^HKGnGLGeh5CJ!6x=DN1k=0gb0Zix`;KYZj!J^E$!MT8oUM`)1s2)8k#@}|FD0_oEb zYO!b3^@T!dKV$W1?rpc9qbtv zw%j)yAvzu*t2}>$r_T$=`9~q`G1%Vz5J5dq+C%>45N_`uY>ZyA)b;{GW1u~&*1?|9 zVFW!Hl8CW@7I|<=TgvhVLLL-cI$5D5Hw=1OU5dpsn>kr@E-PB}W(}5q5 zQuzX6(D_$PtB-Eo>^e&MLb)HpN~Dlu;Sb6wuKe~4T~WS(^x05KuIUed1dY&SB>y5M zVI(#{Su4dFg*$}D)w{%8)SYmGdRU55$bVLH-ak}LhQZ%%+AN``Yv<*L! z;tJ%|Be_&7qWkad4}x$#ECgzd1~vEuH2qD_=I`VNrK0vca!Hqpd#H-wd_1 zTG|l*32JVYx?k_yub)#_`M0}%s86VuLGKn5VKf9s=*NV3hlYoRhI<+fJ`Vb!K|%WP z06%|Ygg)F5VF-_c$Pr^E>YaP`a@M;UeOyEQBE0>>1AL9$9h`df8XynY0LbvKc*yj} z0{VZY%rJyU1cZj@>q|~{(>pnV*U4#sf2h$rG$cyz?BL|k%XvVsXP_a}=<5&^;05Up z&V76LasI0&-0A@_gy<&(7>$OY2EgIcRNb^YDn z9ehKP4+=$I$N+vf6oVp=5&Xg6>VdFBkT;};qcF>_rzOn?IataCp&)R>Q2_Eo{*WS< z2#2x}V8c-q{K`2;KrIs?#TDxEgEVi*E0^(w5^{@1$Tb!6`k_du&lA$RLn$ZJ1NA}! z0J;%q7?d5*P|si0QeQ`XJAa=(!va+Vv>XbM=>OEpWPn2tZ8|l?%Dw>rXDC1?_df)B zBjZno%K_kWhSXqyH4y5Q^Y}t+5Y+6|P~HJ@^hLcGfq0putjfe6f76@Wsgyaz%1$n&CXz+PLiVwJQnHX^E zM_3*oKPXi{%5q4~BiEt__~dajLjL;j0vHi_q#__s0Hhk>SH?vI^!7hnmPf%8pz^iQ zf)U{9j~v06EXD!SKGKaxOPT8Eu-|2 zzW$0TU|x4wgKjzk`8flL^{{kLCa=CQq5A_d4ut(^Fd71TS}aVL;eZHNG!lqmG)%s+XdDdJ z1ek=AVB?$ulg$lHL(|a=^eJ*jGtn$G8+o8PXfB!u{mMmor~nnB5_BAup$q6Tx`-~J zE2tb@Mb}UTx{hw3o3Lx$LbuT!bQe89_t1Ux1$qR0#FwZN$YU1_iWiVUI9iA{p)9l) zZAFXFGV~K#jn*PF+J-)$pMe;*px5XvdV^k|A5bD%kA6c*C&KH7}l!{Gjis?Y+M zcqSym@|BNHqIGB^kn<`a!$?>dtkDh_ohPuHdZU*xDS`-sPym63S%^Ct<)8y-A3BJN z&>?gf9YMwDC^`l`Jb_BlX>$o%H?nBlHDr zxHfIubZFzyR?(Jf+qA7sTXkDaTcNFe+tF?3w>8*Zdj_mVT^+Qhw~X|Bz*{EZYY((C zl$c7)hgKFtE0>{_hrhSN>09bs>-Cma`u#;KpFk_Ees9GGT0s&~S6BBn8VXhe*1hfw zLUnVYUHGdTgV1llCI04&(67^fwg0u#v!Clz5PCM{+3088pXr_rdiupvPs*RPQ8OKVhMelR)`=1w7D>==Sf%8@x)PZGfAL2E;Ubs-pZq%q zBS&@-2O)7VAr5JbL>GlPR4KN!lKM$Wzr_7Ah-}@YvT1A8#7_!a_wHwdIzlb5W~pIC zY6EMJ6Ra_VVI7$YYsE~U&jkRJ4DEX8UpnAD7ch7fX46H$g}f?M!kjguUkMgQ_kvZG zRV`^95)fi=@C-8gg&TnP3pXr`^bCp&32<^6I$}~Vuq?nb{UOdNEIiaF(%UHK=svuk zA;K6CEVGPodI=AWwqzV(2r_zx1q6in2809{V}cA35tjIX5Tn5_+%qW5Gu#;98RQe- z>nqpNV`#sK$Y7`hxGdMm@K8_RfPmi4-TU@~#O~dl8=PK2p|OS#KZB*ju;IYf1$cV~ zMFd34pvyU(oSl5<1^CVj@^pxZ3^RlWgocOy%LiTj7;7~BE8gfIZunP910Om(G%Uu# z`~Lr7mi01^_y349)lc&`=zRkG0*szPK{0v*aPmID$p(9R`@`4*bL;8j=@n$qM}+zs zO`hQfy>Do^zJ447Lj3ebe*>eR2CS>Er?(+O9~9ti2#J95#!!7sXr#r)prN1{rM>2z*vqCQ|pfpQ$HRb07|IpcNoAA4a;D_U>Rd%_WVx=66Q}Q5(~2) z0H=|9=t9FIy8h0;1A*4_@bz6X_;l4r0{mU|3?L;UEXXrP4g`k+!3D@Zi1ZE$m3s(i zfb&5}gs&l7X8lb8M*q-AqXjNQbQm0bBA^aaxO}Pz(OW1y$}{M9NTHvAw||Cus5VF* z3m;FT=YOLA57=j9j6?;<yYh4K@nPHC?kt(>Wxrwmd?C{4;$%C*YP%6-a%%Hzt@ z%4^Eo$_L6<${H)u%HC>-)oiN}tA$pdS#7aOx7ua3&#KVss?|-amsanrek7ZaYO)>K ziF79Wk;BQ6rPO)q5_OxZq@GgGsh8A`6s8f~h_<1% zw2p2^ccQz}P6c?d+K$Hq=;D+=);@0w_{km5wFkUPvfoRdPWBh8f5qsD{mO|iHN2dc52em>=PJD%;x%-el3&1@BHash;mhiQQshMFBetu!QPYdEn=3mAUde;Vt?w|%z|mb;ma1q2;B47Me)YO zAnOW>dz_WDW77`p?#+u#x(IsR;^pg>Yx{=#xsE!vI4^%&TGkHTdg_{0^y0Y4sQ9fr z3o^InZb(_PW}~1Q$c$mwL40XeX3;*#!`|#lKB79WWx7$SD7n*}U;vlen(+tf!>Dt; z=NJ}+g$XR~ZP%Mo4QD1TQ_n33I&-EV@3=6TXSXugv$}uO`IFli?f`x#CTH>7P3a{) zl>gPkOmk(}u%1px*|I8KyLD^w=2YF*&8gcq@3LM`aW`j~X;n{rijJ;BKFeS}~2wvq>oL~rZ? zrZ*UHA=F#)00Z%ohoD-=i$f}Z$YgBJn?IPj*Yg;_{CzrWYuYa11jW6s_MlfXwL{b^ z`Qn7CK2I@Uc^P-JGqY0j1#XhHWOdDWlEv)+o98I37afQ5{iK8OOh0^ZIFI$UjwGud zM2+q``V~2ddLy+VUs5VprnWK7&Rr622#m=t67Y|9?Bazh{k$|RIf`NDG54wZ#;ZN3 zX$;$sxy_b9^)IP$3|qKwUt!@sV5-7oyRT4S*YUVpwdieP_wGwST%xg~*vzPChIKl( zpzLH$c7CP+Y;;e9kPLqf`=eDdMG2P5UIrZ#|@8 zZ_uX~*lv8bk3suVnIaosni2yhj#~f3jyXM^jp_E-8zjP;ULturrEu8 z>gJu9J5!g$3Z8W6n)n1CEzHX+QTW5%wI-Vvm0Zyad_-L-4jMplx5F6K-Ql?TwTeKK z88>er4AzHNsik?+Tnv^p(;eQue+Q^5-m)TC_bDB>BrY~)X=k*Lc{~4o##a2XQFbnPQ1k3mNtd_278Ui5%VT!y8Jj zYM#X(_b(EP{JqlLv}`ypI-1zAJi&fyI#{I3w=>Z84~D(PEss6Njem^2=nQB!_m2{L zea5gmOyq{N)b-o6*;#Q$)@+8R{dloAZDed&KSr8Q`!cGoccwgkeCN_Dfwh{>uZ5B} zC1!4Z$u6GDG;id0PGV|RwG->H!TK|{W|k;4G4e#4?ZtCP0UUhGyw-$6BN=WkEB;tc z%)|SX^TZ$3cwf1+k5Un3W@T9r!zP&Ra5uI*A(LS#+>*VpGH+>?P!JQG?xl4%8ABH8 z*jKnGxh;G1jsqI@b%I%}HL*5(%ov$jGoVODq4=|jIAvCzvYpScHU+T^+cEjpj7sgd z*Ka>9k2p6ZSI25+g-3_Q>Xt;U4jHDArqgUd;EKq|$c>w#*kz0zt2W;!Sut77n#HYV zn|$+HFx+kK1v_asX-HqWbC+iC&OP}8JDd3iw_zpEY8i-%g%vjJ2L1ae4qA2 zQOW6@IyO6@+8%eqA-I!$HH-V@zqg8ay?yS9gcSnW_tiEG8{=6LDDz^b>2o^eR zhPfg-vNpS`ovO`XS&S&wMBubaB~D}0ZSjR_$(>>iOLB8o>Fg=iCdb^xjN6#mp-Xwz zyp?Akh@A*l4K#ptKxT*tM4=r}YGbrliSqgr*#xmqL8KsJ4I*|SVk0895kxW~wjyFZ zBGM4C9T6Fb*o25J2<}ISwTRe^h}DSLiHLQGNJK=Ed}{+&3B(RWq#|Mufr1H;(!e1Z zPQFAI+^)#XiYzb+0-;C+h&)y+8Y=|FWW_SYF~uWArQ$0^mEuQbb7g0xL3u+dS`D>I zwkjfdGJrIZ>&Zi8IV?znsaMoH+LiXC7t&GmM*1ZEi2l~PsdXRg!PY_6G1g10H(6hA zWYeg9qalq(H1ck=tb}T!a4P=k8*V%{cPmP7f z-5Pr}j%*y;czxp=jcb~;YcjUUye5mA6gPR+q*+0wn` zu9lZue%-23t8T4Ew+d^uq17!-TaA+@NpnuySZkwgsqLtB&`#BcX$!SSv?sI`+WXo{ z?bq6$v{Gxnb^F%#t%tTA-8!)K%GOD(x3)ge`e^I&){k2M-1;}ZEAP(F6GQkYE&&giK+-a98+J_@HBSpXi)*3v}VSRNYZsnXW?jSZ@ssb7Q><1XDKpsrqU9 z8TyCzi{&b7AR^sZK$+fE~oFrXROM~$y62G7%y>wQM z0Tk zt1?e%N;Vf2rU_-z4fT=Ojj^LNQ&t(~FB9CQiR!Ya6jp9M^b}K?`o-IG2Z`s`nIApF7BOby1WFW!tlHqFKVbU=Cd;Z_$;pSo6|`F!@}o{k<9 zhD_Q!`F0(`|2xL_HXofg#R^ma+n4yw# zuGC%PHIn+U)T>gm77D3AY#j~!uU3OQq+FjNohhNk}>B&IIv=xTD&@=VoT*=4M8Q2(`WGkf_Lzkf^L&L3MOKj~$`c zjzNr_3n?Mm{D4#)1EqFEYG;V!s@%)hdJ=WWfaxlh~l9_89wa5G<`3o>@@ zKfQLopU+xTjK3g_m)=3y1T&7R!tFj9#=*Xa;=O-}-(L`*HV3gS3*8HKgdKR8%C(Y|X;cnu_;k?wbb|Yzz=g}6B zc30sZ)x?RachJ}GmNC-t+U8YMYRcAq2edgE#!wwF(+gru!NHLk2ZX(L!L%Qb$J1ZU zJ~q-XI4&kyz|-*D`ihoR;o~Og+c~I&q9l#<3%S^^($quakZj5b6z1OSj3N_~V`zKOvS()8RIkr^cTXP1Ot)?O~j zIgqW(%-gv88x2N@`)3sirH9w&KGi&0wkNDmI1uKUF-JSc)8rqf3kz5lK1hS-);8P3 zVErauh6W$6!b@P>?$~0A!W#Swx$V$~jBhnBR%Mv-g`;6}_D<8fd4$hfsEZCJk{>e?h}5jlw#Wv7y^ZG*>%U}eh3WF>A~nZlpM73wHPDzJ)TAl6dy#v)%$%j|J#thZ9e3MYdkt1}F)*Rx%W{13 z?l%?0xrg^F#hwq9;ubih4j3u1LuM|>yYTcTR(^A8ub+p2ZLpvoPnjmhGv`dRcYA0h zeK)DC)UxlzkzZfU%g@V&lc(o~oT%g4XSf|E@c=wr>W-U9lO-?71x{=pk^v8p9I*kn z#@zLvZ|DY7Q$0G(?xK~3N*XxF^}$XsKJD;8+!ot(mh|?+C3akFLh6pq$vaba>Qtlo z4!r6$3`2AkcCQ957PqVho(}6G_{*Q;X1XKv{m7%UvxVb1dvdXAD`lq_UKYdlYF=TA-HCEF^) zqwnrK{8muC-o?z}PuT`Al-WLpp;WW@zKp6E2k%bDU4SoTR3?FkArD`2xKGss1ftx!lR;6w=EV1j3Yz$9QC`Q#l(%u zmpaw!`MeBK0CoNcY%Sd;xA9UxaR}DoL!=!gb(S8HiTDxJ9>a@2gM&?w-;6hB@S^K_ z>Ya3%ETi7z%jEi6S2!_rq9oheCh?5aLTm!(Dix;Z^T*7%t6Ay6tGq!93P)+2SB+Oz zZ)9-ZTwdx1IErJu8QfkhR=eX8^O<%DqqDP>tiPS|O`+^+1+^Jpyh6Q_ zF3Md~;78<*gW2U@X|OQ)j?_eu`ckTg?#xb*E4VS-3r}!^8C6pKqJ(LvlZJC+EoQ2v z@9Z&*W)$CvQ9YW^r-`2^MPV5;is@II5YO}%6W}y&_p1k41>N2;pWiNCQi}KG^jWpu z@l0RQ8;Hqm}eMsk#gsRy(tDFpTvsW(UJP+s<>hSA#1}tIZ}=aFD4PT~1u8 zQsM=$LOcC>7CV)XsTo}%?~KoCywt#k{pwFvQXg~PuTpO6sK!n;XC!snj+awzwc|ODF+8`Up9}(2 z*B<|<&fl7II5*1}C`dDDU(>=M|G1oD;l0#P4Rb6xkt&D`+~pm|bGueCWf|GIdv&VG zOf1ipw&l4vsH(IpFi$`>Ln<**O`JC?NARk0$qx?TUC+XyeLFY1WU`vuE?K8N^t-CX z=y>IAomgQ9lE^u9?m|=c%s74(Q=Gr6AWOHtBNe#VxIo|n{bTm-UZWH3tPD(fDsRTK zO~g!IIe`yl@J5)7vl-mfOq7_FCAKU16+8s|nMLZManZ8`d%F7bvUfW1k{u0)=yJ#z zX$s_VTdMTo_fjZ{m6X&0pTkYCmpsjzN(;$EaWGT~{Ir*eIA~TL#I4m+7`#1||BQKW zZr+-EJd(#R>2VB*h`7@4CKb3(4>N{_3wvTh_RiCKgc<{*bcrArE8WNgsGotzb^^~G z4+T-#Lx`Hiv}IJm{7e{mBhNiJ0lVKk=|@i{n8%5dCt#T34%FkpUF#Jbw;)EhG;(E- zn=DQkmK2f}C4}wR6J4r3QjZ^sd(Z)wstt@gASJ=H*TTZ4$s(|G6nEvxm3>FIZb@9V zMZk!j9ANbI)N#4zHu9_aG@jeS?ZaP)gqqvBh~c&@XSkU=cy8MwNLbEu`}XaQ30S9t zm2_=2ep>0z#PjY0%A_mQ^t`d(3nkUm+?b@3I$U_Iay)i`ekPdht3l`)?aXk;$MIaW zEY8f{!mq(UEAfYTeiSoGdKk})!VgJzzBbviGI(#{*NJ&b5jN&g%tYx{JTo2N0v>g$ z?45vb!31w?$$9~wgQekubWSdow1tm{O5Oy=muduowK3%z_%J~PZy_xyk=+lbZW+2 zFISz^l^z@B;R^==`5KzIQ>nZoC8;Zai37%aGk>Eh>KXT*dx1l7m706+8+P)B4&*hT z&n=!IOrNxq%1;gVl3VRj?4PqzNTfqodIdUaq|UVG((phbX3{z8?D68yb4KrkH_tkOpcN%=s1GJ<4=6Xiz4vr%Wv-cDo z(e68BT2!RtGGh)Mjw{sOJb1h$OQ-5CjgNv85CLb`3qXXpIpqU~*O}D9`@rZNO~Box zmQmt%lTD#Hr#R2d8M!#zw_42^V^iX{@7CZzIz4IYhRp&Ow_)?fjhm9JYZI-CpHhdC z^0sI1w&qG@aqBSfP{#<%E<6H{YJly!UHcCnlrku^a+ddu?9i5 z3kb5gxJ<+0(6Uw5z^+#huIe3y&)vZ()i(R9mp(gQ%?(P!WomBrBWj!9=J_F-pk+a^ z;X-6$;L>FY*4&_8G&d(Dt!PWGmfL>(o9IK@lLgz4=IKV=CPN~kR~xmVft!*db-N1E z4j$2zEYDoNM|g3E;s#09)S{9_7td%eY(H`GXsVx|;9Y&3##F!3F%s?J*mhK!?;a0f z8l{?RIkvl0lvZE~WMD$I5(~D~*acG+5>*Pnohi5hkzhd?C=0j;;)CGDj3kkr$6#uf zM8Pi{#-zE`;=)SoTD8h#Gf5oGJv=Vbu(P<-_9A^(#2WpzOXAiiFV)3&BUkQ7Tb-@_ zPTGd$IEe^3s-V+Ye~d(pDv=>9~j6z9+dC>%*eg$7sh*kC5mn zol$B|_Mue8l3!)bmP(rfv*RoM3#<1`3!NPVQZlvUH|q#-ea9fx8oE%srqh?(IoWDeR4j<0mo;vW1M?4Y?OI zk3ZWxx=`S5JT6Mv_geGgirusGgf7>}c{!^$ozfiHQcwbQ7wiZQ(s@3krKwVcIyY-~ z4qW5x%Z>=qb)rLz5n-W`yX8|T9#ersDu}J}uQC}gP#1d_myl7}MT?JUj})b4X6uT* zis7Hk$l6v^tU0ozC~CJ*44J$<$;=4fG;gi9?_!ft=T+k6RqRPd8JGBaYrMA^G9!h& zck1%e((>}sS(7Hsl5J_Z0DCk@XU*fi01D?9B{LYuK?RJqUE{>NoG#nfw;9 zrBZAwM$F))3FaBRss}{jc}g50N6Dca2<1GO0Y{S|IHuad4&WGI2dZUupje)3Z>n%q zIs;R!N_>MgRlvkYIZIKJ#u;nsbKsCle7_Qhq%-1jwWJwLg zSX6>lcdi`p=1pbgn>Pb0J9i#1ptAr11oyS(&CJfBA%KjZWuI6O!a&z^pzAmQx+YDq zgZ|a@SZgM*wHYsx|C@(lYg->4e{H9(|DDcbpKxX|2!yg_q0q6(T&9!Q8@K4eb6O;o zhza1yJd1;B*MnyylI$dHA_H`~jK|;E+D)MrgvLaKMrP*-XX%Wj%q=_Mw08YRGJVgM zeYu(!b_3{`&tjJ^g45bai6NInu8tU`nYb~0pP%5juOzBe`|S3ur*K-c6R)Z5?97xZ zneoQ6l(%Z;IWWmg4tR6KJ9dnC2e+AX!sb(al*{~7yt9ts=HGlpa+!|2_$+}RT!xpI zaba8$_OF@rDI8h5F>BE z=%x1NbzIS6Uf{xFJxQ);B6Fgggrin6?2xs}>EfLZ%w4IC9U~b}5NkmEJ_b0m&lbn7 zjMOePX5<&|K6&I20P(4xSKwHU+fn}u#|pM?%@CkCbW(|z*UTHj*YvOu<}YzdAk1Il zs(*_E-u1v*b6NG(>I4u<0VlN{w%EgPPmT3bw;oJ&Z7b?ot+yJM$nQlZxtmgTk@< zX9}l(Fl2f6ArA!1*)dn!x5pI8S_e0MK`CLWM&WBbT%CvyP^J0VMF;Yt<|GM;9o6fl zLTV}F7nF585jMX<`F^pFMVxa6z`WvXDtrPn5XUHHqcpDYfC#{82Gy2z>e%4a0v)G19~vDY7m20 zB~&@fS4X!hhgM>R*~GsybDze;UHu33cplF!SHpFEHy^{|$Z#P$EHKSe>o|G5bAs+I zHIU&Z#gAbI@u!dPKDAqy;d3J3<~nPxPyF+B*RFpHn;}%=3N_GNa=dhLjJh+U0-ib9 zG@A#`6ZTph`aAPEiN~Ah(?`j>^vwArUTG&iqi4<|htsEzk*Zk?QD9;)j}3sa_S95n z?~cXc$-=s!fUowHA=(tQFm~IXRRRd6I;sn!if@x)dk@AP)4sfP`;`v6!C>Sr*(;Pj z3CQ#sN$y+dmp)J1ZOX{5I?0U=+!&I!5Kz4e4&`hm%yOc@{LaM4FCAQ%!w0uzX6Yib zkH;4^yipj#%iXDez|hU$8*f}F>@xbLd-j1t{&ql?H1|?FMpd3rJu*r}Rd`_aSlHu% zQx)^5iu9~Qhc`!s3IpiCB`bmiXF6y5iiJ9^RGLbA#w`y49{$0d?I5SXBj~cI{f11T zG;d4R9gW!lveZ{0C6y->dDu1uF+Hwxc^=3dKce; zrLjLg3oi-YVy;5^at!9E8cuqvzAHM(^1DXTIjIpaoDx;*1bN_=w6*k>ET#a%Z-EO1 zAxbsgSb;sN=kW3wI|hy)pI5lT>AI&nfRRdPk2wVsDQfLq93OS}E;h(lx(_RHzsjqX z+`9!lhr<}0_-k`D4u?B@Dw40i!5=5z;QLituK9PsHNP!f^8czXg21vauB40`hkamI$OqL@!$Z`bS%mktYhq=5vZe~ZBrLZ^#0Kv^+Cmr2zxeSo( zujE1ij-voa4Zs1%*bol}?~cLEf2jNcHz#mBZr=RaNgM!G<0;Zw^+-nSZZ#54bkgve z@9KHl;Q-DL13(IFWpPy_#pPvKRYvTTf0ehzAJn6GciRc4XI{N}`t;SSGfz*LFmvVv zK_%bXTJDD7_y+g2WiuHg4~JNqdjf~pv!1_$>o|?a^C~&Rv!Y217x1i>kv73&mFdsq z*D8i*@La|BnfzX5|Ffw){-(A_?u6l)2O|sQaArAX%b!&chwkET6?kX`R>6RO70*{w z$Ma)-<}QdCt8<~oNUPKpcw8BUn@Hp2(|Z#<1gR$_4w3x&gHRH% zE=wC_biiDbZ<Zu8wbCo!=l_c(1?^p@y`XBhQw z6+oB_Z-bW8kCuElvqHF*8+v3^U}VO^?SWfc^_`cubnoJf*j6y!8KN(7Q}k8de5k%S z6_3EK*i~}9a1q2~vT=30Ah}8-kqv=4mHv`|X{pFL&zR-R{qK;Un|y zm@d3s{$OS_f89(xf?cW&-}hL1h}?;XIzVjk7RJWBh2h?|;V0v!YVNlMAWV4cHfN5T zj{B|Hb`%eC#)<^K(6VPjChli=MB)s)=3Ce`e;&d-TEm=y@vl*2FyB^snz@j8+@hD7 zJBYmb#jxXr#LK(gK{SVXn112&N19`H{xpaa8$a~CmmsM6@?QafefjkO;4BcO*_<-> zPhq%UdP3Ei0A*hut7I_8Gm9bLc%~cVlRg;>U9pK+!^0B*?k5+>HXhzlK`u;>l|i*g znT?-b0K^hU_kKb{EJV z?9z?r4!Agg+{mSiTu>SzTD507^Dbh712k|P2xgCYUNKghor<|oxtvKZchCiz36+b4 zWJ+Ddi4!32g9JXk%u9Z7v7n4wa2B$LpM|V>XCdo?vye3?^R^fX7!7m*lm=xEVT#u< z527%x7jT)cRn9kaCWNi(*{5Sj=ATSRCaGgUQiqcFr^8uv4BwBz-n1+Qi;e#%28)UZ zIao&~!}n0w=@r&0dnOJ82~B3;DcqbBFxyXoU~3TwwoY|ry5f95%P|=%ryTjo3?QYz zJOq$(8gZrZvH&bzmVm`~Ww=vl2nK?)XZDDF9hlGf+5F<0cHjcD2~S*Jl-O?IyWND! z9?F%yaO7t*Z_PFf)_@prgFKF3wzrhoi+vnqiC49~`2joy8Os26Zh}1NfGkhCUkcKr zJ$M>me+ji$4PjQxuLD7JlpfFJqk7@db_CL+^mq^-dBlVKXh%E< zkRZrIhI$dwOZ>wSei#D+Qed{{@$j-`&I#E0qd-!06eLAaASsegTlnq}8Nw(>coy(B zgK+_z#z3AEkS9{klPB}fTx@r_E?1d{2kFi?sf#wcJS6RS2l#|@;tyeN`q#UzeM{S&wIb_S^n^I{@l|A2+e*tXV zuvbLo%Wq#P#g5`Ib;>JJIz&zOUc4wqmpYtGPTihVpj{(b#Y)o_N;cNtQ8~CtI-Z~W zll8aoz-)Z-yv>oqcT_^o>Vwxc_&i+ut^6K$|MKP|?D)dwrrF^QC*qeiW7S)hEJ&NJ z<$mfgd4M!%< zizvjM#0|KUvgS+tR=t_VbEMJm6fr_tD2;}vh;yXbc(l|DFNDjlM(3a15vEeZ#yNVl z)7tkexiMb1GG+Cq%^DDfC#_$XB#3MGs#mXBwOXiMMXgRuPSSxqeM{2jloa9mwQovZ zX{(=kO}MU0Nl04$nMU<^?F)SKIrjaI$gjp-UMjz=>8ReFnUj4;d;2InVPth7Yv|oe zL-x-E*7iR?`nNJUjKFc>l%<K~-_Ni^I#+#$IuQfFL9CgH$urSAsQxW5E(&j6e+Nf%m{1}O05C}N-3 zMJc-0JW-FOB=*+n2`d0Rj3d-dAcW7YKy{vFY2x>kDMa1q?HwKq$FC zeS3bsHap!?AZ-;7t@giyl~;)({3Y~I3{=nA9?+ANMoqvysQHqTl&mLKQ=ubH#1(!` z;*nRR?$j}?Br$chE2X--P-jK8daz_#wRDAF;-Xe7sl@bEIV-Y<;nKrZ%g;{) z?zQ{^MZSu9Y-FSbYG3~7LjGPAzFc3hv=G;-z1H)EIh)e+b@rBLDj;N*U#jTf09|U} zefhbJJv=5G#MCe1onRTC$S0)Kc%(>vDHJ}KT)Q%b7BUm+8aFaCW)@Fuj=xeDa%j2y z7_cdPv#NzJQ61s?vjOmR=~(z;)C<0^TMFOC?SNN<1@L`l6@0TP!M9(Z5Dr8y_=a&J z5kV{^%7}}^ZQ>E}jQBwOrcfzbD!M2f6nzy#;VXx!3J*nqVhMcfut~8^u}g7YQ2|d2 z-zl)-S7mEuTV*HZFy%PqY^9HKfpVELS(ysoJd`Rg!}kvNl+{X6`J0u}s+Cn+D+jAS zR)egjSWUN@Z{=eZXccM|VU=K&2;V>Kw>n^T#Ok&mdMJdFjb@jM&pbR@_wD-F#9qu50Pqw8-O1I+~SA3gf=QHqd!t%_(fakKOY(bip z#jquKAV{;|M%^Nq5?FPW*_mP=rNi=9e|1^^#yxHX2r*%Haivoj`T1{8hK)>I9^#`7 zir$&8V`*&N<5FLX{7PU0Xx9r7=N{#sDHY1-g5{ZkyM%+gHe}{%is{mTvY}(omUV$@0QqJrHci3dhybwOITUnR+Mj?C9wXvAqNiR z<{mf@lI!mu65=mECa2i2utkQ|bFJS}>LiKMC?*)^mO`Dev(TrW`HBw;5j5T!D zjhs2)G|l2AAi&7Q&6T-uHv}RJHJ*p(N?=Jl`hCX^9pR1q!ZmTxp;~wiF77b1B_JX< z6iEn+){Ry zE|3#&J6bi7IeG!u)_7Lx9b2=6fF~mfN~zx@Ms*%UTSLC69Ky7ibNYTJ%@lVGG5uUxWXDa;snOam`pSownz-DG|&Eq`4iu*K;)2l6r& z0)l7Kfsw`#pZJ`7K@}8XTDUMGBTr!Sc4xr5ZBvlIE@nztxZ1{zZ(YMJb@*!<)8lSS zv>@5D(@uC?xNzdch4XVxy0J^)Z6M9s!fi7@^E)&9bj_se zeYO2YP3Sf1@a*dmIu>59RIZ&idc>MpeRZ?o9Y08M3yQg&9L(U&C?DX2`%md22W z<5HtTH36aU7?6ci5;Rz{7CuxmRI}3OAW2V%`cTZ`Hb5hfC{}NIOiOIQ{z`V$o|qhAZ|s5$KP@ZXNrmqRaxpxh zuew_WA4`~Vt7>@Lt`3cegt5rV5m;iU`4E6wj8(;KIb6v=odjE)U}inIf2{7;)a7?wt4ko_;S1lF`@3&$23J(NGnBM zE$ONM$_J17TNC5!ezoLFMNJe_P%|Q-?l)ouXg`_&yYdsz|L_EK6+A)K07LhN{&#`4 zT0x&=*Qvp6Bj>aDA-*1VXusayUNPB%137=2k9h!pT>x(_(TzH6iJMgQfOUZZ-6&ro#fXvPry*64r!fT91XPJ8_lx(&JPOk1NAqS-=NTNpAZyo`HhZ{^DnXdt^geY5onF&cY~!Z z=*%BnS$B*aQ~xV#e2`m~e`N?i{>o4i7FY>@O7_dJfi5nX6`g>3`XU#IgLtBSeQD5P zR$snTgL|_+9lkxb+^vgs;Sy_9{Cl;Ug@4jCx zJ_<_7sj@4l$*!Ct*I^5qZ90JVn%Qq`Za%6*F3H`8v(+_-y1?!wVI>TfIbWm%(CZGC{0<`&PAl4ez zMf}EbC?VFA?^X#O0dvk-5V(R z21>qxl5e2o8z}h(O1^=TZ_vHE=TPDel)VJ)UI%+0Y$aF)_`U$&7XZajfJ{O6lp&{Y zTfYU3NIc-<7cla^{$Kyqy|tLDb(LVQ%I2R|0oXwQyEgx`h5x3Wy0?EWU-y%2{v7xB zA?WQ-^)>v{GIG9un)mP9g_OoX_5bU?x|{Vy>*0srl)9Avt}@Gb$zvvuIMB;KFa1w2 z@b9D20PUY}_t)bDG9i(|EIpxRepq{zWutT zVE&4VWt#b0y0MI@j6KU}0)886{a4EkwEk~%=3nW5?fXke{yOWw#R4pUT0uUB>dphc z&x6?mMs{V&IA3?M?)<-1@O$uo55vbQey4bOUHeD${t_}|<7=lyILBf!gBd4w#Z(y;bJ z>#!4ito!fWk8S>4`hUj%pX>b3GXFHjLUqx<=azX4YtR_y3@Q#~4S@YY7ajo`{;VyU z1MMKCUSFWBD^OOVS+6Ise}i5?Su5apiylB(3!tn4P}ct!fYyM3R^nu6{_H{j={f#IO{p8|L44yGkwVHR*ov%$0mYy<$`u?9?Iz{*;HBn3@+VXidgTvp-;@HRyz#0np2MAuM>2`RG|NT9II^ zL4V_FfMG4@v9kqQNrJYL!88TUb{n8JnRc34aKTt`VQawx4Rmq^a>}@9VZnvUqA9Ma z1tZNY7-?E<-Wsp}tNT4xLKt>HieVls92`uL@9CUd_=zHiV zM|y!mGyUXnP@)$eqaO~M&_GF;Vm()HKf_9lEksBCfiZ|z-sJdRSo zX_~#zXS~5-nZIj}LJ8#bNAO@slmOSM@iz9ix^_U5nsZ<6lWLhyR;>H6Q)|DCj&VmX z{qpqvi!G&ma!}XYDK{b>?m6rBe&T};XQPNumu;Ne#{BuAy6BXVClZN|pJh_~Po6b>Deqe3x-{@v-n7S9|vl%$S&4 z=hMW;X}K~MXviy5sUQ@JW_|6x_(k+Qxa+44-*+f^FzfywAtr%{-2NdE**kTXiAc${ z{YYKdOP>}op7AHL$K#Z!twZrjrMfv zUf-zw|EW=#+zsLSZu(K(o&G1PxmfbURCVdj-Bl|E+ueP%8$LKx%YbYdGEPi z6Q)k-x$yiVUq125S6wbHV1DlND9xDi^Tq>3B~e?=`^S2_j&cZOH%=U9zwWL3*tPfQ z=bEnK@;vuP6~lh)b~f_K`uy@FK0Ro>^%mhtiAeN)(-3LSnn@tqZkxDz`W%hf7SXJIck08HU^R#yc2Wxt;v|vAw!zV4oA0ZAz`7b4k z07<-G3hzgW1fd$BjJIV_NGx0ukin#&?M#?}kdvc1rm6FpDG}KSBCxvtheld-SDyr} zwo|bYp4Du6P1esa8F9KgYR{PJMS zfJoJyhArM?@L~H+xPpzS&fFE8fX zF&Vvb&&5rNaAI8BSDE`JFYB~oBcUg1r9-cz`%^RW-ZF_!(}t3+xNB|^+b}I+W(?`9 zHT5PIEa9x#5~j;Yo0~betkYXN{~x`z2M;g4acDu@mTUXgJ8uuEHqKuZ=h7@a&-ldt z0jKMt0d*hiS9FvK%VenTdAN*zM>*{239M=OAF2uu>n>YcW+}RHlz-}T9Ua;;99gg# zNg7=x)_GfX-PyF3!uZg_p>m0reXH6z@4PvMvPPHVu2=9F;~|K-|35MYZab5VAp(RT zx?x@&nB#pas3COc`W#)3PAvF$yfJAjGfl`CPnz0YJ1R5|EGzxFw7tjqQ&ma*-qBm)IWICkYP1O35qC+BWh8rF5o)@uusvNELhvlV}PC4_raU0{IePeT)L>hYl&Q!;}{z9t5FBp^nT zn|7%|A;CMTc3!YTagZ-&1eU@xgCwHkmCtfYrKZq@{LAcq-JZp8`*M~_TbIvi2#MA z`jxlyLPeBS=`=rPGX3#>+d`#-xgQp?mq>&D9R=$ByH>0je%kW(h11>bHNF0#N$vMN z6Fn|z+RU*fAHG$M)?IP0XLX^{sANaC zR!mEDo}Yt#a>&|)<*FmC1Lh&|+8%2om7O-E{n*^D8&l)v`Z}T%umu$%g%NlZwmVcV zBfIyAabDsY8`>s@@8=Zu7iAEf81*p>mSLaxgE1fHg!ck@1Z~GFk5e7_CD7Nwm%>8V_&r3SIv5!!PRy4j*#^L+OctZ(Uya0H0`Y50 z_-e3||LhR=RoXh;k(TvIkznVmImHLEJ#}{c5jdP&_x8D(3s>iaVs??CWtC;?LMsQW zOiG`-zt!fpI``D$D#GIKzMU82EzXct#12cZxA_pFB)r;_b&S(RD@-kGdO9?cp6Y)* z$E=37uY$bJ?7Nj^b+5b^50;AEZV4N6Jn8%FQUAS3>B2^$AbahG$q$H8(nQoUE6@;* z24?t>3c3^qjd~mg2aDC_sS!&@O9l)yfUf2jL^L%t!AAcd8vGMULj)mwR)fUl1GfH` zVVWs_79hkjzW6mPAJ**XZ0gr&;zRHzD4>Gxi5fZ|$VLA->3zKSuW`dzk1NRsF} z*LXGc)CD&F^b!YVoIv4$tc<3Ha}OfMM{jnXUTt_%k^RE)#?_FaPg8wbHNzx*>gBW&}w9+LBfC!jfq~3HE_`!@){SDF8MObqLn&Zd`w=RTD+kt+_To! zwZYsiX@1tWYp%hL+3KbljRPNjXhDZB8OFJ0EDz&!47;f8kWT1xdSIK^c#TqV3*Z@_N5~dp=!e zZ555QlEQhnrsnNl>!;?RZ{eluXCsdEhq~w8-IBKYpi%ne-7kON*jTlxz<8DYtp$xH Y%kQT5oru3neL=`iEUtfENfi+I7d^Ox6aWAK literal 0 HcmV?d00001 diff --git a/TesteiOS/TesteiOS/Resources/Fonts/DINMittelschriftStd.otf b/TesteiOS/TesteiOS/Resources/Fonts/DINMittelschriftStd.otf new file mode 100755 index 0000000000000000000000000000000000000000..9a6e0d4ff5d0db37d9e7c5e3c6c479a47f21debd GIT binary patch literal 29448 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�v3OYaenCm)= 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