From cd3e70176f481f6b07122433490db03e6331dd28 Mon Sep 17 00:00:00 2001 From: Christian Clauss Date: Sun, 23 Jun 2024 15:20:55 +0200 Subject: [PATCH] pre-commit autoupdate && pre-commit run --all-files --- .dockerignore | 2 +- .gitattributes | 2 +- .../oauth-provider-example.yaml | 2 +- .github/pull_request_template.md | 4 +- .pre-commit-config.yaml | 4 +- alembic/README | 2 +- dev/code-generation/templates/test_data.py.j2 | 2 +- dev/data/templates/recipes.md | 6 +- .../assets/other/n8n/n8n-mealie-backup.json | 2 +- docs/docs/assets/svg/open-in-new.svg | 2 +- docs/docs/changelog/v0.1.0.md | 88 --------- docs/docs/changelog/v0.2.0.md | 72 ------- docs/docs/changelog/v0.3.0.md | 29 --- docs/docs/changelog/v0.4.0.md | 86 --------- docs/docs/changelog/v0.4.1.md | 35 ---- docs/docs/changelog/v0.4.2.md | 34 ---- docs/docs/changelog/v0.4.3.md | 14 -- docs/docs/changelog/v0.5.0.md | 129 ------------- docs/docs/changelog/v0.5.1.md | 11 -- docs/docs/changelog/v0.5.2.md | 65 ------- docs/docs/changelog/v1.0.0.md | 178 ------------------ docs/docs/changelog/v1.0.0beta-2.md | 29 --- docs/docs/changelog/v1.0.0beta-3.md | 36 ---- docs/docs/changelog/v1.0.0beta-4.md | 126 ------------- docs/docs/changelog/v1.0.0beta-5.md | 3 - .../contributors/guides/ingredient-parser.md | 9 +- docs/docs/contributors/non-coders.md | 6 +- .../community-guide/bulk-url-import.md | 1 - docs/mkdocs.yml | 18 +- frontend/.prettierrc | 2 +- .../Domain/User/UserProfileLinkCard.vue | 1 - frontend/components/README.md | 9 +- frontend/components/global/DevDumpJson.vue | 2 +- .../use-extract-ingredient-references.ts | 2 +- frontend/lang/dateTimeFormats/af-ZA.json | 2 +- frontend/lang/dateTimeFormats/ar-SA.json | 2 +- frontend/lang/dateTimeFormats/bg-BG.json | 2 +- frontend/lang/dateTimeFormats/ca-ES.json | 2 +- frontend/lang/dateTimeFormats/cs-CZ.json | 2 +- frontend/lang/dateTimeFormats/el-GR.json | 2 +- frontend/lang/dateTimeFormats/en-GB.json | 2 +- frontend/lang/dateTimeFormats/es-ES.json | 2 +- frontend/lang/dateTimeFormats/fi-FI.json | 2 +- frontend/lang/dateTimeFormats/fr-CA.json | 2 +- frontend/lang/dateTimeFormats/fr-FR.json | 2 +- frontend/lang/dateTimeFormats/he-IL.json | 2 +- frontend/lang/dateTimeFormats/hu-HU.json | 2 +- frontend/lang/dateTimeFormats/ja-JP.json | 2 +- frontend/lang/dateTimeFormats/ko-KR.json | 2 +- frontend/lang/dateTimeFormats/nl-NL.json | 2 +- frontend/lang/dateTimeFormats/no-NO.json | 2 +- frontend/lang/dateTimeFormats/pl-PL.json | 2 +- frontend/lang/dateTimeFormats/pt-BR.json | 2 +- frontend/lang/dateTimeFormats/pt-PT.json | 2 +- frontend/lang/dateTimeFormats/ro-RO.json | 2 +- frontend/lang/dateTimeFormats/ru-RU.json | 2 +- frontend/lang/dateTimeFormats/sk-SK.json | 2 +- frontend/lang/dateTimeFormats/sr-SP.json | 2 +- frontend/lang/dateTimeFormats/sv-SE.json | 2 +- frontend/lang/dateTimeFormats/tr-TR.json | 2 +- frontend/lang/dateTimeFormats/vi-VN.json | 2 +- frontend/lang/dateTimeFormats/zh-CN.json | 2 +- frontend/lang/dateTimeFormats/zh-TW.json | 2 +- .../pages/g/_groupSlug/cookbooks/index.vue | 2 +- frontend/static/discord.svg | 2 +- frontend/static/pushover.svg | 2 +- frontend/static/svgs/admin-site-settings.svg | 2 +- frontend/static/svgs/data-reports.svg | 2 +- frontend/static/svgs/manage-api-tokens.svg | 2 +- frontend/static/svgs/manage-cookbooks.svg | 2 +- .../static/svgs/manage-data-migrations.svg | 2 +- .../static/svgs/manage-group-settings.svg | 2 +- frontend/static/svgs/manage-members.svg | 2 +- frontend/static/svgs/manage-notifiers.svg | 2 +- frontend/static/svgs/manage-profile.svg | 2 +- frontend/static/svgs/manage-recipes.svg | 2 +- frontend/static/svgs/manage-tasks.svg | 2 +- frontend/static/svgs/manage-webhooks.svg | 2 +- .../static/svgs/mdiCalendarMultiselect.svg | 2 +- frontend/static/svgs/mdiFormatListChecks.svg | 2 +- frontend/static/svgs/recipes-create.svg | 2 +- frontend/static/svgs/shopping-cart.svg | 2 +- mealie/assets/templates/recipes.md | 6 +- .../html/detroit-style-pepperoni-pizza.html | 2 +- tests/data/html/healthy-pasta-bake-60759.html | 2 +- .../data/html/sous-vide-smoked-beef-ribs.html | 2 +- .../data/json/best-homemade-salsa-recipe.json | 2 +- ...balls-with-raspberry-balsamic-glaze-2.json | 2 +- tests/data/json/bon-appetit.json | 2 +- tests/data/json/chunky-apple-cake.json | 2 +- .../dairy-free-impossible-pumpkin-pie.json | 2 +- .../how-to-make-instant-pot-spaghetti.json | 2 +- .../instant-pot-chicken-and-potatoes.json | 2 +- .../instant-pot-kerala-vegetable-stew.json | 2 +- tests/data/json/jalapeno-popper-dip.json | 2 +- .../json/microwave-sweet-potatoes-04783.json | 2 +- ...rt-steak-with-roasted-pepper-couscous.json | 2 +- ...oblauch-champignon-paprika-vegan-html.json | 2 +- 98 files changed, 95 insertions(+), 1050 deletions(-) delete mode 100644 docs/docs/changelog/v0.1.0.md delete mode 100644 docs/docs/changelog/v0.2.0.md delete mode 100644 docs/docs/changelog/v0.3.0.md delete mode 100644 docs/docs/changelog/v0.4.0.md delete mode 100644 docs/docs/changelog/v0.4.1.md delete mode 100644 docs/docs/changelog/v0.4.2.md delete mode 100644 docs/docs/changelog/v0.4.3.md delete mode 100644 docs/docs/changelog/v0.5.0.md delete mode 100644 docs/docs/changelog/v0.5.1.md delete mode 100644 docs/docs/changelog/v0.5.2.md delete mode 100644 docs/docs/changelog/v1.0.0.md delete mode 100644 docs/docs/changelog/v1.0.0beta-2.md delete mode 100644 docs/docs/changelog/v1.0.0beta-3.md delete mode 100644 docs/docs/changelog/v1.0.0beta-4.md delete mode 100644 docs/docs/changelog/v1.0.0beta-5.md diff --git a/.dockerignore b/.dockerignore index 344712196d1..49ef682572a 100644 --- a/.dockerignore +++ b/.dockerignore @@ -26,7 +26,7 @@ venv */node_modules */dist */data/db -*/mealie/test +*/mealie/test */mealie/.temp model.crfmodel diff --git a/.gitattributes b/.gitattributes index 5639ab15033..731afcdda9c 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,2 +1,2 @@ *.css linguist-detectable=false -*.html linguist-detectable=false \ No newline at end of file +*.html linguist-detectable=false diff --git a/.github/DISCUSSION_TEMPLATE/oauth-provider-example.yaml b/.github/DISCUSSION_TEMPLATE/oauth-provider-example.yaml index dc1dd2a285a..ebf8f5e2e83 100644 --- a/.github/DISCUSSION_TEMPLATE/oauth-provider-example.yaml +++ b/.github/DISCUSSION_TEMPLATE/oauth-provider-example.yaml @@ -5,5 +5,5 @@ body: attributes: label: Configuration Example description: Add your example configuration. You can provide code blocks, screenshots, and links. - validations: + validations: required: true diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 8c7d3ded523..a084737b690 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,12 +1,12 @@ diff --git a/docs/docs/changelog/v1.0.0beta-5.md b/docs/docs/changelog/v1.0.0beta-5.md deleted file mode 100644 index 2f25e08bf2b..00000000000 --- a/docs/docs/changelog/v1.0.0beta-5.md +++ /dev/null @@ -1,3 +0,0 @@ -### NOTICE: - -Release changelogs are now published on github releases. This file is kept for historical purposes. diff --git a/docs/docs/contributors/guides/ingredient-parser.md b/docs/docs/contributors/guides/ingredient-parser.md index abaa4206826..87a32eafb9e 100644 --- a/docs/docs/contributors/guides/ingredient-parser.md +++ b/docs/docs/contributors/guides/ingredient-parser.md @@ -1,20 +1,19 @@ # Improving the Ingredient Parser -Mealie uses Conditional Random Fields (CRFs) for parsing and processing ingredients. The model used for ingredients is based off a data set of over 100,000 ingredients from a dataset compiled by the New York Times. I believe that the model used is sufficient enough to handle most of the ingredients, therefore, more data to train the model won't necessarily help improve the model. +Mealie uses Conditional Random Fields (CRFs) for parsing and processing ingredients. The model used for ingredients is based off a data set of over 100,000 ingredients from a dataset compiled by the New York Times. I believe that the model used is sufficient enough to handle most of the ingredients, therefore, more data to train the model won't necessarily help improve the model. ## Improving The CRF Parser -To improve results with the model, you'll likely need to focus on improving the tokenization and parsing of the original string to aid the model in determine what the ingredient is. Data science is not my forte, but I have done some tokenization to improve the model. You can find that code under `/mealie/services/parser_services/crfpp` along with some other utility functions to aid in the tokenization and processing of ingredient strings. +To improve results with the model, you'll likely need to focus on improving the tokenization and parsing of the original string to aid the model in determine what the ingredient is. Data science is not my forte, but I have done some tokenization to improve the model. You can find that code under `/mealie/services/parser_services/crfpp` along with some other utility functions to aid in the tokenization and processing of ingredient strings. The best way to test on improving the parser is to register additional test cases in `/mealie/tests/unit_tests/test_crfpp_parser.py` and run the test after making changes to the tokenizer. Note that the test cases DO NOT run in the CI environment, therefore you will need to have CRF++ installed on your machine. If you're using a Mac the easiest way to do this is through brew. -When submitting a PR to improve the parser it is important to provide your test cases, the problem you were trying to solve, and the results of the changes you made. As the tests don't run in CI, not providing these details may delay your PR from being merged. +When submitting a PR to improve the parser it is important to provide your test cases, the problem you were trying to solve, and the results of the changes you made. As the tests don't run in CI, not providing these details may delay your PR from being merged. ## Alternative Parsers -Alternatively, you can register a new parser by fulfilling the `ABCIngredientParser` interface. Satisfying this single method interface allows us to register additional parsing strategies at runtime and gives the user several options when trying to parse a recipe. +Alternatively, you can register a new parser by fulfilling the `ABCIngredientParser` interface. Satisfying this single method interface allows us to register additional parsing strategies at runtime and gives the user several options when trying to parse a recipe. ## Links - [Pretrained Model](https://github.com/mealie-recipes/mealie-nlp-model) - [CRF++ (Forked)](https://github.com/hay-kot/crfpp) - diff --git a/docs/docs/contributors/non-coders.md b/docs/docs/contributors/non-coders.md index f5e8a8dead5..fd5680f1b07 100644 --- a/docs/docs/contributors/non-coders.md +++ b/docs/docs/contributors/non-coders.md @@ -9,8 +9,8 @@ We love your input! We want to make contributing to this project as easy and tra - Becoming a maintainer - Help translate to a new language or improve current translations -[Remember to join the Discord and stay in touch with other developers working on the project](https://discord.gg/QuStdQGSGK)! +[Remember to join the Discord and stay in touch with other developers working on the project](https://discord.gg/QuStdQGSGK)! -Additionally, you can buy me a coffee and support the project. When I get financial support it helps me know that there's real interest in the project and that it's worth the time to keep developing. +Additionally, you can buy me a coffee and support the project. When I get financial support it helps me know that there's real interest in the project and that it's worth the time to keep developing. -Buy Me A Coffee \ No newline at end of file +Buy Me A Coffee diff --git a/docs/docs/documentation/community-guide/bulk-url-import.md b/docs/docs/documentation/community-guide/bulk-url-import.md index 7d597e8f617..7361c91ec6f 100644 --- a/docs/docs/documentation/community-guide/bulk-url-import.md +++ b/docs/docs/documentation/community-guide/bulk-url-import.md @@ -93,4 +93,3 @@ mealie_url="http://localhost:9000" token = authentication(mail, password, mealie_url) import_from_file(input_file, token, mealie_url) ``` - diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index 49a071ab92d..d1d881a2b24 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -98,23 +98,7 @@ nav: - Developers Guide: - Code Contributions: "contributors/developers-guide/code-contributions.md" - Dev Getting Started: "contributors/developers-guide/starting-dev-server.md" + - Database Changes: "contributors/developers-guide/database-changes.md" - Maintainers Guide: "contributors/developers-guide/maintainers.md" - Guides: - Improving Ingredient Parser: "contributors/guides/ingredient-parser.md" - - - Change Log: - - v1.0.0beta-5: "changelog/v1.0.0beta-5.md" - - v1.0.0beta-4: "changelog/v1.0.0beta-4.md" - - v1.0.0beta-3: "changelog/v1.0.0beta-3.md" - - v1.0.0beta-2: "changelog/v1.0.0beta-2.md" - - v1.0.0 Beta: "changelog/v1.0.0.md" - - v0.5.2 Misc Updates: "changelog/v0.5.2.md" - - v0.5.1 Bug Fixes: "changelog/v0.5.1.md" - - v0.5.0 General Upgrades: "changelog/v0.5.0.md" - - v0.4.3 Hot Fix: "changelog/v0.4.3.md" - - v0.4.2 Backend/Migrations: "changelog/v0.4.2.md" - - v0.4.1 Frontend/UI: "changelog/v0.4.1.md" - - v0.4.0 Authentication: "changelog/v0.4.0.md" - - v0.3.0 Improvements: "changelog/v0.3.0.md" - - v0.2.0 Now With Tests!: "changelog/v0.2.0.md" - - v0.1.0 Beta: "changelog/v0.1.0.md" diff --git a/frontend/.prettierrc b/frontend/.prettierrc index 9aa275fe6bf..680d997dbab 100644 --- a/frontend/.prettierrc +++ b/frontend/.prettierrc @@ -6,4 +6,4 @@ "printWidth": 120, "arrowParens": "always", "eslintIntegration": true -} \ No newline at end of file +} diff --git a/frontend/components/Domain/User/UserProfileLinkCard.vue b/frontend/components/Domain/User/UserProfileLinkCard.vue index 9da81fc2bc4..5946e14541a 100644 --- a/frontend/components/Domain/User/UserProfileLinkCard.vue +++ b/frontend/components/Domain/User/UserProfileLinkCard.vue @@ -53,4 +53,3 @@ export default defineComponent({ }, }); - diff --git a/frontend/components/README.md b/frontend/components/README.md index 4bfe89c59c3..83ebb809baf 100644 --- a/frontend/components/README.md +++ b/frontend/components/README.md @@ -1,7 +1,7 @@ # Components Folder Guide ## Domain Components -Domain Components are specific to the domain or section of a website. For example if you have an admin page and a user page that have specific, unshared elements. These can be placed in the Domain/Admin folder. +Domain Components are specific to the domain or section of a website. For example if you have an admin page and a user page that have specific, unshared elements. These can be placed in the Domain/Admin folder. **Rules** - Components should be prefixed with their domain name @@ -19,8 +19,8 @@ This folder is for widely reused components that provide little functionality an The layout folder is for reusable components that are specifically **only** used in the layouts for the Nuxt Application. They may take props or may not. They should be larger layout style components that don't have wide the ability to be widely reused in the application. **Rules:** -- Layout folder should not have a subfolder -- If they take props they should start with a 'App' Prefix. +- Layout folder should not have a subfolder +- If they take props they should start with a 'App' Prefix. - Examples: AppSidebar, AppHeader, AppFooter. - If they do not they should begin with the 'The' prefix - Examples: TheSidebar, TheHeader, TheFooter. @@ -29,7 +29,6 @@ The layout folder is for reusable components that are specifically **only** used The Page folder is dedicated to 'single-use' component to break up large amounts on content in the pages themselves. A good examples of this is breaking your landing page into separate sections to make it more readable and less monolithic. Page components typically consume other components. **Rules:** -- These are *last resort* components. Only to be used when the page becomes unmanageable. +- These are *last resort* components. Only to be used when the page becomes unmanageable. - Page components should be prefixed with their page name - Examples: HomeAbout, HomeContact, ClientProfile - diff --git a/frontend/components/global/DevDumpJson.vue b/frontend/components/global/DevDumpJson.vue index f10e88565c3..8a744aceb77 100644 --- a/frontend/components/global/DevDumpJson.vue +++ b/frontend/components/global/DevDumpJson.vue @@ -22,4 +22,4 @@ export default defineComponent({ }; }, }); - \ No newline at end of file + diff --git a/frontend/composables/recipe-page/use-extract-ingredient-references.ts b/frontend/composables/recipe-page/use-extract-ingredient-references.ts index 2524d73e409..bf34074c434 100644 --- a/frontend/composables/recipe-page/use-extract-ingredient-references.ts +++ b/frontend/composables/recipe-page/use-extract-ingredient-references.ts @@ -57,4 +57,4 @@ export function useExtractIngredientReferences(recipeIngredients: RecipeIngredie return new Set(allMatchedIngredientIds) -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/af-ZA.json b/frontend/lang/dateTimeFormats/af-ZA.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/af-ZA.json +++ b/frontend/lang/dateTimeFormats/af-ZA.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/ar-SA.json b/frontend/lang/dateTimeFormats/ar-SA.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/ar-SA.json +++ b/frontend/lang/dateTimeFormats/ar-SA.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/bg-BG.json b/frontend/lang/dateTimeFormats/bg-BG.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/bg-BG.json +++ b/frontend/lang/dateTimeFormats/bg-BG.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/ca-ES.json b/frontend/lang/dateTimeFormats/ca-ES.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/ca-ES.json +++ b/frontend/lang/dateTimeFormats/ca-ES.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/cs-CZ.json b/frontend/lang/dateTimeFormats/cs-CZ.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/cs-CZ.json +++ b/frontend/lang/dateTimeFormats/cs-CZ.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/el-GR.json b/frontend/lang/dateTimeFormats/el-GR.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/el-GR.json +++ b/frontend/lang/dateTimeFormats/el-GR.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/en-GB.json b/frontend/lang/dateTimeFormats/en-GB.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/en-GB.json +++ b/frontend/lang/dateTimeFormats/en-GB.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/es-ES.json b/frontend/lang/dateTimeFormats/es-ES.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/es-ES.json +++ b/frontend/lang/dateTimeFormats/es-ES.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/fi-FI.json b/frontend/lang/dateTimeFormats/fi-FI.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/fi-FI.json +++ b/frontend/lang/dateTimeFormats/fi-FI.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/fr-CA.json b/frontend/lang/dateTimeFormats/fr-CA.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/fr-CA.json +++ b/frontend/lang/dateTimeFormats/fr-CA.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/fr-FR.json b/frontend/lang/dateTimeFormats/fr-FR.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/fr-FR.json +++ b/frontend/lang/dateTimeFormats/fr-FR.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/he-IL.json b/frontend/lang/dateTimeFormats/he-IL.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/he-IL.json +++ b/frontend/lang/dateTimeFormats/he-IL.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/hu-HU.json b/frontend/lang/dateTimeFormats/hu-HU.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/hu-HU.json +++ b/frontend/lang/dateTimeFormats/hu-HU.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/ja-JP.json b/frontend/lang/dateTimeFormats/ja-JP.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/ja-JP.json +++ b/frontend/lang/dateTimeFormats/ja-JP.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/ko-KR.json b/frontend/lang/dateTimeFormats/ko-KR.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/ko-KR.json +++ b/frontend/lang/dateTimeFormats/ko-KR.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/nl-NL.json b/frontend/lang/dateTimeFormats/nl-NL.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/nl-NL.json +++ b/frontend/lang/dateTimeFormats/nl-NL.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/no-NO.json b/frontend/lang/dateTimeFormats/no-NO.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/no-NO.json +++ b/frontend/lang/dateTimeFormats/no-NO.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/pl-PL.json b/frontend/lang/dateTimeFormats/pl-PL.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/pl-PL.json +++ b/frontend/lang/dateTimeFormats/pl-PL.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/pt-BR.json b/frontend/lang/dateTimeFormats/pt-BR.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/pt-BR.json +++ b/frontend/lang/dateTimeFormats/pt-BR.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/pt-PT.json b/frontend/lang/dateTimeFormats/pt-PT.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/pt-PT.json +++ b/frontend/lang/dateTimeFormats/pt-PT.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/ro-RO.json b/frontend/lang/dateTimeFormats/ro-RO.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/ro-RO.json +++ b/frontend/lang/dateTimeFormats/ro-RO.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/ru-RU.json b/frontend/lang/dateTimeFormats/ru-RU.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/ru-RU.json +++ b/frontend/lang/dateTimeFormats/ru-RU.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/sk-SK.json b/frontend/lang/dateTimeFormats/sk-SK.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/sk-SK.json +++ b/frontend/lang/dateTimeFormats/sk-SK.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/sr-SP.json b/frontend/lang/dateTimeFormats/sr-SP.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/sr-SP.json +++ b/frontend/lang/dateTimeFormats/sr-SP.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/sv-SE.json b/frontend/lang/dateTimeFormats/sv-SE.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/sv-SE.json +++ b/frontend/lang/dateTimeFormats/sv-SE.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/tr-TR.json b/frontend/lang/dateTimeFormats/tr-TR.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/tr-TR.json +++ b/frontend/lang/dateTimeFormats/tr-TR.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/vi-VN.json b/frontend/lang/dateTimeFormats/vi-VN.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/vi-VN.json +++ b/frontend/lang/dateTimeFormats/vi-VN.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/zh-CN.json b/frontend/lang/dateTimeFormats/zh-CN.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/zh-CN.json +++ b/frontend/lang/dateTimeFormats/zh-CN.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/lang/dateTimeFormats/zh-TW.json b/frontend/lang/dateTimeFormats/zh-TW.json index 25c6e007b75..47f1f0c52e7 100644 --- a/frontend/lang/dateTimeFormats/zh-TW.json +++ b/frontend/lang/dateTimeFormats/zh-TW.json @@ -18,4 +18,4 @@ "hour": "numeric", "minute": "numeric" } -} \ No newline at end of file +} diff --git a/frontend/pages/g/_groupSlug/cookbooks/index.vue b/frontend/pages/g/_groupSlug/cookbooks/index.vue index 064aa41ff5c..d894da2d16c 100644 --- a/frontend/pages/g/_groupSlug/cookbooks/index.vue +++ b/frontend/pages/g/_groupSlug/cookbooks/index.vue @@ -114,7 +114,7 @@ export default defineComponent({ delete: false, }); const { cookbooks, actions } = useCookbooks(); - + // create const createTarget = ref(null); async function createCookbook() { diff --git a/frontend/static/discord.svg b/frontend/static/discord.svg index 65c9fccff75..db7451019ce 100644 --- a/frontend/static/discord.svg +++ b/frontend/static/discord.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/frontend/static/pushover.svg b/frontend/static/pushover.svg index 08956d81907..d970816f1fc 100644 --- a/frontend/static/pushover.svg +++ b/frontend/static/pushover.svg @@ -4,4 +4,4 @@ - \ No newline at end of file + diff --git a/frontend/static/svgs/admin-site-settings.svg b/frontend/static/svgs/admin-site-settings.svg index d804dfc4af4..d6a016da071 100644 --- a/frontend/static/svgs/admin-site-settings.svg +++ b/frontend/static/svgs/admin-site-settings.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/frontend/static/svgs/data-reports.svg b/frontend/static/svgs/data-reports.svg index 19fc720cc15..57feaf51930 100644 --- a/frontend/static/svgs/data-reports.svg +++ b/frontend/static/svgs/data-reports.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/frontend/static/svgs/manage-api-tokens.svg b/frontend/static/svgs/manage-api-tokens.svg index a259e89f08f..9ad2f06f3ba 100644 --- a/frontend/static/svgs/manage-api-tokens.svg +++ b/frontend/static/svgs/manage-api-tokens.svg @@ -1 +1 @@ -security \ No newline at end of file +security diff --git a/frontend/static/svgs/manage-cookbooks.svg b/frontend/static/svgs/manage-cookbooks.svg index ee3c223d567..f74a311e86f 100644 --- a/frontend/static/svgs/manage-cookbooks.svg +++ b/frontend/static/svgs/manage-cookbooks.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/frontend/static/svgs/manage-data-migrations.svg b/frontend/static/svgs/manage-data-migrations.svg index a6fdb137109..3a643a1aac4 100644 --- a/frontend/static/svgs/manage-data-migrations.svg +++ b/frontend/static/svgs/manage-data-migrations.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/frontend/static/svgs/manage-group-settings.svg b/frontend/static/svgs/manage-group-settings.svg index 87d51abfae8..6186027106e 100644 --- a/frontend/static/svgs/manage-group-settings.svg +++ b/frontend/static/svgs/manage-group-settings.svg @@ -1 +1 @@ -people \ No newline at end of file +people diff --git a/frontend/static/svgs/manage-members.svg b/frontend/static/svgs/manage-members.svg index 13dab51edae..d29456b950e 100644 --- a/frontend/static/svgs/manage-members.svg +++ b/frontend/static/svgs/manage-members.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/frontend/static/svgs/manage-notifiers.svg b/frontend/static/svgs/manage-notifiers.svg index b3347bbfdfa..5336b7220ab 100644 --- a/frontend/static/svgs/manage-notifiers.svg +++ b/frontend/static/svgs/manage-notifiers.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/frontend/static/svgs/manage-profile.svg b/frontend/static/svgs/manage-profile.svg index 049326e4e8a..6e142cd634e 100644 --- a/frontend/static/svgs/manage-profile.svg +++ b/frontend/static/svgs/manage-profile.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/frontend/static/svgs/manage-recipes.svg b/frontend/static/svgs/manage-recipes.svg index 4e0d200b539..7a9c754e632 100644 --- a/frontend/static/svgs/manage-recipes.svg +++ b/frontend/static/svgs/manage-recipes.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/frontend/static/svgs/manage-tasks.svg b/frontend/static/svgs/manage-tasks.svg index 97bed0d4a4c..bf8aeb583c1 100644 --- a/frontend/static/svgs/manage-tasks.svg +++ b/frontend/static/svgs/manage-tasks.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/frontend/static/svgs/manage-webhooks.svg b/frontend/static/svgs/manage-webhooks.svg index 54b2780c1fa..d48fa9c48e1 100644 --- a/frontend/static/svgs/manage-webhooks.svg +++ b/frontend/static/svgs/manage-webhooks.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/frontend/static/svgs/mdiCalendarMultiselect.svg b/frontend/static/svgs/mdiCalendarMultiselect.svg index 52dd9472c40..bbbddedb07b 100644 --- a/frontend/static/svgs/mdiCalendarMultiselect.svg +++ b/frontend/static/svgs/mdiCalendarMultiselect.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/frontend/static/svgs/mdiFormatListChecks.svg b/frontend/static/svgs/mdiFormatListChecks.svg index f2df5763aec..84590c9b01c 100644 --- a/frontend/static/svgs/mdiFormatListChecks.svg +++ b/frontend/static/svgs/mdiFormatListChecks.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/frontend/static/svgs/recipes-create.svg b/frontend/static/svgs/recipes-create.svg index 124e7643b54..927ee92e994 100644 --- a/frontend/static/svgs/recipes-create.svg +++ b/frontend/static/svgs/recipes-create.svg @@ -1 +1 @@ -diet \ No newline at end of file +diet diff --git a/frontend/static/svgs/shopping-cart.svg b/frontend/static/svgs/shopping-cart.svg index ab34a34a362..b469150e51d 100644 --- a/frontend/static/svgs/shopping-cart.svg +++ b/frontend/static/svgs/shopping-cart.svg @@ -1 +1 @@ -empty_cart \ No newline at end of file +empty_cart diff --git a/mealie/assets/templates/recipes.md b/mealie/assets/templates/recipes.md index 6ee2d4bb697..eda4c6e145a 100644 --- a/mealie/assets/templates/recipes.md +++ b/mealie/assets/templates/recipes.md @@ -6,11 +6,11 @@ {{ recipe.description }} ## Ingredients -{% for ingredient in recipe.recipeIngredient %} +{% for ingredient in recipe.recipeIngredient %} - [ ] {{ ingredient }} {% endfor %} ## Instructions -{% for step in recipe.recipeInstructions %} +{% for step in recipe.recipeInstructions %} - [ ] {{ step.text }} {% endfor %} {% for note in recipe.notes %} @@ -21,4 +21,4 @@ Tags: {{ recipe.tags }} Categories: {{ recipe.categories }} -Original URL: {{ recipe.orgURL }} \ No newline at end of file +Original URL: {{ recipe.orgURL }} diff --git a/tests/data/html/detroit-style-pepperoni-pizza.html b/tests/data/html/detroit-style-pepperoni-pizza.html index f876161d8a9..73c0739f0ea 100644 --- a/tests/data/html/detroit-style-pepperoni-pizza.html +++ b/tests/data/html/detroit-style-pepperoni-pizza.html @@ -934,4 +934,4 @@ } addScript('/user-context?referrer=' + encodeURIComponent(document.referrer) + '&verso=true' + (typeof paymentForm !== 'undefined' ? '&paymentForm=' + paymentForm : '') + '&location=' + pageLocation); })(document) - \ No newline at end of file + diff --git a/tests/data/html/healthy-pasta-bake-60759.html b/tests/data/html/healthy-pasta-bake-60759.html index fc98bdfa55e..f41eb4a9cb6 100644 --- a/tests/data/html/healthy-pasta-bake-60759.html +++ b/tests/data/html/healthy-pasta-bake-60759.html @@ -497,4 +497,4 @@ - \ No newline at end of file + diff --git a/tests/data/html/sous-vide-smoked-beef-ribs.html b/tests/data/html/sous-vide-smoked-beef-ribs.html index 076110b2498..82656379bd4 100644 --- a/tests/data/html/sous-vide-smoked-beef-ribs.html +++ b/tests/data/html/sous-vide-smoked-beef-ribs.html @@ -1122,4 +1122,4 @@

Fried Spinach feta Hand Pies

- \ No newline at end of file + diff --git a/tests/data/json/best-homemade-salsa-recipe.json b/tests/data/json/best-homemade-salsa-recipe.json index 0f2671e2ce8..5e7612bcec1 100644 --- a/tests/data/json/best-homemade-salsa-recipe.json +++ b/tests/data/json/best-homemade-salsa-recipe.json @@ -83,4 +83,4 @@ }, "mainEntityOfPage": "https://www.aspicyperspective.com/best-homemade-salsa-recipe/#webpage", "url": "https://www.aspicyperspective.com/best-homemade-salsa-recipe/" -} \ No newline at end of file +} diff --git a/tests/data/json/blue-cheese-stuffed-turkey-meatballs-with-raspberry-balsamic-glaze-2.json b/tests/data/json/blue-cheese-stuffed-turkey-meatballs-with-raspberry-balsamic-glaze-2.json index 32fc65485d4..050d2a397b0 100644 --- a/tests/data/json/blue-cheese-stuffed-turkey-meatballs-with-raspberry-balsamic-glaze-2.json +++ b/tests/data/json/blue-cheese-stuffed-turkey-meatballs-with-raspberry-balsamic-glaze-2.json @@ -33,4 +33,4 @@ "Pinch of red pepper", "Pinch of Salt" ] -} \ No newline at end of file +} diff --git a/tests/data/json/bon-appetit.json b/tests/data/json/bon-appetit.json index 1cdb927c8eb..c18fcd8e027 100644 --- a/tests/data/json/bon-appetit.json +++ b/tests/data/json/bon-appetit.json @@ -129,4 +129,4 @@ "dateAdded": null, "notes": [], "extras": [] -} \ No newline at end of file +} diff --git a/tests/data/json/chunky-apple-cake.json b/tests/data/json/chunky-apple-cake.json index 7a20a2cabaf..40405727849 100644 --- a/tests/data/json/chunky-apple-cake.json +++ b/tests/data/json/chunky-apple-cake.json @@ -30,4 +30,4 @@ ], "@context": "http://schema.org", "@type": "Recipe" -} \ No newline at end of file +} diff --git a/tests/data/json/dairy-free-impossible-pumpkin-pie.json b/tests/data/json/dairy-free-impossible-pumpkin-pie.json index a029bc6e66b..ea7e10edb37 100644 --- a/tests/data/json/dairy-free-impossible-pumpkin-pie.json +++ b/tests/data/json/dairy-free-impossible-pumpkin-pie.json @@ -99,4 +99,4 @@ "servingSize": "1 serving" }, "url": "https://www.kitchentreaty.com/dairy-free-impossible-pumpkin-pie/" -} \ No newline at end of file +} diff --git a/tests/data/json/how-to-make-instant-pot-spaghetti.json b/tests/data/json/how-to-make-instant-pot-spaghetti.json index eb9837a5a19..289a0c83a31 100644 --- a/tests/data/json/how-to-make-instant-pot-spaghetti.json +++ b/tests/data/json/how-to-make-instant-pot-spaghetti.json @@ -118,4 +118,4 @@ }, "mainEntityOfPage": "https://www.thekitchenmagpie.com/how-to-make-instant-pot-spaghetti/#webpage", "url": "https://www.thekitchenmagpie.com/how-to-make-instant-pot-spaghetti/" -} \ No newline at end of file +} diff --git a/tests/data/json/instant-pot-chicken-and-potatoes.json b/tests/data/json/instant-pot-chicken-and-potatoes.json index 5793e48e76e..bebdf1541ae 100644 --- a/tests/data/json/instant-pot-chicken-and-potatoes.json +++ b/tests/data/json/instant-pot-chicken-and-potatoes.json @@ -79,4 +79,4 @@ }, "mainEntityOfPage": "https://www.lecremedelacrumb.com/instant-pot-chicken-and-potatoes/#webpage", "url": "https://www.lecremedelacrumb.com/instant-pot-chicken-and-potatoes/" -} \ No newline at end of file +} diff --git a/tests/data/json/instant-pot-kerala-vegetable-stew.json b/tests/data/json/instant-pot-kerala-vegetable-stew.json index 7cc74351042..1b4bc68d530 100644 --- a/tests/data/json/instant-pot-kerala-vegetable-stew.json +++ b/tests/data/json/instant-pot-kerala-vegetable-stew.json @@ -163,4 +163,4 @@ }, "mainEntityOfPage": "https://www.cookingcarnival.com/instant-pot-kerala-vegetable-stew/#webpage", "url": "https://www.cookingcarnival.com/instant-pot-kerala-vegetable-stew/" -} \ No newline at end of file +} diff --git a/tests/data/json/jalapeno-popper-dip.json b/tests/data/json/jalapeno-popper-dip.json index 867ab26ac1b..6db0eae2215 100644 --- a/tests/data/json/jalapeno-popper-dip.json +++ b/tests/data/json/jalapeno-popper-dip.json @@ -86,4 +86,4 @@ }, "mainEntityOfPage": "https://www.browneyedbaker.com/jalapeno-popper-dip/#webpage", "url": "https://www.browneyedbaker.com/jalapeno-popper-dip/" -} \ No newline at end of file +} diff --git a/tests/data/json/microwave-sweet-potatoes-04783.json b/tests/data/json/microwave-sweet-potatoes-04783.json index 74a07ae9133..b081b820a36 100644 --- a/tests/data/json/microwave-sweet-potatoes-04783.json +++ b/tests/data/json/microwave-sweet-potatoes-04783.json @@ -50,4 +50,4 @@ "http://schema.org/GlutenFreeDiet" ], "url": "https://www.bbc.co.uk/food/recipes/microwave_sweet_potatoes_04783" -} \ No newline at end of file +} diff --git a/tests/data/json/moroccan-skirt-steak-with-roasted-pepper-couscous.json b/tests/data/json/moroccan-skirt-steak-with-roasted-pepper-couscous.json index d25ee93d201..ef3f8be17c6 100644 --- a/tests/data/json/moroccan-skirt-steak-with-roasted-pepper-couscous.json +++ b/tests/data/json/moroccan-skirt-steak-with-roasted-pepper-couscous.json @@ -240,4 +240,4 @@ } ], "url": "http://www.eatingwell.com/recipe/249961/moroccan-skirt-steak-with-roasted-pepper-couscous/" -} \ No newline at end of file +} diff --git a/tests/data/json/pizza-knoblauch-champignon-paprika-vegan-html.json b/tests/data/json/pizza-knoblauch-champignon-paprika-vegan-html.json index 420f8ac4f71..726c1abd95a 100644 --- a/tests/data/json/pizza-knoblauch-champignon-paprika-vegan-html.json +++ b/tests/data/json/pizza-knoblauch-champignon-paprika-vegan-html.json @@ -100,4 +100,4 @@ } ], "url": "https://www.chefkoch.de/rezepte/2235331358009600/Pizza-Knoblauch-Champignon-Paprika-vegan.html" -} \ No newline at end of file +}