b70140191a
El archive con firma automática no podía incluir la capability Push de forma headless. Se pasan los targets MealMood y MealMoodWidget (config Release) a firma manual con "Apple Distribution" y sus perfiles AppStore (regenerados con Push). Build 63 sube a TestFlight con aps-environment production para el sync CloudKit en tiempo real. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01A3HaWmmtTQ1vdTERtSYU6p
1135 lines
65 KiB
Plaintext
1135 lines
65 KiB
Plaintext
// !$*UTF8*$!
|
|
{
|
|
archiveVersion = 1;
|
|
classes = {
|
|
};
|
|
objectVersion = 63;
|
|
objects = {
|
|
|
|
/* Begin PBXBuildFile section */
|
|
016D78C0DC1B1F6E671F36F7 /* OnboardingViewModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 168A6CA95246E1BB72797D4E /* OnboardingViewModelTests.swift */; };
|
|
0EC555FE2F4498780005513D /* aaaa.storekit in Resources */ = {isa = PBXBuildFile; fileRef = 0EC555FD2F4498780005513D /* aaaa.storekit */; };
|
|
0F91C8611D3BBE1FBD51D1E6 /* MealSlot.swift in Sources */ = {isa = PBXBuildFile; fileRef = 797A41D292142240FBDF9F2A /* MealSlot.swift */; };
|
|
17E1054EE183486E7BE38C19 /* WidgetDataStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6FC2153490D53B80DBDC034 /* WidgetDataStore.swift */; };
|
|
19330C6ECE7A60110A3A679D /* TagListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13DB00DA865F6FE86952BFC3 /* TagListView.swift */; };
|
|
203DDFF14C0688DEDB6EE83E /* Localization+Helpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0164A33496A304E40685EA6D /* Localization+Helpers.swift */; };
|
|
2124FD777418A4EEDF64BDC3 /* WeekReadyStepView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D954415A7AC73D41309D2BDF /* WeekReadyStepView.swift */; };
|
|
233B9C1A5CA7E938318491C0 /* SocialShareSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1975C49FFC7D91AEB7932C97 /* SocialShareSheet.swift */; };
|
|
2519A55C6BDA686B6F85E79D /* View+MealCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC01EE9D78D980727A644CDF /* View+MealCard.swift */; };
|
|
25B3C328E088A403CABAF20A /* PremiumSyncService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 928E6D4F6D78AD1840245FB4 /* PremiumSyncService.swift */; };
|
|
27D256A032E69F397E9552F3 /* SwiftUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C2D1AAC0DB21EA5E2CCA38AD /* SwiftUI.framework */; };
|
|
294D7F9BE5A2907F74B8614C /* Date+Helpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7DE70CD2A01FCE5370A46DD3 /* Date+Helpers.swift */; };
|
|
2A58E7C96AF7C14EBFE1C65C /* PremiumSyncServiceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62E2F6B2694CEC97AE3C1B13 /* PremiumSyncServiceTests.swift */; };
|
|
30540EF74F2C97F741BA6A1A /* Tag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 049AE68D5B577514ADD6BACB /* Tag.swift */; };
|
|
31DFC035AE34F49FB35071A7 /* HomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89C47DD7B8F4B1441780E611 /* HomeView.swift */; };
|
|
37F5CEC4862C0AE2F3385ABA /* DishListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB3BD0E078644749E93B0D2B /* DishListView.swift */; };
|
|
3C5225918DA8DE77F5AC1AA0 /* MealMoodApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C20D9FC522FEBF7206CFD32 /* MealMoodApp.swift */; };
|
|
4218F220B7412965A5001A88 /* CalendarStepView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76719058DD3A4177B2B4163E /* CalendarStepView.swift */; };
|
|
443CC3997A9A4818B51066FB /* StatsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E8AD94FC874467D863D464C /* StatsView.swift */; };
|
|
44E43D5F00D1B513F9BABE80 /* ShoppingListService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C512046B1410E236A3F6286 /* ShoppingListService.swift */; };
|
|
478AE18DA0F887D3D5164635 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C77C350D4A839B76A3D2EFE7 /* Foundation.framework */; };
|
|
48F9D3308375F820B2B88D1B /* PremiumUpsellBanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CFA001E1BFA916ABC4C44C1 /* PremiumUpsellBanner.swift */; };
|
|
4D53B5101AE845D7C03A0EB4 /* GoogleMobileAds in Frameworks */ = {isa = PBXBuildFile; productRef = 192E7CF40FD34C3FF4DDFDA3 /* GoogleMobileAds */; };
|
|
511DDB82FF4DD30018101418 /* DishDrawerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23957C735075B0DFB1DF51D7 /* DishDrawerView.swift */; };
|
|
57F1EA6B5E3AF88A61C48354 /* ShoppingListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BA71D570D9882C3AFAFDC48 /* ShoppingListView.swift */; };
|
|
5BCED5AFADACD4118AE59AF9 /* Font+MealMood.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE73D5B7AF8B5E2D63105977 /* Font+MealMood.swift */; };
|
|
5E7322F3F3624211985F2D99 /* ICloudSyncService.swift in Sources */ = {isa = PBXBuildFile; fileRef = BED090ADA1FB259AD2AFEDE2 /* ICloudSyncService.swift */; };
|
|
5ECA2501EC257777DBE670AD /* EmptySlotView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B68E5C82608F60FF8798BB81 /* EmptySlotView.swift */; };
|
|
6553473B007AFD04079878C6 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60F0A5C2FF1B797A4BB69B39 /* ContentView.swift */; };
|
|
6685C591F837FAFB29A322F7 /* DeduplicationService.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1C3CBAFE191AD6643F861B7 /* DeduplicationService.swift */; };
|
|
670A11A9850B321D9FF76B41 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D718B2E4F7E6D22E502F0A6 /* OnboardingView.swift */; };
|
|
6C808D1B6E8534FABC4A4053 /* WeekPlanShareView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E113A29DEC0551C41AB7EBB /* WeekPlanShareView.swift */; };
|
|
717C67C9A7F48587667B5AE2 /* Dish.swift in Sources */ = {isa = PBXBuildFile; fileRef = 623EDDC4CD134883FC9D242D /* Dish.swift */; };
|
|
71D8EB28A881D95A338F4CEE /* TagRulesEditView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C5CD466A50C339519544347 /* TagRulesEditView.swift */; };
|
|
73B55D5A7B351BD05709E40C /* AutocompleteEngineTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7603187713D390BD4D35770C /* AutocompleteEngineTests.swift */; };
|
|
786E0F918F60E93A7EE2AD3E /* FilledSlotView.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD4FD72583C004A5D5C939A3 /* FilledSlotView.swift */; };
|
|
7A77669DAC7A243BA7C88916 /* OnboardingViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD621CE9B44512AE8894D92E /* OnboardingViewModel.swift */; };
|
|
7B1B992619FFD22A92F0E88B /* ReviewPromptService.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8825212ACFA0D3F6C716E94 /* ReviewPromptService.swift */; };
|
|
7CBE113B28462C6C41C35533 /* MealMoodLogo.svg in Resources */ = {isa = PBXBuildFile; fileRef = 065982B284538632951F1C3A /* MealMoodLogo.svg */; };
|
|
7E163CDBF0832188EFA31C7D /* SettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F46C32F97EAD52F8F3BC0B7 /* SettingsView.swift */; };
|
|
861557A13918B99C421251E0 /* PremiumView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 324D77FEC4C8C371695F27CC /* PremiumView.swift */; };
|
|
867A511F154A33E9DD7FE9BC /* CalendarService.swift in Sources */ = {isa = PBXBuildFile; fileRef = B0A631C6D0CF7A0724ACF6A5 /* CalendarService.swift */; };
|
|
87EB371FD3B6C241AC721C55 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 8E15828872FAEA71A7384099 /* Localizable.strings */; };
|
|
8CEAC8993D33BFBBEB5319A8 /* NotificationService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8EE10285FEE9BE0684CC66A3 /* NotificationService.swift */; };
|
|
8F739A4496501009B8D829B3 /* Color+MealMood.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB771E85924AE086647A5113 /* Color+MealMood.swift */; };
|
|
9BC60C30918C117608E43699 /* DefaultDataService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17E00AB23342224B3407838B /* DefaultDataService.swift */; };
|
|
9BE86765B8F0368AD5C86FC4 /* TagViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C9BFFE7A4BC6961815D2334 /* TagViewModel.swift */; };
|
|
9D40600B9AC21F0FF64B77F9 /* StoreManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 103374A7D91B4F884278DA72 /* StoreManager.swift */; };
|
|
9EE4C3257DCE32D2872CD435 /* MealMoodWidget.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 574CB4BDE993DA0CEC251ABD /* MealMoodWidget.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
|
|
A4D50C0B4E91B3542C63017A /* MealMoodWidget.swift in Sources */ = {isa = PBXBuildFile; fileRef = B042BB2F81973D854E84BABD /* MealMoodWidget.swift */; };
|
|
A6F130EC376B7BC270AD908D /* TagPill.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50E1C12C3A693D7C41E9F80B /* TagPill.swift */; };
|
|
A7CAD588CF78F404C8065CF1 /* HomeViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EDEE086FD20D16DE507B247 /* HomeViewModel.swift */; };
|
|
A9278F6559777CB9FA7FB69E /* AdMobConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 812303C94C8C1D2FADF3CB37 /* AdMobConfig.swift */; };
|
|
AB443E1DC9830D13B3E7B837 /* SecondaryButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EA1948B5DAEEEA09B78C8A9 /* SecondaryButton.swift */; };
|
|
AB496674DF3CA41ACBBE7CFC /* SettingsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5187023D83BBC5E8D304CE3A /* SettingsViewModel.swift */; };
|
|
AB76A63B140922D69F314C37 /* HapticManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 20F23BF9788A3217E3D63721 /* HapticManager.swift */; };
|
|
ACAEFA5F4C170C6438CD2652 /* TagLocalizationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B976BF8B0BD6D1AA5F8C68 /* TagLocalizationTests.swift */; };
|
|
AD5F8FDE30CE4B2934B3C1C1 /* WeekPlan.swift in Sources */ = {isa = PBXBuildFile; fileRef = A23267BAA116E1214870416C /* WeekPlan.swift */; };
|
|
B3C9E5149B70C477EACBDFFB /* AdBannerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 050EA827CA951AB9E847E2CA /* AdBannerView.swift */; };
|
|
B4D6F8012C3E5F7A91B3D5F7 /* FeedbackStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3C5F7891B2D4E6F80A2C4E6 /* FeedbackStore.swift */; };
|
|
B8D7CA62789429C2F693E4F6 /* MealMoodLogoMark.swift in Sources */ = {isa = PBXBuildFile; fileRef = BAC64110469AA91D5F28C423 /* MealMoodLogoMark.swift */; };
|
|
B8FDF31D3BD7DD7220CE21A3 /* ShoppingItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3FC93C653B5540D7205BF294 /* ShoppingItem.swift */; };
|
|
BE908B23F64F33D594AB8D82 /* DateHelpersTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBD33453B7DF86EDBAEB80F1 /* DateHelpersTests.swift */; };
|
|
C14BDE4C3EF6AF75F378D892 /* PrimaryButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = DFA97AD958C922D8AFF73314 /* PrimaryButton.swift */; };
|
|
C3CB4ACC213DAAD25E610C56 /* WidgetKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EB4FC89C90928DD833240244 /* WidgetKit.framework */; };
|
|
C565A1975302748A2B2152BE /* DishViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8472961AE65E2A3460B67C3 /* DishViewModel.swift */; };
|
|
C7B1F5A21B5E4A9E91B7F5A2 /* BottomPromoBanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8E2F6A3F47E5C9F92A8E6B3 /* BottomPromoBanner.swift */; };
|
|
C81C935386BE1E939DA55F8D /* MealWindowsStepView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FBA11C8A81D5C0CA8A3C13D /* MealWindowsStepView.swift */; };
|
|
CD174669421FE1FD4315F6E0 /* WidgetKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BB0D740B79B9E129A3C2F382 /* WidgetKit.framework */; };
|
|
CD2ADCDADFEC2D562E23D8E6 /* AutocompleteEngine.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE7AB2ECCA7D330E50AC549E /* AutocompleteEngine.swift */; };
|
|
D2840F9D92D16026338CE83C /* AppSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7C00EED19123F00AE87FF24 /* AppSettings.swift */; };
|
|
D39BED40CA59849F181D80B5 /* IngredientGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71F0ADA350289AE410D572A7 /* IngredientGenerator.swift */; };
|
|
A1B2C3D4E5F60718293A4B01 /* IngredientParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1B2C3D4E5F60718293A4B02 /* IngredientParser.swift */; };
|
|
A1B2C3D4E5F60718293A4B03 /* SpeechDictationService.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1B2C3D4E5F60718293A4B04 /* SpeechDictationService.swift */; };
|
|
D8149D55E74F7BBFC0402F46 /* DishFormView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D63CA2A8666E1FBBAD65F141 /* DishFormView.swift */; };
|
|
D89413095E37C3D677856437 /* PremiumAccess.swift in Sources */ = {isa = PBXBuildFile; fileRef = F0200C0C11C912711C724558 /* PremiumAccess.swift */; };
|
|
DE43F08AAC939C083BF511C1 /* FirstDishesStepView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10594EA55F6BEFF4241D364C /* FirstDishesStepView.swift */; };
|
|
DE797C90DFDAFAC5C12E3D97 /* ToastView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CFBCD4FFE0D067A591104B74 /* ToastView.swift */; };
|
|
E12A5EE3D940260902277CC5 /* WeekCalendarView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 69B309A43E486B5A723324BA /* WeekCalendarView.swift */; };
|
|
E2524335ED3A5DB7813BEA99 /* WelcomeStepView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70D140A6E835CA6227C2D4D9 /* WelcomeStepView.swift */; };
|
|
E3BD64E6D32ED7052F174923 /* TagSelectorSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6CF1C9CC9BDB3B20B1834EB /* TagSelectorSheet.swift */; };
|
|
E5D9C4B783A14E2B9F4D2E68 /* PaywallStepView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F61A8C92B47D5938C61E9A75 /* PaywallStepView.swift */; };
|
|
E6A57F29C02AE138D705BAF7 /* AppIconPlaceholder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00F2EE5A756C183B6D505403 /* AppIconPlaceholder.swift */; };
|
|
EA4EC6244EEBE6D568BCA5E5 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B3944B4AD876455057EB2265 /* Assets.xcassets */; };
|
|
F65AD80426AF8DA12FBD661C /* WeekendsStepView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 035C6C0B728EB0EA80394CDD /* WeekendsStepView.swift */; };
|
|
FB0011111111111111111101 /* FirebaseAnalytics in Frameworks */ = {isa = PBXBuildFile; productRef = FB0011111111111111111105 /* FirebaseAnalytics */; };
|
|
FB0011111111111111111102 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = FB0011111111111111111103 /* GoogleService-Info.plist */; };
|
|
FB0011111111111111111106 /* AnalyticsService.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB0011111111111111111107 /* AnalyticsService.swift */; };
|
|
FB0011111111111111111108 /* FirebaseCrashlytics in Frameworks */ = {isa = PBXBuildFile; productRef = FB001111111111111111110B /* FirebaseCrashlytics */; };
|
|
FB0011111111111111111109 /* CrashlyticsService.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB001111111111111111110A /* CrashlyticsService.swift */; };
|
|
/* End PBXBuildFile section */
|
|
|
|
/* Begin PBXContainerItemProxy section */
|
|
EFE9F2305F13749C6FCAC8E5 /* PBXContainerItemProxy */ = {
|
|
isa = PBXContainerItemProxy;
|
|
containerPortal = 7C11D794B7E45A145D5ADBFD /* Project object */;
|
|
proxyType = 1;
|
|
remoteGlobalIDString = DE69ED74719D07B4A5770741;
|
|
remoteInfo = MealMood;
|
|
};
|
|
/* End PBXContainerItemProxy section */
|
|
|
|
/* Begin PBXCopyFilesBuildPhase section */
|
|
DF9575A974376FF5C6420060 /* Embed App Extensions */ = {
|
|
isa = PBXCopyFilesBuildPhase;
|
|
buildActionMask = 2147483647;
|
|
dstPath = "";
|
|
dstSubfolderSpec = 13;
|
|
files = (
|
|
9EE4C3257DCE32D2872CD435 /* MealMoodWidget.appex in Embed App Extensions */,
|
|
);
|
|
name = "Embed App Extensions";
|
|
runOnlyForDeploymentPostprocessing = 0;
|
|
};
|
|
/* End PBXCopyFilesBuildPhase section */
|
|
|
|
/* Begin PBXFileReference section */
|
|
00F2EE5A756C183B6D505403 /* AppIconPlaceholder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppIconPlaceholder.swift; sourceTree = "<group>"; };
|
|
0164A33496A304E40685EA6D /* Localization+Helpers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Localization+Helpers.swift"; sourceTree = "<group>"; };
|
|
035C6C0B728EB0EA80394CDD /* WeekendsStepView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WeekendsStepView.swift; sourceTree = "<group>"; };
|
|
049AE68D5B577514ADD6BACB /* Tag.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tag.swift; sourceTree = "<group>"; };
|
|
050EA827CA951AB9E847E2CA /* AdBannerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdBannerView.swift; sourceTree = "<group>"; };
|
|
065982B284538632951F1C3A /* MealMoodLogo.svg */ = {isa = PBXFileReference; lastKnownFileType = text; path = MealMoodLogo.svg; sourceTree = "<group>"; };
|
|
0EC555FD2F4498780005513D /* aaaa.storekit */ = {isa = PBXFileReference; lastKnownFileType = text; path = aaaa.storekit; sourceTree = "<group>"; };
|
|
0F46C32F97EAD52F8F3BC0B7 /* SettingsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SettingsView.swift; sourceTree = "<group>"; };
|
|
103374A7D91B4F884278DA72 /* StoreManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StoreManager.swift; sourceTree = "<group>"; };
|
|
10594EA55F6BEFF4241D364C /* FirstDishesStepView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FirstDishesStepView.swift; sourceTree = "<group>"; };
|
|
13DB00DA865F6FE86952BFC3 /* TagListView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TagListView.swift; sourceTree = "<group>"; };
|
|
168A6CA95246E1BB72797D4E /* OnboardingViewModelTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingViewModelTests.swift; sourceTree = "<group>"; };
|
|
17B976BF8B0BD6D1AA5F8C68 /* TagLocalizationTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TagLocalizationTests.swift; sourceTree = "<group>"; };
|
|
17E00AB23342224B3407838B /* DefaultDataService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DefaultDataService.swift; sourceTree = "<group>"; };
|
|
1975C49FFC7D91AEB7932C97 /* SocialShareSheet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SocialShareSheet.swift; sourceTree = "<group>"; };
|
|
1E8AD94FC874467D863D464C /* StatsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatsView.swift; sourceTree = "<group>"; };
|
|
20F23BF9788A3217E3D63721 /* HapticManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HapticManager.swift; sourceTree = "<group>"; };
|
|
23957C735075B0DFB1DF51D7 /* DishDrawerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DishDrawerView.swift; sourceTree = "<group>"; };
|
|
2C20D9FC522FEBF7206CFD32 /* MealMoodApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MealMoodApp.swift; sourceTree = "<group>"; };
|
|
2C5CD466A50C339519544347 /* TagRulesEditView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TagRulesEditView.swift; sourceTree = "<group>"; };
|
|
2E113A29DEC0551C41AB7EBB /* WeekPlanShareView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WeekPlanShareView.swift; sourceTree = "<group>"; };
|
|
324D77FEC4C8C371695F27CC /* PremiumView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PremiumView.swift; sourceTree = "<group>"; };
|
|
3FC93C653B5540D7205BF294 /* ShoppingItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ShoppingItem.swift; sourceTree = "<group>"; };
|
|
4EDEE086FD20D16DE507B247 /* HomeViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeViewModel.swift; sourceTree = "<group>"; };
|
|
50E1C12C3A693D7C41E9F80B /* TagPill.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TagPill.swift; sourceTree = "<group>"; };
|
|
5187023D83BBC5E8D304CE3A /* SettingsViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SettingsViewModel.swift; sourceTree = "<group>"; };
|
|
574CB4BDE993DA0CEC251ABD /* MealMoodWidget.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = MealMoodWidget.appex; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
5BA71D570D9882C3AFAFDC48 /* ShoppingListView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShoppingListView.swift; path = Shopping/ShoppingListView.swift; sourceTree = "<group>"; };
|
|
5C512046B1410E236A3F6286 /* ShoppingListService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ShoppingListService.swift; sourceTree = "<group>"; };
|
|
5C9BFFE7A4BC6961815D2334 /* TagViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TagViewModel.swift; sourceTree = "<group>"; };
|
|
5D6A3FCADC4F4B7AAB73E5CA /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
|
60F0A5C2FF1B797A4BB69B39 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; };
|
|
623EDDC4CD134883FC9D242D /* Dish.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Dish.swift; sourceTree = "<group>"; };
|
|
62E2F6B2694CEC97AE3C1B13 /* PremiumSyncServiceTests.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = PremiumSyncServiceTests.swift; sourceTree = "<group>"; };
|
|
69B309A43E486B5A723324BA /* WeekCalendarView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WeekCalendarView.swift; sourceTree = "<group>"; };
|
|
6D718B2E4F7E6D22E502F0A6 /* OnboardingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = "<group>"; };
|
|
6EA1948B5DAEEEA09B78C8A9 /* SecondaryButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SecondaryButton.swift; sourceTree = "<group>"; };
|
|
70D140A6E835CA6227C2D4D9 /* WelcomeStepView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WelcomeStepView.swift; sourceTree = "<group>"; };
|
|
71F0ADA350289AE410D572A7 /* IngredientGenerator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = IngredientGenerator.swift; sourceTree = "<group>"; };
|
|
A1B2C3D4E5F60718293A4B02 /* IngredientParser.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = IngredientParser.swift; sourceTree = "<group>"; };
|
|
A1B2C3D4E5F60718293A4B04 /* SpeechDictationService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SpeechDictationService.swift; sourceTree = "<group>"; };
|
|
7603187713D390BD4D35770C /* AutocompleteEngineTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AutocompleteEngineTests.swift; sourceTree = "<group>"; };
|
|
76719058DD3A4177B2B4163E /* CalendarStepView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CalendarStepView.swift; sourceTree = "<group>"; };
|
|
797A41D292142240FBDF9F2A /* MealSlot.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MealSlot.swift; sourceTree = "<group>"; };
|
|
7DE70CD2A01FCE5370A46DD3 /* Date+Helpers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Date+Helpers.swift"; sourceTree = "<group>"; };
|
|
812303C94C8C1D2FADF3CB37 /* AdMobConfig.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdMobConfig.swift; sourceTree = "<group>"; };
|
|
8411FF2737FDEF48170F9634 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
|
|
89C47DD7B8F4B1441780E611 /* HomeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeView.swift; sourceTree = "<group>"; };
|
|
8CFA001E1BFA916ABC4C44C1 /* PremiumUpsellBanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PremiumUpsellBanner.swift; sourceTree = "<group>"; };
|
|
8EE10285FEE9BE0684CC66A3 /* NotificationService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationService.swift; sourceTree = "<group>"; };
|
|
928E6D4F6D78AD1840245FB4 /* PremiumSyncService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = PremiumSyncService.swift; sourceTree = "<group>"; };
|
|
93B4B31A8F6E4D7AAB1B6A01 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = "<group>"; };
|
|
965555A7774FF7EB975F0A07 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = "<group>"; };
|
|
9F86EB5DDB126D73486FD956 /* MealMood.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = MealMood.entitlements; sourceTree = "<group>"; };
|
|
9FBA11C8A81D5C0CA8A3C13D /* MealWindowsStepView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MealWindowsStepView.swift; sourceTree = "<group>"; };
|
|
A1C3CBAFE191AD6643F861B7 /* DeduplicationService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DeduplicationService.swift; sourceTree = "<group>"; };
|
|
A23267BAA116E1214870416C /* WeekPlan.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WeekPlan.swift; sourceTree = "<group>"; };
|
|
A3C5F7891B2D4E6F80A2C4E6 /* FeedbackStore.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbackStore.swift; sourceTree = "<group>"; };
|
|
A6FC2153490D53B80DBDC034 /* WidgetDataStore.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = WidgetDataStore.swift; sourceTree = "<group>"; };
|
|
AB771E85924AE086647A5113 /* Color+MealMood.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Color+MealMood.swift"; sourceTree = "<group>"; };
|
|
B042BB2F81973D854E84BABD /* MealMoodWidget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MealMoodWidget.swift; sourceTree = "<group>"; };
|
|
B0A631C6D0CF7A0724ACF6A5 /* CalendarService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CalendarService.swift; sourceTree = "<group>"; };
|
|
B3369706BF941E09F88243F1 /* MealMoodWidget.entitlements */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.entitlements; path = MealMoodWidget.entitlements; sourceTree = "<group>"; };
|
|
B3944B4AD876455057EB2265 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
|
B68E5C82608F60FF8798BB81 /* EmptySlotView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmptySlotView.swift; sourceTree = "<group>"; };
|
|
B6CF1C9CC9BDB3B20B1834EB /* TagSelectorSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TagSelectorSheet.swift; sourceTree = "<group>"; };
|
|
BAC64110469AA91D5F28C423 /* MealMoodLogoMark.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MealMoodLogoMark.swift; sourceTree = "<group>"; };
|
|
BB0D740B79B9E129A3C2F382 /* WidgetKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = System/Library/Frameworks/WidgetKit.framework; sourceTree = SDKROOT; };
|
|
BED090ADA1FB259AD2AFEDE2 /* ICloudSyncService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ICloudSyncService.swift; sourceTree = "<group>"; };
|
|
C2D1AAC0DB21EA5E2CCA38AD /* SwiftUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = System/Library/Frameworks/SwiftUI.framework; sourceTree = SDKROOT; };
|
|
C77C350D4A839B76A3D2EFE7 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS18.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
|
|
C7B13F4D4D362E50CA65A0C1 /* MealMood.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MealMood.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
C7C00EED19123F00AE87FF24 /* AppSettings.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppSettings.swift; sourceTree = "<group>"; };
|
|
CB3BD0E078644749E93B0D2B /* DishListView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DishListView.swift; sourceTree = "<group>"; };
|
|
CE7AB2ECCA7D330E50AC549E /* AutocompleteEngine.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AutocompleteEngine.swift; sourceTree = "<group>"; };
|
|
CFBCD4FFE0D067A591104B74 /* ToastView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ToastView.swift; sourceTree = "<group>"; };
|
|
D63CA2A8666E1FBBAD65F141 /* DishFormView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DishFormView.swift; sourceTree = "<group>"; };
|
|
D8E2F6A3F47E5C9F92A8E6B3 /* BottomPromoBanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BottomPromoBanner.swift; sourceTree = "<group>"; };
|
|
D954415A7AC73D41309D2BDF /* WeekReadyStepView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = WeekReadyStepView.swift; sourceTree = "<group>"; };
|
|
DBD33453B7DF86EDBAEB80F1 /* DateHelpersTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DateHelpersTests.swift; sourceTree = "<group>"; };
|
|
DFA97AD958C922D8AFF73314 /* PrimaryButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrimaryButton.swift; sourceTree = "<group>"; };
|
|
E18A2F6B56D64C1EBC91E219 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Localizable.strings; sourceTree = "<group>"; };
|
|
E18A2F6B56D64C1EBC91E21A /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Localizable.strings; sourceTree = "<group>"; };
|
|
E18A2F6B56D64C1EBC91E21B /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Localizable.strings"; sourceTree = "<group>"; };
|
|
E8472961AE65E2A3460B67C3 /* DishViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DishViewModel.swift; sourceTree = "<group>"; };
|
|
E8825212ACFA0D3F6C716E94 /* ReviewPromptService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReviewPromptService.swift; sourceTree = "<group>"; };
|
|
EB4FC89C90928DD833240244 /* WidgetKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = System/Library/Frameworks/WidgetKit.framework; sourceTree = SDKROOT; };
|
|
F0200C0C11C912711C724558 /* PremiumAccess.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PremiumAccess.swift; sourceTree = "<group>"; };
|
|
F61A8C92B47D5938C61E9A75 /* PaywallStepView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PaywallStepView.swift; sourceTree = "<group>"; };
|
|
F766AA7898D6F391DE1B9A81 /* MealMoodTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MealMoodTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
FB0011111111111111111103 /* GoogleService-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
|
|
FB0011111111111111111107 /* AnalyticsService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnalyticsService.swift; sourceTree = "<group>"; };
|
|
FB001111111111111111110A /* CrashlyticsService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CrashlyticsService.swift; sourceTree = "<group>"; };
|
|
FC01EE9D78D980727A644CDF /* View+MealCard.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "View+MealCard.swift"; sourceTree = "<group>"; };
|
|
FD4FD72583C004A5D5C939A3 /* FilledSlotView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FilledSlotView.swift; sourceTree = "<group>"; };
|
|
FD621CE9B44512AE8894D92E /* OnboardingViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingViewModel.swift; sourceTree = "<group>"; };
|
|
FE73D5B7AF8B5E2D63105977 /* Font+MealMood.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Font+MealMood.swift"; sourceTree = "<group>"; };
|
|
FF2DE77AD57DB6DAB188CD9E /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = "<group>"; };
|
|
/* End PBXFileReference section */
|
|
|
|
/* Begin PBXFrameworksBuildPhase section */
|
|
81780419712273974230423F /* Frameworks */ = {
|
|
isa = PBXFrameworksBuildPhase;
|
|
buildActionMask = 2147483647;
|
|
files = (
|
|
478AE18DA0F887D3D5164635 /* Foundation.framework in Frameworks */,
|
|
CD174669421FE1FD4315F6E0 /* WidgetKit.framework in Frameworks */,
|
|
27D256A032E69F397E9552F3 /* SwiftUI.framework in Frameworks */,
|
|
);
|
|
runOnlyForDeploymentPostprocessing = 0;
|
|
};
|
|
9240A703A486116A9871C534 /* Frameworks */ = {
|
|
isa = PBXFrameworksBuildPhase;
|
|
buildActionMask = 2147483647;
|
|
files = (
|
|
4D53B5101AE845D7C03A0EB4 /* GoogleMobileAds in Frameworks */,
|
|
FB0011111111111111111101 /* FirebaseAnalytics in Frameworks */,
|
|
FB0011111111111111111108 /* FirebaseCrashlytics in Frameworks */,
|
|
C3CB4ACC213DAAD25E610C56 /* WidgetKit.framework in Frameworks */,
|
|
);
|
|
runOnlyForDeploymentPostprocessing = 0;
|
|
};
|
|
/* End PBXFrameworksBuildPhase section */
|
|
|
|
/* Begin PBXGroup section */
|
|
011822327F563ED89CB571FB = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
8C162D5DCA596B64BEE7AD7C /* MealMood */,
|
|
7975F99C73940CF3F40F658E /* MealMoodTests */,
|
|
5BEE00A9E25BDAA086585241 /* Products */,
|
|
F4FE25386665429412E51DB4 /* Frameworks */,
|
|
2BC91A087BC03FF7810C529F /* MealMoodWidget */,
|
|
);
|
|
sourceTree = "<group>";
|
|
};
|
|
0C0966502AF8E7F06CC92048 /* Home */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
23957C735075B0DFB1DF51D7 /* DishDrawerView.swift */,
|
|
89C47DD7B8F4B1441780E611 /* HomeView.swift */,
|
|
69B309A43E486B5A723324BA /* WeekCalendarView.swift */,
|
|
2E113A29DEC0551C41AB7EBB /* WeekPlanShareView.swift */,
|
|
1975C49FFC7D91AEB7932C97 /* SocialShareSheet.swift */,
|
|
);
|
|
path = Home;
|
|
sourceTree = "<group>";
|
|
};
|
|
0D63499EC79D43728D1CA8C7 /* Stats */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
1E8AD94FC874467D863D464C /* StatsView.swift */,
|
|
);
|
|
path = Stats;
|
|
sourceTree = "<group>";
|
|
};
|
|
2BC91A087BC03FF7810C529F /* MealMoodWidget */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
B042BB2F81973D854E84BABD /* MealMoodWidget.swift */,
|
|
5D6A3FCADC4F4B7AAB73E5CA /* Info.plist */,
|
|
B3369706BF941E09F88243F1 /* MealMoodWidget.entitlements */,
|
|
);
|
|
path = MealMoodWidget;
|
|
sourceTree = "<group>";
|
|
};
|
|
35F15C6817E504B1114420CD /* Premium */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
324D77FEC4C8C371695F27CC /* PremiumView.swift */,
|
|
);
|
|
path = Premium;
|
|
sourceTree = "<group>";
|
|
};
|
|
4B4ACE1D0F2968B284A1FA7E /* Configuration */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
0EC555FD2F4498780005513D /* aaaa.storekit */,
|
|
);
|
|
path = Configuration;
|
|
sourceTree = "<group>";
|
|
};
|
|
4B80B7CABE3B737897455A26 /* Settings */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
0F46C32F97EAD52F8F3BC0B7 /* SettingsView.swift */,
|
|
);
|
|
path = Settings;
|
|
sourceTree = "<group>";
|
|
};
|
|
4C220BFE8B9F1CA030AE6A66 /* Extensions */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
AB771E85924AE086647A5113 /* Color+MealMood.swift */,
|
|
7DE70CD2A01FCE5370A46DD3 /* Date+Helpers.swift */,
|
|
FE73D5B7AF8B5E2D63105977 /* Font+MealMood.swift */,
|
|
0164A33496A304E40685EA6D /* Localization+Helpers.swift */,
|
|
FC01EE9D78D980727A644CDF /* View+MealCard.swift */,
|
|
);
|
|
path = Extensions;
|
|
sourceTree = "<group>";
|
|
};
|
|
4ED1758EE5CD0A3EB9D9BCDF /* Brand */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
065982B284538632951F1C3A /* MealMoodLogo.svg */,
|
|
);
|
|
path = Brand;
|
|
sourceTree = "<group>";
|
|
};
|
|
53F699BBFA2A0DDDA1504E9B /* ViewModels */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
E8472961AE65E2A3460B67C3 /* DishViewModel.swift */,
|
|
4EDEE086FD20D16DE507B247 /* HomeViewModel.swift */,
|
|
FD621CE9B44512AE8894D92E /* OnboardingViewModel.swift */,
|
|
5187023D83BBC5E8D304CE3A /* SettingsViewModel.swift */,
|
|
5C9BFFE7A4BC6961815D2334 /* TagViewModel.swift */,
|
|
);
|
|
path = ViewModels;
|
|
sourceTree = "<group>";
|
|
};
|
|
56A59DD223BBB14856A48F78 /* Models */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
C7C00EED19123F00AE87FF24 /* AppSettings.swift */,
|
|
623EDDC4CD134883FC9D242D /* Dish.swift */,
|
|
797A41D292142240FBDF9F2A /* MealSlot.swift */,
|
|
049AE68D5B577514ADD6BACB /* Tag.swift */,
|
|
A23267BAA116E1214870416C /* WeekPlan.swift */,
|
|
3FC93C653B5540D7205BF294 /* ShoppingItem.swift */,
|
|
);
|
|
path = Models;
|
|
sourceTree = "<group>";
|
|
};
|
|
5BEE00A9E25BDAA086585241 /* Products */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
C7B13F4D4D362E50CA65A0C1 /* MealMood.app */,
|
|
F766AA7898D6F391DE1B9A81 /* MealMoodTests.xctest */,
|
|
574CB4BDE993DA0CEC251ABD /* MealMoodWidget.appex */,
|
|
);
|
|
name = Products;
|
|
sourceTree = "<group>";
|
|
};
|
|
7975F99C73940CF3F40F658E /* MealMoodTests */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
7603187713D390BD4D35770C /* AutocompleteEngineTests.swift */,
|
|
DBD33453B7DF86EDBAEB80F1 /* DateHelpersTests.swift */,
|
|
168A6CA95246E1BB72797D4E /* OnboardingViewModelTests.swift */,
|
|
17B976BF8B0BD6D1AA5F8C68 /* TagLocalizationTests.swift */,
|
|
62E2F6B2694CEC97AE3C1B13 /* PremiumSyncServiceTests.swift */,
|
|
);
|
|
path = MealMoodTests;
|
|
sourceTree = "<group>";
|
|
};
|
|
86967708171329E855F4A8AC /* Views */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
8BE925662F55707DF083677A /* Dishes */,
|
|
0C0966502AF8E7F06CC92048 /* Home */,
|
|
E452C59D71AAD6175947503D /* Onboarding */,
|
|
35F15C6817E504B1114420CD /* Premium */,
|
|
4B80B7CABE3B737897455A26 /* Settings */,
|
|
CE41931687CCC60F76A2B6D9 /* Tags */,
|
|
0D63499EC79D43728D1CA8C7 /* Stats */,
|
|
ACD59A09C6EFFA0E57082D0F /* Shopping */,
|
|
);
|
|
path = Views;
|
|
sourceTree = "<group>";
|
|
};
|
|
8BE925662F55707DF083677A /* Dishes */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
D63CA2A8666E1FBBAD65F141 /* DishFormView.swift */,
|
|
CB3BD0E078644749E93B0D2B /* DishListView.swift */,
|
|
B6CF1C9CC9BDB3B20B1834EB /* TagSelectorSheet.swift */,
|
|
);
|
|
path = Dishes;
|
|
sourceTree = "<group>";
|
|
};
|
|
8C162D5DCA596B64BEE7AD7C /* MealMood */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
60F0A5C2FF1B797A4BB69B39 /* ContentView.swift */,
|
|
2C20D9FC522FEBF7206CFD32 /* MealMoodApp.swift */,
|
|
E83E021071AFB650200BED5B /* Components */,
|
|
4B4ACE1D0F2968B284A1FA7E /* Configuration */,
|
|
4C220BFE8B9F1CA030AE6A66 /* Extensions */,
|
|
56A59DD223BBB14856A48F78 /* Models */,
|
|
9E695EAC119C9913E6A36CC8 /* Resources */,
|
|
F9F4F35A66E1D459F23E1679 /* Services */,
|
|
53F699BBFA2A0DDDA1504E9B /* ViewModels */,
|
|
86967708171329E855F4A8AC /* Views */,
|
|
);
|
|
path = MealMood;
|
|
sourceTree = "<group>";
|
|
};
|
|
9E695EAC119C9913E6A36CC8 /* Resources */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
B3944B4AD876455057EB2265 /* Assets.xcassets */,
|
|
8411FF2737FDEF48170F9634 /* Info.plist */,
|
|
8E15828872FAEA71A7384099 /* Localizable.strings */,
|
|
9F86EB5DDB126D73486FD956 /* MealMood.entitlements */,
|
|
4ED1758EE5CD0A3EB9D9BCDF /* Brand */,
|
|
FB0011111111111111111103 /* GoogleService-Info.plist */,
|
|
);
|
|
path = Resources;
|
|
sourceTree = "<group>";
|
|
};
|
|
ACD59A09C6EFFA0E57082D0F /* Shopping */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
5BA71D570D9882C3AFAFDC48 /* ShoppingListView.swift */,
|
|
);
|
|
name = Shopping;
|
|
sourceTree = "<group>";
|
|
};
|
|
CE41931687CCC60F76A2B6D9 /* Tags */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
13DB00DA865F6FE86952BFC3 /* TagListView.swift */,
|
|
2C5CD466A50C339519544347 /* TagRulesEditView.swift */,
|
|
);
|
|
path = Tags;
|
|
sourceTree = "<group>";
|
|
};
|
|
E452C59D71AAD6175947503D /* Onboarding */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
76719058DD3A4177B2B4163E /* CalendarStepView.swift */,
|
|
10594EA55F6BEFF4241D364C /* FirstDishesStepView.swift */,
|
|
9FBA11C8A81D5C0CA8A3C13D /* MealWindowsStepView.swift */,
|
|
6D718B2E4F7E6D22E502F0A6 /* OnboardingView.swift */,
|
|
F61A8C92B47D5938C61E9A75 /* PaywallStepView.swift */,
|
|
035C6C0B728EB0EA80394CDD /* WeekendsStepView.swift */,
|
|
70D140A6E835CA6227C2D4D9 /* WelcomeStepView.swift */,
|
|
D954415A7AC73D41309D2BDF /* WeekReadyStepView.swift */,
|
|
);
|
|
path = Onboarding;
|
|
sourceTree = "<group>";
|
|
};
|
|
E83E021071AFB650200BED5B /* Components */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
050EA827CA951AB9E847E2CA /* AdBannerView.swift */,
|
|
00F2EE5A756C183B6D505403 /* AppIconPlaceholder.swift */,
|
|
D8E2F6A3F47E5C9F92A8E6B3 /* BottomPromoBanner.swift */,
|
|
B68E5C82608F60FF8798BB81 /* EmptySlotView.swift */,
|
|
FD4FD72583C004A5D5C939A3 /* FilledSlotView.swift */,
|
|
BAC64110469AA91D5F28C423 /* MealMoodLogoMark.swift */,
|
|
8CFA001E1BFA916ABC4C44C1 /* PremiumUpsellBanner.swift */,
|
|
DFA97AD958C922D8AFF73314 /* PrimaryButton.swift */,
|
|
6EA1948B5DAEEEA09B78C8A9 /* SecondaryButton.swift */,
|
|
50E1C12C3A693D7C41E9F80B /* TagPill.swift */,
|
|
CFBCD4FFE0D067A591104B74 /* ToastView.swift */,
|
|
);
|
|
path = Components;
|
|
sourceTree = "<group>";
|
|
};
|
|
ECCF14900EFD2F0E1432DB05 /* iOS */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
C77C350D4A839B76A3D2EFE7 /* Foundation.framework */,
|
|
);
|
|
name = iOS;
|
|
sourceTree = "<group>";
|
|
};
|
|
F4FE25386665429412E51DB4 /* Frameworks */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
ECCF14900EFD2F0E1432DB05 /* iOS */,
|
|
BB0D740B79B9E129A3C2F382 /* WidgetKit.framework */,
|
|
EB4FC89C90928DD833240244 /* WidgetKit.framework */,
|
|
C2D1AAC0DB21EA5E2CCA38AD /* SwiftUI.framework */,
|
|
);
|
|
name = Frameworks;
|
|
sourceTree = "<group>";
|
|
};
|
|
F9F4F35A66E1D459F23E1679 /* Services */ = {
|
|
isa = PBXGroup;
|
|
children = (
|
|
812303C94C8C1D2FADF3CB37 /* AdMobConfig.swift */,
|
|
FB0011111111111111111107 /* AnalyticsService.swift */,
|
|
FB001111111111111111110A /* CrashlyticsService.swift */,
|
|
CE7AB2ECCA7D330E50AC549E /* AutocompleteEngine.swift */,
|
|
B0A631C6D0CF7A0724ACF6A5 /* CalendarService.swift */,
|
|
17E00AB23342224B3407838B /* DefaultDataService.swift */,
|
|
20F23BF9788A3217E3D63721 /* HapticManager.swift */,
|
|
BED090ADA1FB259AD2AFEDE2 /* ICloudSyncService.swift */,
|
|
8EE10285FEE9BE0684CC66A3 /* NotificationService.swift */,
|
|
F0200C0C11C912711C724558 /* PremiumAccess.swift */,
|
|
E8825212ACFA0D3F6C716E94 /* ReviewPromptService.swift */,
|
|
103374A7D91B4F884278DA72 /* StoreManager.swift */,
|
|
A6FC2153490D53B80DBDC034 /* WidgetDataStore.swift */,
|
|
928E6D4F6D78AD1840245FB4 /* PremiumSyncService.swift */,
|
|
A3C5F7891B2D4E6F80A2C4E6 /* FeedbackStore.swift */,
|
|
71F0ADA350289AE410D572A7 /* IngredientGenerator.swift */,
|
|
A1B2C3D4E5F60718293A4B02 /* IngredientParser.swift */,
|
|
A1B2C3D4E5F60718293A4B04 /* SpeechDictationService.swift */,
|
|
5C512046B1410E236A3F6286 /* ShoppingListService.swift */,
|
|
A1C3CBAFE191AD6643F861B7 /* DeduplicationService.swift */,
|
|
);
|
|
path = Services;
|
|
sourceTree = "<group>";
|
|
};
|
|
/* End PBXGroup section */
|
|
|
|
/* Begin PBXNativeTarget section */
|
|
71CBF84DA3DD6F325A40C1A1 /* MealMoodTests */ = {
|
|
isa = PBXNativeTarget;
|
|
buildConfigurationList = 9E9B4B2D60B7D7F8BF816CBA /* Build configuration list for PBXNativeTarget "MealMoodTests" */;
|
|
buildPhases = (
|
|
B1ACBA2CBB77DB5CAD57EB57 /* Sources */,
|
|
);
|
|
buildRules = (
|
|
);
|
|
dependencies = (
|
|
C4E8F43173BDFCAE4D6DFF49 /* PBXTargetDependency */,
|
|
);
|
|
name = MealMoodTests;
|
|
productName = MealMoodTests;
|
|
productReference = F766AA7898D6F391DE1B9A81 /* MealMoodTests.xctest */;
|
|
productType = "com.apple.product-type.bundle.unit-test";
|
|
};
|
|
C82BD86FE72A5E319983AEE3 /* MealMoodWidget */ = {
|
|
isa = PBXNativeTarget;
|
|
buildConfigurationList = 14CECD46CDA9DFDC2D928807 /* Build configuration list for PBXNativeTarget "MealMoodWidget" */;
|
|
buildPhases = (
|
|
A6B405631E28429E34B68811 /* Sources */,
|
|
81780419712273974230423F /* Frameworks */,
|
|
89994B0BC8A1CC21C26EC6F6 /* Resources */,
|
|
);
|
|
buildRules = (
|
|
);
|
|
dependencies = (
|
|
);
|
|
name = MealMoodWidget;
|
|
productName = MealMoodWidget;
|
|
productReference = 574CB4BDE993DA0CEC251ABD /* MealMoodWidget.appex */;
|
|
productType = "com.apple.product-type.app-extension";
|
|
};
|
|
DE69ED74719D07B4A5770741 /* MealMood */ = {
|
|
isa = PBXNativeTarget;
|
|
buildConfigurationList = BE85686E0B47779700A19EA0 /* Build configuration list for PBXNativeTarget "MealMood" */;
|
|
buildPhases = (
|
|
B2A7B3CE9D5681C52D906D1A /* Sources */,
|
|
60AC9519630B6008787A8859 /* Resources */,
|
|
9240A703A486116A9871C534 /* Frameworks */,
|
|
DF9575A974376FF5C6420060 /* Embed App Extensions */,
|
|
FB001111111111111111110C /* Upload dSYM to Crashlytics */,
|
|
);
|
|
buildRules = (
|
|
);
|
|
dependencies = (
|
|
);
|
|
name = MealMood;
|
|
packageProductDependencies = (
|
|
192E7CF40FD34C3FF4DDFDA3 /* GoogleMobileAds */,
|
|
FB0011111111111111111105 /* FirebaseAnalytics */,
|
|
FB001111111111111111110B /* FirebaseCrashlytics */,
|
|
);
|
|
productName = MealMood;
|
|
productReference = C7B13F4D4D362E50CA65A0C1 /* MealMood.app */;
|
|
productType = "com.apple.product-type.application";
|
|
};
|
|
/* End PBXNativeTarget section */
|
|
|
|
/* Begin PBXProject section */
|
|
7C11D794B7E45A145D5ADBFD /* Project object */ = {
|
|
isa = PBXProject;
|
|
attributes = {
|
|
BuildIndependentTargetsInParallel = YES;
|
|
LastUpgradeCheck = 1430;
|
|
};
|
|
buildConfigurationList = 82E16632C9B76AC33DE64CBB /* Build configuration list for PBXProject "MealMood" */;
|
|
compatibilityVersion = "Xcode 14.0";
|
|
developmentRegion = en;
|
|
hasScannedForEncodings = 0;
|
|
knownRegions = (
|
|
Base,
|
|
de,
|
|
en,
|
|
es,
|
|
fr,
|
|
it,
|
|
"pt-BR",
|
|
);
|
|
mainGroup = 011822327F563ED89CB571FB;
|
|
minimizedProjectReferenceProxies = 1;
|
|
packageReferences = (
|
|
BE33D996A0D3FB7D5E000A7F /* XCRemoteSwiftPackageReference "swift-package-manager-google-mobile-ads" */,
|
|
FB0011111111111111111104 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */,
|
|
);
|
|
productRefGroup = 5BEE00A9E25BDAA086585241 /* Products */;
|
|
projectDirPath = "";
|
|
projectRoot = "";
|
|
targets = (
|
|
DE69ED74719D07B4A5770741 /* MealMood */,
|
|
71CBF84DA3DD6F325A40C1A1 /* MealMoodTests */,
|
|
C82BD86FE72A5E319983AEE3 /* MealMoodWidget */,
|
|
);
|
|
};
|
|
/* End PBXProject section */
|
|
|
|
/* Begin PBXResourcesBuildPhase section */
|
|
60AC9519630B6008787A8859 /* Resources */ = {
|
|
isa = PBXResourcesBuildPhase;
|
|
buildActionMask = 2147483647;
|
|
files = (
|
|
0EC555FE2F4498780005513D /* aaaa.storekit in Resources */,
|
|
EA4EC6244EEBE6D568BCA5E5 /* Assets.xcassets in Resources */,
|
|
87EB371FD3B6C241AC721C55 /* Localizable.strings in Resources */,
|
|
7CBE113B28462C6C41C35533 /* MealMoodLogo.svg in Resources */,
|
|
FB0011111111111111111102 /* GoogleService-Info.plist in Resources */,
|
|
);
|
|
runOnlyForDeploymentPostprocessing = 0;
|
|
};
|
|
89994B0BC8A1CC21C26EC6F6 /* Resources */ = {
|
|
isa = PBXResourcesBuildPhase;
|
|
buildActionMask = 2147483647;
|
|
files = (
|
|
);
|
|
runOnlyForDeploymentPostprocessing = 0;
|
|
};
|
|
/* End PBXResourcesBuildPhase section */
|
|
|
|
/* Begin PBXShellScriptBuildPhase section */
|
|
FB001111111111111111110C /* Upload dSYM to Crashlytics */ = {
|
|
isa = PBXShellScriptBuildPhase;
|
|
alwaysOutOfDate = 1;
|
|
buildActionMask = 2147483647;
|
|
files = (
|
|
);
|
|
inputFileListPaths = (
|
|
);
|
|
inputPaths = (
|
|
"${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME}",
|
|
"$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)",
|
|
);
|
|
name = "Upload dSYM to Crashlytics";
|
|
outputFileListPaths = (
|
|
);
|
|
outputPaths = (
|
|
);
|
|
runOnlyForDeploymentPostprocessing = 0;
|
|
shellPath = /bin/sh;
|
|
shellScript = "\"${BUILD_DIR%Build/*}SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run\"\n";
|
|
};
|
|
/* End PBXShellScriptBuildPhase section */
|
|
|
|
/* Begin PBXSourcesBuildPhase section */
|
|
A6B405631E28429E34B68811 /* Sources */ = {
|
|
isa = PBXSourcesBuildPhase;
|
|
buildActionMask = 2147483647;
|
|
files = (
|
|
A4D50C0B4E91B3542C63017A /* MealMoodWidget.swift in Sources */,
|
|
);
|
|
runOnlyForDeploymentPostprocessing = 0;
|
|
};
|
|
B1ACBA2CBB77DB5CAD57EB57 /* Sources */ = {
|
|
isa = PBXSourcesBuildPhase;
|
|
buildActionMask = 2147483647;
|
|
files = (
|
|
73B55D5A7B351BD05709E40C /* AutocompleteEngineTests.swift in Sources */,
|
|
BE908B23F64F33D594AB8D82 /* DateHelpersTests.swift in Sources */,
|
|
016D78C0DC1B1F6E671F36F7 /* OnboardingViewModelTests.swift in Sources */,
|
|
ACAEFA5F4C170C6438CD2652 /* TagLocalizationTests.swift in Sources */,
|
|
2A58E7C96AF7C14EBFE1C65C /* PremiumSyncServiceTests.swift in Sources */,
|
|
);
|
|
runOnlyForDeploymentPostprocessing = 0;
|
|
};
|
|
B2A7B3CE9D5681C52D906D1A /* Sources */ = {
|
|
isa = PBXSourcesBuildPhase;
|
|
buildActionMask = 2147483647;
|
|
files = (
|
|
B3C9E5149B70C477EACBDFFB /* AdBannerView.swift in Sources */,
|
|
A9278F6559777CB9FA7FB69E /* AdMobConfig.swift in Sources */,
|
|
C7B1F5A21B5E4A9E91B7F5A2 /* BottomPromoBanner.swift in Sources */,
|
|
FB0011111111111111111106 /* AnalyticsService.swift in Sources */,
|
|
E6A57F29C02AE138D705BAF7 /* AppIconPlaceholder.swift in Sources */,
|
|
D2840F9D92D16026338CE83C /* AppSettings.swift in Sources */,
|
|
CD2ADCDADFEC2D562E23D8E6 /* AutocompleteEngine.swift in Sources */,
|
|
867A511F154A33E9DD7FE9BC /* CalendarService.swift in Sources */,
|
|
4218F220B7412965A5001A88 /* CalendarStepView.swift in Sources */,
|
|
8F739A4496501009B8D829B3 /* Color+MealMood.swift in Sources */,
|
|
6553473B007AFD04079878C6 /* ContentView.swift in Sources */,
|
|
294D7F9BE5A2907F74B8614C /* Date+Helpers.swift in Sources */,
|
|
9BC60C30918C117608E43699 /* DefaultDataService.swift in Sources */,
|
|
717C67C9A7F48587667B5AE2 /* Dish.swift in Sources */,
|
|
511DDB82FF4DD30018101418 /* DishDrawerView.swift in Sources */,
|
|
D8149D55E74F7BBFC0402F46 /* DishFormView.swift in Sources */,
|
|
37F5CEC4862C0AE2F3385ABA /* DishListView.swift in Sources */,
|
|
C565A1975302748A2B2152BE /* DishViewModel.swift in Sources */,
|
|
5ECA2501EC257777DBE670AD /* EmptySlotView.swift in Sources */,
|
|
786E0F918F60E93A7EE2AD3E /* FilledSlotView.swift in Sources */,
|
|
DE43F08AAC939C083BF511C1 /* FirstDishesStepView.swift in Sources */,
|
|
E5D9C4B783A14E2B9F4D2E68 /* PaywallStepView.swift in Sources */,
|
|
5BCED5AFADACD4118AE59AF9 /* Font+MealMood.swift in Sources */,
|
|
AB76A63B140922D69F314C37 /* HapticManager.swift in Sources */,
|
|
31DFC035AE34F49FB35071A7 /* HomeView.swift in Sources */,
|
|
A7CAD588CF78F404C8065CF1 /* HomeViewModel.swift in Sources */,
|
|
5E7322F3F3624211985F2D99 /* ICloudSyncService.swift in Sources */,
|
|
203DDFF14C0688DEDB6EE83E /* Localization+Helpers.swift in Sources */,
|
|
3C5225918DA8DE77F5AC1AA0 /* MealMoodApp.swift in Sources */,
|
|
B8D7CA62789429C2F693E4F6 /* MealMoodLogoMark.swift in Sources */,
|
|
0F91C8611D3BBE1FBD51D1E6 /* MealSlot.swift in Sources */,
|
|
C81C935386BE1E939DA55F8D /* MealWindowsStepView.swift in Sources */,
|
|
8CEAC8993D33BFBBEB5319A8 /* NotificationService.swift in Sources */,
|
|
670A11A9850B321D9FF76B41 /* OnboardingView.swift in Sources */,
|
|
7A77669DAC7A243BA7C88916 /* OnboardingViewModel.swift in Sources */,
|
|
D89413095E37C3D677856437 /* PremiumAccess.swift in Sources */,
|
|
48F9D3308375F820B2B88D1B /* PremiumUpsellBanner.swift in Sources */,
|
|
861557A13918B99C421251E0 /* PremiumView.swift in Sources */,
|
|
C14BDE4C3EF6AF75F378D892 /* PrimaryButton.swift in Sources */,
|
|
7B1B992619FFD22A92F0E88B /* ReviewPromptService.swift in Sources */,
|
|
AB443E1DC9830D13B3E7B837 /* SecondaryButton.swift in Sources */,
|
|
7E163CDBF0832188EFA31C7D /* SettingsView.swift in Sources */,
|
|
AB496674DF3CA41ACBBE7CFC /* SettingsViewModel.swift in Sources */,
|
|
9D40600B9AC21F0FF64B77F9 /* StoreManager.swift in Sources */,
|
|
30540EF74F2C97F741BA6A1A /* Tag.swift in Sources */,
|
|
19330C6ECE7A60110A3A679D /* TagListView.swift in Sources */,
|
|
A6F130EC376B7BC270AD908D /* TagPill.swift in Sources */,
|
|
71D8EB28A881D95A338F4CEE /* TagRulesEditView.swift in Sources */,
|
|
E3BD64E6D32ED7052F174923 /* TagSelectorSheet.swift in Sources */,
|
|
9BE86765B8F0368AD5C86FC4 /* TagViewModel.swift in Sources */,
|
|
DE797C90DFDAFAC5C12E3D97 /* ToastView.swift in Sources */,
|
|
2519A55C6BDA686B6F85E79D /* View+MealCard.swift in Sources */,
|
|
E12A5EE3D940260902277CC5 /* WeekCalendarView.swift in Sources */,
|
|
AD5F8FDE30CE4B2934B3C1C1 /* WeekPlan.swift in Sources */,
|
|
6C808D1B6E8534FABC4A4053 /* WeekPlanShareView.swift in Sources */,
|
|
F65AD80426AF8DA12FBD661C /* WeekendsStepView.swift in Sources */,
|
|
E2524335ED3A5DB7813BEA99 /* WelcomeStepView.swift in Sources */,
|
|
17E1054EE183486E7BE38C19 /* WidgetDataStore.swift in Sources */,
|
|
233B9C1A5CA7E938318491C0 /* SocialShareSheet.swift in Sources */,
|
|
25B3C328E088A403CABAF20A /* PremiumSyncService.swift in Sources */,
|
|
FB0011111111111111111109 /* CrashlyticsService.swift in Sources */,
|
|
443CC3997A9A4818B51066FB /* StatsView.swift in Sources */,
|
|
B4D6F8012C3E5F7A91B3D5F7 /* FeedbackStore.swift in Sources */,
|
|
2124FD777418A4EEDF64BDC3 /* WeekReadyStepView.swift in Sources */,
|
|
D39BED40CA59849F181D80B5 /* IngredientGenerator.swift in Sources */,
|
|
A1B2C3D4E5F60718293A4B01 /* IngredientParser.swift in Sources */,
|
|
A1B2C3D4E5F60718293A4B03 /* SpeechDictationService.swift in Sources */,
|
|
B8FDF31D3BD7DD7220CE21A3 /* ShoppingItem.swift in Sources */,
|
|
44E43D5F00D1B513F9BABE80 /* ShoppingListService.swift in Sources */,
|
|
57F1EA6B5E3AF88A61C48354 /* ShoppingListView.swift in Sources */,
|
|
6685C591F837FAFB29A322F7 /* DeduplicationService.swift in Sources */,
|
|
);
|
|
runOnlyForDeploymentPostprocessing = 0;
|
|
};
|
|
/* End PBXSourcesBuildPhase section */
|
|
|
|
/* Begin PBXTargetDependency section */
|
|
C4E8F43173BDFCAE4D6DFF49 /* PBXTargetDependency */ = {
|
|
isa = PBXTargetDependency;
|
|
target = DE69ED74719D07B4A5770741 /* MealMood */;
|
|
targetProxy = EFE9F2305F13749C6FCAC8E5 /* PBXContainerItemProxy */;
|
|
};
|
|
/* End PBXTargetDependency section */
|
|
|
|
/* Begin PBXVariantGroup section */
|
|
8E15828872FAEA71A7384099 /* Localizable.strings */ = {
|
|
isa = PBXVariantGroup;
|
|
children = (
|
|
FF2DE77AD57DB6DAB188CD9E /* en */,
|
|
965555A7774FF7EB975F0A07 /* es */,
|
|
93B4B31A8F6E4D7AAB1B6A01 /* fr */,
|
|
E18A2F6B56D64C1EBC91E219 /* de */,
|
|
E18A2F6B56D64C1EBC91E21A /* it */,
|
|
E18A2F6B56D64C1EBC91E21B /* pt-BR */,
|
|
);
|
|
name = Localizable.strings;
|
|
sourceTree = "<group>";
|
|
};
|
|
/* End PBXVariantGroup section */
|
|
|
|
/* Begin XCBuildConfiguration section */
|
|
1FCA89A600CDAC66078A97A2 /* Release */ = {
|
|
isa = XCBuildConfiguration;
|
|
buildSettings = {
|
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
|
CLANG_ANALYZER_NONNULL = YES;
|
|
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
|
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
|
|
CLANG_CXX_LIBRARY = "libc++";
|
|
CLANG_ENABLE_MODULES = YES;
|
|
CLANG_ENABLE_OBJC_ARC = YES;
|
|
CLANG_ENABLE_OBJC_WEAK = YES;
|
|
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
|
CLANG_WARN_BOOL_CONVERSION = YES;
|
|
CLANG_WARN_COMMA = YES;
|
|
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
|
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
|
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
|
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
|
CLANG_WARN_EMPTY_BODY = YES;
|
|
CLANG_WARN_ENUM_CONVERSION = YES;
|
|
CLANG_WARN_INFINITE_RECURSION = YES;
|
|
CLANG_WARN_INT_CONVERSION = YES;
|
|
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
|
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
|
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
|
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
|
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
|
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
|
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
|
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
|
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
|
CLANG_WARN_UNREACHABLE_CODE = YES;
|
|
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
|
COPY_PHASE_STRIP = NO;
|
|
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
|
ENABLE_NS_ASSERTIONS = NO;
|
|
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
|
GCC_C_LANGUAGE_STANDARD = gnu11;
|
|
GCC_NO_COMMON_BLOCKS = YES;
|
|
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
|
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
|
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
|
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
|
|
MTL_ENABLE_DEBUG_INFO = NO;
|
|
MTL_FAST_MATH = YES;
|
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
|
SDKROOT = iphoneos;
|
|
SWIFT_COMPILATION_MODE = wholemodule;
|
|
SWIFT_OPTIMIZATION_LEVEL = "-O";
|
|
SWIFT_VERSION = 6.0;
|
|
};
|
|
name = Release;
|
|
};
|
|
70E1B27C392FF6A967A2CEF0 /* Release */ = {
|
|
isa = XCBuildConfiguration;
|
|
buildSettings = {
|
|
APPLICATION_EXTENSION_API_ONLY = YES;
|
|
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
|
CLANG_ENABLE_OBJC_WEAK = NO;
|
|
CODE_SIGN_ENTITLEMENTS = MealMoodWidget/MealMoodWidget.entitlements;
|
|
CODE_SIGN_STYLE = Manual;
|
|
CODE_SIGN_IDENTITY = "Apple Distribution";
|
|
PROVISIONING_PROFILE_SPECIFIER = "com.alexandrevazquez.mealmood.widget AppStore";
|
|
DEVELOPMENT_TEAM = 2825Q76T7H;
|
|
INFOPLIST_FILE = MealMoodWidget/Info.plist;
|
|
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
|
|
PRODUCT_BUNDLE_IDENTIFIER = com.alexandrevazquez.mealmood.widget;
|
|
PRODUCT_NAME = MealMoodWidget;
|
|
SDKROOT = iphoneos;
|
|
SKIP_INSTALL = YES;
|
|
SWIFT_VERSION = 5.0;
|
|
TARGETED_DEVICE_FAMILY = "1,2";
|
|
VALIDATE_PRODUCT = YES;
|
|
};
|
|
name = Release;
|
|
};
|
|
78DB4A7025FD82DEF656DD24 /* Debug */ = {
|
|
isa = XCBuildConfiguration;
|
|
buildSettings = {
|
|
APPLICATION_EXTENSION_API_ONLY = YES;
|
|
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
|
CLANG_ENABLE_OBJC_WEAK = NO;
|
|
CODE_SIGN_ENTITLEMENTS = MealMoodWidget/MealMoodWidget.entitlements;
|
|
CODE_SIGN_STYLE = Automatic;
|
|
DEVELOPMENT_TEAM = 2825Q76T7H;
|
|
INFOPLIST_FILE = MealMoodWidget/Info.plist;
|
|
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
|
|
PRODUCT_BUNDLE_IDENTIFIER = com.alexandrevazquez.mealmood.widget;
|
|
PRODUCT_NAME = MealMoodWidget;
|
|
SDKROOT = iphoneos;
|
|
SKIP_INSTALL = YES;
|
|
SWIFT_VERSION = 5.0;
|
|
TARGETED_DEVICE_FAMILY = "1,2";
|
|
};
|
|
name = Debug;
|
|
};
|
|
A29AC9249B9DE06546506655 /* Release */ = {
|
|
isa = XCBuildConfiguration;
|
|
buildSettings = {
|
|
BUNDLE_LOADER = "$(TEST_HOST)";
|
|
GENERATE_INFOPLIST_FILE = YES;
|
|
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
|
|
LD_RUNPATH_SEARCH_PATHS = (
|
|
"$(inherited)",
|
|
"@executable_path/Frameworks",
|
|
"@loader_path/Frameworks",
|
|
);
|
|
PRODUCT_BUNDLE_IDENTIFIER = com.alexandrevazquez.mealmood.tests;
|
|
SDKROOT = iphoneos;
|
|
TARGETED_DEVICE_FAMILY = "1,2";
|
|
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/MealMood.app/MealMood";
|
|
};
|
|
name = Release;
|
|
};
|
|
B25BBFBD5E65ABC45B72EE38 /* Release */ = {
|
|
isa = XCBuildConfiguration;
|
|
buildSettings = {
|
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
|
CODE_SIGN_ENTITLEMENTS = MealMood/Resources/MealMood.entitlements;
|
|
APS_ENVIRONMENT = production;
|
|
CODE_SIGN_IDENTITY = "Apple Distribution";
|
|
CODE_SIGN_STYLE = Manual;
|
|
PROVISIONING_PROFILE_SPECIFIER = "com.alexandrevazquez.mealmood AppStore";
|
|
CURRENT_PROJECT_VERSION = 63;
|
|
DEVELOPMENT_TEAM = 2825Q76T7H;
|
|
GENERATE_INFOPLIST_FILE = NO;
|
|
INFOPLIST_FILE = MealMood/Resources/Info.plist;
|
|
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
|
|
LD_RUNPATH_SEARCH_PATHS = (
|
|
"$(inherited)",
|
|
"@executable_path/Frameworks",
|
|
);
|
|
MARKETING_VERSION = 2.0;
|
|
PRODUCT_BUNDLE_IDENTIFIER = com.alexandrevazquez.mealmood;
|
|
PRODUCT_NAME = MealMood;
|
|
SDKROOT = iphoneos;
|
|
TARGETED_DEVICE_FAMILY = "1,2";
|
|
};
|
|
name = Release;
|
|
};
|
|
B6C55A4487CCCEE45AAF80D9 /* Debug */ = {
|
|
isa = XCBuildConfiguration;
|
|
buildSettings = {
|
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
|
CLANG_ANALYZER_NONNULL = YES;
|
|
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
|
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
|
|
CLANG_CXX_LIBRARY = "libc++";
|
|
CLANG_ENABLE_MODULES = YES;
|
|
CLANG_ENABLE_OBJC_ARC = YES;
|
|
CLANG_ENABLE_OBJC_WEAK = YES;
|
|
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
|
CLANG_WARN_BOOL_CONVERSION = YES;
|
|
CLANG_WARN_COMMA = YES;
|
|
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
|
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
|
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
|
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
|
CLANG_WARN_EMPTY_BODY = YES;
|
|
CLANG_WARN_ENUM_CONVERSION = YES;
|
|
CLANG_WARN_INFINITE_RECURSION = YES;
|
|
CLANG_WARN_INT_CONVERSION = YES;
|
|
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
|
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
|
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
|
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
|
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
|
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
|
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
|
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
|
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
|
CLANG_WARN_UNREACHABLE_CODE = YES;
|
|
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
|
COPY_PHASE_STRIP = NO;
|
|
DEBUG_INFORMATION_FORMAT = dwarf;
|
|
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
|
ENABLE_TESTABILITY = YES;
|
|
GCC_C_LANGUAGE_STANDARD = gnu11;
|
|
GCC_DYNAMIC_NO_PIC = NO;
|
|
GCC_NO_COMMON_BLOCKS = YES;
|
|
GCC_OPTIMIZATION_LEVEL = 0;
|
|
GCC_PREPROCESSOR_DEFINITIONS = (
|
|
"$(inherited)",
|
|
"DEBUG=1",
|
|
);
|
|
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
|
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
|
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
|
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
|
|
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
|
MTL_FAST_MATH = YES;
|
|
ONLY_ACTIVE_ARCH = YES;
|
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
|
SDKROOT = iphoneos;
|
|
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
|
|
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
|
SWIFT_VERSION = 6.0;
|
|
};
|
|
name = Debug;
|
|
};
|
|
E2311296738EDCA9CC08E5F5 /* Debug */ = {
|
|
isa = XCBuildConfiguration;
|
|
buildSettings = {
|
|
BUNDLE_LOADER = "$(TEST_HOST)";
|
|
DEVELOPMENT_TEAM = 2825Q76T7H;
|
|
GENERATE_INFOPLIST_FILE = YES;
|
|
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
|
|
LD_RUNPATH_SEARCH_PATHS = (
|
|
"$(inherited)",
|
|
"@executable_path/Frameworks",
|
|
"@loader_path/Frameworks",
|
|
);
|
|
PRODUCT_BUNDLE_IDENTIFIER = com.alexandrevazquez.mealmood.tests;
|
|
SDKROOT = iphoneos;
|
|
TARGETED_DEVICE_FAMILY = "1,2";
|
|
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/MealMood.app/MealMood";
|
|
};
|
|
name = Debug;
|
|
};
|
|
E9CAFA13F28C3B0E740A13AC /* Debug */ = {
|
|
isa = XCBuildConfiguration;
|
|
buildSettings = {
|
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
|
CODE_SIGN_ENTITLEMENTS = MealMood/Resources/MealMood.entitlements;
|
|
APS_ENVIRONMENT = development;
|
|
CODE_SIGN_IDENTITY = "iPhone Developer";
|
|
CURRENT_PROJECT_VERSION = 63;
|
|
DEVELOPMENT_TEAM = 2825Q76T7H;
|
|
GENERATE_INFOPLIST_FILE = NO;
|
|
INFOPLIST_FILE = MealMood/Resources/Info.plist;
|
|
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
|
|
LD_RUNPATH_SEARCH_PATHS = (
|
|
"$(inherited)",
|
|
"@executable_path/Frameworks",
|
|
);
|
|
MARKETING_VERSION = 2.0;
|
|
PRODUCT_BUNDLE_IDENTIFIER = com.alexandrevazquez.mealmood;
|
|
PRODUCT_NAME = MealMood;
|
|
SDKROOT = iphoneos;
|
|
TARGETED_DEVICE_FAMILY = "1,2";
|
|
};
|
|
name = Debug;
|
|
};
|
|
/* End XCBuildConfiguration section */
|
|
|
|
/* Begin XCConfigurationList section */
|
|
14CECD46CDA9DFDC2D928807 /* Build configuration list for PBXNativeTarget "MealMoodWidget" */ = {
|
|
isa = XCConfigurationList;
|
|
buildConfigurations = (
|
|
70E1B27C392FF6A967A2CEF0 /* Release */,
|
|
78DB4A7025FD82DEF656DD24 /* Debug */,
|
|
);
|
|
defaultConfigurationIsVisible = 0;
|
|
defaultConfigurationName = Release;
|
|
};
|
|
82E16632C9B76AC33DE64CBB /* Build configuration list for PBXProject "MealMood" */ = {
|
|
isa = XCConfigurationList;
|
|
buildConfigurations = (
|
|
B6C55A4487CCCEE45AAF80D9 /* Debug */,
|
|
1FCA89A600CDAC66078A97A2 /* Release */,
|
|
);
|
|
defaultConfigurationIsVisible = 0;
|
|
defaultConfigurationName = Debug;
|
|
};
|
|
9E9B4B2D60B7D7F8BF816CBA /* Build configuration list for PBXNativeTarget "MealMoodTests" */ = {
|
|
isa = XCConfigurationList;
|
|
buildConfigurations = (
|
|
E2311296738EDCA9CC08E5F5 /* Debug */,
|
|
A29AC9249B9DE06546506655 /* Release */,
|
|
);
|
|
defaultConfigurationIsVisible = 0;
|
|
defaultConfigurationName = Debug;
|
|
};
|
|
BE85686E0B47779700A19EA0 /* Build configuration list for PBXNativeTarget "MealMood" */ = {
|
|
isa = XCConfigurationList;
|
|
buildConfigurations = (
|
|
E9CAFA13F28C3B0E740A13AC /* Debug */,
|
|
B25BBFBD5E65ABC45B72EE38 /* Release */,
|
|
);
|
|
defaultConfigurationIsVisible = 0;
|
|
defaultConfigurationName = Debug;
|
|
};
|
|
/* End XCConfigurationList section */
|
|
|
|
/* Begin XCRemoteSwiftPackageReference section */
|
|
BE33D996A0D3FB7D5E000A7F /* XCRemoteSwiftPackageReference "swift-package-manager-google-mobile-ads" */ = {
|
|
isa = XCRemoteSwiftPackageReference;
|
|
repositoryURL = "https://github.com/googleads/swift-package-manager-google-mobile-ads.git";
|
|
requirement = {
|
|
kind = upToNextMajorVersion;
|
|
minimumVersion = 11.13.0;
|
|
};
|
|
};
|
|
FB0011111111111111111104 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */ = {
|
|
isa = XCRemoteSwiftPackageReference;
|
|
repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git";
|
|
requirement = {
|
|
kind = upToNextMajorVersion;
|
|
minimumVersion = 11.0.0;
|
|
};
|
|
};
|
|
/* End XCRemoteSwiftPackageReference section */
|
|
|
|
/* Begin XCSwiftPackageProductDependency section */
|
|
192E7CF40FD34C3FF4DDFDA3 /* GoogleMobileAds */ = {
|
|
isa = XCSwiftPackageProductDependency;
|
|
package = BE33D996A0D3FB7D5E000A7F /* XCRemoteSwiftPackageReference "swift-package-manager-google-mobile-ads" */;
|
|
productName = GoogleMobileAds;
|
|
};
|
|
FB0011111111111111111105 /* FirebaseAnalytics */ = {
|
|
isa = XCSwiftPackageProductDependency;
|
|
package = FB0011111111111111111104 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
|
|
productName = FirebaseAnalytics;
|
|
};
|
|
FB001111111111111111110B /* FirebaseCrashlytics */ = {
|
|
isa = XCSwiftPackageProductDependency;
|
|
package = FB0011111111111111111104 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
|
|
productName = FirebaseCrashlytics;
|
|
};
|
|
/* End XCSwiftPackageProductDependency section */
|
|
};
|
|
rootObject = 7C11D794B7E45A145D5ADBFD /* Project object */;
|
|
}
|