* extended query filter to accept nested tables
* decoupled timeline api from recipe slug
* modified frontend to use simplified events api
* fixed nested loop index ghosting
* updated existing tests
* gave mypy a snack
* added tests for nested queries
* fixed "last made" render error
* decoupled recipe timeline from dialog
* removed unused props
* tweaked recipe get_all to accept ids
* created group global timeline
added new timeline page to sidebar
reformatted the recipe timeline
added vertical option to recipe card mobile
* extracted timeline item into its own component
* fixed apploader centering
* added paginated scrolling to recipe timeline
* added sort direction config
fixed infinite scroll on dialog
fixed hasMore var not resetting during instantiation
* added sort direction to user preferences
* updated API docs with new query filter feature
* better error tracing
* fix for recipe not found response
* simplified recipe crud route for slug/id
added test for fetching by slug/id
* made query filter UUID validation clearer
* moved timeline menu option below shopping lists
---------
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
* New translations en-US.json (French)
* New translations en-US.json (Slovak)
* New translations en-US.json (Swedish)
* New translations en-US.json (Norwegian)
* New translations en-US.json (Norwegian)
* New translations en-US.json (German)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Ukrainian)
* New translations en-US.json (Ukrainian)
* New translations en-US.json (Ukrainian)
* New translations en-US.json (Ukrainian)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Catalan)
* New translations en-US.json (Catalan)
* New translations en-US.json (Spanish)
* New translations en-US.json (Catalan)
* New translations en-US.json (Spanish)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Romanian)
* New translations en-US.json (Romanian)
* New translations en-US.json (Romanian)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Polish)
* New translations en-US.json (Polish)
* New translations en-US.json (Polish)
* New translations en-US.json (Ukrainian)
* New translations en-US.json (Ukrainian)
* New translations en-US.json (Ukrainian)
* New translations en-US.json (Ukrainian)
* New translations en-US.json (German)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (German)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (German)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* New translations en-US.json (Hebrew)
* implemented copymethat migration
* added migration tree
* added translation support
* genericized example jpgs
* added test data
* fixed test archive
* switched recipe create to service
added test for timeline event creation
* linting
* lxml go brrr
* New translations en-US.json (Danish)
* New translations en-US.json (German)
* New translations en-US.json (German)
* New translations en-US.json (Dutch)
* New translations en-US.json (Polish)
* New translations en-US.json (Turkish)
* New translations en-US.json (Dutch)
* New translations en-US.json (Polish)
* New translations en-US.json (Turkish)
* added color back to labels
* improved mobile view
refactored layout to use grid
allowed text wrapping on item labels
removed label overflow
added completion date on checked items
* sort checked items by last updated
* made checking an item off more responsive
* optimized moving checked items
removed unnecessary updateAll call
removed jitter when shopping list refreshes
* adds authentication method for users
* fix db migration with postgres
* tests for auth method
* update migration ids
* hide auth method on user creation form
* (docs): Added documentation for the new authentication method
* update migration
* add to auto-form instead of having hidden fields
* added backend for shopping list label config
* updated codegen
* refactored shopping list ops to service
removed unique contraint
removed label settings from main route/schema
added new route for label settings
* codegen
* made sure label settings output in position order
* implemented submenu for label order drag and drop
* removed redundant label and tweaked formatting
* added view by label to user preferences
* made items draggable within each label section
* moved reorder labels to its own button
* made dialog scrollable
* fixed broken model
* refactored labels to use a service
moved shopping list label logic to service
modified label seeder to use service
* added tests
* fix for first label missing the tag icon
* fixed wrong mapped type
* added statement to create existing relationships
* fix restore test, maybe
* New translations en-US.json (Ukrainian)
* New translations en-US.json (Ukrainian)
* New translations en-US.json (German)
* New translations en-US.json (Dutch)
* New translations en-US.json (Dutch)
* New translations en-US.json (Finnish)
* New translations en-US.json (Hungarian)
* New translations en-US.json (German)
* New translations en-US.json (Hungarian)
* New translations en-US.json (Dutch)
* feat: server side search API (#2112)
* refactor repository_recipes filter building
* add food filter to recipe repository page_all
* fix query type annotations
* working search
* add tests and make sure title matches are ordered correctly
* remove instruction matching again
* fix formatting and small issues
* fix another linting error
* make search test no rely on actual words
* fix failing postgres compiled query
* revise incorrectly ordered migration
* automatically extract latest migration version
* test migration orderes
* run type generators
* new search function
* wip: new search page
* sortable field options
* fix virtual scroll issue
* fix search casing bug
* finalize search filters/sorts
* remove old composable
* fix type errors
---------
Co-authored-by: Sören <fleshgolem@gmx.net>
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (German)
* New translations en-US.json (German)
* New translations en-US.json (Danish)
* New translations en-US.json (German)
* New translations en-US.json (Dutch)
* feat(lang): localize some views
* feat(lang): an attempt at localizing vuetify (WIP)
* feat(lang): localized some more screens
* feat(lang): localized some more screens again
* feat(lang): hack to localize vuetify
* feat(lang): localize data management pages
* fix linting errors
---------
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
* New translations en-US.json (Spanish)
* New translations en-US.json (Spanish)
* New translations en-US.json (Czech)
* New translations en-US.json (Czech)
* New translations en-US.json (Czech)
* New translations en-US.json (Czech)
* New translations en-US.json (Czech)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (Slovak)
* New translations en-US.json (French)
* New translations en-US.json (French)
* New translations en-US.json (Finnish)
* New translations en-US.json (French)
* New translations en-US.json (French)
* New translations en-US.json (Portuguese)
* New translations en-US.json (French)
* New translations en-US.json (French)
* New translations en-US.json (Finnish)
* New translations en-US.json (Finnish)
* New translations en-US.json (Lithuanian)
* New translations en-US.json (Lithuanian)
* New translations en-US.json (Lithuanian)
* New translations en-US.json (Finnish)
* New translations en-US.json (Bulgarian)
* New translations en-US.json (Finnish)
* New translations en-US.json (Czech)
* New translations en-US.json (Czech)
* New translations en-US.json (Czech)
* New translations en-US.json (Czech)
* New translations en-US.json (Czech)
* New translations en-US.json (Italian)
* New translations en-US.json (Italian)
* New translations en-US.json (Finnish)
* New translations en-US.json (Finnish)
* New translations en-US.json (Italian)
* New translations en-US.json (Italian)
* New translations en-US.json (Finnish)
* New translations en-US.json (Italian)
* New translations en-US.json (Lithuanian)
* New translations en-US.json (Hungarian)
* New translations en-US.json (Hungarian)
* New translations en-US.json (Hungarian)
* New translations en-US.json (Hungarian)
* New translations en-US.json (Dutch)
* New translations en-US.json (Dutch)
* New translations en-US.json (Dutch)
* New translations en-US.json (Bulgarian)
* New translations en-US.json (Bulgarian)
* New translations en-US.json (Bulgarian)
* New translations en-US.json (Bulgarian)
* New translations en-US.json (Polish)
* New translations en-US.json (Bulgarian)
* New translations en-US.json (German)
* New translations en-US.json (Bulgarian)
* New translations en-US.json (Bulgarian)
* New translations en-US.json (Bulgarian)
* New translations en-US.json (Danish)
* New translations en-US.json (Danish)
* New translations en-US.json (Dutch)
* New translations en-US.json (Turkish)
* New translations en-US.json (German)
* New translations en-US.json (Italian)
* New translations en-US.json (German)
* New translations en-US.json (Ukrainian)
* New translations en-US.json (Polish)
* New translations en-US.json (Polish)
* New translations en-US.json (Polish)
* New translations en-US.json (Dutch)
* New translations en-US.json (Dutch)
* New translations en-US.json (French)
* New translations en-US.json (Turkish)