1367 Commits

Author SHA1 Message Date
Michael Genson
b86c4e5865
feat: Removed Cross-Version Disclaimer from Backup Page (#2597)
* removed cross-version disclaimer from backup text

* grammar tweak
2023-10-07 11:23:26 -08:00
Michael Genson
a98e863bca
fix: database unique constraints (#2594)
* fixed missing migration name

* added unique constraints to all m2m tables

* fixed bug trying to create duplicate tags

* added more unique constraints

* fixed duplicate seeder data

* updated tests

* fixed seed rollback error
2023-10-07 11:23:13 -08:00
Michael Genson
247a4de283
docs: fix old mealplanner route ref (#2590) 2023-10-07 11:21:46 -08:00
Michael Genson
26ef351ae7
fix: Recipe Zip Export Can't Be Imported (#2585)
* clean recipe data when importing via zip

* added tests

* simplified recursive logic
2023-10-07 11:18:55 -08:00
Johan Lindell
84b477edf6
fix: removed unused node in docker image (#2572) 2023-10-07 11:17:26 -08:00
Simon Becker
a331042e6d
build: optimize apt-get cleanup during image build (#2558) 2023-09-29 16:04:58 -08:00
Johan Lindell
40ab328bb9
fix: Make sure recipe state is updated correctly (#2566) 2023-09-29 15:59:27 -08:00
Michael Genson
b32e2f1bf7
fix: Recipe Card Section Infinite Loop (#2584)
* refactored recipe card section fetch

* minor optimization

* lint
2023-09-29 15:59:07 -08:00
Michael Genson
1074cad5dc
feat: disable admin option when using LDAP auth (#2583)
* fix typo

* add override readonly/disable support for autoform

* made admin permission conditionally disabled
2023-09-29 15:58:34 -08:00
Matthew Hill
4bd7bda60d
fix: Fix bugs with account locking (#2580)
* fix(security): reset login attempts after successful login

Enforce a maximum number of consecutive failed logins. Successfully logging in should reset the
count.

#2569

* fix(security): fix when user is unlocked

The user should be unlocked when locked_at is set, but the lock has expired.

#2569
2023-09-29 15:58:00 -08:00
Michael Genson
484c60c7ea
docs: spelling, content updates for clarity (#2581) 2023-09-28 15:17:10 -08:00
Michael Genson
ef805c4b57
fix: replace default enter key behavior (#2582) 2023-09-28 15:16:22 -08:00
Hayden
222d583d6f
docs: add note on migration(#2576) 2023-09-26 07:14:48 -08:00
Jacob Corn
b7a6bff5aa
docs: add tag to postgres image (#2575) 2023-09-26 06:35:23 -08:00
Flightkick
bb9afd86c1
fix: Use reserved example.com as bogus instead of email.com domain. (#2551)
`email.com` is not a reserved domain, incorrect configuration could result in unintentional effects.
`example.com` is reserved by IANA for bogus purposes, see RFC 6761.
2023-09-23 07:56:34 -08:00
Michael Genson
a22d500603
fix: CSS rendering bug, again (#2555)
* idk man

* that wasn't supposed to be there
2023-09-19 09:07:08 -08:00
Michael Genson
3e5596f898
fix: Home Doesn't Load For Non-Admin Users (#2556)
* added non-admin route for fetching current group

* simplified frontend group slug fetching

* exposed public link even if user can't invite

* 🧹
2023-09-19 09:06:39 -08:00
Max Bachmann
15c6df88ab
perf: use score_cutoff for fuzzy string matching (#2553) 2023-09-16 15:24:45 -05:00
Grygon
9a04b11ee5
fix: #2534 - Add clearable ratings (#2541)
* Add clearable to RecipeRating, Fix #2534

* Make rating nullable

---------

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-09-15 19:10:44 +00:00
Michael Genson
2dfbe9f08d
feat: Improved Ingredient Matching (#2535)
* added normalization to foods and units

* changed search to reference new normalized fields

* fix tests

* added parsed food matching to backend

* prevent pagination from ordering when searching

* added extra fuzzy matching to sqlite ing matching

* added tests

* only apply search ordering when order_by is null

* enabled post-search fuzzy matching for postgres

* fixed postgres fuzzy search test

* idk why this is failing

* 🤦

* simplified frontend ing matching
and restored automatic unit creation

* tightened food fuzzy threshold

* change to rapidfuzz

* sped up fuzzy matching with process

* fixed units not matching by abbreviation

* fast return for exact matches

* replace db searching with pure fuzz

* added fuzzy normalization

* tightened unit fuzzy matching thresh

* cleaned up comments/var names

* ran matching logic through the dryer

* oops

* simplified order by application logic
2023-09-15 17:19:34 +00:00
Hayden
084ad4228b
remove permissions from nested workflow 2023-09-14 09:42:46 -05:00
Hayden
86b0b6761d
add permissions to build-release 2023-09-14 09:42:32 -05:00
Hayden
2ad6af2cce
feat: consolidate deployment targets and publish to ghcr.io (#2539)
* WIP: proof of concept

* basic meta tag injection

* add support for scraping public/private links

* make tests go brrrrr

* cleanup initialization

* rewrite build config

* remove recipe meta on frontend

* make type checker happy

* remove other deployment methods

* fix issue with JSON response on un-authenticated request

* docs updates

* update tivy scanner

* fix linter stuff

* change registry tag

* build fixes

* fix same mistake I always make
2023-09-14 06:40:13 -08:00
Michael Genson
aec4cb4f31
feat: Advanced Query Filter Record Ordering (#2530)
* added support for multiple order_by strs

* refactored qf to expose nested attr logic

* added nested attr support to order_by

* added tests

* changed unique user to be function-level

* updated docs

* added support for null handling

* updated docs

* undid fixture changes

* fix leaky tests

* added advanced shopping list item test

---------

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-09-14 14:09:05 +00:00
Michael Genson
2c5e5a8421
feat: Public Recipe Browser (#2525)
* fixed incorrect var ref

* added public recipe pagination route

* refactored frontend public/explore API

* fixed broken public cards

* hid context menu from cards when public

* fixed public app header

* fixed random recipe

* added public food, category, tag, and tool routes

* not sure why I thought that would work

* added public organizer/foods stores

* disabled clicking on tags/categories

* added public link to profile page

* linting

* force a 404 if the group slug is missing or invalid

* oops

* refactored to fit sidebar into explore

* fixed invalid logic for app header

* removed most sidebar options from public

* added backend routes for public cookbooks

* added explore cookbook pages/apis

* codegen

* added backend tests

* lint

* fixes v-for keys

* I do not understand but sure why not

---------

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-09-14 06:01:24 -08:00
Hayden
e28b830cd4
hotfix: format 2023-09-06 23:20:59 -05:00
Matthew Macdonald-Wallace
71f1607b58
chore: switch to workflow actions and upload to GHCR (#2355)
* Switch to workflow actions and upload to GHCR

* cleanup yml file

---------

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-09-06 19:20:42 -08:00
Michael Genson
0a00a6ea0d
fix: removed HTML tags when copying recipe ingredients (#2533) 2023-08-31 09:08:44 -08:00
Hugo van Rijswijk
408ca88cb2
fix: ingredient item should be single-line (#2521)
This is an issue on non-chromium browsers. I guess Chromium has some sort of support for nested CSS, whereas other browsers don't.
2023-08-25 08:32:26 -08:00
Michael Genson
30717e50d3
made parsed ingredient reactive (#2520) 2023-08-25 08:32:06 -08:00
Michael Genson
693608d59f
feat: cook timer (#2508)
* updated base button group

* added kitchen timer

* added missing icon

* usability tweaks

* for for menu rendering over app bar

* clean up types

* fix for mp3 loading, maybe?

* spooky linter fixes

* for real this time

---------

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-08-23 09:31:23 -08:00
Michael Genson
5c5432304f
fix: recipe timeline UI glitches (#2519)
* fix invalid undefined prop

* fixed weird rendering

* made items pop more against background

* fixed invalid v-if

* fixed indentation
2023-08-23 09:30:59 -08:00
Michael Genson
5213a61d9b
fix: logic for disableAmount in shopping list items (#2518) 2023-08-22 14:03:24 -08:00
Michael Genson
ae502c5652
added missing recipe list import (#2516) 2023-08-21 17:30:31 -08:00
Michael Genson
c9cc7a93c8
fix: Tools Shouldn't Be Unique Across Groups (#2505)
* fixed type/abc errors in tests

* fixed false positive multitentant tests

* fix tools not allowing unique slugs across groups

* fixed alembic refs

---------

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-08-21 20:39:23 +00:00
Arsène Reymond
99e7717fec
UI/UX improvements (#2423)
* disable autofocus and hide keyboard on enter

* improve a11y

* fix non-translated string

* improve recipeTimeline UI

* format

* fixes
2023-08-21 18:41:18 +00:00
Michael Genson
1e693fdca6
fix: refresh tag store when new tags are imported (#2504) 2023-08-21 09:18:55 -08:00
Michael Genson
d6e4829e6f
feat: Display Shopping List Item Recipe Refs (#2501)
* added recipe ref display to shopping list items

* added backend support for recipe notes

* added recipe note to item recipe ref display

* fixed note merge bug with 3+ notes

* tweak display

* lint

* updated alembic refs

---------

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-08-21 09:18:37 -08:00
Hugo van Rijswijk
50a92c165c
feat: improve readability of ingredients list (#2502)
* feat: improve readability of notes in ingredients list

Makes the notes in the ingredients list more readable by making them slightly opaque. This creates a better visual separation between the notes and the rest of the ingredient.

* Use server display if available

* Move note to newline and make quantity more distinct

* Use safeMarkdown for shopping list

* Use component

* Wrap unit in accent color

* Update RecipeIngredientListItem to set food in bold
2023-08-21 15:32:09 +00:00
Michael Genson
2151451634
feat: Timeline Image Uploader Improvements (#2494)
* improved UI responsiveness and added image preview

* added global image cropper component

* added image cropper to last made dialog

* style tweaks

* added more specific text for creating event

* mopped up some slop

* renamed height and width vars

---------

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-08-21 15:00:37 +00:00
Michael Genson
e24e28ae03
feat: Improved recipeYield Parsing For Fractions and Decimals (#2507)
* improved recipeYield parsing for fracs/decimals

* added fix for edgecase with weird fractions

* made typescript happy

* lint

* extracted yield calculation into composable

* fixed some gross edgecases

* added tests

* made bare return clearer

---------

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-08-21 06:54:02 -08:00
Hayden
c60c63852b
chore: bump deps (#2513)
* bump dependencies

* run code-generator

* add direct dependency to text-unidecode

* fix dev dependencies group
2023-08-20 16:09:13 -08:00
Michael Genson
095edef95e
feat: Improve Public URL Readability (#2482)
* added support for group slugs

* modified frontend to use links with group slug

* fixed test refs

* unused import

---------

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-08-20 10:38:46 -08:00
Michael Genson
99372aa2b6
feat: Generalize Search to Other Models (#2472)
* generalized search logic to SearchFilter

* added default search behavior for all models

* fix for schema overrides

* added search support to several models

* fix for label search

* tests and fixes

* add config for normalizing characters

* dramatically simplified search tests

* bark bark

* fix normalization bug

* tweaked tests

* maybe this time?

---------

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-08-20 10:30:21 -08:00
renovate[bot]
76ae0bafc7
fix(deps): update dependency pydantic to v1.10.12 (#2467)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-08-20 10:28:05 -08:00
renovate[bot]
1aa7344688
fix(deps): update dependency lxml to v4.9.3 (#2465)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-08-20 10:27:53 -08:00
renovate[bot]
da17f2a410
chore(deps): update dependency pytest-asyncio to v0.21.1 (#2462)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-08-20 10:27:16 -08:00
renovate[bot]
4169c3e743
chore(deps): update dependency pylint to v2.17.5 (#2421)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-08-20 10:27:04 -08:00
renovate[bot]
3ccae9e366
chore(deps): update actions/setup-node action to v3.7.0 (#2468)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-08-20 10:18:12 -08:00
renovate[bot]
26ab73a827
chore(deps): update dependency mkdocs-material to v9.1.21 (#2461)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-08-20 10:17:00 -08:00