- Move items between fridge↔freezer (freezer→fridge sets +7d or shelf life expiry, fridge→freezer clears expiry)
- Inline expiry date editor on fridge items (📅 button)
- Smart shopping list now shows recipe gaps (missing required slot ingredients)
- Summary card shows breakdown: X staple restocks, Y expiring, Z recipe gaps
24 lines
1.2 KiB
Python
24 lines
1.2 KiB
Python
from django.urls import path
|
|
from . import views_htmx
|
|
|
|
urlpatterns = [
|
|
# Full pages
|
|
path("", views_htmx.pantry_page, name="app-pantry"),
|
|
path("recipes/", views_htmx.recipes_page, name="app-recipes"),
|
|
path("shopping/", views_htmx.shopping_page, name="app-shopping"),
|
|
path("log/", views_htmx.log_page, name="app-log"),
|
|
|
|
# HTMX partials — pantry
|
|
path("pantry/add/", views_htmx.pantry_add, name="app-pantry-add"),
|
|
path("pantry/<int:item_id>/delete/", views_htmx.pantry_delete, name="app-pantry-delete"),
|
|
path("pantry/<int:item_id>/move/", views_htmx.pantry_move, name="app-pantry-move"),
|
|
path("pantry/<int:item_id>/edit-expiry/", views_htmx.pantry_edit_expiry, name="app-pantry-edit-expiry"),
|
|
path("pantry/<int:item_id>/save-expiry/", views_htmx.pantry_save_expiry, name="app-pantry-save-expiry"),
|
|
path("pantry/cancel-edit/", views_htmx.pantry_cancel_edit, name="app-pantry-cancel-edit"),
|
|
|
|
# HTMX partials — shopping
|
|
path("shopping/generate/", views_htmx.shopping_generate, name="app-shopping-generate"),
|
|
path("shopping/<int:item_id>/toggle/", views_htmx.shopping_toggle, name="app-shopping-toggle"),
|
|
path("shopping/clear/", views_htmx.shopping_clear, name="app-shopping-clear"),
|
|
]
|