development
pbxproj 1,904 lines 103 KB
Raw
1 // !$*UTF8*$!
2 {
3 archiveVersion = 1;
4 classes = {
5 };
6 objectVersion = 77;
7 objects = {
8
9 /* Begin PBXBuildFile section */
10 019B658F26ABE2706231EC9E /* GuideEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0A0935AE4B398B281758834 /* GuideEntry.swift */; };
11 032AFB30CAB4E8A31CDC897D /* SearchView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7E886BAB66E828950DBED52 /* SearchView.swift */; };
12 03D16A2386EB68FED8D92D52 /* GuideEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0A0935AE4B398B281758834 /* GuideEntry.swift */; };
13 0481C8A85FED1E35C3734816 /* AppRootView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C82874C90A5FAA32D1B52EB7 /* AppRootView.swift */; };
14 05BF0404B7030EDCD3D8C357 /* GuideArtworkView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F2850226B4B05FF758C1F93 /* GuideArtworkView.swift */; };
15 0709F0B92923D97F6859275A /* SearchService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6235AD6792F25476E2A508F0 /* SearchService.swift */; };
16 0977CD6BFFDBDBE3B7795924 /* collections.json in Resources */ = {isa = PBXBuildFile; fileRef = 1FDDB0F88FF430ABD679AD89 /* collections.json */; };
17 0B94C64018A573AD679106E5 /* KleponCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = 868C58098969278A542893F3 /* KleponCard.swift */; };
18 0CE2632DF6FB02163D55BB65 /* Klepon Watch.app in Embed Watch Content */ = {isa = PBXBuildFile; fileRef = 9E76510CC840CE068B0FC381 /* Klepon Watch.app */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
19 0D685E35EE50C926DC6FBE4C /* KleponChip.swift in Sources */ = {isa = PBXBuildFile; fileRef = B83C4F3C8688072191AA16C6 /* KleponChip.swift */; };
20 0E350E68B43067698FE3B05C /* KleponChip.swift in Sources */ = {isa = PBXBuildFile; fileRef = B83C4F3C8688072191AA16C6 /* KleponChip.swift */; };
21 0E5D1E78C77AD38DD7A3D7F6 /* AccountStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AFCDF98AD60ED73A388B23D /* AccountStore.swift */; };
22 0E69E79C5FADF1633FE3D63F /* KleponColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C675ABBBA25BBA25A8DE29BE /* KleponColor.swift */; };
23 14B7CE6E6A0EB12B709F7B55 /* KleponTypography.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD520C870387E82E9A1533C2 /* KleponTypography.swift */; };
24 14C796CE6777B6013910831C /* SavedView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AA2E425D5454602F78D628 /* SavedView.swift */; };
25 16330914DF2EE212C91BC0CA /* KleponCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = 868C58098969278A542893F3 /* KleponCard.swift */; };
26 1704DDB60B1E23057C0E1094 /* GuideAnswerService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3719031080B59898133810F7 /* GuideAnswerService.swift */; };
27 1879460ECC35F3386E8E6109 /* KleponChip.swift in Sources */ = {isa = PBXBuildFile; fileRef = B83C4F3C8688072191AA16C6 /* KleponChip.swift */; };
28 19E282A6347C588E17778195 /* DiscoverView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4545DC84863788D55B94D31A /* DiscoverView.swift */; };
29 1C2B6971843620B876F5B0C3 /* SavedView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AA2E425D5454602F78D628 /* SavedView.swift */; };
30 1E042510F7F75D392A4AC6E7 /* AppState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AF291E9C2E66209377138E6 /* AppState.swift */; };
31 1E7AAEA8007BFE4ED6FE4892 /* WatchContentLoader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C77AF5EB4B17D087FA522F6 /* WatchContentLoader.swift */; };
32 1F95A454A641C829BD304A89 /* GuideCollection.swift in Sources */ = {isa = PBXBuildFile; fileRef = F17C0DB3BD620AD9F55B7631 /* GuideCollection.swift */; };
33 1FF490E985C31BB08DA29AFF /* guide_entries.json in Resources */ = {isa = PBXBuildFile; fileRef = 248F359109A08A60F792C42D /* guide_entries.json */; };
34 200AE94E7E7E73B5C83869DD /* FavoritesStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BC0C4C22A5134DB058E41F4 /* FavoritesStore.swift */; };
35 20CDEBB4B6C8AAE007854102 /* ContentRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2891A1AFBB59928FC5B1E66 /* ContentRepository.swift */; };
36 215C4D8A2B2ABF2C3C11C163 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8870F09A11EA6D3F0108DA4D /* SystemConfiguration.framework */; };
37 23E22EC56BE48A20BD1229F7 /* AnswerCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = B02B0EA4B8BA09604D62A62B /* AnswerCard.swift */; };
38 26FA5D01FED96591E78A2293 /* AskSheetView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEC6E7DC56DD8E1459EFC892 /* AskSheetView.swift */; };
39 2A3F2C3AF20192B1FCE71B56 /* AccountView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FFFECF1D8C873FA535DE2FD /* AccountView.swift */; };
40 2AB57009245E1BABD1156AFA /* GuideDetailView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7541983FF7CE190C0663294D /* GuideDetailView.swift */; };
41 2AD05B0B7ED109134F013862 /* EmptyStateView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85E7B5E3D9A1906C2FED3032 /* EmptyStateView.swift */; };
42 2C576E80607B50FC80C97A08 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C62410511A5229D61B0A8E1 /* SceneDelegate.swift */; };
43 2F3047F5078C4526133CB848 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13418896CA28250CEEE7592E /* OnboardingView.swift */; };
44 2F74C3B8D4A1A38DEF50E39B /* AskSheetView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEC6E7DC56DD8E1459EFC892 /* AskSheetView.swift */; };
45 3349FB46691C944112401D6E /* SettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42E152344B39D1D77F1B3943 /* SettingsView.swift */; };
46 3568D735D790330031DCF8F9 /* SectionHeader.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC438ECC335175B18778C682 /* SectionHeader.swift */; };
47 35B5508906432B3EFE26F4FF /* PlatformViewSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = F51D6F97615398D511673B98 /* PlatformViewSupport.swift */; };
48 35D43509610D0E2CB3DBD2BB /* testEmptyStateView.saved-empty-state.png in Resources */ = {isa = PBXBuildFile; fileRef = 943670F01925DE3065B92636 /* testEmptyStateView.saved-empty-state.png */; };
49 367BECAC66674A040D99C0DF /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13418896CA28250CEEE7592E /* OnboardingView.swift */; };
50 36AA193A3B7EF7CB25B6E0BE /* KleponWatchApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EFBF98118F066D3C7FA14B2 /* KleponWatchApp.swift */; };
51 37A723A15D19B7DE3DD92B25 /* PlatformViewSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = F51D6F97615398D511673B98 /* PlatformViewSupport.swift */; };
52 37BD5B2A275426143819B70D /* OndeGuideEngine.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF0D53A5F9D5897E15506C20 /* OndeGuideEngine.swift */; };
53 387EE903EFA0D820C646B4DB /* GuideArtworkView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F2850226B4B05FF758C1F93 /* GuideArtworkView.swift */; };
54 3A6F67743964C4D04893C321 /* RecentlyViewedStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = E45070309D2C7058BAA44CD2 /* RecentlyViewedStore.swift */; };
55 3C39523ADE9453A7043216B8 /* AccountStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AFCDF98AD60ED73A388B23D /* AccountStore.swift */; };
56 3C4C5EEBF766D6E8A5D240DA /* PlatformViewSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = F51D6F97615398D511673B98 /* PlatformViewSupport.swift */; };
57 3EB900CB86D2B32F8DAB434D /* GuideAnswerService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3719031080B59898133810F7 /* GuideAnswerService.swift */; };
58 3F999E04650931C2019BDA17 /* KleponColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C675ABBBA25BBA25A8DE29BE /* KleponColor.swift */; };
59 41F8E173B82809AF87E1B297 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13418896CA28250CEEE7592E /* OnboardingView.swift */; };
60 43ABAA3C08695B7C8FEE7324 /* KleponMetadataRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7E1C50BFBE2EF5F37941590 /* KleponMetadataRow.swift */; };
61 4609C70D9FB74C55B9DBE832 /* KleponActionButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52DD909BB2EF68103CB46EDA /* KleponActionButton.swift */; };
62 46D9C39408990F1C332EA957 /* AccountStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AFCDF98AD60ED73A388B23D /* AccountStore.swift */; };
63 478FFEBDAA7729189B429A6D /* SearchView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7E886BAB66E828950DBED52 /* SearchView.swift */; };
64 47B632AF6BF3E25AF628CC01 /* Ed in Frameworks */ = {isa = PBXBuildFile; productRef = ED0553BE20DAEAC1196315EC /* Ed */; };
65 4B6E0CF8EAB6FF1D0160E3E6 /* KleponColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C675ABBBA25BBA25A8DE29BE /* KleponColor.swift */; };
66 4D63E231AC9630B2C225DF22 /* WatchHomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDBB4F5D4C98D036AC52E193 /* WatchHomeView.swift */; };
67 53D759A429886E0FD8E5E9BF /* KleponTabBarController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A0AF6507157DAF401A9BC40 /* KleponTabBarController.swift */; };
68 5692BBCE950885C5C1193DDF /* collections.json in Resources */ = {isa = PBXBuildFile; fileRef = 1FDDB0F88FF430ABD679AD89 /* collections.json */; };
69 5808C4539EBB98D822BDE99F /* KleponActionButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52DD909BB2EF68103CB46EDA /* KleponActionButton.swift */; };
70 587F0BB61966B2BB048013DE /* KleponChip.swift in Sources */ = {isa = PBXBuildFile; fileRef = B83C4F3C8688072191AA16C6 /* KleponChip.swift */; };
71 5C3590F8B1A8255C5E175A03 /* PlatformViewSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = F51D6F97615398D511673B98 /* PlatformViewSupport.swift */; };
72 5D3BDDCB5CA8A8DC32E8ABEA /* Ed in Frameworks */ = {isa = PBXBuildFile; productRef = C60C4F34CE2B62D63F20DCBC /* Ed */; };
73 609532817F88D0D6F1E3CB16 /* AccountView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FFFECF1D8C873FA535DE2FD /* AccountView.swift */; };
74 6117CD728CC7FF8D6EB0A8C8 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13418896CA28250CEEE7592E /* OnboardingView.swift */; };
75 67368394088AA3045EBA14A5 /* OndeEnvironmentBootstrap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B499D3BF7AC80D31907D87F /* OndeEnvironmentBootstrap.swift */; };
76 68479892D13825C6C9977DF9 /* FavoritesStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BC0C4C22A5134DB058E41F4 /* FavoritesStore.swift */; };
77 687418866BCC5554A0F4BFDC /* AnswerCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = B02B0EA4B8BA09604D62A62B /* AnswerCard.swift */; };
78 6B7AE8B1C6D3AD6F973F5757 /* EmptyStateView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85E7B5E3D9A1906C2FED3032 /* EmptyStateView.swift */; };
79 6FCE6EBC39C7F229A5F52745 /* OndeEnvironmentBootstrap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B499D3BF7AC80D31907D87F /* OndeEnvironmentBootstrap.swift */; };
80 72A88C81BE80344130E0EC0C /* GuideAnswerService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3719031080B59898133810F7 /* GuideAnswerService.swift */; };
81 74A9016453B9820FC486B014 /* SearchService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6235AD6792F25476E2A508F0 /* SearchService.swift */; };
82 76EE3B0D899987557B6741DF /* collections.json in Resources */ = {isa = PBXBuildFile; fileRef = 1FDDB0F88FF430ABD679AD89 /* collections.json */; };
83 78142FDCFE7EF00A3D81A067 /* SettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42E152344B39D1D77F1B3943 /* SettingsView.swift */; };
84 7A9B7E0858E7095E18EC7AC6 /* KleponApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEDE2A1E73EB15970A17A894 /* KleponApp.swift */; };
85 7BF234E67821CDDA64D3D351 /* KleponLogicTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF5256899EAD305440C80AD4 /* KleponLogicTests.swift */; };
86 7C90532B70C1C4840E49A92B /* GuideDetailView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7541983FF7CE190C0663294D /* GuideDetailView.swift */; };
87 7E6755E542F15B6921C21604 /* AccountStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AFCDF98AD60ED73A388B23D /* AccountStore.swift */; };
88 7F1E744AAE60BF1FB132D66C /* KleponCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = 868C58098969278A542893F3 /* KleponCard.swift */; };
89 7F726FA99DBDC0155E99E098 /* SectionHeader.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC438ECC335175B18778C682 /* SectionHeader.swift */; };
90 8189E2DF13801C2B7162AD45 /* AnswerCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = B02B0EA4B8BA09604D62A62B /* AnswerCard.swift */; };
91 819489D60D833AE2AD9185A6 /* RecentSearchStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 643D52BCEDF66CC8FE8A1234 /* RecentSearchStore.swift */; };
92 8401F9C0FA140DC2CF8BA248 /* AppState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AF291E9C2E66209377138E6 /* AppState.swift */; };
93 841F3B272D0FD82365DE48BD /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = AF79D8DD27B9CA485140C934 /* Assets.xcassets */; };
94 854C10AE603DCCC521D93BC2 /* ContentRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2891A1AFBB59928FC5B1E66 /* ContentRepository.swift */; };
95 85FC2D60857424B39654DE08 /* RecentSearchStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 643D52BCEDF66CC8FE8A1234 /* RecentSearchStore.swift */; };
96 87E259162B03252EA23A32CF /* GuideEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0A0935AE4B398B281758834 /* GuideEntry.swift */; };
97 8804CFBAD707E1FED63BF214 /* SearchService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6235AD6792F25476E2A508F0 /* SearchService.swift */; };
98 88984B6A8AA504AD200A7F39 /* collections.json in Resources */ = {isa = PBXBuildFile; fileRef = 1FDDB0F88FF430ABD679AD89 /* collections.json */; };
99 889CBF2AF84AABF8012EE737 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = AF79D8DD27B9CA485140C934 /* Assets.xcassets */; };
100 895B5369E9CF1E1B26CDF40E /* KleponTypography.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD520C870387E82E9A1533C2 /* KleponTypography.swift */; };
101 89F1A80A8FDB8E8705878210 /* Klepon TV Top Shelf.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = ED4132D117B29BD22A1FB6C2 /* Klepon TV Top Shelf.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
102 8C6D6EC32870A45E021BF3EB /* KleponMetadataRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7E1C50BFBE2EF5F37941590 /* KleponMetadataRow.swift */; };
103 8EBCC9FA074785FDD82B02E5 /* KleponApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEDE2A1E73EB15970A17A894 /* KleponApp.swift */; };
104 906E12C00728B15B676A23DB /* AppState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AF291E9C2E66209377138E6 /* AppState.swift */; };
105 910A84B3F28B3F79871FF60E /* SectionHeader.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC438ECC335175B18778C682 /* SectionHeader.swift */; };
106 926AB007EBCD5315EE77E2A6 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = AF79D8DD27B9CA485140C934 /* Assets.xcassets */; };
107 93E938AA978ABF5665737887 /* GuideEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0A0935AE4B398B281758834 /* GuideEntry.swift */; };
108 955D039F4B5D14FCA4E7F2B2 /* GuideArtworkView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F2850226B4B05FF758C1F93 /* GuideArtworkView.swift */; };
109 972FD85EF2549D2C82EA35A1 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8458C69807F335C0F7E97EE /* AppDelegate.swift */; };
110 99071E0CB9F44857C0BFC8C9 /* SavedView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AA2E425D5454602F78D628 /* SavedView.swift */; };
111 995C5FDC790E09B87CB5F1C4 /* KleponTypography.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD520C870387E82E9A1533C2 /* KleponTypography.swift */; };
112 997D63C43B61CB342C586FB8 /* DiscoverView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4545DC84863788D55B94D31A /* DiscoverView.swift */; };
113 99C4E0BC590F52400F28A5A4 /* DebugMenuView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB3E2497612D02F0279A791F /* DebugMenuView.swift */; };
114 9AE51D59952308FED1DD538B /* DebugMenuView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB3E2497612D02F0279A791F /* DebugMenuView.swift */; };
115 9BF8C40A4C12038A9DD2D0D7 /* collections.json in Resources */ = {isa = PBXBuildFile; fileRef = 1FDDB0F88FF430ABD679AD89 /* collections.json */; };
116 9E16F5C37F30B58441780260 /* DiscoverView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4545DC84863788D55B94D31A /* DiscoverView.swift */; };
117 9E42E7DE70F8582B66C895F3 /* SearchService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6235AD6792F25476E2A508F0 /* SearchService.swift */; };
118 9ECA989E9DCDF08A2D7C29A3 /* AppRootView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C82874C90A5FAA32D1B52EB7 /* AppRootView.swift */; };
119 9ECEB59572D3B9D08D1DA896 /* GuideCollection.swift in Sources */ = {isa = PBXBuildFile; fileRef = F17C0DB3BD620AD9F55B7631 /* GuideCollection.swift */; };
120 9F79023304A3FD651D05BB54 /* OndeGuideEngine.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF0D53A5F9D5897E15506C20 /* OndeGuideEngine.swift */; };
121 A001621A9DB5FF868217D410 /* DiscoverView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4545DC84863788D55B94D31A /* DiscoverView.swift */; };
122 A0EF936D6223961D25CBC9F6 /* RecentlyViewedStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = E45070309D2C7058BAA44CD2 /* RecentlyViewedStore.swift */; };
123 A0F94006F95F2F671D00EEFB /* KleponColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C675ABBBA25BBA25A8DE29BE /* KleponColor.swift */; };
124 A18C34880D04EAB4C889BC22 /* SettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42E152344B39D1D77F1B3943 /* SettingsView.swift */; };
125 A54D028D8F35FE002B0ACA90 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 054656155630B064F785B0D7 /* Assets.xcassets */; };
126 A571A7E1FA449D257951367C /* guide_entries.json in Resources */ = {isa = PBXBuildFile; fileRef = 248F359109A08A60F792C42D /* guide_entries.json */; };
127 A5E339F380247E90AEF56DC6 /* GuideCollection.swift in Sources */ = {isa = PBXBuildFile; fileRef = F17C0DB3BD620AD9F55B7631 /* GuideCollection.swift */; };
128 A69F302A8F11969D9CD197EE /* guide_entries.json in Resources */ = {isa = PBXBuildFile; fileRef = 248F359109A08A60F792C42D /* guide_entries.json */; };
129 A7001D58E0F2B1BD5F52FF8A /* Ed in Frameworks */ = {isa = PBXBuildFile; productRef = D6FB43CACF14096F074C5D06 /* Ed */; };
130 A76C56EF8CFB6D723B55EE74 /* SearchView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7E886BAB66E828950DBED52 /* SearchView.swift */; };
131 A81DB2CF33EF6E8730010E87 /* topshelf-klepon.png in Resources */ = {isa = PBXBuildFile; fileRef = 8C4826639AED1295CAA284B0 /* topshelf-klepon.png */; };
132 B1F1D1A453150D3BBB0146EF /* RecentlyViewedStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = E45070309D2C7058BAA44CD2 /* RecentlyViewedStore.swift */; };
133 B34377720179454F9B9184C5 /* OndeGuideEngine.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF0D53A5F9D5897E15506C20 /* OndeGuideEngine.swift */; };
134 B395C990F4E3A61631BBE48D /* topshelf-street-food.png in Resources */ = {isa = PBXBuildFile; fileRef = 539B3F0A03FFFDCF3DB41241 /* topshelf-street-food.png */; };
135 B4467AA7214B4990D2FC19DA /* KleponCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = 868C58098969278A542893F3 /* KleponCard.swift */; };
136 B5A8D8C810B7D57B637DA94C /* topshelf-rendang.png in Resources */ = {isa = PBXBuildFile; fileRef = 4CE4B295D6135D280E3DD042 /* topshelf-rendang.png */; };
137 B5B076B218DF86269DD7F80D /* GuideArtworkView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F2850226B4B05FF758C1F93 /* GuideArtworkView.swift */; };
138 B768150B02B19417B81FE651 /* guide_entries.json in Resources */ = {isa = PBXBuildFile; fileRef = 248F359109A08A60F792C42D /* guide_entries.json */; };
139 B7DE9EC8BE998E6719C88E83 /* guide_entries.json in Resources */ = {isa = PBXBuildFile; fileRef = 248F359109A08A60F792C42D /* guide_entries.json */; };
140 B97D6D5885E0B6CFB358B1BC /* KleponActionButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52DD909BB2EF68103CB46EDA /* KleponActionButton.swift */; };
141 BB70FAD944544125AF261F7C /* SavedView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AA2E425D5454602F78D628 /* SavedView.swift */; };
142 BC40004C4FFBC035CA9DDD6F /* DebugMenuView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB3E2497612D02F0279A791F /* DebugMenuView.swift */; };
143 BC8102C70075D3DEDE537CDD /* KleponActionButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52DD909BB2EF68103CB46EDA /* KleponActionButton.swift */; };
144 C15131992039B3AC7DB74DAB /* testGuideArtworkView.guide-artwork.png in Resources */ = {isa = PBXBuildFile; fileRef = 9D6EFA021D4524508DA8E78C /* testGuideArtworkView.guide-artwork.png */; };
145 C1DF8DB1F063D1C5258602D6 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = AF79D8DD27B9CA485140C934 /* Assets.xcassets */; };
146 C2A06A0802694BD0C1F39B85 /* SearchView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7E886BAB66E828950DBED52 /* SearchView.swift */; };
147 C2EA2682A6545802C06E00CC /* WatchBrandSystem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 217E7D4050D471955FF3AB13 /* WatchBrandSystem.swift */; };
148 C62C1ECC5068A50E5C09CEC5 /* Ed in Frameworks */ = {isa = PBXBuildFile; productRef = 4C444F7050676B8B888FFA6E /* Ed */; };
149 C6532365C518962FC265ABCD /* GuideCollection.swift in Sources */ = {isa = PBXBuildFile; fileRef = F17C0DB3BD620AD9F55B7631 /* GuideCollection.swift */; };
150 C709C82E7F0BCF398BCD9C2F /* ContentRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2891A1AFBB59928FC5B1E66 /* ContentRepository.swift */; };
151 C88013421E507AEDCB41BE96 /* OndeGuideEngine.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF0D53A5F9D5897E15506C20 /* OndeGuideEngine.swift */; };
152 C8ECF8664277103582D96B45 /* FavoritesStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BC0C4C22A5134DB058E41F4 /* FavoritesStore.swift */; };
153 CA34777FEEC140D938934C01 /* AccountView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FFFECF1D8C873FA535DE2FD /* AccountView.swift */; };
154 CA9472623EBA8F24348A9F05 /* DebugMenuView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB3E2497612D02F0279A791F /* DebugMenuView.swift */; };
155 CAF237DB042D25046A64CD4D /* ContentProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = A998AA7A251DE3AD07A88B1E /* ContentProvider.swift */; };
156 CE5C9946E68E1F7A781F1628 /* AnswerCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = B02B0EA4B8BA09604D62A62B /* AnswerCard.swift */; };
157 CE6824D3D8261BF0463F39D8 /* KleponMetadataRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7E1C50BFBE2EF5F37941590 /* KleponMetadataRow.swift */; };
158 D2D49509E9CB5CF2BA4EBF6D /* GuideAnswerService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3719031080B59898133810F7 /* GuideAnswerService.swift */; };
159 D6D8A42930EA9A0EA6622108 /* AppState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AF291E9C2E66209377138E6 /* AppState.swift */; };
160 D99AAE1CDE51139840A52607 /* KleponMetadataRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7E1C50BFBE2EF5F37941590 /* KleponMetadataRow.swift */; };
161 DA915BA8B2F732E7D62CF936 /* EmptyStateView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85E7B5E3D9A1906C2FED3032 /* EmptyStateView.swift */; };
162 DDD3529FAEA0D105EBD5C168 /* KleponTypography.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD520C870387E82E9A1533C2 /* KleponTypography.swift */; };
163 E17595636392EDF3D6EEE895 /* OndeEnvironmentBootstrap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B499D3BF7AC80D31907D87F /* OndeEnvironmentBootstrap.swift */; };
164 E25DE24C663A9579D28F21D4 /* GuideEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0A0935AE4B398B281758834 /* GuideEntry.swift */; };
165 E45F257E3D35DC565B21B299 /* KleponColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C675ABBBA25BBA25A8DE29BE /* KleponColor.swift */; };
166 E599CCDB1FE5331C4A1EB6C6 /* KleponSnapshotTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 759E92BBAF958F5882F17C37 /* KleponSnapshotTests.swift */; };
167 E87F8A08D6922557A5DBD198 /* testOnboardingView_defaultState.default.png in Resources */ = {isa = PBXBuildFile; fileRef = 414FD1A8945B820DCC4ED192 /* testOnboardingView_defaultState.default.png */; };
168 EAD7B26527734629EC834D13 /* AccountView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FFFECF1D8C873FA535DE2FD /* AccountView.swift */; };
169 ECDD606D8AFA776765AA9A31 /* SectionHeader.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC438ECC335175B18778C682 /* SectionHeader.swift */; };
170 EDD126593FECA8D9EB7DBC4A /* EmptyStateView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85E7B5E3D9A1906C2FED3032 /* EmptyStateView.swift */; };
171 EE2103530984735318E469FD /* AskSheetView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEC6E7DC56DD8E1459EFC892 /* AskSheetView.swift */; };
172 EE88AEC7059BB2639687FECF /* SnapshotTesting in Frameworks */ = {isa = PBXBuildFile; productRef = 35214C3FF433B08C1C06C3F7 /* SnapshotTesting */; };
173 F0694A813D1CB57F0B5C0F65 /* FavoritesStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BC0C4C22A5134DB058E41F4 /* FavoritesStore.swift */; };
174 F1431179B54CEB23FFFCB2AE /* KleponApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEDE2A1E73EB15970A17A894 /* KleponApp.swift */; };
175 F2D905B433B0B76CE6B4001F /* OndeEnvironmentBootstrap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B499D3BF7AC80D31907D87F /* OndeEnvironmentBootstrap.swift */; };
176 F5B35C6C771073CE32B4BFD1 /* SettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42E152344B39D1D77F1B3943 /* SettingsView.swift */; };
177 F64259FB47704FC3E2F15FF7 /* RecentlyViewedStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = E45070309D2C7058BAA44CD2 /* RecentlyViewedStore.swift */; };
178 F87EF3C291B7D3FB9BE8E43A /* ContentRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2891A1AFBB59928FC5B1E66 /* ContentRepository.swift */; };
179 F88972525510344E63D2983C /* AppRootView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C82874C90A5FAA32D1B52EB7 /* AppRootView.swift */; };
180 F8C02BC1E76C4DCAC7C1F237 /* topshelf-sambal.png in Resources */ = {isa = PBXBuildFile; fileRef = 8247F5A888E0097D2BBCED1B /* topshelf-sambal.png */; };
181 F9983D842EB95B43620CA52B /* GuideDetailView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7541983FF7CE190C0663294D /* GuideDetailView.swift */; };
182 F9D6FC75A11BE98BD28BBDC2 /* RecentSearchStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 643D52BCEDF66CC8FE8A1234 /* RecentSearchStore.swift */; };
183 FA423A76BE098A9911044246 /* AskSheetView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEC6E7DC56DD8E1459EFC892 /* AskSheetView.swift */; };
184 FA44F0883B69820D526BF6E4 /* GuideDetailView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7541983FF7CE190C0663294D /* GuideDetailView.swift */; };
185 FD0E1BA888E3CE73875D58FF /* RecentSearchStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 643D52BCEDF66CC8FE8A1234 /* RecentSearchStore.swift */; };
186 /* End PBXBuildFile section */
187
188 /* Begin PBXContainerItemProxy section */
189 C24CD5A7B8399776539D1FF4 /* PBXContainerItemProxy */ = {
190 isa = PBXContainerItemProxy;
191 containerPortal = 05A5707BDA883282DEB132FF /* Project object */;
192 proxyType = 1;
193 remoteGlobalIDString = 2ADB11F6C1D51B9F9A9DB15F;
194 remoteInfo = Klepon;
195 };
196 D55C73775065842DC4A51797 /* PBXContainerItemProxy */ = {
197 isa = PBXContainerItemProxy;
198 containerPortal = 05A5707BDA883282DEB132FF /* Project object */;
199 proxyType = 1;
200 remoteGlobalIDString = E8CEBF52617721AEE450A7CF;
201 remoteInfo = "Klepon Watch";
202 };
203 F5DCD3DD3B0670276438A4D3 /* PBXContainerItemProxy */ = {
204 isa = PBXContainerItemProxy;
205 containerPortal = 05A5707BDA883282DEB132FF /* Project object */;
206 proxyType = 1;
207 remoteGlobalIDString = 62904071A31F700A13D6F432;
208 remoteInfo = "Klepon TV Top Shelf";
209 };
210 /* End PBXContainerItemProxy section */
211
212 /* Begin PBXCopyFilesBuildPhase section */
213 85563DDB067EE8F6CA513DC2 /* Embed Foundation Extensions */ = {
214 isa = PBXCopyFilesBuildPhase;
215 buildActionMask = 2147483647;
216 dstPath = "";
217 dstSubfolderSpec = 13;
218 files = (
219 89F1A80A8FDB8E8705878210 /* Klepon TV Top Shelf.appex in Embed Foundation Extensions */,
220 );
221 name = "Embed Foundation Extensions";
222 runOnlyForDeploymentPostprocessing = 0;
223 };
224 F3457485B5B2DC81D4FAA704 /* Embed Watch Content */ = {
225 isa = PBXCopyFilesBuildPhase;
226 buildActionMask = 2147483647;
227 dstPath = "$(CONTENTS_FOLDER_PATH)/Watch";
228 dstSubfolderSpec = 16;
229 files = (
230 0CE2632DF6FB02163D55BB65 /* Klepon Watch.app in Embed Watch Content */,
231 );
232 name = "Embed Watch Content";
233 runOnlyForDeploymentPostprocessing = 0;
234 };
235 /* End PBXCopyFilesBuildPhase section */
236
237 /* Begin PBXFileReference section */
238 054656155630B064F785B0D7 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
239 0BC0C4C22A5134DB058E41F4 /* FavoritesStore.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FavoritesStore.swift; sourceTree = "<group>"; };
240 0FFFECF1D8C873FA535DE2FD /* AccountView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountView.swift; sourceTree = "<group>"; };
241 13418896CA28250CEEE7592E /* OnboardingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = "<group>"; };
242 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Signing.xcconfig; sourceTree = "<group>"; };
243 1FDDB0F88FF430ABD679AD89 /* collections.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = collections.json; sourceTree = "<group>"; };
244 217E7D4050D471955FF3AB13 /* WatchBrandSystem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WatchBrandSystem.swift; sourceTree = "<group>"; };
245 248F359109A08A60F792C42D /* guide_entries.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = guide_entries.json; sourceTree = "<group>"; };
246 2B499D3BF7AC80D31907D87F /* OndeEnvironmentBootstrap.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OndeEnvironmentBootstrap.swift; sourceTree = "<group>"; };
247 3719031080B59898133810F7 /* GuideAnswerService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GuideAnswerService.swift; sourceTree = "<group>"; };
248 414FD1A8945B820DCC4ED192 /* testOnboardingView_defaultState.default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = testOnboardingView_defaultState.default.png; sourceTree = "<group>"; };
249 42E152344B39D1D77F1B3943 /* SettingsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SettingsView.swift; sourceTree = "<group>"; };
250 4545DC84863788D55B94D31A /* DiscoverView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DiscoverView.swift; sourceTree = "<group>"; };
251 4A0AF6507157DAF401A9BC40 /* KleponTabBarController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KleponTabBarController.swift; sourceTree = "<group>"; };
252 4C77AF5EB4B17D087FA522F6 /* WatchContentLoader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WatchContentLoader.swift; sourceTree = "<group>"; };
253 4CE4B295D6135D280E3DD042 /* topshelf-rendang.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "topshelf-rendang.png"; sourceTree = "<group>"; };
254 52DD909BB2EF68103CB46EDA /* KleponActionButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KleponActionButton.swift; sourceTree = "<group>"; };
255 539B3F0A03FFFDCF3DB41241 /* topshelf-street-food.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "topshelf-street-food.png"; sourceTree = "<group>"; };
256 5AF291E9C2E66209377138E6 /* AppState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppState.swift; sourceTree = "<group>"; };
257 5AFCDF98AD60ED73A388B23D /* AccountStore.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountStore.swift; sourceTree = "<group>"; };
258 5DE91827A635C0B0B72690EC /* Klepon.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = Klepon.app; sourceTree = BUILT_PRODUCTS_DIR; };
259 6235AD6792F25476E2A508F0 /* SearchService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchService.swift; sourceTree = "<group>"; };
260 643D52BCEDF66CC8FE8A1234 /* RecentSearchStore.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RecentSearchStore.swift; sourceTree = "<group>"; };
261 67FAA69C42F1845ECB79AC16 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
262 6B67BCC5A459288FB240C6E7 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
263 6EFBF98118F066D3C7FA14B2 /* KleponWatchApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KleponWatchApp.swift; sourceTree = "<group>"; };
264 7541983FF7CE190C0663294D /* GuideDetailView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GuideDetailView.swift; sourceTree = "<group>"; };
265 754A7FAB8C92112B8B6228B7 /* Klepon TV.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = "Klepon TV.app"; sourceTree = BUILT_PRODUCTS_DIR; };
266 759E92BBAF958F5882F17C37 /* KleponSnapshotTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KleponSnapshotTests.swift; sourceTree = "<group>"; };
267 7C62410511A5229D61B0A8E1 /* SceneDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SceneDelegate.swift; sourceTree = "<group>"; };
268 7F2850226B4B05FF758C1F93 /* GuideArtworkView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GuideArtworkView.swift; sourceTree = "<group>"; };
269 8247F5A888E0097D2BBCED1B /* topshelf-sambal.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "topshelf-sambal.png"; sourceTree = "<group>"; };
270 85E7B5E3D9A1906C2FED3032 /* EmptyStateView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptyStateView.swift; sourceTree = "<group>"; };
271 868C58098969278A542893F3 /* KleponCard.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KleponCard.swift; sourceTree = "<group>"; };
272 8870F09A11EA6D3F0108DA4D /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; };
273 8C4826639AED1295CAA284B0 /* topshelf-klepon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "topshelf-klepon.png"; sourceTree = "<group>"; };
274 943670F01925DE3065B92636 /* testEmptyStateView.saved-empty-state.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "testEmptyStateView.saved-empty-state.png"; sourceTree = "<group>"; };
275 95321199A19014C816398CAC /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = "<group>"; };
276 98AA2E425D5454602F78D628 /* SavedView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SavedView.swift; sourceTree = "<group>"; };
277 9D6EFA021D4524508DA8E78C /* testGuideArtworkView.guide-artwork.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "testGuideArtworkView.guide-artwork.png"; sourceTree = "<group>"; };
278 9E76510CC840CE068B0FC381 /* Klepon Watch.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Klepon Watch.app"; sourceTree = BUILT_PRODUCTS_DIR; };
279 A4400AB0AB8D245325A00BA3 /* Klepon.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Klepon.entitlements; sourceTree = "<group>"; };
280 A48AC0E39277DEFCE5D103CC /* KleponSnapshotTests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = KleponSnapshotTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
281 A7E1C50BFBE2EF5F37941590 /* KleponMetadataRow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KleponMetadataRow.swift; sourceTree = "<group>"; };
282 A998AA7A251DE3AD07A88B1E /* ContentProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentProvider.swift; sourceTree = "<group>"; };
283 AF79D8DD27B9CA485140C934 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
284 B02B0EA4B8BA09604D62A62B /* AnswerCard.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnswerCard.swift; sourceTree = "<group>"; };
285 B83C4F3C8688072191AA16C6 /* KleponChip.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KleponChip.swift; sourceTree = "<group>"; };
286 B868F6866D5C0497F3672F12 /* Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = "<group>"; };
287 BF0D53A5F9D5897E15506C20 /* OndeGuideEngine.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OndeGuideEngine.swift; sourceTree = "<group>"; };
288 C0A0935AE4B398B281758834 /* GuideEntry.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GuideEntry.swift; sourceTree = "<group>"; };
289 C675ABBBA25BBA25A8DE29BE /* KleponColor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KleponColor.swift; sourceTree = "<group>"; };
290 C82874C90A5FAA32D1B52EB7 /* AppRootView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppRootView.swift; sourceTree = "<group>"; };
291 CB3E2497612D02F0279A791F /* DebugMenuView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DebugMenuView.swift; sourceTree = "<group>"; };
292 CD520C870387E82E9A1533C2 /* KleponTypography.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KleponTypography.swift; sourceTree = "<group>"; };
293 D53EA049112C7D59177F9878 /* Klepon Mac.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Klepon Mac.app"; sourceTree = BUILT_PRODUCTS_DIR; };
294 DEDE2A1E73EB15970A17A894 /* KleponApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KleponApp.swift; sourceTree = "<group>"; };
295 E041DB1D0DAA58746AE6F9EA /* Klepon Vision.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = "Klepon Vision.app"; sourceTree = BUILT_PRODUCTS_DIR; };
296 E45070309D2C7058BAA44CD2 /* RecentlyViewedStore.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RecentlyViewedStore.swift; sourceTree = "<group>"; };
297 E7E886BAB66E828950DBED52 /* SearchView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchView.swift; sourceTree = "<group>"; };
298 ED4132D117B29BD22A1FB6C2 /* Klepon TV Top Shelf.appex */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = "wrapper.app-extension"; path = "Klepon TV Top Shelf.appex"; sourceTree = BUILT_PRODUCTS_DIR; };
299 EDBB4F5D4C98D036AC52E193 /* WatchHomeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WatchHomeView.swift; sourceTree = "<group>"; };
300 EEC6E7DC56DD8E1459EFC892 /* AskSheetView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AskSheetView.swift; sourceTree = "<group>"; };
301 F17C0DB3BD620AD9F55B7631 /* GuideCollection.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GuideCollection.swift; sourceTree = "<group>"; };
302 F2891A1AFBB59928FC5B1E66 /* ContentRepository.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentRepository.swift; sourceTree = "<group>"; };
303 F51D6F97615398D511673B98 /* PlatformViewSupport.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlatformViewSupport.swift; sourceTree = "<group>"; };
304 F8458C69807F335C0F7E97EE /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
305 FC438ECC335175B18778C682 /* SectionHeader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SectionHeader.swift; sourceTree = "<group>"; };
306 FF5256899EAD305440C80AD4 /* KleponLogicTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KleponLogicTests.swift; sourceTree = "<group>"; };
307 /* End PBXFileReference section */
308
309 /* Begin PBXFrameworksBuildPhase section */
310 2D72F61FB9AD47BC2682FB3F /* Frameworks */ = {
311 isa = PBXFrameworksBuildPhase;
312 buildActionMask = 2147483647;
313 files = (
314 5D3BDDCB5CA8A8DC32E8ABEA /* Ed in Frameworks */,
315 );
316 runOnlyForDeploymentPostprocessing = 0;
317 };
318 614F30649198DB2180250038 /* Frameworks */ = {
319 isa = PBXFrameworksBuildPhase;
320 buildActionMask = 2147483647;
321 files = (
322 C62C1ECC5068A50E5C09CEC5 /* Ed in Frameworks */,
323 );
324 runOnlyForDeploymentPostprocessing = 0;
325 };
326 B0052635A882F0E996B81154 /* Frameworks */ = {
327 isa = PBXFrameworksBuildPhase;
328 buildActionMask = 2147483647;
329 files = (
330 47B632AF6BF3E25AF628CC01 /* Ed in Frameworks */,
331 215C4D8A2B2ABF2C3C11C163 /* SystemConfiguration.framework in Frameworks */,
332 );
333 runOnlyForDeploymentPostprocessing = 0;
334 };
335 B161A429683CBAD2A984A5AE /* Frameworks */ = {
336 isa = PBXFrameworksBuildPhase;
337 buildActionMask = 2147483647;
338 files = (
339 EE88AEC7059BB2639687FECF /* SnapshotTesting in Frameworks */,
340 );
341 runOnlyForDeploymentPostprocessing = 0;
342 };
343 F72797E506E8FA89264A5C68 /* Frameworks */ = {
344 isa = PBXFrameworksBuildPhase;
345 buildActionMask = 2147483647;
346 files = (
347 A7001D58E0F2B1BD5F52FF8A /* Ed in Frameworks */,
348 );
349 runOnlyForDeploymentPostprocessing = 0;
350 };
351 /* End PBXFrameworksBuildPhase section */
352
353 /* Begin PBXGroup section */
354 038E8FA398B5CB76373031FD /* Configs */ = {
355 isa = PBXGroup;
356 children = (
357 B868F6866D5C0497F3672F12 /* Debug.xcconfig */,
358 95321199A19014C816398CAC /* Release.xcconfig */,
359 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */,
360 );
361 path = Configs;
362 sourceTree = "<group>";
363 };
364 1F8B5D6327376068DBCA9694 /* Settings */ = {
365 isa = PBXGroup;
366 children = (
367 42E152344B39D1D77F1B3943 /* SettingsView.swift */,
368 );
369 path = Settings;
370 sourceTree = "<group>";
371 };
372 2D223E83C424037A62CA358F /* __Snapshots__ */ = {
373 isa = PBXGroup;
374 children = (
375 89DF9DC044BB33376803C6F5 /* KleponSnapshotTests */,
376 );
377 path = __Snapshots__;
378 sourceTree = "<group>";
379 };
380 3F9369D339C14126AB44D720 /* Products */ = {
381 isa = PBXGroup;
382 children = (
383 D53EA049112C7D59177F9878 /* Klepon Mac.app */,
384 ED4132D117B29BD22A1FB6C2 /* Klepon TV Top Shelf.appex */,
385 754A7FAB8C92112B8B6228B7 /* Klepon TV.app */,
386 E041DB1D0DAA58746AE6F9EA /* Klepon Vision.app */,
387 9E76510CC840CE068B0FC381 /* Klepon Watch.app */,
388 5DE91827A635C0B0B72690EC /* Klepon.app */,
389 A48AC0E39277DEFCE5D103CC /* KleponSnapshotTests.xctest */,
390 );
391 name = Products;
392 sourceTree = "<group>";
393 };
394 42AB6F4BEF2FBE4B2DD5DF8A /* Onboarding */ = {
395 isa = PBXGroup;
396 children = (
397 13418896CA28250CEEE7592E /* OnboardingView.swift */,
398 );
399 path = Onboarding;
400 sourceTree = "<group>";
401 };
402 472BF5D47BEE4AF1EC80B645 /* KleponWatch */ = {
403 isa = PBXGroup;
404 children = (
405 054656155630B064F785B0D7 /* Assets.xcassets */,
406 67FAA69C42F1845ECB79AC16 /* Info.plist */,
407 6EFBF98118F066D3C7FA14B2 /* KleponWatchApp.swift */,
408 217E7D4050D471955FF3AB13 /* WatchBrandSystem.swift */,
409 4C77AF5EB4B17D087FA522F6 /* WatchContentLoader.swift */,
410 EDBB4F5D4C98D036AC52E193 /* WatchHomeView.swift */,
411 );
412 path = KleponWatch;
413 sourceTree = "<group>";
414 };
415 584B54256B10CB0A08CF9EBB /* Features */ = {
416 isa = PBXGroup;
417 children = (
418 697B7AA523BEA3B29E95A3B5 /* Ask */,
419 AEF2506044225CA328483416 /* Detail */,
420 83D0CE66190EBD7B3F116869 /* Discover */,
421 42AB6F4BEF2FBE4B2DD5DF8A /* Onboarding */,
422 71FB816EF387AA327D83405E /* Saved */,
423 6706F0AAED7087EF21DB1448 /* Search */,
424 1F8B5D6327376068DBCA9694 /* Settings */,
425 );
426 path = Features;
427 sourceTree = "<group>";
428 };
429 6706F0AAED7087EF21DB1448 /* Search */ = {
430 isa = PBXGroup;
431 children = (
432 E7E886BAB66E828950DBED52 /* SearchView.swift */,
433 );
434 path = Search;
435 sourceTree = "<group>";
436 };
437 697B7AA523BEA3B29E95A3B5 /* Ask */ = {
438 isa = PBXGroup;
439 children = (
440 EEC6E7DC56DD8E1459EFC892 /* AskSheetView.swift */,
441 );
442 path = Ask;
443 sourceTree = "<group>";
444 };
445 71FB816EF387AA327D83405E /* Saved */ = {
446 isa = PBXGroup;
447 children = (
448 98AA2E425D5454602F78D628 /* SavedView.swift */,
449 );
450 path = Saved;
451 sourceTree = "<group>";
452 };
453 7FFF66D137216AB43C7376AF /* App */ = {
454 isa = PBXGroup;
455 children = (
456 C82874C90A5FAA32D1B52EB7 /* AppRootView.swift */,
457 5AF291E9C2E66209377138E6 /* AppState.swift */,
458 DEDE2A1E73EB15970A17A894 /* KleponApp.swift */,
459 F51D6F97615398D511673B98 /* PlatformViewSupport.swift */,
460 );
461 path = App;
462 sourceTree = "<group>";
463 };
464 825A58FCE091C3FE902D3131 /* KleponSnapshotTests */ = {
465 isa = PBXGroup;
466 children = (
467 FF5256899EAD305440C80AD4 /* KleponLogicTests.swift */,
468 759E92BBAF958F5882F17C37 /* KleponSnapshotTests.swift */,
469 2D223E83C424037A62CA358F /* __Snapshots__ */,
470 );
471 path = KleponSnapshotTests;
472 sourceTree = "<group>";
473 };
474 82A3750644C21DE5F301405D /* AI */ = {
475 isa = PBXGroup;
476 children = (
477 3719031080B59898133810F7 /* GuideAnswerService.swift */,
478 2B499D3BF7AC80D31907D87F /* OndeEnvironmentBootstrap.swift */,
479 BF0D53A5F9D5897E15506C20 /* OndeGuideEngine.swift */,
480 );
481 path = AI;
482 sourceTree = "<group>";
483 };
484 83D0CE66190EBD7B3F116869 /* Discover */ = {
485 isa = PBXGroup;
486 children = (
487 4545DC84863788D55B94D31A /* DiscoverView.swift */,
488 );
489 path = Discover;
490 sourceTree = "<group>";
491 };
492 843428B433FCDB8678AFEF36 /* Domain */ = {
493 isa = PBXGroup;
494 children = (
495 B02B0EA4B8BA09604D62A62B /* AnswerCard.swift */,
496 F17C0DB3BD620AD9F55B7631 /* GuideCollection.swift */,
497 C0A0935AE4B398B281758834 /* GuideEntry.swift */,
498 );
499 path = Domain;
500 sourceTree = "<group>";
501 };
502 89DF9DC044BB33376803C6F5 /* KleponSnapshotTests */ = {
503 isa = PBXGroup;
504 children = (
505 943670F01925DE3065B92636 /* testEmptyStateView.saved-empty-state.png */,
506 9D6EFA021D4524508DA8E78C /* testGuideArtworkView.guide-artwork.png */,
507 414FD1A8945B820DCC4ED192 /* testOnboardingView_defaultState.default.png */,
508 );
509 path = KleponSnapshotTests;
510 sourceTree = "<group>";
511 };
512 8FCB4D289A8BA31F1213435D /* Resources */ = {
513 isa = PBXGroup;
514 children = (
515 D31457265A488544F9D32DE0 /* Content */,
516 );
517 path = Resources;
518 sourceTree = "<group>";
519 };
520 A17E44934E91A33AC21E2199 /* Account */ = {
521 isa = PBXGroup;
522 children = (
523 5AFCDF98AD60ED73A388B23D /* AccountStore.swift */,
524 0FFFECF1D8C873FA535DE2FD /* AccountView.swift */,
525 CB3E2497612D02F0279A791F /* DebugMenuView.swift */,
526 );
527 path = Account;
528 sourceTree = "<group>";
529 };
530 AEF2506044225CA328483416 /* Detail */ = {
531 isa = PBXGroup;
532 children = (
533 7541983FF7CE190C0663294D /* GuideDetailView.swift */,
534 );
535 path = Detail;
536 sourceTree = "<group>";
537 };
538 BB2EA22C8AF6FE8BA4B968E0 /* DesignSystem */ = {
539 isa = PBXGroup;
540 children = (
541 85E7B5E3D9A1906C2FED3032 /* EmptyStateView.swift */,
542 7F2850226B4B05FF758C1F93 /* GuideArtworkView.swift */,
543 52DD909BB2EF68103CB46EDA /* KleponActionButton.swift */,
544 868C58098969278A542893F3 /* KleponCard.swift */,
545 B83C4F3C8688072191AA16C6 /* KleponChip.swift */,
546 C675ABBBA25BBA25A8DE29BE /* KleponColor.swift */,
547 A7E1C50BFBE2EF5F37941590 /* KleponMetadataRow.swift */,
548 CD520C870387E82E9A1533C2 /* KleponTypography.swift */,
549 FC438ECC335175B18778C682 /* SectionHeader.swift */,
550 );
551 path = DesignSystem;
552 sourceTree = "<group>";
553 };
554 D1EEA7DEE6B09AE3C4230ACE /* Data */ = {
555 isa = PBXGroup;
556 children = (
557 F2891A1AFBB59928FC5B1E66 /* ContentRepository.swift */,
558 0BC0C4C22A5134DB058E41F4 /* FavoritesStore.swift */,
559 E45070309D2C7058BAA44CD2 /* RecentlyViewedStore.swift */,
560 643D52BCEDF66CC8FE8A1234 /* RecentSearchStore.swift */,
561 6235AD6792F25476E2A508F0 /* SearchService.swift */,
562 );
563 path = Data;
564 sourceTree = "<group>";
565 };
566 D1FEC41858C6D3DEA2C3A0F6 /* Shared */ = {
567 isa = PBXGroup;
568 children = (
569 A17E44934E91A33AC21E2199 /* Account */,
570 );
571 path = Shared;
572 sourceTree = "<group>";
573 };
574 D31457265A488544F9D32DE0 /* Content */ = {
575 isa = PBXGroup;
576 children = (
577 1FDDB0F88FF430ABD679AD89 /* collections.json */,
578 248F359109A08A60F792C42D /* guide_entries.json */,
579 );
580 path = Content;
581 sourceTree = "<group>";
582 };
583 D9EBF621A6F1A1729FE26516 = {
584 isa = PBXGroup;
585 children = (
586 EDD52736140081AB18141C4D /* App */,
587 038E8FA398B5CB76373031FD /* Configs */,
588 EA4DFA44FE8BB01979ADB187 /* Klepon */,
589 825A58FCE091C3FE902D3131 /* KleponSnapshotTests */,
590 E1FCE3A358D8DD3D55C6E1DE /* KleponTVTopShelfExtension */,
591 472BF5D47BEE4AF1EC80B645 /* KleponWatch */,
592 EC85AFC077F4445CA6E5B876 /* Frameworks */,
593 3F9369D339C14126AB44D720 /* Products */,
594 );
595 sourceTree = "<group>";
596 };
597 E1FCE3A358D8DD3D55C6E1DE /* KleponTVTopShelfExtension */ = {
598 isa = PBXGroup;
599 children = (
600 A998AA7A251DE3AD07A88B1E /* ContentProvider.swift */,
601 8C4826639AED1295CAA284B0 /* topshelf-klepon.png */,
602 4CE4B295D6135D280E3DD042 /* topshelf-rendang.png */,
603 8247F5A888E0097D2BBCED1B /* topshelf-sambal.png */,
604 539B3F0A03FFFDCF3DB41241 /* topshelf-street-food.png */,
605 );
606 path = KleponTVTopShelfExtension;
607 sourceTree = "<group>";
608 };
609 EA4DFA44FE8BB01979ADB187 /* Klepon */ = {
610 isa = PBXGroup;
611 children = (
612 AF79D8DD27B9CA485140C934 /* Assets.xcassets */,
613 6B67BCC5A459288FB240C6E7 /* Info.plist */,
614 A4400AB0AB8D245325A00BA3 /* Klepon.entitlements */,
615 82A3750644C21DE5F301405D /* AI */,
616 7FFF66D137216AB43C7376AF /* App */,
617 D1EEA7DEE6B09AE3C4230ACE /* Data */,
618 BB2EA22C8AF6FE8BA4B968E0 /* DesignSystem */,
619 843428B433FCDB8678AFEF36 /* Domain */,
620 584B54256B10CB0A08CF9EBB /* Features */,
621 8FCB4D289A8BA31F1213435D /* Resources */,
622 D1FEC41858C6D3DEA2C3A0F6 /* Shared */,
623 );
624 path = Klepon;
625 sourceTree = "<group>";
626 };
627 EC85AFC077F4445CA6E5B876 /* Frameworks */ = {
628 isa = PBXGroup;
629 children = (
630 8870F09A11EA6D3F0108DA4D /* SystemConfiguration.framework */,
631 );
632 name = Frameworks;
633 sourceTree = "<group>";
634 };
635 EDD52736140081AB18141C4D /* App */ = {
636 isa = PBXGroup;
637 children = (
638 F8458C69807F335C0F7E97EE /* AppDelegate.swift */,
639 4A0AF6507157DAF401A9BC40 /* KleponTabBarController.swift */,
640 7C62410511A5229D61B0A8E1 /* SceneDelegate.swift */,
641 );
642 name = App;
643 path = KleponTV/App;
644 sourceTree = "<group>";
645 };
646 /* End PBXGroup section */
647
648 /* Begin PBXNativeTarget section */
649 0322696BE3965C4C0F0E5322 /* Klepon Vision */ = {
650 isa = PBXNativeTarget;
651 buildConfigurationList = A7E925A77873EC80DF7D2840 /* Build configuration list for PBXNativeTarget "Klepon Vision" */;
652 buildPhases = (
653 BFE208AF41AAF322DFAB7EED /* Sources */,
654 63B62007E78131109B2F8902 /* Resources */,
655 2D72F61FB9AD47BC2682FB3F /* Frameworks */,
656 201C2DC58537433FDB96C0C5 /* Update CFBundleVersion */,
657 );
658 buildRules = (
659 );
660 dependencies = (
661 );
662 name = "Klepon Vision";
663 packageProductDependencies = (
664 C60C4F34CE2B62D63F20DCBC /* Ed */,
665 );
666 productName = "Klepon Vision";
667 productReference = E041DB1D0DAA58746AE6F9EA /* Klepon Vision.app */;
668 productType = "com.apple.product-type.application";
669 };
670 2ADB11F6C1D51B9F9A9DB15F /* Klepon */ = {
671 isa = PBXNativeTarget;
672 buildConfigurationList = E1E5A3DF58C9552EE814CC23 /* Build configuration list for PBXNativeTarget "Klepon" */;
673 buildPhases = (
674 769E8E263D58CBDD86DF4C29 /* Inject PrivacyInfo into EdFramework */,
675 142193A63A26ACC180E1EB37 /* Sources */,
676 BC5A6BBAFB4A1B61000065D1 /* Resources */,
677 F72797E506E8FA89264A5C68 /* Frameworks */,
678 F3457485B5B2DC81D4FAA704 /* Embed Watch Content */,
679 005255530CCC905544DBE9A8 /* Update CFBundleVersion */,
680 );
681 buildRules = (
682 );
683 dependencies = (
684 6D8B1489B7EFEE9D18830BD6 /* PBXTargetDependency */,
685 );
686 name = Klepon;
687 packageProductDependencies = (
688 D6FB43CACF14096F074C5D06 /* Ed */,
689 );
690 productName = Klepon;
691 productReference = 5DE91827A635C0B0B72690EC /* Klepon.app */;
692 productType = "com.apple.product-type.application";
693 };
694 62904071A31F700A13D6F432 /* Klepon TV Top Shelf */ = {
695 isa = PBXNativeTarget;
696 buildConfigurationList = 29C34512D4ABC3CD6704E6D3 /* Build configuration list for PBXNativeTarget "Klepon TV Top Shelf" */;
697 buildPhases = (
698 92DEEB7F16A4D2F734A3DE48 /* Sources */,
699 C0709ADB9349E7813934595B /* Resources */,
700 029DF4CC70CC3C4774474B0D /* Update CFBundleVersion */,
701 );
702 buildRules = (
703 );
704 dependencies = (
705 );
706 name = "Klepon TV Top Shelf";
707 packageProductDependencies = (
708 );
709 productName = "Klepon TV Top Shelf";
710 productReference = ED4132D117B29BD22A1FB6C2 /* Klepon TV Top Shelf.appex */;
711 productType = "com.apple.product-type.app-extension";
712 };
713 676CA86C78E7DB801DEEAF12 /* Klepon Mac */ = {
714 isa = PBXNativeTarget;
715 buildConfigurationList = 78899F7C62A9675700D42C5A /* Build configuration list for PBXNativeTarget "Klepon Mac" */;
716 buildPhases = (
717 DAFDBFBC180515F126F30051 /* Inject PrivacyInfo into EdFramework */,
718 625CD4834F7E62F4BCE58404 /* Sources */,
719 667705EEBEDEBBCA43E94EAC /* Resources */,
720 B0052635A882F0E996B81154 /* Frameworks */,
721 38259E5F7F0F32D684AE509A /* Update CFBundleVersion */,
722 );
723 buildRules = (
724 );
725 dependencies = (
726 );
727 name = "Klepon Mac";
728 packageProductDependencies = (
729 ED0553BE20DAEAC1196315EC /* Ed */,
730 );
731 productName = "Klepon Mac";
732 productReference = D53EA049112C7D59177F9878 /* Klepon Mac.app */;
733 productType = "com.apple.product-type.application";
734 };
735 E153DCB2727ADB891CF09A25 /* Klepon TV */ = {
736 isa = PBXNativeTarget;
737 buildConfigurationList = 14FFFB40F48F5625253F44DE /* Build configuration list for PBXNativeTarget "Klepon TV" */;
738 buildPhases = (
739 00C4D42D71379B10BB8DAD32 /* Sources */,
740 13483CEA676E76809EF16344 /* Resources */,
741 614F30649198DB2180250038 /* Frameworks */,
742 85563DDB067EE8F6CA513DC2 /* Embed Foundation Extensions */,
743 2444E8602E844C7B97E84E9D /* Update CFBundleVersion */,
744 );
745 buildRules = (
746 );
747 dependencies = (
748 E94F08ECA162F00774BE9E72 /* PBXTargetDependency */,
749 );
750 name = "Klepon TV";
751 packageProductDependencies = (
752 4C444F7050676B8B888FFA6E /* Ed */,
753 );
754 productName = "Klepon TV";
755 productReference = 754A7FAB8C92112B8B6228B7 /* Klepon TV.app */;
756 productType = "com.apple.product-type.application";
757 };
758 E8CEBF52617721AEE450A7CF /* Klepon Watch */ = {
759 isa = PBXNativeTarget;
760 buildConfigurationList = 07A758477E97CF9254DDBA82 /* Build configuration list for PBXNativeTarget "Klepon Watch" */;
761 buildPhases = (
762 57F190B6EB353A926A214B19 /* Sources */,
763 0DEE2337CA5E6D48C9C110A2 /* Resources */,
764 4CD2E0A71BF112F74656BFFD /* Update CFBundleVersion */,
765 );
766 buildRules = (
767 );
768 dependencies = (
769 );
770 name = "Klepon Watch";
771 packageProductDependencies = (
772 );
773 productName = "Klepon Watch";
774 productReference = 9E76510CC840CE068B0FC381 /* Klepon Watch.app */;
775 productType = "com.apple.product-type.application";
776 };
777 F10E9562BA0BE60A7E000DB0 /* KleponSnapshotTests */ = {
778 isa = PBXNativeTarget;
779 buildConfigurationList = 116221FC6D50F33334387509 /* Build configuration list for PBXNativeTarget "KleponSnapshotTests" */;
780 buildPhases = (
781 C2B1B8ADEE7B8E2628B90D1F /* Sources */,
782 6F8A4C98AF649CB41F0837B3 /* Resources */,
783 B161A429683CBAD2A984A5AE /* Frameworks */,
784 );
785 buildRules = (
786 );
787 dependencies = (
788 C8D72D1B1BE79610DB905424 /* PBXTargetDependency */,
789 );
790 name = KleponSnapshotTests;
791 packageProductDependencies = (
792 35214C3FF433B08C1C06C3F7 /* SnapshotTesting */,
793 );
794 productName = KleponSnapshotTests;
795 productReference = A48AC0E39277DEFCE5D103CC /* KleponSnapshotTests.xctest */;
796 productType = "com.apple.product-type.bundle.unit-test";
797 };
798 /* End PBXNativeTarget section */
799
800 /* Begin PBXProject section */
801 05A5707BDA883282DEB132FF /* Project object */ = {
802 isa = PBXProject;
803 attributes = {
804 BuildIndependentTargetsInParallel = YES;
805 LastUpgradeCheck = 2600;
806 TargetAttributes = {
807 0322696BE3965C4C0F0E5322 = {
808 ProvisioningStyle = Automatic;
809 };
810 2ADB11F6C1D51B9F9A9DB15F = {
811 ProvisioningStyle = Automatic;
812 };
813 62904071A31F700A13D6F432 = {
814 ProvisioningStyle = Automatic;
815 };
816 676CA86C78E7DB801DEEAF12 = {
817 ProvisioningStyle = Automatic;
818 };
819 E153DCB2727ADB891CF09A25 = {
820 ProvisioningStyle = Automatic;
821 };
822 E8CEBF52617721AEE450A7CF = {
823 ProvisioningStyle = Automatic;
824 };
825 F10E9562BA0BE60A7E000DB0 = {
826 ProvisioningStyle = Automatic;
827 };
828 };
829 };
830 buildConfigurationList = 8911E6C6F25C3A4F99870749 /* Build configuration list for PBXProject "Klepon" */;
831 developmentRegion = en;
832 hasScannedForEncodings = 0;
833 knownRegions = (
834 Base,
835 en,
836 );
837 mainGroup = D9EBF621A6F1A1729FE26516;
838 minimizedProjectReferenceProxies = 1;
839 packageReferences = (
840 113C98387653665692A4F210 /* XCRemoteSwiftPackageReference "ed-swift" */,
841 85B622113A5DC5A1BD2D123B /* XCRemoteSwiftPackageReference "swift-snapshot-testing" */,
842 );
843 preferredProjectObjectVersion = 77;
844 productRefGroup = 3F9369D339C14126AB44D720 /* Products */;
845 projectDirPath = "";
846 projectRoot = "";
847 targets = (
848 2ADB11F6C1D51B9F9A9DB15F /* Klepon */,
849 F10E9562BA0BE60A7E000DB0 /* KleponSnapshotTests */,
850 676CA86C78E7DB801DEEAF12 /* Klepon Mac */,
851 E153DCB2727ADB891CF09A25 /* Klepon TV */,
852 62904071A31F700A13D6F432 /* Klepon TV Top Shelf */,
853 0322696BE3965C4C0F0E5322 /* Klepon Vision */,
854 E8CEBF52617721AEE450A7CF /* Klepon Watch */,
855 );
856 };
857 /* End PBXProject section */
858
859 /* Begin PBXResourcesBuildPhase section */
860 0DEE2337CA5E6D48C9C110A2 /* Resources */ = {
861 isa = PBXResourcesBuildPhase;
862 buildActionMask = 2147483647;
863 files = (
864 A54D028D8F35FE002B0ACA90 /* Assets.xcassets in Resources */,
865 88984B6A8AA504AD200A7F39 /* collections.json in Resources */,
866 B7DE9EC8BE998E6719C88E83 /* guide_entries.json in Resources */,
867 );
868 runOnlyForDeploymentPostprocessing = 0;
869 };
870 13483CEA676E76809EF16344 /* Resources */ = {
871 isa = PBXResourcesBuildPhase;
872 buildActionMask = 2147483647;
873 files = (
874 C1DF8DB1F063D1C5258602D6 /* Assets.xcassets in Resources */,
875 9BF8C40A4C12038A9DD2D0D7 /* collections.json in Resources */,
876 A571A7E1FA449D257951367C /* guide_entries.json in Resources */,
877 );
878 runOnlyForDeploymentPostprocessing = 0;
879 };
880 63B62007E78131109B2F8902 /* Resources */ = {
881 isa = PBXResourcesBuildPhase;
882 buildActionMask = 2147483647;
883 files = (
884 841F3B272D0FD82365DE48BD /* Assets.xcassets in Resources */,
885 76EE3B0D899987557B6741DF /* collections.json in Resources */,
886 A69F302A8F11969D9CD197EE /* guide_entries.json in Resources */,
887 );
888 runOnlyForDeploymentPostprocessing = 0;
889 };
890 667705EEBEDEBBCA43E94EAC /* Resources */ = {
891 isa = PBXResourcesBuildPhase;
892 buildActionMask = 2147483647;
893 files = (
894 889CBF2AF84AABF8012EE737 /* Assets.xcassets in Resources */,
895 5692BBCE950885C5C1193DDF /* collections.json in Resources */,
896 B768150B02B19417B81FE651 /* guide_entries.json in Resources */,
897 );
898 runOnlyForDeploymentPostprocessing = 0;
899 };
900 6F8A4C98AF649CB41F0837B3 /* Resources */ = {
901 isa = PBXResourcesBuildPhase;
902 buildActionMask = 2147483647;
903 files = (
904 35D43509610D0E2CB3DBD2BB /* testEmptyStateView.saved-empty-state.png in Resources */,
905 C15131992039B3AC7DB74DAB /* testGuideArtworkView.guide-artwork.png in Resources */,
906 E87F8A08D6922557A5DBD198 /* testOnboardingView_defaultState.default.png in Resources */,
907 );
908 runOnlyForDeploymentPostprocessing = 0;
909 };
910 BC5A6BBAFB4A1B61000065D1 /* Resources */ = {
911 isa = PBXResourcesBuildPhase;
912 buildActionMask = 2147483647;
913 files = (
914 926AB007EBCD5315EE77E2A6 /* Assets.xcassets in Resources */,
915 0977CD6BFFDBDBE3B7795924 /* collections.json in Resources */,
916 1FF490E985C31BB08DA29AFF /* guide_entries.json in Resources */,
917 );
918 runOnlyForDeploymentPostprocessing = 0;
919 };
920 C0709ADB9349E7813934595B /* Resources */ = {
921 isa = PBXResourcesBuildPhase;
922 buildActionMask = 2147483647;
923 files = (
924 A81DB2CF33EF6E8730010E87 /* topshelf-klepon.png in Resources */,
925 B5A8D8C810B7D57B637DA94C /* topshelf-rendang.png in Resources */,
926 F8C02BC1E76C4DCAC7C1F237 /* topshelf-sambal.png in Resources */,
927 B395C990F4E3A61631BBE48D /* topshelf-street-food.png in Resources */,
928 );
929 runOnlyForDeploymentPostprocessing = 0;
930 };
931 /* End PBXResourcesBuildPhase section */
932
933 /* Begin PBXShellScriptBuildPhase section */
934 005255530CCC905544DBE9A8 /* Update CFBundleVersion */ = {
935 isa = PBXShellScriptBuildPhase;
936 alwaysOutOfDate = 1;
937 buildActionMask = 2147483647;
938 files = (
939 );
940 inputFileListPaths = (
941 );
942 inputPaths = (
943 );
944 name = "Update CFBundleVersion";
945 outputFileListPaths = (
946 );
947 outputPaths = (
948 );
949 runOnlyForDeploymentPostprocessing = 0;
950 shellPath = /bin/sh;
951 shellScript = "set -eu\n\nSHARED_BUNDLE_VERSION_FILE=\"${BUILD_DIR}/klepon-cfbundleversion.txt\"\nif [ -f \"${SHARED_BUNDLE_VERSION_FILE}\" ]; then\n BUNDLE_VERSION=\"$(cat \"${SHARED_BUNDLE_VERSION_FILE}\")\"\nelse\n BUNDLE_VERSION=\"$(date -u +\"%Y%m%d.%H%M\")\"\n printf '%s' \"${BUNDLE_VERSION}\" > \"${SHARED_BUNDLE_VERSION_FILE}\"\nfi\n\nINFO_PLIST=\"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}\"\n\nif [ ! -f \"${INFO_PLIST}\" ]; then\n echo \"error: Info.plist not found at ${INFO_PLIST}\"\n exit 1\nfi\n\nif ! /usr/libexec/PlistBuddy -c \"Set :CFBundleVersion ${BUNDLE_VERSION}\" \"${INFO_PLIST}\" >/dev/null 2>&1; then\n /usr/libexec/PlistBuddy -c \"Add :CFBundleVersion string ${BUNDLE_VERSION}\" \"${INFO_PLIST}\"\nfi\n\necho \"Updated CFBundleVersion to ${BUNDLE_VERSION}\"\n";
952 showEnvVarsInLog = 0;
953 };
954 029DF4CC70CC3C4774474B0D /* Update CFBundleVersion */ = {
955 isa = PBXShellScriptBuildPhase;
956 alwaysOutOfDate = 1;
957 buildActionMask = 2147483647;
958 files = (
959 );
960 inputFileListPaths = (
961 );
962 inputPaths = (
963 );
964 name = "Update CFBundleVersion";
965 outputFileListPaths = (
966 );
967 outputPaths = (
968 );
969 runOnlyForDeploymentPostprocessing = 0;
970 shellPath = /bin/sh;
971 shellScript = "set -eu\n\nSHARED_BUNDLE_VERSION_FILE=\"${BUILD_DIR}/klepon-cfbundleversion.txt\"\nif [ -f \"${SHARED_BUNDLE_VERSION_FILE}\" ]; then\n BUNDLE_VERSION=\"$(cat \"${SHARED_BUNDLE_VERSION_FILE}\")\"\nelse\n BUNDLE_VERSION=\"$(date -u +\"%Y%m%d.%H%M\")\"\n printf '%s' \"${BUNDLE_VERSION}\" > \"${SHARED_BUNDLE_VERSION_FILE}\"\nfi\n\nINFO_PLIST=\"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}\"\n\nif [ ! -f \"${INFO_PLIST}\" ]; then\n echo \"error: Info.plist not found at ${INFO_PLIST}\"\n exit 1\nfi\n\nif ! /usr/libexec/PlistBuddy -c \"Set :CFBundleVersion ${BUNDLE_VERSION}\" \"${INFO_PLIST}\" >/dev/null 2>&1; then\n /usr/libexec/PlistBuddy -c \"Add :CFBundleVersion string ${BUNDLE_VERSION}\" \"${INFO_PLIST}\"\nfi\n\necho \"Updated CFBundleVersion to ${BUNDLE_VERSION}\"\n";
972 showEnvVarsInLog = 0;
973 };
974 201C2DC58537433FDB96C0C5 /* Update CFBundleVersion */ = {
975 isa = PBXShellScriptBuildPhase;
976 alwaysOutOfDate = 1;
977 buildActionMask = 2147483647;
978 files = (
979 );
980 inputFileListPaths = (
981 );
982 inputPaths = (
983 );
984 name = "Update CFBundleVersion";
985 outputFileListPaths = (
986 );
987 outputPaths = (
988 );
989 runOnlyForDeploymentPostprocessing = 0;
990 shellPath = /bin/sh;
991 shellScript = "set -eu\n\nSHARED_BUNDLE_VERSION_FILE=\"${BUILD_DIR}/klepon-cfbundleversion.txt\"\nif [ -f \"${SHARED_BUNDLE_VERSION_FILE}\" ]; then\n BUNDLE_VERSION=\"$(cat \"${SHARED_BUNDLE_VERSION_FILE}\")\"\nelse\n BUNDLE_VERSION=\"$(date -u +\"%Y%m%d.%H%M\")\"\n printf '%s' \"${BUNDLE_VERSION}\" > \"${SHARED_BUNDLE_VERSION_FILE}\"\nfi\n\nINFO_PLIST=\"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}\"\n\nif [ ! -f \"${INFO_PLIST}\" ]; then\n echo \"error: Info.plist not found at ${INFO_PLIST}\"\n exit 1\nfi\n\nif ! /usr/libexec/PlistBuddy -c \"Set :CFBundleVersion ${BUNDLE_VERSION}\" \"${INFO_PLIST}\" >/dev/null 2>&1; then\n /usr/libexec/PlistBuddy -c \"Add :CFBundleVersion string ${BUNDLE_VERSION}\" \"${INFO_PLIST}\"\nfi\n\necho \"Updated CFBundleVersion to ${BUNDLE_VERSION}\"\n";
992 showEnvVarsInLog = 0;
993 };
994 2444E8602E844C7B97E84E9D /* Update CFBundleVersion */ = {
995 isa = PBXShellScriptBuildPhase;
996 alwaysOutOfDate = 1;
997 buildActionMask = 2147483647;
998 files = (
999 );
1000 inputFileListPaths = (
1001 );
1002 inputPaths = (
1003 );
1004 name = "Update CFBundleVersion";
1005 outputFileListPaths = (
1006 );
1007 outputPaths = (
1008 );
1009 runOnlyForDeploymentPostprocessing = 0;
1010 shellPath = /bin/sh;
1011 shellScript = "set -eu\n\nSHARED_BUNDLE_VERSION_FILE=\"${BUILD_DIR}/klepon-cfbundleversion.txt\"\nif [ -f \"${SHARED_BUNDLE_VERSION_FILE}\" ]; then\n BUNDLE_VERSION=\"$(cat \"${SHARED_BUNDLE_VERSION_FILE}\")\"\nelse\n BUNDLE_VERSION=\"$(date -u +\"%Y%m%d.%H%M\")\"\n printf '%s' \"${BUNDLE_VERSION}\" > \"${SHARED_BUNDLE_VERSION_FILE}\"\nfi\n\nINFO_PLIST=\"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}\"\n\nif [ ! -f \"${INFO_PLIST}\" ]; then\n echo \"error: Info.plist not found at ${INFO_PLIST}\"\n exit 1\nfi\n\nif ! /usr/libexec/PlistBuddy -c \"Set :CFBundleVersion ${BUNDLE_VERSION}\" \"${INFO_PLIST}\" >/dev/null 2>&1; then\n /usr/libexec/PlistBuddy -c \"Add :CFBundleVersion string ${BUNDLE_VERSION}\" \"${INFO_PLIST}\"\nfi\n\necho \"Updated CFBundleVersion to ${BUNDLE_VERSION}\"\n";
1012 showEnvVarsInLog = 0;
1013 };
1014 38259E5F7F0F32D684AE509A /* Update CFBundleVersion */ = {
1015 isa = PBXShellScriptBuildPhase;
1016 alwaysOutOfDate = 1;
1017 buildActionMask = 2147483647;
1018 files = (
1019 );
1020 inputFileListPaths = (
1021 );
1022 inputPaths = (
1023 );
1024 name = "Update CFBundleVersion";
1025 outputFileListPaths = (
1026 );
1027 outputPaths = (
1028 );
1029 runOnlyForDeploymentPostprocessing = 0;
1030 shellPath = /bin/sh;
1031 shellScript = "set -eu\n\nSHARED_BUNDLE_VERSION_FILE=\"${BUILD_DIR}/klepon-cfbundleversion.txt\"\nif [ -f \"${SHARED_BUNDLE_VERSION_FILE}\" ]; then\n BUNDLE_VERSION=\"$(cat \"${SHARED_BUNDLE_VERSION_FILE}\")\"\nelse\n BUNDLE_VERSION=\"$(date -u +\"%Y%m%d.%H%M\")\"\n printf '%s' \"${BUNDLE_VERSION}\" > \"${SHARED_BUNDLE_VERSION_FILE}\"\nfi\n\nINFO_PLIST=\"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}\"\n\nif [ ! -f \"${INFO_PLIST}\" ]; then\n echo \"error: Info.plist not found at ${INFO_PLIST}\"\n exit 1\nfi\n\nif ! /usr/libexec/PlistBuddy -c \"Set :CFBundleVersion ${BUNDLE_VERSION}\" \"${INFO_PLIST}\" >/dev/null 2>&1; then\n /usr/libexec/PlistBuddy -c \"Add :CFBundleVersion string ${BUNDLE_VERSION}\" \"${INFO_PLIST}\"\nfi\n\necho \"Updated CFBundleVersion to ${BUNDLE_VERSION}\"\n";
1032 showEnvVarsInLog = 0;
1033 };
1034 4CD2E0A71BF112F74656BFFD /* Update CFBundleVersion */ = {
1035 isa = PBXShellScriptBuildPhase;
1036 alwaysOutOfDate = 1;
1037 buildActionMask = 2147483647;
1038 files = (
1039 );
1040 inputFileListPaths = (
1041 );
1042 inputPaths = (
1043 );
1044 name = "Update CFBundleVersion";
1045 outputFileListPaths = (
1046 );
1047 outputPaths = (
1048 );
1049 runOnlyForDeploymentPostprocessing = 0;
1050 shellPath = /bin/sh;
1051 shellScript = "set -eu\n\nSHARED_BUNDLE_VERSION_FILE=\"${BUILD_DIR}/klepon-cfbundleversion.txt\"\nif [ -f \"${SHARED_BUNDLE_VERSION_FILE}\" ]; then\n BUNDLE_VERSION=\"$(cat \"${SHARED_BUNDLE_VERSION_FILE}\")\"\nelse\n BUNDLE_VERSION=\"$(date -u +\"%Y%m%d.%H%M\")\"\n printf '%s' \"${BUNDLE_VERSION}\" > \"${SHARED_BUNDLE_VERSION_FILE}\"\nfi\n\nINFO_PLIST=\"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}\"\n\nif [ ! -f \"${INFO_PLIST}\" ]; then\n echo \"error: Info.plist not found at ${INFO_PLIST}\"\n exit 1\nfi\n\nif ! /usr/libexec/PlistBuddy -c \"Set :CFBundleVersion ${BUNDLE_VERSION}\" \"${INFO_PLIST}\" >/dev/null 2>&1; then\n /usr/libexec/PlistBuddy -c \"Add :CFBundleVersion string ${BUNDLE_VERSION}\" \"${INFO_PLIST}\"\nfi\n\necho \"Updated CFBundleVersion to ${BUNDLE_VERSION}\"\n";
1052 showEnvVarsInLog = 0;
1053 };
1054 769E8E263D58CBDD86DF4C29 /* Inject PrivacyInfo into EdFramework */ = {
1055 isa = PBXShellScriptBuildPhase;
1056 alwaysOutOfDate = 1;
1057 buildActionMask = 2147483647;
1058 files = (
1059 );
1060 inputFileListPaths = (
1061 );
1062 inputPaths = (
1063 );
1064 name = "Inject PrivacyInfo into EdFramework";
1065 outputFileListPaths = (
1066 );
1067 outputPaths = (
1068 );
1069 runOnlyForDeploymentPostprocessing = 0;
1070 shellPath = /bin/sh;
1071 shellScript = "set -eu\n# PrivacyInfo.xcprivacy is required inside every XCFramework slice.\n# Apple's scanner does not accept the app-level manifest as a substitute\n# for manifests inside nested third-party framework bundles.\n# BUILD_DIR is .../DerivedData/<name>/Build/Intermediates.noindex\n# SourcePackages is always two levels up from BUILD_DIR.\nXCFW=\"${BUILD_DIR}/../../SourcePackages/artifacts/ed-swift/EdFramework/EdFramework.xcframework\"\nPRIVACY_SRC=\"${SRCROOT}/Scripts/OndePrivacyInfo.xcprivacy\"\nif [ ! -d \"${XCFW}\" ]; then\n echo \"warning: EdFramework.xcframework not found at ${XCFW} — skipping PrivacyInfo injection\"\n exit 0\nfi\nfor SLICE in \"${XCFW}\"/*/; do\n DEST=\"${SLICE}PrivacyInfo.xcprivacy\"\n if [ ! -f \"${DEST}\" ]; then\n cp \"${PRIVACY_SRC}\" \"${DEST}\"\n echo \"Injected PrivacyInfo.xcprivacy into ${SLICE}\"\n fi\ndone\n";
1072 showEnvVarsInLog = 0;
1073 };
1074 DAFDBFBC180515F126F30051 /* Inject PrivacyInfo into EdFramework */ = {
1075 isa = PBXShellScriptBuildPhase;
1076 alwaysOutOfDate = 1;
1077 buildActionMask = 2147483647;
1078 files = (
1079 );
1080 inputFileListPaths = (
1081 );
1082 inputPaths = (
1083 );
1084 name = "Inject PrivacyInfo into EdFramework";
1085 outputFileListPaths = (
1086 );
1087 outputPaths = (
1088 );
1089 runOnlyForDeploymentPostprocessing = 0;
1090 shellPath = /bin/sh;
1091 shellScript = "set -eu\nXCFW=\"${BUILD_DIR}/../../SourcePackages/artifacts/ed-swift/EdFramework/EdFramework.xcframework\"\nPRIVACY_SRC=\"${SRCROOT}/Scripts/OndePrivacyInfo.xcprivacy\"\nif [ ! -d \"${XCFW}\" ]; then\n echo \"warning: EdFramework.xcframework not found at ${XCFW} — skipping PrivacyInfo injection\"\n exit 0\nfi\nfor SLICE in \"${XCFW}\"/*/; do\n DEST=\"${SLICE}PrivacyInfo.xcprivacy\"\n if [ ! -f \"${DEST}\" ]; then\n cp \"${PRIVACY_SRC}\" \"${DEST}\"\n echo \"Injected PrivacyInfo.xcprivacy into ${SLICE}\"\n fi\ndone\n";
1092 showEnvVarsInLog = 0;
1093 };
1094 /* End PBXShellScriptBuildPhase section */
1095
1096 /* Begin PBXSourcesBuildPhase section */
1097 00C4D42D71379B10BB8DAD32 /* Sources */ = {
1098 isa = PBXSourcesBuildPhase;
1099 buildActionMask = 2147483647;
1100 files = (
1101 3C39523ADE9453A7043216B8 /* AccountStore.swift in Sources */,
1102 609532817F88D0D6F1E3CB16 /* AccountView.swift in Sources */,
1103 8189E2DF13801C2B7162AD45 /* AnswerCard.swift in Sources */,
1104 972FD85EF2549D2C82EA35A1 /* AppDelegate.swift in Sources */,
1105 1E042510F7F75D392A4AC6E7 /* AppState.swift in Sources */,
1106 26FA5D01FED96591E78A2293 /* AskSheetView.swift in Sources */,
1107 854C10AE603DCCC521D93BC2 /* ContentRepository.swift in Sources */,
1108 9AE51D59952308FED1DD538B /* DebugMenuView.swift in Sources */,
1109 997D63C43B61CB342C586FB8 /* DiscoverView.swift in Sources */,
1110 6B7AE8B1C6D3AD6F973F5757 /* EmptyStateView.swift in Sources */,
1111 C8ECF8664277103582D96B45 /* FavoritesStore.swift in Sources */,
1112 3EB900CB86D2B32F8DAB434D /* GuideAnswerService.swift in Sources */,
1113 B5B076B218DF86269DD7F80D /* GuideArtworkView.swift in Sources */,
1114 C6532365C518962FC265ABCD /* GuideCollection.swift in Sources */,
1115 F9983D842EB95B43620CA52B /* GuideDetailView.swift in Sources */,
1116 E25DE24C663A9579D28F21D4 /* GuideEntry.swift in Sources */,
1117 B97D6D5885E0B6CFB358B1BC /* KleponActionButton.swift in Sources */,
1118 16330914DF2EE212C91BC0CA /* KleponCard.swift in Sources */,
1119 587F0BB61966B2BB048013DE /* KleponChip.swift in Sources */,
1120 4B6E0CF8EAB6FF1D0160E3E6 /* KleponColor.swift in Sources */,
1121 CE6824D3D8261BF0463F39D8 /* KleponMetadataRow.swift in Sources */,
1122 53D759A429886E0FD8E5E9BF /* KleponTabBarController.swift in Sources */,
1123 DDD3529FAEA0D105EBD5C168 /* KleponTypography.swift in Sources */,
1124 6117CD728CC7FF8D6EB0A8C8 /* OnboardingView.swift in Sources */,
1125 E17595636392EDF3D6EEE895 /* OndeEnvironmentBootstrap.swift in Sources */,
1126 9F79023304A3FD651D05BB54 /* OndeGuideEngine.swift in Sources */,
1127 3C4C5EEBF766D6E8A5D240DA /* PlatformViewSupport.swift in Sources */,
1128 819489D60D833AE2AD9185A6 /* RecentSearchStore.swift in Sources */,
1129 A0EF936D6223961D25CBC9F6 /* RecentlyViewedStore.swift in Sources */,
1130 14C796CE6777B6013910831C /* SavedView.swift in Sources */,
1131 2C576E80607B50FC80C97A08 /* SceneDelegate.swift in Sources */,
1132 74A9016453B9820FC486B014 /* SearchService.swift in Sources */,
1133 C2A06A0802694BD0C1F39B85 /* SearchView.swift in Sources */,
1134 7F726FA99DBDC0155E99E098 /* SectionHeader.swift in Sources */,
1135 78142FDCFE7EF00A3D81A067 /* SettingsView.swift in Sources */,
1136 );
1137 runOnlyForDeploymentPostprocessing = 0;
1138 };
1139 142193A63A26ACC180E1EB37 /* Sources */ = {
1140 isa = PBXSourcesBuildPhase;
1141 buildActionMask = 2147483647;
1142 files = (
1143 46D9C39408990F1C332EA957 /* AccountStore.swift in Sources */,
1144 EAD7B26527734629EC834D13 /* AccountView.swift in Sources */,
1145 23E22EC56BE48A20BD1229F7 /* AnswerCard.swift in Sources */,
1146 9ECA989E9DCDF08A2D7C29A3 /* AppRootView.swift in Sources */,
1147 8401F9C0FA140DC2CF8BA248 /* AppState.swift in Sources */,
1148 FA423A76BE098A9911044246 /* AskSheetView.swift in Sources */,
1149 C709C82E7F0BCF398BCD9C2F /* ContentRepository.swift in Sources */,
1150 BC40004C4FFBC035CA9DDD6F /* DebugMenuView.swift in Sources */,
1151 19E282A6347C588E17778195 /* DiscoverView.swift in Sources */,
1152 DA915BA8B2F732E7D62CF936 /* EmptyStateView.swift in Sources */,
1153 200AE94E7E7E73B5C83869DD /* FavoritesStore.swift in Sources */,
1154 1704DDB60B1E23057C0E1094 /* GuideAnswerService.swift in Sources */,
1155 05BF0404B7030EDCD3D8C357 /* GuideArtworkView.swift in Sources */,
1156 1F95A454A641C829BD304A89 /* GuideCollection.swift in Sources */,
1157 2AB57009245E1BABD1156AFA /* GuideDetailView.swift in Sources */,
1158 019B658F26ABE2706231EC9E /* GuideEntry.swift in Sources */,
1159 4609C70D9FB74C55B9DBE832 /* KleponActionButton.swift in Sources */,
1160 F1431179B54CEB23FFFCB2AE /* KleponApp.swift in Sources */,
1161 7F1E744AAE60BF1FB132D66C /* KleponCard.swift in Sources */,
1162 0D685E35EE50C926DC6FBE4C /* KleponChip.swift in Sources */,
1163 0E69E79C5FADF1633FE3D63F /* KleponColor.swift in Sources */,
1164 D99AAE1CDE51139840A52607 /* KleponMetadataRow.swift in Sources */,
1165 14B7CE6E6A0EB12B709F7B55 /* KleponTypography.swift in Sources */,
1166 41F8E173B82809AF87E1B297 /* OnboardingView.swift in Sources */,
1167 67368394088AA3045EBA14A5 /* OndeEnvironmentBootstrap.swift in Sources */,
1168 B34377720179454F9B9184C5 /* OndeGuideEngine.swift in Sources */,
1169 37A723A15D19B7DE3DD92B25 /* PlatformViewSupport.swift in Sources */,
1170 FD0E1BA888E3CE73875D58FF /* RecentSearchStore.swift in Sources */,
1171 B1F1D1A453150D3BBB0146EF /* RecentlyViewedStore.swift in Sources */,
1172 99071E0CB9F44857C0BFC8C9 /* SavedView.swift in Sources */,
1173 8804CFBAD707E1FED63BF214 /* SearchService.swift in Sources */,
1174 478FFEBDAA7729189B429A6D /* SearchView.swift in Sources */,
1175 910A84B3F28B3F79871FF60E /* SectionHeader.swift in Sources */,
1176 3349FB46691C944112401D6E /* SettingsView.swift in Sources */,
1177 );
1178 runOnlyForDeploymentPostprocessing = 0;
1179 };
1180 57F190B6EB353A926A214B19 /* Sources */ = {
1181 isa = PBXSourcesBuildPhase;
1182 buildActionMask = 2147483647;
1183 files = (
1184 03D16A2386EB68FED8D92D52 /* GuideEntry.swift in Sources */,
1185 E45F257E3D35DC565B21B299 /* KleponColor.swift in Sources */,
1186 36AA193A3B7EF7CB25B6E0BE /* KleponWatchApp.swift in Sources */,
1187 C2EA2682A6545802C06E00CC /* WatchBrandSystem.swift in Sources */,
1188 1E7AAEA8007BFE4ED6FE4892 /* WatchContentLoader.swift in Sources */,
1189 4D63E231AC9630B2C225DF22 /* WatchHomeView.swift in Sources */,
1190 );
1191 runOnlyForDeploymentPostprocessing = 0;
1192 };
1193 625CD4834F7E62F4BCE58404 /* Sources */ = {
1194 isa = PBXSourcesBuildPhase;
1195 buildActionMask = 2147483647;
1196 files = (
1197 7E6755E542F15B6921C21604 /* AccountStore.swift in Sources */,
1198 CA34777FEEC140D938934C01 /* AccountView.swift in Sources */,
1199 687418866BCC5554A0F4BFDC /* AnswerCard.swift in Sources */,
1200 F88972525510344E63D2983C /* AppRootView.swift in Sources */,
1201 D6D8A42930EA9A0EA6622108 /* AppState.swift in Sources */,
1202 EE2103530984735318E469FD /* AskSheetView.swift in Sources */,
1203 F87EF3C291B7D3FB9BE8E43A /* ContentRepository.swift in Sources */,
1204 CA9472623EBA8F24348A9F05 /* DebugMenuView.swift in Sources */,
1205 9E16F5C37F30B58441780260 /* DiscoverView.swift in Sources */,
1206 2AD05B0B7ED109134F013862 /* EmptyStateView.swift in Sources */,
1207 F0694A813D1CB57F0B5C0F65 /* FavoritesStore.swift in Sources */,
1208 72A88C81BE80344130E0EC0C /* GuideAnswerService.swift in Sources */,
1209 955D039F4B5D14FCA4E7F2B2 /* GuideArtworkView.swift in Sources */,
1210 9ECEB59572D3B9D08D1DA896 /* GuideCollection.swift in Sources */,
1211 7C90532B70C1C4840E49A92B /* GuideDetailView.swift in Sources */,
1212 93E938AA978ABF5665737887 /* GuideEntry.swift in Sources */,
1213 5808C4539EBB98D822BDE99F /* KleponActionButton.swift in Sources */,
1214 8EBCC9FA074785FDD82B02E5 /* KleponApp.swift in Sources */,
1215 B4467AA7214B4990D2FC19DA /* KleponCard.swift in Sources */,
1216 1879460ECC35F3386E8E6109 /* KleponChip.swift in Sources */,
1217 3F999E04650931C2019BDA17 /* KleponColor.swift in Sources */,
1218 43ABAA3C08695B7C8FEE7324 /* KleponMetadataRow.swift in Sources */,
1219 895B5369E9CF1E1B26CDF40E /* KleponTypography.swift in Sources */,
1220 2F3047F5078C4526133CB848 /* OnboardingView.swift in Sources */,
1221 F2D905B433B0B76CE6B4001F /* OndeEnvironmentBootstrap.swift in Sources */,
1222 37BD5B2A275426143819B70D /* OndeGuideEngine.swift in Sources */,
1223 35B5508906432B3EFE26F4FF /* PlatformViewSupport.swift in Sources */,
1224 F9D6FC75A11BE98BD28BBDC2 /* RecentSearchStore.swift in Sources */,
1225 3A6F67743964C4D04893C321 /* RecentlyViewedStore.swift in Sources */,
1226 BB70FAD944544125AF261F7C /* SavedView.swift in Sources */,
1227 0709F0B92923D97F6859275A /* SearchService.swift in Sources */,
1228 032AFB30CAB4E8A31CDC897D /* SearchView.swift in Sources */,
1229 ECDD606D8AFA776765AA9A31 /* SectionHeader.swift in Sources */,
1230 F5B35C6C771073CE32B4BFD1 /* SettingsView.swift in Sources */,
1231 );
1232 runOnlyForDeploymentPostprocessing = 0;
1233 };
1234 92DEEB7F16A4D2F734A3DE48 /* Sources */ = {
1235 isa = PBXSourcesBuildPhase;
1236 buildActionMask = 2147483647;
1237 files = (
1238 CAF237DB042D25046A64CD4D /* ContentProvider.swift in Sources */,
1239 );
1240 runOnlyForDeploymentPostprocessing = 0;
1241 };
1242 BFE208AF41AAF322DFAB7EED /* Sources */ = {
1243 isa = PBXSourcesBuildPhase;
1244 buildActionMask = 2147483647;
1245 files = (
1246 0E5D1E78C77AD38DD7A3D7F6 /* AccountStore.swift in Sources */,
1247 2A3F2C3AF20192B1FCE71B56 /* AccountView.swift in Sources */,
1248 CE5C9946E68E1F7A781F1628 /* AnswerCard.swift in Sources */,
1249 0481C8A85FED1E35C3734816 /* AppRootView.swift in Sources */,
1250 906E12C00728B15B676A23DB /* AppState.swift in Sources */,
1251 2F74C3B8D4A1A38DEF50E39B /* AskSheetView.swift in Sources */,
1252 20CDEBB4B6C8AAE007854102 /* ContentRepository.swift in Sources */,
1253 99C4E0BC590F52400F28A5A4 /* DebugMenuView.swift in Sources */,
1254 A001621A9DB5FF868217D410 /* DiscoverView.swift in Sources */,
1255 EDD126593FECA8D9EB7DBC4A /* EmptyStateView.swift in Sources */,
1256 68479892D13825C6C9977DF9 /* FavoritesStore.swift in Sources */,
1257 D2D49509E9CB5CF2BA4EBF6D /* GuideAnswerService.swift in Sources */,
1258 387EE903EFA0D820C646B4DB /* GuideArtworkView.swift in Sources */,
1259 A5E339F380247E90AEF56DC6 /* GuideCollection.swift in Sources */,
1260 FA44F0883B69820D526BF6E4 /* GuideDetailView.swift in Sources */,
1261 87E259162B03252EA23A32CF /* GuideEntry.swift in Sources */,
1262 BC8102C70075D3DEDE537CDD /* KleponActionButton.swift in Sources */,
1263 7A9B7E0858E7095E18EC7AC6 /* KleponApp.swift in Sources */,
1264 0B94C64018A573AD679106E5 /* KleponCard.swift in Sources */,
1265 0E350E68B43067698FE3B05C /* KleponChip.swift in Sources */,
1266 A0F94006F95F2F671D00EEFB /* KleponColor.swift in Sources */,
1267 8C6D6EC32870A45E021BF3EB /* KleponMetadataRow.swift in Sources */,
1268 995C5FDC790E09B87CB5F1C4 /* KleponTypography.swift in Sources */,
1269 367BECAC66674A040D99C0DF /* OnboardingView.swift in Sources */,
1270 6FCE6EBC39C7F229A5F52745 /* OndeEnvironmentBootstrap.swift in Sources */,
1271 C88013421E507AEDCB41BE96 /* OndeGuideEngine.swift in Sources */,
1272 5C3590F8B1A8255C5E175A03 /* PlatformViewSupport.swift in Sources */,
1273 85FC2D60857424B39654DE08 /* RecentSearchStore.swift in Sources */,
1274 F64259FB47704FC3E2F15FF7 /* RecentlyViewedStore.swift in Sources */,
1275 1C2B6971843620B876F5B0C3 /* SavedView.swift in Sources */,
1276 9E42E7DE70F8582B66C895F3 /* SearchService.swift in Sources */,
1277 A76C56EF8CFB6D723B55EE74 /* SearchView.swift in Sources */,
1278 3568D735D790330031DCF8F9 /* SectionHeader.swift in Sources */,
1279 A18C34880D04EAB4C889BC22 /* SettingsView.swift in Sources */,
1280 );
1281 runOnlyForDeploymentPostprocessing = 0;
1282 };
1283 C2B1B8ADEE7B8E2628B90D1F /* Sources */ = {
1284 isa = PBXSourcesBuildPhase;
1285 buildActionMask = 2147483647;
1286 files = (
1287 7BF234E67821CDDA64D3D351 /* KleponLogicTests.swift in Sources */,
1288 E599CCDB1FE5331C4A1EB6C6 /* KleponSnapshotTests.swift in Sources */,
1289 );
1290 runOnlyForDeploymentPostprocessing = 0;
1291 };
1292 /* End PBXSourcesBuildPhase section */
1293
1294 /* Begin PBXTargetDependency section */
1295 6D8B1489B7EFEE9D18830BD6 /* PBXTargetDependency */ = {
1296 isa = PBXTargetDependency;
1297 target = E8CEBF52617721AEE450A7CF /* Klepon Watch */;
1298 targetProxy = D55C73775065842DC4A51797 /* PBXContainerItemProxy */;
1299 };
1300 C8D72D1B1BE79610DB905424 /* PBXTargetDependency */ = {
1301 isa = PBXTargetDependency;
1302 target = 2ADB11F6C1D51B9F9A9DB15F /* Klepon */;
1303 targetProxy = C24CD5A7B8399776539D1FF4 /* PBXContainerItemProxy */;
1304 };
1305 E94F08ECA162F00774BE9E72 /* PBXTargetDependency */ = {
1306 isa = PBXTargetDependency;
1307 target = 62904071A31F700A13D6F432 /* Klepon TV Top Shelf */;
1308 targetProxy = F5DCD3DD3B0670276438A4D3 /* PBXContainerItemProxy */;
1309 };
1310 /* End PBXTargetDependency section */
1311
1312 /* Begin XCBuildConfiguration section */
1313 2CE1783225D9E3351FDB458B /* Release */ = {
1314 isa = XCBuildConfiguration;
1315 baseConfigurationReference = 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */;
1316 buildSettings = {
1317 BUNDLE_LOADER = "$(TEST_HOST)";
1318 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1319 GENERATE_INFOPLIST_FILE = YES;
1320 LD_RUNPATH_SEARCH_PATHS = (
1321 "$(inherited)",
1322 "@executable_path/Frameworks",
1323 "@loader_path/Frameworks",
1324 );
1325 PRODUCT_BUNDLE_IDENTIFIER = "ai.splitfire.klepon.snapshot-tests";
1326 SDKROOT = iphoneos;
1327 SWIFT_OPTIMIZATION_LEVEL = "-O";
1328 TARGETED_DEVICE_FAMILY = "1,2";
1329 TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Klepon.app/Klepon";
1330 };
1331 name = Release;
1332 };
1333 31056AAA3C7140EC9DD06895 /* Debug */ = {
1334 isa = XCBuildConfiguration;
1335 baseConfigurationReference = 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */;
1336 buildSettings = {
1337 BUNDLE_LOADER = "$(TEST_HOST)";
1338 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1339 GENERATE_INFOPLIST_FILE = YES;
1340 LD_RUNPATH_SEARCH_PATHS = (
1341 "$(inherited)",
1342 "@executable_path/Frameworks",
1343 "@loader_path/Frameworks",
1344 );
1345 PRODUCT_BUNDLE_IDENTIFIER = "ai.splitfire.klepon.snapshot-tests";
1346 SDKROOT = iphoneos;
1347 SWIFT_OPTIMIZATION_LEVEL = "-Onone";
1348 TARGETED_DEVICE_FAMILY = "1,2";
1349 TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Klepon Debug.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Klepon Debug";
1350 };
1351 name = Debug;
1352 };
1353 57B34C7365523CA3F80ED770 /* Debug */ = {
1354 isa = XCBuildConfiguration;
1355 baseConfigurationReference = 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */;
1356 buildSettings = {
1357 ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
1358 ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
1359 ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
1360 CURRENT_PROJECT_VERSION = 1;
1361 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1362 "EXCLUDED_ARCHS[sdk=watchsimulator*]" = x86_64;
1363 GENERATE_INFOPLIST_FILE = NO;
1364 INFOPLIST_FILE = KleponWatch/Info.plist;
1365 KLEPON_COMPANION_BUNDLE_ID = "ai.splitfire.klepon-Debug";
1366 LD_RUNPATH_SEARCH_PATHS = (
1367 "$(inherited)",
1368 "@executable_path/Frameworks",
1369 );
1370 MARKETING_VERSION = 1.0.0;
1371 PRODUCT_BUNDLE_IDENTIFIER = "ai.splitfire.klepon-Debug.watchkitapp";
1372 PRODUCT_NAME = "Klepon Watch";
1373 SDKROOT = watchos;
1374 SKIP_INSTALL = YES;
1375 SWIFT_OPTIMIZATION_LEVEL = "-Onone";
1376 TARGETED_DEVICE_FAMILY = 4;
1377 };
1378 name = Debug;
1379 };
1380 6F67020609BFAC03B751AA27 /* Release */ = {
1381 isa = XCBuildConfiguration;
1382 baseConfigurationReference = 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */;
1383 buildSettings = {
1384 APPLICATION_EXTENSION_API_ONLY = YES;
1385 CURRENT_PROJECT_VERSION = 1;
1386 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1387 INFOPLIST_FILE = KleponTVTopShelfExtension/Info.plist;
1388 LD_RUNPATH_SEARCH_PATHS = (
1389 "$(inherited)",
1390 "@executable_path/Frameworks",
1391 "@executable_path/../../Frameworks",
1392 );
1393 MARKETING_VERSION = 1.0.0;
1394 PRODUCT_BUNDLE_IDENTIFIER = ai.splitfire.klepon.topshelf;
1395 PRODUCT_NAME = "Klepon TV Top Shelf";
1396 SDKROOT = appletvos;
1397 SWIFT_OPTIMIZATION_LEVEL = "-O";
1398 TARGETED_DEVICE_FAMILY = 3;
1399 };
1400 name = Release;
1401 };
1402 73320483BA240362017C25C8 /* Debug */ = {
1403 isa = XCBuildConfiguration;
1404 baseConfigurationReference = 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */;
1405 buildSettings = {
1406 ASSETCATALOG_COMPILER_APPICON_NAME = AppIconMac;
1407 ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
1408 CODE_SIGN_ENTITLEMENTS = KleponMac/KleponMac.entitlements;
1409 COMBINE_HIDPI_IMAGES = YES;
1410 CURRENT_PROJECT_VERSION = 1;
1411 DEAD_CODE_STRIPPING = YES;
1412 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1413 "EXCLUDED_ARCHS[sdk=macosx*]" = x86_64;
1414 INFOPLIST_FILE = KleponMac/Info.plist;
1415 INFOPLIST_KEY_NSHumanReadableCopyright = "Copyright © 2026 Splitfire AB (Onde Inference)";
1416 LD_RUNPATH_SEARCH_PATHS = (
1417 "$(inherited)",
1418 "@executable_path/../Frameworks",
1419 );
1420 MARKETING_VERSION = 1.0.0;
1421 PRODUCT_BUNDLE_IDENTIFIER = "ai.splitfire.klepon-Debug";
1422 PRODUCT_NAME = "Klepon Debug";
1423 SDKROOT = macosx;
1424 SWIFT_OPTIMIZATION_LEVEL = "-Onone";
1425 };
1426 name = Debug;
1427 };
1428 812F1D8D209CC3C18A9DC330 /* Release */ = {
1429 isa = XCBuildConfiguration;
1430 baseConfigurationReference = 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */;
1431 buildSettings = {
1432 ASSETCATALOG_COMPILER_APPICON_NAME = AppIconMac;
1433 ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
1434 CODE_SIGN_ENTITLEMENTS = KleponMac/KleponMac.entitlements;
1435 COMBINE_HIDPI_IMAGES = YES;
1436 CURRENT_PROJECT_VERSION = 1;
1437 DEAD_CODE_STRIPPING = YES;
1438 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1439 "EXCLUDED_ARCHS[sdk=macosx*]" = x86_64;
1440 INFOPLIST_FILE = KleponMac/Info.plist;
1441 INFOPLIST_KEY_NSHumanReadableCopyright = "Copyright © 2026 Splitfire AB (Onde Inference)";
1442 LD_RUNPATH_SEARCH_PATHS = (
1443 "$(inherited)",
1444 "@executable_path/../Frameworks",
1445 );
1446 MARKETING_VERSION = 1.0.0;
1447 PRODUCT_BUNDLE_IDENTIFIER = ai.splitfire.klepon;
1448 PRODUCT_NAME = Klepon;
1449 SDKROOT = macosx;
1450 SWIFT_OPTIMIZATION_LEVEL = "-O";
1451 };
1452 name = Release;
1453 };
1454 850753164F664131E0E37EAE /* Release */ = {
1455 isa = XCBuildConfiguration;
1456 buildSettings = {
1457 ALWAYS_SEARCH_USER_PATHS = NO;
1458 CLANG_ANALYZER_NONNULL = YES;
1459 CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
1460 CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
1461 CLANG_CXX_LIBRARY = "libc++";
1462 CLANG_ENABLE_MODULES = YES;
1463 CLANG_ENABLE_OBJC_ARC = YES;
1464 CLANG_ENABLE_OBJC_WEAK = YES;
1465 CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
1466 CLANG_WARN_BOOL_CONVERSION = YES;
1467 CLANG_WARN_COMMA = YES;
1468 CLANG_WARN_CONSTANT_CONVERSION = YES;
1469 CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
1470 CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
1471 CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
1472 CLANG_WARN_EMPTY_BODY = YES;
1473 CLANG_WARN_ENUM_CONVERSION = YES;
1474 CLANG_WARN_INFINITE_RECURSION = YES;
1475 CLANG_WARN_INT_CONVERSION = YES;
1476 CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
1477 CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
1478 CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
1479 CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
1480 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
1481 CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
1482 CLANG_WARN_STRICT_PROTOTYPES = YES;
1483 CLANG_WARN_SUSPICIOUS_MOVE = YES;
1484 CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
1485 CLANG_WARN_UNREACHABLE_CODE = YES;
1486 CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
1487 COPY_PHASE_STRIP = NO;
1488 DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
1489 ENABLE_NS_ASSERTIONS = NO;
1490 ENABLE_STRICT_OBJC_MSGSEND = YES;
1491 GCC_C_LANGUAGE_STANDARD = gnu11;
1492 GCC_NO_COMMON_BLOCKS = YES;
1493 GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
1494 GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
1495 GCC_WARN_UNDECLARED_SELECTOR = YES;
1496 GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
1497 GCC_WARN_UNUSED_FUNCTION = YES;
1498 GCC_WARN_UNUSED_VARIABLE = YES;
1499 IPHONEOS_DEPLOYMENT_TARGET = 18.5;
1500 MACOSX_DEPLOYMENT_TARGET = 15.0;
1501 MTL_ENABLE_DEBUG_INFO = NO;
1502 MTL_FAST_MATH = YES;
1503 PRODUCT_NAME = "$(TARGET_NAME)";
1504 SWIFT_COMPILATION_MODE = wholemodule;
1505 SWIFT_OPTIMIZATION_LEVEL = "-O";
1506 SWIFT_VERSION = 5.0;
1507 TVOS_DEPLOYMENT_TARGET = 18.5;
1508 WATCHOS_DEPLOYMENT_TARGET = 9.0;
1509 XROS_DEPLOYMENT_TARGET = 1.0;
1510 };
1511 name = Release;
1512 };
1513 9415BE3B8DBFC6BE334F60B6 /* Debug */ = {
1514 isa = XCBuildConfiguration;
1515 baseConfigurationReference = 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */;
1516 buildSettings = {
1517 ASSETCATALOG_COMPILER_APPICON_NAME = AppIconTV;
1518 ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
1519 ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
1520 CODE_SIGN_ENTITLEMENTS = KleponTV/KleponTV.entitlements;
1521 CURRENT_PROJECT_VERSION = 1;
1522 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1523 "EXCLUDED_ARCHS[sdk=appletvsimulator*]" = x86_64;
1524 INFOPLIST_FILE = KleponTV/Info.plist;
1525 LD_RUNPATH_SEARCH_PATHS = (
1526 "$(inherited)",
1527 "@executable_path/Frameworks",
1528 );
1529 MARKETING_VERSION = 1.0.0;
1530 PRODUCT_BUNDLE_IDENTIFIER = "ai.splitfire.klepon-Debug";
1531 PRODUCT_NAME = "Klepon Debug";
1532 SDKROOT = appletvos;
1533 SWIFT_OPTIMIZATION_LEVEL = "-Onone";
1534 TARGETED_DEVICE_FAMILY = 3;
1535 };
1536 name = Debug;
1537 };
1538 97B8585F2E74C6C870509FE9 /* Release */ = {
1539 isa = XCBuildConfiguration;
1540 baseConfigurationReference = 95321199A19014C816398CAC /* Release.xcconfig */;
1541 buildSettings = {
1542 ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
1543 ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
1544 CODE_SIGN_ENTITLEMENTS = Klepon/Klepon.entitlements;
1545 CODE_SIGN_IDENTITY = "iPhone Developer";
1546 CURRENT_PROJECT_VERSION = 1;
1547 DEAD_CODE_STRIPPING = YES;
1548 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1549 "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = x86_64;
1550 INFOPLIST_FILE = Klepon/Info.plist;
1551 LD_RUNPATH_SEARCH_PATHS = (
1552 "$(inherited)",
1553 "@executable_path/Frameworks",
1554 );
1555 MARKETING_VERSION = 1.0.0;
1556 PRODUCT_BUNDLE_IDENTIFIER = ai.splitfire.klepon;
1557 PRODUCT_MODULE_NAME = Klepon;
1558 SDKROOT = iphoneos;
1559 SWIFT_OPTIMIZATION_LEVEL = "-O";
1560 TARGETED_DEVICE_FAMILY = "1,2";
1561 };
1562 name = Release;
1563 };
1564 999F5F439FDE6D455B425C69 /* Release */ = {
1565 isa = XCBuildConfiguration;
1566 baseConfigurationReference = 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */;
1567 buildSettings = {
1568 ASSETCATALOG_COMPILER_APPICON_NAME = AppIconVision;
1569 ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
1570 CODE_SIGN_ENTITLEMENTS = KleponVision/KleponVision.entitlements;
1571 CURRENT_PROJECT_VERSION = 1;
1572 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1573 "EXCLUDED_ARCHS[sdk=xrsimulator*]" = x86_64;
1574 INFOPLIST_FILE = KleponVision/Info.plist;
1575 LD_RUNPATH_SEARCH_PATHS = (
1576 "$(inherited)",
1577 "@executable_path/Frameworks",
1578 );
1579 MARKETING_VERSION = 1.0.0;
1580 PRODUCT_BUNDLE_IDENTIFIER = ai.splitfire.klepon;
1581 PRODUCT_NAME = Klepon;
1582 SDKROOT = xros;
1583 SWIFT_OPTIMIZATION_LEVEL = "-O";
1584 TARGETED_DEVICE_FAMILY = 7;
1585 };
1586 name = Release;
1587 };
1588 9EB7452B8A132D90E41C09DE /* Debug */ = {
1589 isa = XCBuildConfiguration;
1590 baseConfigurationReference = 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */;
1591 buildSettings = {
1592 APPLICATION_EXTENSION_API_ONLY = YES;
1593 CURRENT_PROJECT_VERSION = 1;
1594 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1595 INFOPLIST_FILE = KleponTVTopShelfExtension/Info.plist;
1596 LD_RUNPATH_SEARCH_PATHS = (
1597 "$(inherited)",
1598 "@executable_path/Frameworks",
1599 "@executable_path/../../Frameworks",
1600 );
1601 MARKETING_VERSION = 1.0.0;
1602 PRODUCT_BUNDLE_IDENTIFIER = "ai.splitfire.klepon-Debug.topshelf";
1603 PRODUCT_NAME = "Klepon TV Top Shelf";
1604 SDKROOT = appletvos;
1605 SWIFT_OPTIMIZATION_LEVEL = "-Onone";
1606 TARGETED_DEVICE_FAMILY = 3;
1607 };
1608 name = Debug;
1609 };
1610 A3B469B57456DA7C46537A7E /* Release */ = {
1611 isa = XCBuildConfiguration;
1612 baseConfigurationReference = 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */;
1613 buildSettings = {
1614 ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
1615 ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
1616 ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
1617 CURRENT_PROJECT_VERSION = 1;
1618 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1619 "EXCLUDED_ARCHS[sdk=watchsimulator*]" = x86_64;
1620 GENERATE_INFOPLIST_FILE = NO;
1621 INFOPLIST_FILE = KleponWatch/Info.plist;
1622 KLEPON_COMPANION_BUNDLE_ID = ai.splitfire.klepon;
1623 LD_RUNPATH_SEARCH_PATHS = (
1624 "$(inherited)",
1625 "@executable_path/Frameworks",
1626 );
1627 MARKETING_VERSION = 1.0.0;
1628 PRODUCT_BUNDLE_IDENTIFIER = ai.splitfire.klepon.watchkitapp;
1629 PRODUCT_NAME = "Klepon Watch";
1630 SDKROOT = watchos;
1631 SKIP_INSTALL = YES;
1632 SWIFT_OPTIMIZATION_LEVEL = "-O";
1633 TARGETED_DEVICE_FAMILY = 4;
1634 };
1635 name = Release;
1636 };
1637 B7F0F5DCFEE8809BB1921A4A /* Debug */ = {
1638 isa = XCBuildConfiguration;
1639 buildSettings = {
1640 ALWAYS_SEARCH_USER_PATHS = NO;
1641 CLANG_ANALYZER_NONNULL = YES;
1642 CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
1643 CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
1644 CLANG_CXX_LIBRARY = "libc++";
1645 CLANG_ENABLE_MODULES = YES;
1646 CLANG_ENABLE_OBJC_ARC = YES;
1647 CLANG_ENABLE_OBJC_WEAK = YES;
1648 CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
1649 CLANG_WARN_BOOL_CONVERSION = YES;
1650 CLANG_WARN_COMMA = YES;
1651 CLANG_WARN_CONSTANT_CONVERSION = YES;
1652 CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
1653 CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
1654 CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
1655 CLANG_WARN_EMPTY_BODY = YES;
1656 CLANG_WARN_ENUM_CONVERSION = YES;
1657 CLANG_WARN_INFINITE_RECURSION = YES;
1658 CLANG_WARN_INT_CONVERSION = YES;
1659 CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
1660 CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
1661 CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
1662 CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
1663 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
1664 CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
1665 CLANG_WARN_STRICT_PROTOTYPES = YES;
1666 CLANG_WARN_SUSPICIOUS_MOVE = YES;
1667 CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
1668 CLANG_WARN_UNREACHABLE_CODE = YES;
1669 CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
1670 COPY_PHASE_STRIP = NO;
1671 DEBUG_INFORMATION_FORMAT = dwarf;
1672 ENABLE_STRICT_OBJC_MSGSEND = YES;
1673 ENABLE_TESTABILITY = YES;
1674 GCC_C_LANGUAGE_STANDARD = gnu11;
1675 GCC_DYNAMIC_NO_PIC = NO;
1676 GCC_NO_COMMON_BLOCKS = YES;
1677 GCC_OPTIMIZATION_LEVEL = 0;
1678 GCC_PREPROCESSOR_DEFINITIONS = (
1679 "$(inherited)",
1680 "DEBUG=1",
1681 );
1682 GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
1683 GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
1684 GCC_WARN_UNDECLARED_SELECTOR = YES;
1685 GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
1686 GCC_WARN_UNUSED_FUNCTION = YES;
1687 GCC_WARN_UNUSED_VARIABLE = YES;
1688 IPHONEOS_DEPLOYMENT_TARGET = 18.5;
1689 MACOSX_DEPLOYMENT_TARGET = 15.0;
1690 MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
1691 MTL_FAST_MATH = YES;
1692 ONLY_ACTIVE_ARCH = YES;
1693 PRODUCT_NAME = "$(TARGET_NAME)";
1694 SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
1695 SWIFT_OPTIMIZATION_LEVEL = "-Onone";
1696 SWIFT_VERSION = 5.0;
1697 TVOS_DEPLOYMENT_TARGET = 18.5;
1698 WATCHOS_DEPLOYMENT_TARGET = 9.0;
1699 XROS_DEPLOYMENT_TARGET = 1.0;
1700 };
1701 name = Debug;
1702 };
1703 B88CFA8CA520549B8189AABE /* Release */ = {
1704 isa = XCBuildConfiguration;
1705 baseConfigurationReference = 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */;
1706 buildSettings = {
1707 ASSETCATALOG_COMPILER_APPICON_NAME = AppIconTV;
1708 ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
1709 ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
1710 CODE_SIGN_ENTITLEMENTS = KleponTV/KleponTV.entitlements;
1711 CURRENT_PROJECT_VERSION = 1;
1712 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1713 "EXCLUDED_ARCHS[sdk=appletvsimulator*]" = x86_64;
1714 INFOPLIST_FILE = KleponTV/Info.plist;
1715 LD_RUNPATH_SEARCH_PATHS = (
1716 "$(inherited)",
1717 "@executable_path/Frameworks",
1718 );
1719 MARKETING_VERSION = 1.0.0;
1720 PRODUCT_BUNDLE_IDENTIFIER = ai.splitfire.klepon;
1721 PRODUCT_NAME = Klepon;
1722 SDKROOT = appletvos;
1723 SWIFT_OPTIMIZATION_LEVEL = "-O";
1724 TARGETED_DEVICE_FAMILY = 3;
1725 };
1726 name = Release;
1727 };
1728 D2D1439E7A622A6F8019887F /* Debug */ = {
1729 isa = XCBuildConfiguration;
1730 baseConfigurationReference = B868F6866D5C0497F3672F12 /* Debug.xcconfig */;
1731 buildSettings = {
1732 ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
1733 ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
1734 CODE_SIGN_ENTITLEMENTS = Klepon/Klepon.entitlements;
1735 CODE_SIGN_IDENTITY = "iPhone Developer";
1736 CURRENT_PROJECT_VERSION = 1;
1737 DEAD_CODE_STRIPPING = YES;
1738 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1739 "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = x86_64;
1740 INFOPLIST_FILE = Klepon/Info.plist;
1741 LD_RUNPATH_SEARCH_PATHS = (
1742 "$(inherited)",
1743 "@executable_path/Frameworks",
1744 );
1745 MARKETING_VERSION = 1.0.0;
1746 PRODUCT_BUNDLE_IDENTIFIER = "ai.splitfire.klepon-Debug";
1747 PRODUCT_MODULE_NAME = Klepon;
1748 PRODUCT_NAME = "Klepon Debug";
1749 SDKROOT = iphoneos;
1750 SWIFT_OPTIMIZATION_LEVEL = "-Onone";
1751 TARGETED_DEVICE_FAMILY = "1,2";
1752 };
1753 name = Debug;
1754 };
1755 F007CBD9F576E3B4C7163B40 /* Debug */ = {
1756 isa = XCBuildConfiguration;
1757 baseConfigurationReference = 13B09D700AA047E07E91F6A2 /* Signing.xcconfig */;
1758 buildSettings = {
1759 ASSETCATALOG_COMPILER_APPICON_NAME = AppIconVision;
1760 ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
1761 CODE_SIGN_ENTITLEMENTS = KleponVision/KleponVision.entitlements;
1762 CURRENT_PROJECT_VERSION = 1;
1763 ENABLE_USER_SCRIPT_SANDBOXING = NO;
1764 "EXCLUDED_ARCHS[sdk=xrsimulator*]" = x86_64;
1765 INFOPLIST_FILE = KleponVision/Info.plist;
1766 LD_RUNPATH_SEARCH_PATHS = (
1767 "$(inherited)",
1768 "@executable_path/Frameworks",
1769 );
1770 MARKETING_VERSION = 1.0.0;
1771 PRODUCT_BUNDLE_IDENTIFIER = "ai.splitfire.klepon-Debug";
1772 PRODUCT_NAME = "Klepon Debug";
1773 SDKROOT = xros;
1774 SWIFT_OPTIMIZATION_LEVEL = "-Onone";
1775 TARGETED_DEVICE_FAMILY = 7;
1776 };
1777 name = Debug;
1778 };
1779 /* End XCBuildConfiguration section */
1780
1781 /* Begin XCConfigurationList section */
1782 07A758477E97CF9254DDBA82 /* Build configuration list for PBXNativeTarget "Klepon Watch" */ = {
1783 isa = XCConfigurationList;
1784 buildConfigurations = (
1785 57B34C7365523CA3F80ED770 /* Debug */,
1786 A3B469B57456DA7C46537A7E /* Release */,
1787 );
1788 defaultConfigurationIsVisible = 0;
1789 defaultConfigurationName = Debug;
1790 };
1791 116221FC6D50F33334387509 /* Build configuration list for PBXNativeTarget "KleponSnapshotTests" */ = {
1792 isa = XCConfigurationList;
1793 buildConfigurations = (
1794 31056AAA3C7140EC9DD06895 /* Debug */,
1795 2CE1783225D9E3351FDB458B /* Release */,
1796 );
1797 defaultConfigurationIsVisible = 0;
1798 defaultConfigurationName = Debug;
1799 };
1800 14FFFB40F48F5625253F44DE /* Build configuration list for PBXNativeTarget "Klepon TV" */ = {
1801 isa = XCConfigurationList;
1802 buildConfigurations = (
1803 9415BE3B8DBFC6BE334F60B6 /* Debug */,
1804 B88CFA8CA520549B8189AABE /* Release */,
1805 );
1806 defaultConfigurationIsVisible = 0;
1807 defaultConfigurationName = Debug;
1808 };
1809 29C34512D4ABC3CD6704E6D3 /* Build configuration list for PBXNativeTarget "Klepon TV Top Shelf" */ = {
1810 isa = XCConfigurationList;
1811 buildConfigurations = (
1812 9EB7452B8A132D90E41C09DE /* Debug */,
1813 6F67020609BFAC03B751AA27 /* Release */,
1814 );
1815 defaultConfigurationIsVisible = 0;
1816 defaultConfigurationName = Debug;
1817 };
1818 78899F7C62A9675700D42C5A /* Build configuration list for PBXNativeTarget "Klepon Mac" */ = {
1819 isa = XCConfigurationList;
1820 buildConfigurations = (
1821 73320483BA240362017C25C8 /* Debug */,
1822 812F1D8D209CC3C18A9DC330 /* Release */,
1823 );
1824 defaultConfigurationIsVisible = 0;
1825 defaultConfigurationName = Debug;
1826 };
1827 8911E6C6F25C3A4F99870749 /* Build configuration list for PBXProject "Klepon" */ = {
1828 isa = XCConfigurationList;
1829 buildConfigurations = (
1830 B7F0F5DCFEE8809BB1921A4A /* Debug */,
1831 850753164F664131E0E37EAE /* Release */,
1832 );
1833 defaultConfigurationIsVisible = 0;
1834 defaultConfigurationName = Debug;
1835 };
1836 A7E925A77873EC80DF7D2840 /* Build configuration list for PBXNativeTarget "Klepon Vision" */ = {
1837 isa = XCConfigurationList;
1838 buildConfigurations = (
1839 F007CBD9F576E3B4C7163B40 /* Debug */,
1840 999F5F439FDE6D455B425C69 /* Release */,
1841 );
1842 defaultConfigurationIsVisible = 0;
1843 defaultConfigurationName = Debug;
1844 };
1845 E1E5A3DF58C9552EE814CC23 /* Build configuration list for PBXNativeTarget "Klepon" */ = {
1846 isa = XCConfigurationList;
1847 buildConfigurations = (
1848 D2D1439E7A622A6F8019887F /* Debug */,
1849 97B8585F2E74C6C870509FE9 /* Release */,
1850 );
1851 defaultConfigurationIsVisible = 0;
1852 defaultConfigurationName = Debug;
1853 };
1854 /* End XCConfigurationList section */
1855
1856 /* Begin XCRemoteSwiftPackageReference section */
1857 113C98387653665692A4F210 /* XCRemoteSwiftPackageReference "ed-swift" */ = {
1858 isa = XCRemoteSwiftPackageReference;
1859 repositoryURL = "https://github.com/ondeinference/ed-swift";
1860 requirement = {
1861 kind = exactVersion;
1862 version = 1.0.2;
1863 };
1864 };
1865 85B622113A5DC5A1BD2D123B /* XCRemoteSwiftPackageReference "swift-snapshot-testing" */ = {
1866 isa = XCRemoteSwiftPackageReference;
1867 repositoryURL = "https://github.com/pointfreeco/swift-snapshot-testing";
1868 requirement = {
1869 kind = upToNextMajorVersion;
1870 minimumVersion = 1.19.2;
1871 };
1872 };
1873 /* End XCRemoteSwiftPackageReference section */
1874
1875 /* Begin XCSwiftPackageProductDependency section */
1876 35214C3FF433B08C1C06C3F7 /* SnapshotTesting */ = {
1877 isa = XCSwiftPackageProductDependency;
1878 package = 85B622113A5DC5A1BD2D123B /* XCRemoteSwiftPackageReference "swift-snapshot-testing" */;
1879 productName = SnapshotTesting;
1880 };
1881 4C444F7050676B8B888FFA6E /* Ed */ = {
1882 isa = XCSwiftPackageProductDependency;
1883 package = 113C98387653665692A4F210 /* XCRemoteSwiftPackageReference "ed-swift" */;
1884 productName = Ed;
1885 };
1886 C60C4F34CE2B62D63F20DCBC /* Ed */ = {
1887 isa = XCSwiftPackageProductDependency;
1888 package = 113C98387653665692A4F210 /* XCRemoteSwiftPackageReference "ed-swift" */;
1889 productName = Ed;
1890 };
1891 D6FB43CACF14096F074C5D06 /* Ed */ = {
1892 isa = XCSwiftPackageProductDependency;
1893 package = 113C98387653665692A4F210 /* XCRemoteSwiftPackageReference "ed-swift" */;
1894 productName = Ed;
1895 };
1896 ED0553BE20DAEAC1196315EC /* Ed */ = {
1897 isa = XCSwiftPackageProductDependency;
1898 package = 113C98387653665692A4F210 /* XCRemoteSwiftPackageReference "ed-swift" */;
1899 productName = Ed;
1900 };
1901 /* End XCSwiftPackageProductDependency section */
1902 };
1903 rootObject = 05A5707BDA883282DEB132FF /* Project object */;
1904 }