Fix meal plan not populating on first login and add pull-to-refresh sync
Rewrite MealPlanSyncManager.performSync() (renamed from performInitialSync) to discover _mealPlanAssignment metadata from all server recipes, not just locally- known ones. On first sync all recipes are checked; on subsequent syncs only recipes modified since lastMealPlanSyncDate are fetched (max 5 concurrent). Trigger meal plan sync from pull-to-refresh on both the recipe and meal plan tabs, and from the "Refresh all" toolbar button. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -99,12 +99,12 @@ struct MainView: View {
|
||||
await groceryList.load()
|
||||
groceryList.configureSyncManager(appState: appState)
|
||||
if UserSettings.shared.grocerySyncEnabled {
|
||||
await groceryList.syncManager?.performInitialSync()
|
||||
await groceryList.syncManager?.performSync()
|
||||
}
|
||||
await mealPlan.load()
|
||||
mealPlan.configureSyncManager(appState: appState)
|
||||
if UserSettings.shared.mealPlanSyncEnabled {
|
||||
await mealPlan.syncManager?.performInitialSync()
|
||||
await mealPlan.syncManager?.performSync()
|
||||
}
|
||||
recipeViewModel.presentLoadingIndicator = false
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user