1880 Commits

Author SHA1 Message Date
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
Michael Genson
d8a6f900b4
docs: add windows instructions for the dev container (#2493) 2023-08-15 18:44:17 -08:00
Weetbix
f6e7eba6fc
docs: fix typo in FAQ (#2495) 2023-08-15 18:43:43 -08:00
Michael Genson
e55258c5be
fx: Nextcloud migration fails to parse null times (#2485)
* support null or custom strings

* made time parsing more robust using isodate

* bark bark
2023-08-09 18:52:49 -08:00
Michael Genson
dd947c316a
fix: Tandoor doesn't import all images (#2487)
* use glob to find files for import

* bark bark

* add catch for invalid image files
2023-08-09 18:52:32 -08:00
Michael Genson
04c7e068d8
typo: have have (#2490) 2023-08-09 18:52:00 -08:00
Michael Genson
bdf6b1054e
Chore: Rename Omni Build Action (#2483)
* fix omni action name

* added omni to Discord notification text
2023-08-06 19:58:38 -08:00
Michael Genson
dfe4942451
feat: Recipe Timeline Images (#2444)
* refactored recipe image paths/service

* added routes for updating/fetching timeline images

* make generate

* added event image upload and rendering

* switched update to patch to preserve timestamp

* added tests

* tweaked order of requests

* always reload events when opening the timeline

* re-arranged elements to make them look nicer

* delete files when timeline event is deleted
2023-08-06 09:49:30 -08:00
Hayden
06962cf865
New Crowdin updates (#2476)
* New translations en-US.json (Croatian)

* New translations en-US.json (Swedish)
2023-08-06 09:47:19 -08:00
Hayden
3fb60339a6
remove duplicate issues 2023-08-06 12:39:45 -05:00
Hayden
89a6b32a3f
fix syntax errors 2023-08-06 12:39:02 -05:00
Hayden
6901747a26
chore: rework issue templates (#2481)
* rewrok issue templates

* fix feature request links

* feature-template
2023-08-06 09:35:38 -08:00
Michael Genson
e71155a55d
fix: removed variable rendering on organizers page (#2477) 2023-07-31 08:22:54 -08:00
Hayden
b1eb156145
New Crowdin updates (#2463)
* New translations en-US.json (Spanish)

* New translations en-US.json (Hebrew)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Korean)

* New translations en-US.json (Portuguese)

* New translations en-US.json (Polish)

* New translations en-US.json (Romanian)

* New translations en-US.json (French)

* New translations en-US.json (Afrikaans)

* New translations en-US.json (Arabic)

* New translations en-US.json (Bulgarian)

* New translations en-US.json (Catalan)

* New translations en-US.json (Czech)

* New translations en-US.json (Danish)

* New translations en-US.json (German)

* New translations en-US.json (Greek)

* New translations en-US.json (Finnish)

* New translations en-US.json (Hungarian)

* New translations en-US.json (Italian)

* New translations en-US.json (Japanese)

* New translations en-US.json (Lithuanian)

* New translations en-US.json (Dutch)

* New translations en-US.json (Norwegian)

* New translations en-US.json (Russian)

* New translations en-US.json (Slovak)

* New translations en-US.json (Slovenian)

* New translations en-US.json (Serbian (Cyrillic))

* New translations en-US.json (Swedish)

* New translations en-US.json (Turkish)

* New translations en-US.json (Ukrainian)

* New translations en-US.json (Chinese Simplified)

* New translations en-US.json (Chinese Traditional)

* New translations en-US.json (Vietnamese)

* New translations en-US.json (Galician)

* New translations en-US.json (Croatian)

* New translations en-US.json (Latvian)

* New translations en-US.json (English, United Kingdom)

* New translations en-US.json (French, Canada)

* New translations en-US.json (Ukrainian)

* New translations en-US.json (Dutch)

* New translations en-US.json (German)

* New translations en-US.json (Turkish)

* New translations en-US.json (French)

* New translations en-US.json (Swedish)

* New translations en-US.json (Swedish)

* New translations en-US.json (Catalan)

* New translations en-US.json (Serbian (Cyrillic))

* New translations en-US.json (Swedish)
2023-07-29 13:40:09 -08:00
Michael Genson
e434029bac
feat: prevent all changes to the default user in demo (#2470) 2023-07-29 13:39:49 -08:00
TomArm
a75116bc62
docs: updated home assistant docs (#2459)
Co-authored-by: tomarm <a@a.com>
2023-07-23 09:54:49 -08:00
Michael Genson
c86406e027
fix: Omni Container /docs Proxy and PyYaml dependency (#2457)
* upgrade pyyaml to ^6.0.1

* add proxy routes for docs
2023-07-23 09:53:45 -08:00
Michael Genson
0f896107f9
feat: Migrate from Tandoor (#2438)
* added tandoor migration to backend

* added tandoor migration to frontend

* updated tests

* ignore 0 amounts

* refactored ingredient display calculation

* fix parsing tandoor recipes with optional data

* generated frontend types

* fixed inconsistent default handling and from_orm

* removed unused imports
2023-07-23 09:52:09 -08:00
Michael Genson
c25b58e404
fix: Missing Paprika and Nextcloud Migration Data (#2434)
* fixed paprika url key

* fixed paprika total and prep time aliases

* added nextcloud time parsing

* mapped paprika categories to tags

* cleaned up netcloud parsetime
2023-07-23 09:50:47 -08:00
Carter
c783d86a2a
feat: LDAP attribute validation (#2400)
* validate user attributes on user creation

add logs for invalid or missing attributes

* only update admin flag when admin status changes

* move ldap functions into separate file

* fix linter issues

* actually use the search_user function

* fix types
2023-07-23 09:49:24 -08:00
Hayden
e64265615e
New Crowdin updates (#2410)
* New translations en-US.json (Greek)

* New translations en-US.json (Greek)

* New translations en-US.json (Greek)

* New translations en-US.json (Slovak)

* New translations en-US.json (Dutch)

* New translations en-US.json (Dutch)

* New translations en-US.json (Italian)

* New translations en-US.json (Italian)

* New translations en-US.json (Japanese)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Romanian)

* New translations en-US.json (Romanian)

* New translations en-US.json (Galician)

* New translations en-US.json (Galician)

* New translations en-US.json (Galician)

* New translations en-US.json (Galician)

* New translations en-US.json (Galician)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Latvian)

* New translations en-US.json (Latvian)

* New translations en-US.json (Latvian)

* New translations en-US.json (Latvian)

* New translations en-US.json (Latvian)

* New translations en-US.json (Japanese)

* New translations en-US.json (Japanese)

* New translations en-US.json (Japanese)

* New translations en-US.json (Japanese)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Croatian)

* New translations en-US.json (Hungarian)

* New translations en-US.json (Hungarian)

* New translations en-US.json (Hungarian)

* New translations en-US.json (Chinese Simplified)

* New translations en-US.json (Chinese Simplified)

* New translations en-US.json (Spanish)

* New translations en-US.json (Chinese Simplified)

* New translations en-US.json (Chinese Simplified)

* New translations en-US.json (French, Canada)

* New translations en-US.json (French, Canada)

* New translations en-US.json (Italian)

* New translations en-US.json (Italian)

* New translations en-US.json (Italian)

* New translations en-US.json (Turkish)

* New translations en-US.json (Turkish)

* New translations en-US.json (Turkish)

* New translations en-US.json (Turkish)

* New translations en-US.json (Turkish)

* New translations en-US.json (Spanish)

* New translations en-US.json (Hebrew)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Portuguese, Brazilian)

* New translations en-US.json (Korean)

* New translations en-US.json (Korean)

* New translations en-US.json (Portuguese)

* New translations en-US.json (Portuguese)

* New translations en-US.json (Polish)

* New translations en-US.json (Polish)

* New translations en-US.json (Polish)

* New translations en-US.json (Polish)
2023-07-23 09:48:35 -08:00
renovate[bot]
9f1f87bcd0
chore(deps): update dependency rich to v13.4.2 (#2382)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-23 09:47:47 -08:00
renovate[bot]
a7d8fc8d25
chore(deps): update dependency coverage to v7.2.7 (#2341)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-23 09:47:26 -08:00
renovate[bot]
8584ca666f
fix(deps): update dependency pillow to v9.5.0 (#2339)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-23 09:47:12 -08:00
renovate[bot]
50a06f3553
fix(deps): update dependency core-js to v3.31.1 (#2338)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-23 09:46:54 -08:00
renovate[bot]
9f9bdec886
fix(deps): update dependency beautifulsoup4 to v4.12.2 (#2337)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-23 09:46:38 -08:00
renovate[bot]
e3652a0876
fix(deps): update dependency sqlalchemy to v2.0.19 (#2336)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-23 09:46:23 -08:00
Carter
4af9eec89d
fix omni docker image (#2432) 2023-06-27 22:00:19 -08:00
Carter
d1b06e7339
fix: Change libldap-2.4-2 to libldap-common in docker (#2429) 2023-06-27 17:25:41 -08:00
Jacob Corn
9557b3f0b6
fix: log accurate IP (#2416)
* update dev docker poetry install

* Forward/Report IP through front and backend.

* Add fail2ban docs

* fix option name and iproute2 in omni entry

* Fix entry scripts -> gunicorn setting respected

* gunicorn off

* xfwd in nuxt proxy and handle multiple IPs
2023-06-25 10:22:21 -08:00
Carter
5e904d19b4
docs: re-add and fix the bookmarklet instructions to docs (#2419) 2023-06-20 22:09:20 -08:00
Carter
eea38a5b1e
fix: url format in the recipe chip (#2420) 2023-06-20 22:08:47 -08:00
Hayden
674774d073
New Crowdin updates (#2387)
* New translations en-US.json (Norwegian)

* New translations en-US.json (Portuguese)

* New translations en-US.json (Portuguese)

* New translations en-US.json (Portuguese)

* New translations en-US.json (Polish)

* New translations en-US.json (Portuguese)

* New translations en-US.json (Polish)

* New translations en-US.json (Polish)

* New translations en-US.json (Portuguese)

* New translations en-US.json (Portuguese)

* New translations en-US.json (Portuguese)

* New translations en-US.json (Portuguese)

* New translations en-US.json (Portuguese)

* New translations en-US.json (Portuguese)

* New translations en-US.json (French)
2023-05-29 16:56:38 -08:00
Jacob Corn
e1d3a247c7
feat: random sort option for front page (#2363)
* Add hook for random sorting

* Add random sorting to front page

* Add multiple tests for random sorting.

* Be extra sure that all recipes are returned.

* Too stable random. seed doesn't reach backend.

* add timestamp to useRecipeSearch

* Update randomization tests for timestamp seeding

* ruff cleanup

* pass timestamp separately in getAll

* remove debugging log items

* remove timestamp from address bar

* remove defaults from backend timestamps

* timestamp should be optional

* fix edge case: query without timestamp

* similar edge case: no timestamp in pagination

* ruff :/

* better edge case handling

* stabilize random search test w/more recipes

* better pagination seeding

* update pagination seed test

* remove redundant random/seed check

* Test for api routes to random sorting.

* please the typing gods

* hack to make query parameters throw correct exc

* ruff

* fix validator message typo

* black reformatting

---------

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-05-29 16:56:20 -08:00
Jacob Corn
7e0d29afc7
feat: search tokenization, handling of quoted literal search, and postgres fuzziness (#2351)
* Creating postgres migration script and starting to set up to detect database

* non-working placeholders for postgres pg_tgrm

* First draft of some indexes

* non-working commit of postgres indexing

* Further non-working edits to db-centric fuzzy search

* update alembic for extensions

* More non-working setup

* Move db type check to init_db

* fix typo in db name check

* Add sqlite token search and postgres full text search

* reorder search to hit exact matches faster

* Add settings and docs for POSTGRES_LANGUAGE (full text search)

* Use user-specified POSTGRES_LANGUAGE in search

* fix fuzzy search typo

* Remove full text search and instead order by trigram match

* cleaner adding of indices, remove fulltext

* Cleanup old import of getting app settings

* Fix typo in index

* Fix some alembic fuzzy typos

* Remove diagnostic printing from alembic migration

* Fix mixed up commutator for trigram operator and relax criteria

* forgot to remove query debug

* sort only on name

* token and fuzzy search tests

* Refactor recipe search test to avoid rare random string cross-matches.

* Add ability to quote parts of search for exact match

* Remove internal punctuation, unless it's quoted for literal search

* Add tests for special character removal and literal search

* Remove the outer double quotes from searches, but leave internal single quotes alone.

* Update tests to avoid intra-test name collisions

* Fixing leftovers highlighted by lint

* cleanup linting and mypy errors

* Fix test cross-matching on dirty db (leftovers from bulk import)

* forgot to cleanup something when debugging mypy errors

* re-order pg_trgm loading in postgres

* address comments
2023-05-28 09:46:53 -08:00
Jacob Corn
27ebb4c462
docs: update dev docs, fix broken links, improve clarity of key points (#2354)
* Dev docs: tests, postgres/psycog2

* Update pull request process.

* Add Food/Unit parsing instructions to the FAQ

* Update docker composes: mealie-data now local to docker-compose rather than hidden in docker volume dir! postgres points to 1.0.0b5

* sqlite docker-compose: mealie-data now local rather than hidden in docker volumes

* Merge Intro FAQ into main FAQ

* Progress on docs

* Add Advanced and v1b5 to docs index

* v1b5 changelog consistency with other changelogs

* Features: fix wrong link, name buttons for clarity

* Migration: link to github releases

* Updating: link to migration page, format docker cmds

* FAQ: update smart ingredient formatting

* Intro: fix typos

* API: update for newbie clarity

* Roadmap: update feature request & progress mechanism

* iOS shortcut: fix broken image links

* installation: add SMTP google app passwords

* Postgres: add header note on why.

* Update Groups doc per Discord discussion

* mealie-data back into docker default volume path
2023-05-13 10:50:22 -08:00
Michael Genson
8e2d50054c
Fix: Query Filter Date Comparisons Are Off By One Date (#2389)
* fixed erroneous date -> datetime conversion

* added tests for date and datetime bounds
2023-05-11 22:28:14 -08:00
Michael Genson
5d87b7e411
feature: query filter support for common SQL keywords (#2366)
* added support for SQL keywords IS, IN, LIKE, NOT
deprecated datetime workaround for "<> null"
updated frontend reference for "<> null" to "IS NOT NULL"

* tests

* refactored query filtering to leverage orm

* added CONTAINS ALL keyword

* tests

* fixed bug where "and" or "or" was in an attr name

* more tests

* linter fixes

* TIL this works
2023-05-06 14:28:40 -08:00