* New translations en-US.json (Dutch)
* New translations en-US.json (Dutch)
* New translations en-US.json (Dutch)
* New translations en-US.json (Dutch)
* New translations en-US.json (Dutch)
* New translations en-US.json (Dutch)
* fix typing on auth context
* extract user password strength meter
* fix broken useToggle method
* extend form to accept arguments for validators
* enforce password length on update
* fix user password change form
* add data-types required for login security
* implement user lockout checking at login
* cleanup legacy patterns
* expose passwords in test_user
* test user lockout after bad attempts
* test user service
* bump alembic version
* save increment to database
* add locked_at to datetime transformer on import
* do proper test cleanup
* implement scheduled task
* spelling
* document env variables
* implement context manager for session
* use context manager
* implement reset script
* cleanup generator
* run generator
* implement API endpoint for resetting locked users
* add button to reset all locked users
* add info when account is locked
* use ignore instead of expect-error
* Moves dependencies directly to controllers
* Reduces use of @cached_property - (I have a suspicion that this is a factor in memory usage)
* reduce duplicate ways to access the same property on a controller.
* fixed incorrect response model
* added category and tag filters
* moved categories and tags params to route and
changed to query array param
* type fixes
* added category and tag tests
* New translations en-US.json (Swedish)
* New translations en-US.json (Swedish)
* 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 (Dutch)
* New translations en-US.json (Dutch)
* created query filter classes
* extended pagination to include query filtering
* added filtering tests
* type improvements
* move type help to dev depedency
* minor type and perf fixes
* breakup test cases
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
* New translations en-US.json (French)
* New translations en-US.json (French)
* New translations en-US.json (French)
* New translations en-US.json (French)
* New translations en-US.json (Danish)
* New translations en-US.json (Italian)
* New translations en-US.json (Italian)
* New translations en-US.json (Italian)
* New translations en-US.json (Greek)
* New translations en-US.json (Greek)
* New translations en-US.json (Dutch)
* New translations en-US.json (Czech)
* New translations en-US.json (Czech)
* New translations en-US.json (Czech)
rewrite get_all routes to use a pagination pattern to allow for better implementations of search, filter, and sorting on the frontend or by any client without fetching all the data. Additionally we added a CI check for running the Nuxt built to confirm that no TS errors were present. Finally, I had to remove the header support for the Shopping lists as the browser caching based off last_updated header was not allowing it to read recent updates due to how we're handling the updated_at property in the database with nested fields. This will have to be looked at in the future to reimplement. I'm unsure how many other routes have a similar issue.
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
* fixed type error
* exposed created/updated timestamps to shopping list schema
* added custom route to mix in "last-modified" header when available in CRUD routes
* mixed in MealieCrudRoute to APIRouters
* added HEAD route for shopping lists/list-items
* replaced default serializer with FastAPI's
* added staticmethod decorators to avoid mypy error
* exposed created and updated timestamps to schema
* changed default sort from date_added to created_at
* explicitely sort recent recipes by created_at
* removed static method and replaced w/ type: ignore
* New translations en-US.json (Polish)
* New translations en-US.json (Polish)
* New translations en-US.json (Polish)
* New translations en-US.json (Polish)
* fix type errors on event bus
* webhooks fields required for new implementation
* db migration
* wip: webhook query + tests and stub function
* ignore type checker error
* type and method cleanup
* datetime and time utc validator
* update testing code for utc scheduled time
* fix file cmp function call
* update version_number
* add support for translating "time" objects when restoring backup
* bump recipe-scrapers
* use specific import syntax
* generate frontend types
* utilize names exports
* use utc times
* add task to scheduler
* implement new scheduler functionality
* stub for type annotation
* implement meal-plan data getter
* add experimental banner
* Fixed incorrect generic deleted notification text
* Added custom "event_source" header for json notifs
* Added internal reference data to event notifs
* Added event listeners to shopping list items
* Fixed type issues
* moved JSON event source k:v pairs to message body
* added hook for all supported custom endpoints
fixed bug that excluded non-custom notification types
* created event_source class to replace loosely-typed dict
* fixed silent error when dispatching a null task
* moved url updates to static function
* added unit tests for event_source url manipulation
* removed array from event bus (it's unsupported)
* Added API params to order by different properties
* fix for incorrect var name
* removed invalid default order_by
* implemented fallback for invalid user input
* increased float rounding precision for crf parser
* limited fractions to a max denominator of 32 to prevent weirdly specific values
* add test cases for 1/8 and 1/32
* add rounding to avoid more digits than necessary
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
* Delay server response whenever username is non existing
* utilize hasher to achieve constant timing
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
* add 'use-abbreviation' db column
* type generation
* add view and edit elements
* check for use_abbreviation to display
* fix: alembic version check
* test: add use_abbreviation prop tests
* New translations en-US.json (French)
* New translations en-US.json (German)
* New translations en-US.json (German)
* New translations en-US.json (German)