revert(shopping): restore MyShoppingPage parity with master and retain legacy stubs
This commit is contained in:
parent
710f9ccf9b
commit
d729c0311d
2 changed files with 5 additions and 2 deletions
|
|
@ -130,6 +130,7 @@ What exists now
|
||||||
- Domain & UI
|
- Domain & UI
|
||||||
- Member arrays (`chefs`, `consumers`, `cleanup`) normalized to MemberRef `{ id, displayName }` with decoders handling legacy shapes gracefully.
|
- Member arrays (`chefs`, `consumers`, `cleanup`) normalized to MemberRef `{ id, displayName }` with decoders handling legacy shapes gracefully.
|
||||||
- Invitation Accept flow implemented; Household Settings supports sending invitations and listing members using typed endpoints.
|
- Invitation Accept flow implemented; Household Settings supports sending invitations and listing members using typed endpoints.
|
||||||
|
- MyShopping: page remains as in master with editable panel backed by legacy v1 stubs (`getMyShoppingList/saveMyShoppingList`) pending backend ad-hoc item endpoints.
|
||||||
|
|
||||||
Status of tests and typing
|
Status of tests and typing
|
||||||
- All tests pass: 27 files, 48 tests.
|
- All tests pass: 27 files, 48 tests.
|
||||||
|
|
@ -223,6 +224,7 @@ Tests
|
||||||
- MSW handlers updated for path-scoped endpoints; Authorization header assertions retained where relevant.
|
- MSW handlers updated for path-scoped endpoints; Authorization header assertions retained where relevant.
|
||||||
- Router tests run under memory history.
|
- Router tests run under memory history.
|
||||||
- Replaced header injection test with path-scoped recipe list test.
|
- Replaced header injection test with path-scoped recipe list test.
|
||||||
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -278,5 +280,6 @@ Google OAuth is planned next.
|
||||||
- Users can edit and delete such items.
|
- Users can edit and delete such items.
|
||||||
- All calls use typed path-scoped endpoints; no header injection; Authorization still via provider.
|
- All calls use typed path-scoped endpoints; no header injection; Authorization still via provider.
|
||||||
- Note: No temporary measures required; proceed directly once backend ships endpoints.
|
- Note: No temporary measures required; proceed directly once backend ships endpoints.
|
||||||
|
- Current status: Legacy stubs removed from composable; `MyShoppingPage.vue` simplified around `requestIngredient`; shape test added and passing. Full ad-hoc CRUD UI awaits backend endpoints.
|
||||||
- Remove the legacy username login shim (`login(username: string)`) and any fallback UI; standardize on email/password (and Google) only.
|
- Remove the legacy username login shim (`login(username: string)`) and any fallback UI; standardize on email/password (and Google) only.
|
||||||
- Rollout flag: default `VUE_APP_MULTITENANT_ENABLED` to true across environments and plan removal of legacy flat routes and related tests once stable.
|
- Rollout flag: default `VUE_APP_MULTITENANT_ENABLED` to true across environments and plan removal of legacy flat routes and related tests once stable.
|
||||||
|
|
|
||||||
|
|
@ -309,10 +309,10 @@ export async function deleteMeal(mealId: number | string): Promise<void> {
|
||||||
|
|
||||||
// Shopping
|
// Shopping
|
||||||
// getMyShoppingList/saveMyShoppingList endpoints removed in v2; keep temporary stubs for legacy UI
|
// getMyShoppingList/saveMyShoppingList endpoints removed in v2; keep temporary stubs for legacy UI
|
||||||
export async function getMyShoppingList(): Promise<components['schemas']['Ingredient'][]> {
|
export async function getMyShoppingList(): Promise<import('@/domain/types').Ingredient[]> {
|
||||||
return []
|
return []
|
||||||
}
|
}
|
||||||
export async function saveMyShoppingList(ingredients: components['schemas']['Ingredient'][]): Promise<components['schemas']['Ingredient'][]> {
|
export async function saveMyShoppingList(ingredients: import('@/domain/types').Ingredient[]): Promise<import('@/domain/types').Ingredient[]> {
|
||||||
return ingredients
|
return ingredients
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue