project.pbxproj 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681
  1. // !$*UTF8*$!
  2. {
  3. archiveVersion = 1;
  4. classes = {
  5. };
  6. objectVersion = 55;
  7. objects = {
  8. /* Begin PBXBuildFile section */
  9. CE2BD90F27A7069E001C6E22 /* LiveLikeGiphyChallengeApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2BD90E27A7069E001C6E22 /* LiveLikeGiphyChallengeApp.swift */; };
  10. CE2BD91127A7069E001C6E22 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2BD91027A7069E001C6E22 /* ContentView.swift */; };
  11. CE2BD91327A706A8001C6E22 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = CE2BD91227A706A8001C6E22 /* Assets.xcassets */; };
  12. CE2BD91627A706A8001C6E22 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = CE2BD91527A706A8001C6E22 /* Preview Assets.xcassets */; };
  13. CE2BD92027A706A9001C6E22 /* LiveLikeGiphyChallengeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2BD91F27A706A9001C6E22 /* LiveLikeGiphyChallengeTests.swift */; };
  14. CE2BD92A27A706A9001C6E22 /* LiveLikeGiphyChallengeUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2BD92927A706A9001C6E22 /* LiveLikeGiphyChallengeUITests.swift */; };
  15. CE2BD92C27A706A9001C6E22 /* LiveLikeGiphyChallengeUITestsLaunchTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2BD92B27A706A9001C6E22 /* LiveLikeGiphyChallengeUITestsLaunchTests.swift */; };
  16. CE2BD93927A70791001C6E22 /* MainViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2BD93827A70791001C6E22 /* MainViewModel.swift */; };
  17. CE2BD94527A718AD001C6E22 /* FetchGiphyAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2BD94427A718AD001C6E22 /* FetchGiphyAPI.swift */; };
  18. CE2BD94727A718D6001C6E22 /* GiphyTrendingRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2BD94627A718D6001C6E22 /* GiphyTrendingRequest.swift */; };
  19. CE2BD94927A719A0001C6E22 /* GiphyResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2BD94827A719A0001C6E22 /* GiphyResponse.swift */; };
  20. CE2BD94B27A71DD4001C6E22 /* GiphyError.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2BD94A27A71DD4001C6E22 /* GiphyError.swift */; };
  21. CE2BD94F27A744D8001C6E22 /* GifImage.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2BD94E27A744D8001C6E22 /* GifImage.swift */; };
  22. CE2BD95127A75254001C6E22 /* GiphyItemRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2BD95027A75254001C6E22 /* GiphyItemRow.swift */; };
  23. CE2C188127A7E41400CD5D9D /* SwiftyGif in Frameworks */ = {isa = PBXBuildFile; productRef = CE2C188027A7E41400CD5D9D /* SwiftyGif */; };
  24. CE2C188727A81CD400CD5D9D /* Storage.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2C188627A81CD400CD5D9D /* Storage.swift */; };
  25. CE2D85D727A9D4D100419922 /* Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2D85D627A9D4D100419922 /* Constants.swift */; };
  26. CE2D85D827A9D67300419922 /* MockURLProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2D85D427A9D47200419922 /* MockURLProtocol.swift */; };
  27. /* End PBXBuildFile section */
  28. /* Begin PBXContainerItemProxy section */
  29. CE2BD91C27A706A9001C6E22 /* PBXContainerItemProxy */ = {
  30. isa = PBXContainerItemProxy;
  31. containerPortal = CE2BD90327A7069E001C6E22 /* Project object */;
  32. proxyType = 1;
  33. remoteGlobalIDString = CE2BD90A27A7069E001C6E22;
  34. remoteInfo = LiveLikeGiphyChallenge;
  35. };
  36. CE2BD92627A706A9001C6E22 /* PBXContainerItemProxy */ = {
  37. isa = PBXContainerItemProxy;
  38. containerPortal = CE2BD90327A7069E001C6E22 /* Project object */;
  39. proxyType = 1;
  40. remoteGlobalIDString = CE2BD90A27A7069E001C6E22;
  41. remoteInfo = LiveLikeGiphyChallenge;
  42. };
  43. /* End PBXContainerItemProxy section */
  44. /* Begin PBXFileReference section */
  45. CE2BD90B27A7069E001C6E22 /* LiveLikeGiphyChallenge.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = LiveLikeGiphyChallenge.app; sourceTree = BUILT_PRODUCTS_DIR; };
  46. CE2BD90E27A7069E001C6E22 /* LiveLikeGiphyChallengeApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LiveLikeGiphyChallengeApp.swift; sourceTree = "<group>"; };
  47. CE2BD91027A7069E001C6E22 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; };
  48. CE2BD91227A706A8001C6E22 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
  49. CE2BD91527A706A8001C6E22 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = "<group>"; };
  50. CE2BD91B27A706A9001C6E22 /* LiveLikeGiphyChallengeTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = LiveLikeGiphyChallengeTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
  51. CE2BD91F27A706A9001C6E22 /* LiveLikeGiphyChallengeTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LiveLikeGiphyChallengeTests.swift; sourceTree = "<group>"; };
  52. CE2BD92527A706A9001C6E22 /* LiveLikeGiphyChallengeUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = LiveLikeGiphyChallengeUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
  53. CE2BD92927A706A9001C6E22 /* LiveLikeGiphyChallengeUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LiveLikeGiphyChallengeUITests.swift; sourceTree = "<group>"; };
  54. CE2BD92B27A706A9001C6E22 /* LiveLikeGiphyChallengeUITestsLaunchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LiveLikeGiphyChallengeUITestsLaunchTests.swift; sourceTree = "<group>"; };
  55. CE2BD93827A70791001C6E22 /* MainViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainViewModel.swift; sourceTree = "<group>"; };
  56. CE2BD94427A718AD001C6E22 /* FetchGiphyAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FetchGiphyAPI.swift; sourceTree = "<group>"; };
  57. CE2BD94627A718D6001C6E22 /* GiphyTrendingRequest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GiphyTrendingRequest.swift; sourceTree = "<group>"; };
  58. CE2BD94827A719A0001C6E22 /* GiphyResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GiphyResponse.swift; sourceTree = "<group>"; };
  59. CE2BD94A27A71DD4001C6E22 /* GiphyError.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GiphyError.swift; sourceTree = "<group>"; };
  60. CE2BD94E27A744D8001C6E22 /* GifImage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GifImage.swift; sourceTree = "<group>"; };
  61. CE2BD95027A75254001C6E22 /* GiphyItemRow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GiphyItemRow.swift; sourceTree = "<group>"; };
  62. CE2C188627A81CD400CD5D9D /* Storage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Storage.swift; sourceTree = "<group>"; };
  63. CE2D85D427A9D47200419922 /* MockURLProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockURLProtocol.swift; sourceTree = "<group>"; };
  64. CE2D85D627A9D4D100419922 /* Constants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Constants.swift; sourceTree = "<group>"; };
  65. /* End PBXFileReference section */
  66. /* Begin PBXFrameworksBuildPhase section */
  67. CE2BD90827A7069E001C6E22 /* Frameworks */ = {
  68. isa = PBXFrameworksBuildPhase;
  69. buildActionMask = 2147483647;
  70. files = (
  71. CE2C188127A7E41400CD5D9D /* SwiftyGif in Frameworks */,
  72. );
  73. runOnlyForDeploymentPostprocessing = 0;
  74. };
  75. CE2BD91827A706A9001C6E22 /* Frameworks */ = {
  76. isa = PBXFrameworksBuildPhase;
  77. buildActionMask = 2147483647;
  78. files = (
  79. );
  80. runOnlyForDeploymentPostprocessing = 0;
  81. };
  82. CE2BD92227A706A9001C6E22 /* Frameworks */ = {
  83. isa = PBXFrameworksBuildPhase;
  84. buildActionMask = 2147483647;
  85. files = (
  86. );
  87. runOnlyForDeploymentPostprocessing = 0;
  88. };
  89. /* End PBXFrameworksBuildPhase section */
  90. /* Begin PBXGroup section */
  91. CE2BD90227A7069E001C6E22 = {
  92. isa = PBXGroup;
  93. children = (
  94. CE2BD90D27A7069E001C6E22 /* LiveLikeGiphyChallenge */,
  95. CE2BD91E27A706A9001C6E22 /* LiveLikeGiphyChallengeTests */,
  96. CE2BD92827A706A9001C6E22 /* LiveLikeGiphyChallengeUITests */,
  97. CE2BD90C27A7069E001C6E22 /* Products */,
  98. );
  99. sourceTree = "<group>";
  100. };
  101. CE2BD90C27A7069E001C6E22 /* Products */ = {
  102. isa = PBXGroup;
  103. children = (
  104. CE2BD90B27A7069E001C6E22 /* LiveLikeGiphyChallenge.app */,
  105. CE2BD91B27A706A9001C6E22 /* LiveLikeGiphyChallengeTests.xctest */,
  106. CE2BD92527A706A9001C6E22 /* LiveLikeGiphyChallengeUITests.xctest */,
  107. );
  108. name = Products;
  109. sourceTree = "<group>";
  110. };
  111. CE2BD90D27A7069E001C6E22 /* LiveLikeGiphyChallenge */ = {
  112. isa = PBXGroup;
  113. children = (
  114. CE2BD94327A71899001C6E22 /* API */,
  115. CE2BD93B27A707F7001C6E22 /* Views */,
  116. CE2BD93A27A707EB001C6E22 /* MainScreen */,
  117. CE2BD91227A706A8001C6E22 /* Assets.xcassets */,
  118. CE2BD91427A706A8001C6E22 /* Preview Content */,
  119. );
  120. path = LiveLikeGiphyChallenge;
  121. sourceTree = "<group>";
  122. };
  123. CE2BD91427A706A8001C6E22 /* Preview Content */ = {
  124. isa = PBXGroup;
  125. children = (
  126. CE2BD91527A706A8001C6E22 /* Preview Assets.xcassets */,
  127. );
  128. path = "Preview Content";
  129. sourceTree = "<group>";
  130. };
  131. CE2BD91E27A706A9001C6E22 /* LiveLikeGiphyChallengeTests */ = {
  132. isa = PBXGroup;
  133. children = (
  134. CE2D85D427A9D47200419922 /* MockURLProtocol.swift */,
  135. CE2BD91F27A706A9001C6E22 /* LiveLikeGiphyChallengeTests.swift */,
  136. );
  137. path = LiveLikeGiphyChallengeTests;
  138. sourceTree = "<group>";
  139. };
  140. CE2BD92827A706A9001C6E22 /* LiveLikeGiphyChallengeUITests */ = {
  141. isa = PBXGroup;
  142. children = (
  143. CE2BD92927A706A9001C6E22 /* LiveLikeGiphyChallengeUITests.swift */,
  144. CE2BD92B27A706A9001C6E22 /* LiveLikeGiphyChallengeUITestsLaunchTests.swift */,
  145. );
  146. path = LiveLikeGiphyChallengeUITests;
  147. sourceTree = "<group>";
  148. };
  149. CE2BD93A27A707EB001C6E22 /* MainScreen */ = {
  150. isa = PBXGroup;
  151. children = (
  152. CE2BD90E27A7069E001C6E22 /* LiveLikeGiphyChallengeApp.swift */,
  153. CE2BD91027A7069E001C6E22 /* ContentView.swift */,
  154. CE2BD93827A70791001C6E22 /* MainViewModel.swift */,
  155. CE2BD95027A75254001C6E22 /* GiphyItemRow.swift */,
  156. );
  157. path = MainScreen;
  158. sourceTree = "<group>";
  159. };
  160. CE2BD93B27A707F7001C6E22 /* Views */ = {
  161. isa = PBXGroup;
  162. children = (
  163. CE2BD94E27A744D8001C6E22 /* GifImage.swift */,
  164. );
  165. path = Views;
  166. sourceTree = "<group>";
  167. };
  168. CE2BD94327A71899001C6E22 /* API */ = {
  169. isa = PBXGroup;
  170. children = (
  171. CE2C188627A81CD400CD5D9D /* Storage.swift */,
  172. CE2BD94427A718AD001C6E22 /* FetchGiphyAPI.swift */,
  173. CE2BD94627A718D6001C6E22 /* GiphyTrendingRequest.swift */,
  174. CE2BD94827A719A0001C6E22 /* GiphyResponse.swift */,
  175. CE2BD94A27A71DD4001C6E22 /* GiphyError.swift */,
  176. CE2D85D627A9D4D100419922 /* Constants.swift */,
  177. );
  178. path = API;
  179. sourceTree = "<group>";
  180. };
  181. /* End PBXGroup section */
  182. /* Begin PBXNativeTarget section */
  183. CE2BD90A27A7069E001C6E22 /* LiveLikeGiphyChallenge */ = {
  184. isa = PBXNativeTarget;
  185. buildConfigurationList = CE2BD92F27A706A9001C6E22 /* Build configuration list for PBXNativeTarget "LiveLikeGiphyChallenge" */;
  186. buildPhases = (
  187. CE2BD90727A7069E001C6E22 /* Sources */,
  188. CE2BD90827A7069E001C6E22 /* Frameworks */,
  189. CE2BD90927A7069E001C6E22 /* Resources */,
  190. );
  191. buildRules = (
  192. );
  193. dependencies = (
  194. );
  195. name = LiveLikeGiphyChallenge;
  196. packageProductDependencies = (
  197. CE2C188027A7E41400CD5D9D /* SwiftyGif */,
  198. );
  199. productName = LiveLikeGiphyChallenge;
  200. productReference = CE2BD90B27A7069E001C6E22 /* LiveLikeGiphyChallenge.app */;
  201. productType = "com.apple.product-type.application";
  202. };
  203. CE2BD91A27A706A9001C6E22 /* LiveLikeGiphyChallengeTests */ = {
  204. isa = PBXNativeTarget;
  205. buildConfigurationList = CE2BD93227A706A9001C6E22 /* Build configuration list for PBXNativeTarget "LiveLikeGiphyChallengeTests" */;
  206. buildPhases = (
  207. CE2BD91727A706A9001C6E22 /* Sources */,
  208. CE2BD91827A706A9001C6E22 /* Frameworks */,
  209. CE2BD91927A706A9001C6E22 /* Resources */,
  210. );
  211. buildRules = (
  212. );
  213. dependencies = (
  214. CE2BD91D27A706A9001C6E22 /* PBXTargetDependency */,
  215. );
  216. name = LiveLikeGiphyChallengeTests;
  217. productName = LiveLikeGiphyChallengeTests;
  218. productReference = CE2BD91B27A706A9001C6E22 /* LiveLikeGiphyChallengeTests.xctest */;
  219. productType = "com.apple.product-type.bundle.unit-test";
  220. };
  221. CE2BD92427A706A9001C6E22 /* LiveLikeGiphyChallengeUITests */ = {
  222. isa = PBXNativeTarget;
  223. buildConfigurationList = CE2BD93527A706A9001C6E22 /* Build configuration list for PBXNativeTarget "LiveLikeGiphyChallengeUITests" */;
  224. buildPhases = (
  225. CE2BD92127A706A9001C6E22 /* Sources */,
  226. CE2BD92227A706A9001C6E22 /* Frameworks */,
  227. CE2BD92327A706A9001C6E22 /* Resources */,
  228. );
  229. buildRules = (
  230. );
  231. dependencies = (
  232. CE2BD92727A706A9001C6E22 /* PBXTargetDependency */,
  233. );
  234. name = LiveLikeGiphyChallengeUITests;
  235. productName = LiveLikeGiphyChallengeUITests;
  236. productReference = CE2BD92527A706A9001C6E22 /* LiveLikeGiphyChallengeUITests.xctest */;
  237. productType = "com.apple.product-type.bundle.ui-testing";
  238. };
  239. /* End PBXNativeTarget section */
  240. /* Begin PBXProject section */
  241. CE2BD90327A7069E001C6E22 /* Project object */ = {
  242. isa = PBXProject;
  243. attributes = {
  244. BuildIndependentTargetsInParallel = 1;
  245. LastSwiftUpdateCheck = 1320;
  246. LastUpgradeCheck = 1320;
  247. TargetAttributes = {
  248. CE2BD90A27A7069E001C6E22 = {
  249. CreatedOnToolsVersion = 13.2.1;
  250. };
  251. CE2BD91A27A706A9001C6E22 = {
  252. CreatedOnToolsVersion = 13.2.1;
  253. TestTargetID = CE2BD90A27A7069E001C6E22;
  254. };
  255. CE2BD92427A706A9001C6E22 = {
  256. CreatedOnToolsVersion = 13.2.1;
  257. TestTargetID = CE2BD90A27A7069E001C6E22;
  258. };
  259. };
  260. };
  261. buildConfigurationList = CE2BD90627A7069E001C6E22 /* Build configuration list for PBXProject "LiveLikeGiphyChallenge" */;
  262. compatibilityVersion = "Xcode 13.0";
  263. developmentRegion = en;
  264. hasScannedForEncodings = 0;
  265. knownRegions = (
  266. en,
  267. Base,
  268. );
  269. mainGroup = CE2BD90227A7069E001C6E22;
  270. packageReferences = (
  271. CE2C187F27A7E41400CD5D9D /* XCRemoteSwiftPackageReference "SwiftyGif" */,
  272. );
  273. productRefGroup = CE2BD90C27A7069E001C6E22 /* Products */;
  274. projectDirPath = "";
  275. projectRoot = "";
  276. targets = (
  277. CE2BD90A27A7069E001C6E22 /* LiveLikeGiphyChallenge */,
  278. CE2BD91A27A706A9001C6E22 /* LiveLikeGiphyChallengeTests */,
  279. CE2BD92427A706A9001C6E22 /* LiveLikeGiphyChallengeUITests */,
  280. );
  281. };
  282. /* End PBXProject section */
  283. /* Begin PBXResourcesBuildPhase section */
  284. CE2BD90927A7069E001C6E22 /* Resources */ = {
  285. isa = PBXResourcesBuildPhase;
  286. buildActionMask = 2147483647;
  287. files = (
  288. CE2BD91627A706A8001C6E22 /* Preview Assets.xcassets in Resources */,
  289. CE2BD91327A706A8001C6E22 /* Assets.xcassets in Resources */,
  290. );
  291. runOnlyForDeploymentPostprocessing = 0;
  292. };
  293. CE2BD91927A706A9001C6E22 /* Resources */ = {
  294. isa = PBXResourcesBuildPhase;
  295. buildActionMask = 2147483647;
  296. files = (
  297. );
  298. runOnlyForDeploymentPostprocessing = 0;
  299. };
  300. CE2BD92327A706A9001C6E22 /* Resources */ = {
  301. isa = PBXResourcesBuildPhase;
  302. buildActionMask = 2147483647;
  303. files = (
  304. );
  305. runOnlyForDeploymentPostprocessing = 0;
  306. };
  307. /* End PBXResourcesBuildPhase section */
  308. /* Begin PBXSourcesBuildPhase section */
  309. CE2BD90727A7069E001C6E22 /* Sources */ = {
  310. isa = PBXSourcesBuildPhase;
  311. buildActionMask = 2147483647;
  312. files = (
  313. CE2BD94B27A71DD4001C6E22 /* GiphyError.swift in Sources */,
  314. CE2BD94727A718D6001C6E22 /* GiphyTrendingRequest.swift in Sources */,
  315. CE2BD94527A718AD001C6E22 /* FetchGiphyAPI.swift in Sources */,
  316. CE2BD91127A7069E001C6E22 /* ContentView.swift in Sources */,
  317. CE2BD94F27A744D8001C6E22 /* GifImage.swift in Sources */,
  318. CE2BD90F27A7069E001C6E22 /* LiveLikeGiphyChallengeApp.swift in Sources */,
  319. CE2BD94927A719A0001C6E22 /* GiphyResponse.swift in Sources */,
  320. CE2BD93927A70791001C6E22 /* MainViewModel.swift in Sources */,
  321. CE2D85D727A9D4D100419922 /* Constants.swift in Sources */,
  322. CE2BD95127A75254001C6E22 /* GiphyItemRow.swift in Sources */,
  323. CE2C188727A81CD400CD5D9D /* Storage.swift in Sources */,
  324. );
  325. runOnlyForDeploymentPostprocessing = 0;
  326. };
  327. CE2BD91727A706A9001C6E22 /* Sources */ = {
  328. isa = PBXSourcesBuildPhase;
  329. buildActionMask = 2147483647;
  330. files = (
  331. CE2BD92027A706A9001C6E22 /* LiveLikeGiphyChallengeTests.swift in Sources */,
  332. CE2D85D827A9D67300419922 /* MockURLProtocol.swift in Sources */,
  333. );
  334. runOnlyForDeploymentPostprocessing = 0;
  335. };
  336. CE2BD92127A706A9001C6E22 /* Sources */ = {
  337. isa = PBXSourcesBuildPhase;
  338. buildActionMask = 2147483647;
  339. files = (
  340. CE2BD92A27A706A9001C6E22 /* LiveLikeGiphyChallengeUITests.swift in Sources */,
  341. CE2BD92C27A706A9001C6E22 /* LiveLikeGiphyChallengeUITestsLaunchTests.swift in Sources */,
  342. );
  343. runOnlyForDeploymentPostprocessing = 0;
  344. };
  345. /* End PBXSourcesBuildPhase section */
  346. /* Begin PBXTargetDependency section */
  347. CE2BD91D27A706A9001C6E22 /* PBXTargetDependency */ = {
  348. isa = PBXTargetDependency;
  349. target = CE2BD90A27A7069E001C6E22 /* LiveLikeGiphyChallenge */;
  350. targetProxy = CE2BD91C27A706A9001C6E22 /* PBXContainerItemProxy */;
  351. };
  352. CE2BD92727A706A9001C6E22 /* PBXTargetDependency */ = {
  353. isa = PBXTargetDependency;
  354. target = CE2BD90A27A7069E001C6E22 /* LiveLikeGiphyChallenge */;
  355. targetProxy = CE2BD92627A706A9001C6E22 /* PBXContainerItemProxy */;
  356. };
  357. /* End PBXTargetDependency section */
  358. /* Begin XCBuildConfiguration section */
  359. CE2BD92D27A706A9001C6E22 /* Debug */ = {
  360. isa = XCBuildConfiguration;
  361. buildSettings = {
  362. ALWAYS_SEARCH_USER_PATHS = NO;
  363. CLANG_ANALYZER_NONNULL = YES;
  364. CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
  365. CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
  366. CLANG_CXX_LIBRARY = "libc++";
  367. CLANG_ENABLE_MODULES = YES;
  368. CLANG_ENABLE_OBJC_ARC = YES;
  369. CLANG_ENABLE_OBJC_WEAK = YES;
  370. CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
  371. CLANG_WARN_BOOL_CONVERSION = YES;
  372. CLANG_WARN_COMMA = YES;
  373. CLANG_WARN_CONSTANT_CONVERSION = YES;
  374. CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
  375. CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
  376. CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
  377. CLANG_WARN_EMPTY_BODY = YES;
  378. CLANG_WARN_ENUM_CONVERSION = YES;
  379. CLANG_WARN_INFINITE_RECURSION = YES;
  380. CLANG_WARN_INT_CONVERSION = YES;
  381. CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
  382. CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
  383. CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
  384. CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
  385. CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
  386. CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
  387. CLANG_WARN_STRICT_PROTOTYPES = YES;
  388. CLANG_WARN_SUSPICIOUS_MOVE = YES;
  389. CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
  390. CLANG_WARN_UNREACHABLE_CODE = YES;
  391. CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
  392. COPY_PHASE_STRIP = NO;
  393. DEBUG_INFORMATION_FORMAT = dwarf;
  394. ENABLE_STRICT_OBJC_MSGSEND = YES;
  395. ENABLE_TESTABILITY = YES;
  396. GCC_C_LANGUAGE_STANDARD = gnu11;
  397. GCC_DYNAMIC_NO_PIC = NO;
  398. GCC_NO_COMMON_BLOCKS = YES;
  399. GCC_OPTIMIZATION_LEVEL = 0;
  400. GCC_PREPROCESSOR_DEFINITIONS = (
  401. "DEBUG=1",
  402. "$(inherited)",
  403. );
  404. GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
  405. GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
  406. GCC_WARN_UNDECLARED_SELECTOR = YES;
  407. GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
  408. GCC_WARN_UNUSED_FUNCTION = YES;
  409. GCC_WARN_UNUSED_VARIABLE = YES;
  410. IPHONEOS_DEPLOYMENT_TARGET = 15.2;
  411. MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
  412. MTL_FAST_MATH = YES;
  413. ONLY_ACTIVE_ARCH = YES;
  414. SDKROOT = iphoneos;
  415. SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
  416. SWIFT_OPTIMIZATION_LEVEL = "-Onone";
  417. };
  418. name = Debug;
  419. };
  420. CE2BD92E27A706A9001C6E22 /* Release */ = {
  421. isa = XCBuildConfiguration;
  422. buildSettings = {
  423. ALWAYS_SEARCH_USER_PATHS = NO;
  424. CLANG_ANALYZER_NONNULL = YES;
  425. CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
  426. CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
  427. CLANG_CXX_LIBRARY = "libc++";
  428. CLANG_ENABLE_MODULES = YES;
  429. CLANG_ENABLE_OBJC_ARC = YES;
  430. CLANG_ENABLE_OBJC_WEAK = YES;
  431. CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
  432. CLANG_WARN_BOOL_CONVERSION = YES;
  433. CLANG_WARN_COMMA = YES;
  434. CLANG_WARN_CONSTANT_CONVERSION = YES;
  435. CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
  436. CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
  437. CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
  438. CLANG_WARN_EMPTY_BODY = YES;
  439. CLANG_WARN_ENUM_CONVERSION = YES;
  440. CLANG_WARN_INFINITE_RECURSION = YES;
  441. CLANG_WARN_INT_CONVERSION = YES;
  442. CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
  443. CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
  444. CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
  445. CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
  446. CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
  447. CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
  448. CLANG_WARN_STRICT_PROTOTYPES = YES;
  449. CLANG_WARN_SUSPICIOUS_MOVE = YES;
  450. CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
  451. CLANG_WARN_UNREACHABLE_CODE = YES;
  452. CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
  453. COPY_PHASE_STRIP = NO;
  454. DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
  455. ENABLE_NS_ASSERTIONS = NO;
  456. ENABLE_STRICT_OBJC_MSGSEND = YES;
  457. GCC_C_LANGUAGE_STANDARD = gnu11;
  458. GCC_NO_COMMON_BLOCKS = YES;
  459. GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
  460. GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
  461. GCC_WARN_UNDECLARED_SELECTOR = YES;
  462. GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
  463. GCC_WARN_UNUSED_FUNCTION = YES;
  464. GCC_WARN_UNUSED_VARIABLE = YES;
  465. IPHONEOS_DEPLOYMENT_TARGET = 15.2;
  466. MTL_ENABLE_DEBUG_INFO = NO;
  467. MTL_FAST_MATH = YES;
  468. SDKROOT = iphoneos;
  469. SWIFT_COMPILATION_MODE = wholemodule;
  470. SWIFT_OPTIMIZATION_LEVEL = "-O";
  471. VALIDATE_PRODUCT = YES;
  472. };
  473. name = Release;
  474. };
  475. CE2BD93027A706A9001C6E22 /* Debug */ = {
  476. isa = XCBuildConfiguration;
  477. buildSettings = {
  478. ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
  479. ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
  480. CODE_SIGN_STYLE = Automatic;
  481. CURRENT_PROJECT_VERSION = 1;
  482. DEVELOPMENT_ASSET_PATHS = "\"LiveLikeGiphyChallenge/Preview Content\"";
  483. DEVELOPMENT_TEAM = FN5JHTPFC4;
  484. ENABLE_PREVIEWS = YES;
  485. GENERATE_INFOPLIST_FILE = YES;
  486. INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES;
  487. INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
  488. INFOPLIST_KEY_UILaunchScreen_Generation = YES;
  489. INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
  490. INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
  491. LD_RUNPATH_SEARCH_PATHS = (
  492. "$(inherited)",
  493. "@executable_path/Frameworks",
  494. );
  495. MARKETING_VERSION = 1.0;
  496. PRODUCT_BUNDLE_IDENTIFIER = com.livelike.LiveLikeGiphyChallenge.LiveLikeGiphyChallenge;
  497. PRODUCT_NAME = "$(TARGET_NAME)";
  498. SWIFT_EMIT_LOC_STRINGS = YES;
  499. SWIFT_VERSION = 5.0;
  500. TARGETED_DEVICE_FAMILY = "1,2";
  501. };
  502. name = Debug;
  503. };
  504. CE2BD93127A706A9001C6E22 /* Release */ = {
  505. isa = XCBuildConfiguration;
  506. buildSettings = {
  507. ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
  508. ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
  509. CODE_SIGN_STYLE = Automatic;
  510. CURRENT_PROJECT_VERSION = 1;
  511. DEVELOPMENT_ASSET_PATHS = "\"LiveLikeGiphyChallenge/Preview Content\"";
  512. DEVELOPMENT_TEAM = FN5JHTPFC4;
  513. ENABLE_PREVIEWS = YES;
  514. GENERATE_INFOPLIST_FILE = YES;
  515. INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES;
  516. INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
  517. INFOPLIST_KEY_UILaunchScreen_Generation = YES;
  518. INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
  519. INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
  520. LD_RUNPATH_SEARCH_PATHS = (
  521. "$(inherited)",
  522. "@executable_path/Frameworks",
  523. );
  524. MARKETING_VERSION = 1.0;
  525. PRODUCT_BUNDLE_IDENTIFIER = com.livelike.LiveLikeGiphyChallenge.LiveLikeGiphyChallenge;
  526. PRODUCT_NAME = "$(TARGET_NAME)";
  527. SWIFT_EMIT_LOC_STRINGS = YES;
  528. SWIFT_VERSION = 5.0;
  529. TARGETED_DEVICE_FAMILY = "1,2";
  530. };
  531. name = Release;
  532. };
  533. CE2BD93327A706A9001C6E22 /* Debug */ = {
  534. isa = XCBuildConfiguration;
  535. buildSettings = {
  536. ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
  537. BUNDLE_LOADER = "$(TEST_HOST)";
  538. CODE_SIGN_STYLE = Automatic;
  539. CURRENT_PROJECT_VERSION = 1;
  540. DEVELOPMENT_TEAM = FN5JHTPFC4;
  541. GENERATE_INFOPLIST_FILE = YES;
  542. IPHONEOS_DEPLOYMENT_TARGET = 15.2;
  543. MARKETING_VERSION = 1.0;
  544. PRODUCT_BUNDLE_IDENTIFIER = com.livelike.LiveLikeGiphyChallenge.LiveLikeGiphyChallengeTests;
  545. PRODUCT_NAME = "$(TARGET_NAME)";
  546. SWIFT_EMIT_LOC_STRINGS = NO;
  547. SWIFT_VERSION = 5.0;
  548. TARGETED_DEVICE_FAMILY = "1,2";
  549. TEST_HOST = "$(BUILT_PRODUCTS_DIR)/LiveLikeGiphyChallenge.app/LiveLikeGiphyChallenge";
  550. };
  551. name = Debug;
  552. };
  553. CE2BD93427A706A9001C6E22 /* Release */ = {
  554. isa = XCBuildConfiguration;
  555. buildSettings = {
  556. ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
  557. BUNDLE_LOADER = "$(TEST_HOST)";
  558. CODE_SIGN_STYLE = Automatic;
  559. CURRENT_PROJECT_VERSION = 1;
  560. DEVELOPMENT_TEAM = FN5JHTPFC4;
  561. GENERATE_INFOPLIST_FILE = YES;
  562. IPHONEOS_DEPLOYMENT_TARGET = 15.2;
  563. MARKETING_VERSION = 1.0;
  564. PRODUCT_BUNDLE_IDENTIFIER = com.livelike.LiveLikeGiphyChallenge.LiveLikeGiphyChallengeTests;
  565. PRODUCT_NAME = "$(TARGET_NAME)";
  566. SWIFT_EMIT_LOC_STRINGS = NO;
  567. SWIFT_VERSION = 5.0;
  568. TARGETED_DEVICE_FAMILY = "1,2";
  569. TEST_HOST = "$(BUILT_PRODUCTS_DIR)/LiveLikeGiphyChallenge.app/LiveLikeGiphyChallenge";
  570. };
  571. name = Release;
  572. };
  573. CE2BD93627A706A9001C6E22 /* Debug */ = {
  574. isa = XCBuildConfiguration;
  575. buildSettings = {
  576. ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
  577. CODE_SIGN_STYLE = Automatic;
  578. CURRENT_PROJECT_VERSION = 1;
  579. DEVELOPMENT_TEAM = FN5JHTPFC4;
  580. GENERATE_INFOPLIST_FILE = YES;
  581. MARKETING_VERSION = 1.0;
  582. PRODUCT_BUNDLE_IDENTIFIER = com.livelike.LiveLikeGiphyChallenge.LiveLikeGiphyChallengeUITests;
  583. PRODUCT_NAME = "$(TARGET_NAME)";
  584. SWIFT_EMIT_LOC_STRINGS = NO;
  585. SWIFT_VERSION = 5.0;
  586. TARGETED_DEVICE_FAMILY = "1,2";
  587. TEST_TARGET_NAME = LiveLikeGiphyChallenge;
  588. };
  589. name = Debug;
  590. };
  591. CE2BD93727A706A9001C6E22 /* Release */ = {
  592. isa = XCBuildConfiguration;
  593. buildSettings = {
  594. ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
  595. CODE_SIGN_STYLE = Automatic;
  596. CURRENT_PROJECT_VERSION = 1;
  597. DEVELOPMENT_TEAM = FN5JHTPFC4;
  598. GENERATE_INFOPLIST_FILE = YES;
  599. MARKETING_VERSION = 1.0;
  600. PRODUCT_BUNDLE_IDENTIFIER = com.livelike.LiveLikeGiphyChallenge.LiveLikeGiphyChallengeUITests;
  601. PRODUCT_NAME = "$(TARGET_NAME)";
  602. SWIFT_EMIT_LOC_STRINGS = NO;
  603. SWIFT_VERSION = 5.0;
  604. TARGETED_DEVICE_FAMILY = "1,2";
  605. TEST_TARGET_NAME = LiveLikeGiphyChallenge;
  606. };
  607. name = Release;
  608. };
  609. /* End XCBuildConfiguration section */
  610. /* Begin XCConfigurationList section */
  611. CE2BD90627A7069E001C6E22 /* Build configuration list for PBXProject "LiveLikeGiphyChallenge" */ = {
  612. isa = XCConfigurationList;
  613. buildConfigurations = (
  614. CE2BD92D27A706A9001C6E22 /* Debug */,
  615. CE2BD92E27A706A9001C6E22 /* Release */,
  616. );
  617. defaultConfigurationIsVisible = 0;
  618. defaultConfigurationName = Release;
  619. };
  620. CE2BD92F27A706A9001C6E22 /* Build configuration list for PBXNativeTarget "LiveLikeGiphyChallenge" */ = {
  621. isa = XCConfigurationList;
  622. buildConfigurations = (
  623. CE2BD93027A706A9001C6E22 /* Debug */,
  624. CE2BD93127A706A9001C6E22 /* Release */,
  625. );
  626. defaultConfigurationIsVisible = 0;
  627. defaultConfigurationName = Release;
  628. };
  629. CE2BD93227A706A9001C6E22 /* Build configuration list for PBXNativeTarget "LiveLikeGiphyChallengeTests" */ = {
  630. isa = XCConfigurationList;
  631. buildConfigurations = (
  632. CE2BD93327A706A9001C6E22 /* Debug */,
  633. CE2BD93427A706A9001C6E22 /* Release */,
  634. );
  635. defaultConfigurationIsVisible = 0;
  636. defaultConfigurationName = Release;
  637. };
  638. CE2BD93527A706A9001C6E22 /* Build configuration list for PBXNativeTarget "LiveLikeGiphyChallengeUITests" */ = {
  639. isa = XCConfigurationList;
  640. buildConfigurations = (
  641. CE2BD93627A706A9001C6E22 /* Debug */,
  642. CE2BD93727A706A9001C6E22 /* Release */,
  643. );
  644. defaultConfigurationIsVisible = 0;
  645. defaultConfigurationName = Release;
  646. };
  647. /* End XCConfigurationList section */
  648. /* Begin XCRemoteSwiftPackageReference section */
  649. CE2C187F27A7E41400CD5D9D /* XCRemoteSwiftPackageReference "SwiftyGif" */ = {
  650. isa = XCRemoteSwiftPackageReference;
  651. repositoryURL = "https://github.com/kirualex/SwiftyGif.git";
  652. requirement = {
  653. branch = master;
  654. kind = branch;
  655. };
  656. };
  657. /* End XCRemoteSwiftPackageReference section */
  658. /* Begin XCSwiftPackageProductDependency section */
  659. CE2C188027A7E41400CD5D9D /* SwiftyGif */ = {
  660. isa = XCSwiftPackageProductDependency;
  661. package = CE2C187F27A7E41400CD5D9D /* XCRemoteSwiftPackageReference "SwiftyGif" */;
  662. productName = SwiftyGif;
  663. };
  664. /* End XCSwiftPackageProductDependency section */
  665. };
  666. rootObject = CE2BD90327A7069E001C6E22 /* Project object */;
  667. }