Mealz Planner
Mealz Planner journeys use FeatureRoute.Planner: a compact entry block (CTA) and a full-screen menu (current menu / help).
iOS naming
FeatureRoute.Planner.CurrentMenu flattens to FeatureRoute.Planner.PlannerCurrentMenu in Swift.
Visual Overview
Mealz Planner Entry — Parameters
Compact CTA to start / resume Mealz Planner (fixed height, full width).
| Parameter | Type | Required | Default | What it does |
|---|---|---|---|---|
navigationCallback | PlannerEntryNavigationCallback | yes | — | Open the Mealz Planner menu. |
modifier | Compose Modifier | no | — | Layout. |
stateContent | state overlays | no | library default | Optional loading UI. |
PlannerEntryNavigationCallback
| Callback | Required | What you must do |
|---|---|---|
goToPlanner | yes | (FeatureRoute.Planner) -> Unit — present the full Mealz Planner menu for the given route (usually CurrentMenu). |
Base NavigationCallback redirects default to no-ops on this component — only goToPlanner matters.
Mealz Planner Menu — Parameters
Full-screen Mealz Planner journey.
| Parameter | Type | Required | Default | What it does |
|---|---|---|---|---|
route | FeatureRoute.Planner | no | CurrentMenu() | CurrentMenu(), Help(), … |
navigationCallback | PlannerNavigationCallback | yes | — | Login / store / exit + optional cart and catalog. |
modifier | Compose Modifier | no | fills max size | Layout. |
stateContent | state overlays | no | library default | Optional loading UI. |
PlannerNavigationCallback
| Callback | Required | What you must do |
|---|---|---|
redirectToLogIn | yes | Open login. |
redirectToStoreLocator | yes | Open store picker. |
exit | yes | Close the Mealz Planner screen. |
redirectToCart | no | Open retailer cart. Defaults to null. |
goToCatalog | no | (FeatureRoute.Catalog) -> Unit — open catalog when Mealz Planner links out. |
Inject
Entry
PlannerEntry(
navigationCallback = PlannerEntryNavigationCallback(
goToPlanner = { /* open PlannerMenuScreen */ }
)
)Menu
PlannerMenuScreen(
route = FeatureRoute.Planner.CurrentMenu(),
navigationCallback = PlannerNavigationCallback(
redirectToLogIn = { },
redirectToStoreLocator = { },
exit = { },
redirectToCart = { },
goToCatalog = { }
)
)