Commit Graph

189 Commits

Author SHA1 Message Date
Hayden
8d77f4b31e feat: Paprika/Mealie Migration support (#873)
* feat:  paprika support - partial

* feat:  add full paprika support

* re-organize data directory

* add data directory auto-gen

* rewrite migration tests

* remove print statements

* remove hard-coded paths

* add auto-tag support

* add mealie migration support

* add looking for migraiton button
2021-12-09 19:52:53 -09:00
Hayden
b2673d75bf Feature/shareable recipes (#866)
* simplify context menu

* move computed to comp-api

* feat:  create share tokens for recipes for sharing recieps to non-users

* feat:  shareable recipe links with og tags
2021-12-05 11:55:46 -09:00
Hayden
ba4107348f Feature/misc tasks (#864)
* feat(backend): 🌐 make foods/ingredients translatable

* feat(backend):  add remember me support for login - 14 days

* feat(frontend): 💄 add persistent darkmode for user sessions

* capture #859

* feat(frontend): 💄 add basic open-graph data for site links
2021-12-04 16:06:24 -09:00
Hayden
c32d7d7486 feat: add user recipe export functionality (#845)
* feat(frontend):  add user recipe export functionality

* remove depreciated folders

* change/remove depreciated folders

* add testing variable in config

* add GUID support for group_id

* improve testing feedback on 422 errors

* remove/cleanup files/folders

* initial user export support

* delete unused css

* update backup page UI

* remove depreciated settings

* feat:  export download links

* fix #813

* remove top level statements

* show footer

* add export purger to scheduler

* update purge glob

* fix meal-planner lockout

* feat:  add bulk delete/purge exports

* style(frontend): 💄 update UI for site settings

* feat:  add version checker

* update documentation

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-12-04 14:18:46 -09:00
Hayden
2ce195a0d4 refactor: ♻️ rewrite migrations frontend/backend (#841)
* refactor(frontend): ♻️ rewrite migrations UI

* refactor(backend): ♻️ rewrite recipe migrations

* remove vue-demi

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-11-26 22:37:06 -09:00
Hayden
7afdd5b577 Feature/restore-recipe-functionality (#810)
* feat(frontend):  add back support for assets

* feat(backend):  add back support for assets

* feat(frontend):  add support for recipe tools

* feat(backend):  add support for recipe tools

* feat(frontend):  add onHand support for recipe toosl

* feat(backend):  add onHand support for backend

* refactor(frontend): ♻️ move items to recipe folder and break apart types

* feat(frontend):  add support for recipe comments

* feat(backend):  Add support for recipe comments

* fix(backend): 💥 disable comments import

* fix(frontend): 🐛 fix rendering issue with titles when moving steps

* add tools to changelog

* fix type errors

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-11-22 20:10:48 -09:00
Hayden
d4bf81dee6 feat(frontend): food filter and add back search dialog (#794)
* return ingredients and foods on summary

* filter on foods

* update search page to TS and comp-api

* add additional search fields

* feat(frontend):  add back search dialog

* update docs

* formatting

* update sidebar - remove dropdown

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-11-08 21:12:13 -09:00
Hayden
c1ba8dcd86 feature/improve-parser-ux (#789)
* cleanup console.logs

* default to panels open

* feat(frontend):  add ingredient on enter

* feat(frontend):  automatically trigger parser on navigation

* feat(frontend):  prompt user before leaving when in editor

* add deep copy utility

* improve flow of parser

* add tooltip and match disable with disableAmount

* force admin users to have advanced access

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-11-06 14:32:55 -08:00
Hayden
5cb4a1ade0 Feature/recipe instructions improvements (#785)
* feat(frontend):  split paragraph by 1. 1) or 1: regex matches

* feat(frontend):  Update frontend to support ingredient To step refs

* feat(backend):  Update backend to support ingredient to step refs

* fix title editor

* move about info to site-settings

* update change-log

Co-authored-by: Hayden K <hay-kot@pm.me>
2021-11-05 15:48:10 -08:00
Hayden
9f8c61a75a fix(backend): 🐛 Fix recipe page issues (#778)
* fix(backend): 🐛 Fix favorite assignment on backend

* fix(frontend): 🐛 fix printer button on recipe page

* style(frontend): 🚸 add user feadback on copy of recipe link

* fix(frontend): 🐛 Fix enableLandscape incorrect bindings to remove duplicate values

* feat(frontend):  add ingredient copy button for markdown list -[ ] format

* feat(frontend):  add remove prefix button to bulk entry

* fix(frontend): 🐛 disable random button when no recipes are present

* fix(frontend):  fix .zip download error

* fix(frontend): 🚸 close image dialog on upload/get

* fix(frontend): 🐛 fix assignment on creation for categories and tags

* feat(frontend):  Open editor on creation / fix edit button on main screen

* fix(frontend): 🐛 fix false negative regex match for urls on creationg page

* feat(frontend): 🚸 provide better user feadback when recipe exists

* feat(frontend):  lock bulk importer on submit

* remove zip from navigation

* fix(frontend):  rerender recipes on delete

Co-authored-by: Hayden K <hay-kot@pm.me>
2021-11-04 18:15:23 -08:00
Hayden
ec3b53cdc3 Refactor/user database models (#775)
* fix build error

* drop frontend.old

* improve auto_init decorator

* purge depreciated site settings

* formatting

* update init function

* fix(backend): 🐛 Fix password reset bug

Co-authored-by: Hayden <hay-kot@pm.me>
2021-11-04 14:01:37 -08:00
Hayden
2afaf70a03 feat(backend): Minor linting, bulk URL import, and improve BG tasks (#760)
* Fixes #751

* Fixes not showing original URL

* start slice at 0 instead of 1

* remove print statements

* add linter for print statements and remove print

* hide all buttons when edit disabled

* add bulk import API

* update attribute bindings

* unify button styles

* bulk add recipe feature

* thanks linter!

* uncomment code

Co-authored-by: Hayden <hay-kot@pm.me>
2021-10-28 19:28:33 -08:00
Hayden
7055cb2c43 feat(backend): basic support for background tasks 2021-10-23 16:42:59 -08:00
Hayden
3b920babe3 feat: Add brute strategy to ingredient processor (#744)
* fix UI column width

* words

* update parser to support diff strats

* add new model url

* make button more visible

* fix nutrition error

* feat(backend):  add 'brute' strategy for parsing ingredients

* satisfy linter

* update UI for creation page

* feat(backend):  log 422 errors in detail when not in PRODUCTION

* add strategy selector

Co-authored-by: Hayden <hay-kot@pm.me>
2021-10-16 16:06:13 -08:00
Hayden
2e9026f9ea feat(frontend): Fix scheduler, forgot password flow, and minor bug fixes (#725)
* feat(frontend): 💄 add recipe title

* fix(frontend): 🐛 fixes #722 side-bar issue

* feat(frontend):  Add page titles to all pages

* minor cleanup

* refactor(backend): ♻️ rewrite scheduler to be more modulare and work

* feat(frontend):  start password reset functionality

* refactor(backend): ♻️ refactor application settings to facilitate dependency injection

* refactor(backend): 🔥 remove RECIPE_SETTINGS env variables in favor of group settings

* formatting

* refactor(backend): ♻️ align naming convention

* feat(backend):  password reset

* test(backend):  password reset

* feat(frontend):  self-service password reset

* purge password schedule

* update user creation for tests

Co-authored-by: Hayden <hay-kot@pm.me>
2021-10-07 09:39:47 -08:00
Hayden
5d43fac7c9 feat(frontend): add group permissions (#721)
* style(frontend): 💄 add darktheme custom

* add dummy users in dev mode

* feat(frontend):  add group permissions editor UI

* feat(backend):  add group permissions setters

* test(backend):  tests for basic permission get/set (WIP)

Needs more testing

* remove old test

* chore(backend): copy template.env on setup

* feat(frontend):  enable send invitation via email

* feat(backend):  enable send invitation via email

* feat:  add app config checker for site-settings

* refactor(frontend): ♻️ consolidate bool checks

Co-authored-by: Hayden <hay-kot@pm.me>
2021-10-04 20:16:37 -08:00
Hayden
568215cf70 perf(backend): remove validation on recipe summary response (#718)
* count responses

* perf(backend):  remove validation on recipe summary response

use the construct() method from pydantic to reduce get time as well as optimize the SQL query for recipes

* update UI to support new categories/tags

* fix(backend): 🐛 restrict recipes by group

Co-authored-by: Hayden <hay-kot@pm.me>
2021-10-02 22:07:29 -08:00
Hayden
476aefeeb0 refactor(backend): ♻️ cleanup HTTP service classes and remove database singleton (#687)
* refactor(backend): ♻️ cleanup duplicate code in http services

* refactor(backend): ♻️ refactor database away from singleton design

removed the database single and instead injected the session into a new Database class that is created during each request life-cycle. Now sessions no longer need to be passed into each method on the database

All tests pass, but there are likely some hidden breaking changes that were not discovered.

* fix venv

* disable venv cache

* fix install script

* bump poetry version

* postgres fixes

* revert install

* fix db initialization for postgres

* add postgres to docker

* refactor(backend): ♻️ cleanup unused and duplicate code in http services

* refactor(backend): remove sessions from arguments

* refactor(backend): ♻️ convert units and ingredients to use http service class

* test(backend):  add unit and food tests

* lint

* update tags

* re-enable cache

* fix missing fraction in db

* fix lint

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-09-19 15:31:34 -08:00
Hayden
b542583303 feat(backend): rewrite mealplanner with simple api (#683)
* feat(backend):  new meal-planner feature

* feat(frontend):  new meal plan feature

* refactor(backend): ♻️ refactor base services classes and add mixins for crud

* feat(frontend):  add UI/API for mealplanner

* feat(backend):  add get_today and get_slice options for mealplanner

* test(backend):  add and update group mealplanner tests

* fix(backend): 🐛 Fix recipe_id column type for PG

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-09-12 11:05:09 -08:00
Hayden
bdaf758712 feat(backend): start multi-tenant support (WIP) (#680)
* fix ts types

* feat(code-generation): ♻️ update code-generation formats

* new scope

* add step button

* fix linter error

* update code-generation tags

* feat(backend):  start multi-tenant support

* feat(backend):  group invitation token generation and signup

* refactor(backend): ♻️ move group admin actions to admin router

* set url base to include `/admin`

* feat(frontend):  generate user sign-up links

* test(backend):  refactor test-suite to further decouple tests (WIP)

* feat(backend): 🐛 assign owner on backup import for recipes

* fix(backend): 🐛 assign recipe owner on migration from other service

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-09-09 08:51:29 -08:00
Hayden
3c504e7048 feat(backend): migrate site-settings to groups (#673)
* feat(frontend):  add user registration page (WIP)

* feat(backend):  add user registration (WIP)

* test(backend):  add validator testing for registration schema

* feat(backend):  continued work on user sign-up

* feat(backend):  add signup flow and user/group settings

* test(backend):  user-creation tests and small refactor of existing tests

* fix(backend):  fix failing group tests

* style: 🎨 fix lint issues

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-09-05 22:05:29 -08:00
Hayden
3d87ffc3a5 refactor(backend): ♻️ refactor backend services (#669)
* refactor(backend): ♻️ refactor backend services

* refactor(backend): ♻️ move user model folder into own directory for future expansion

* fix overriding results

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-09-04 12:28:49 -08:00
Hayden
990244e37e Refactor/group page (#666)
* refactor(backend): ♻️ Refactor base class to be abstract and create a router factory method

* feat(frontend):  add group edit

* refactor(backend):  add group edit support

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-09-01 21:39:40 -08:00
Hayden
9b1bf56a5d [Feat] Migrate from Pages to Cookbooks (#664)
* feat:  Add Description to Cookbooks

* feat(frontend):  Cookbook view page

* feat(frontend): 💄 Add final UI touches

* fix(backend): 🐛 Add get by slug or id

* fix linting issue

* test(backend):  Update tests from pages -> cookbooks

* refactor(backend): 🔥 Delete old page files

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-08-31 18:51:34 -08:00
hay-kot
d24e95c091 feat(backend): add initial cookbook support 2021-08-31 14:39:29 -08:00
hay-kot
086098899d update dependency injection methods 2021-08-29 17:10:29 -08:00
hay-kot
f78eb4ec39 fix(backend): 🐛 fix error when assigning favorite recipe 2021-08-28 17:42:12 -08:00
hay-kot
4a7f8428c5 refactor(backend): ♻️ rename UserInDb -> PrivateUser 2021-08-28 17:31:05 -08:00
hay-kot
7c936c85ae style(backend): 🎨 add isort to lint and CI/CD 2021-08-28 14:27:56 -08:00
hay-kot
da501adce8 refactor(backend): ♻️ add initial support for global dependency injection 2021-08-28 14:16:00 -08:00
hay-kot
f8c2f760bd style(backend): 🎨 2021-08-28 14:13:10 -08:00
hay-kot
161618808e refactor(backend): 🔥 Remove Backend Theme Support 2021-08-27 20:47:24 -08:00
hay-kot
dd1b1ad067 initialize food and units 2021-08-27 20:28:54 -08:00
hay-kot
a266a244d9 feat(backend): Add Generic Type Hint Support for Data Access Layer 2021-08-27 20:27:20 -08:00
hay-kot
0675c570ce refactor(backend): ♻️ Split Recipe Schema Code 2021-08-27 20:17:41 -08:00
hay-kot
d1a7ec3b95 fix(backend): 🐛 Fix CI/CD Linting Failures 2021-08-23 15:33:39 -08:00
hay-kot
abb0b84e22 fix auto initialize models 2021-08-23 12:25:16 -08:00
hay-kot
04ebc07333 fix restore from backup 2021-08-22 16:15:08 -08:00
hay-kot
234db39cc7 refactor(backend): ♻️ Refactor to make SessionLocal a globally accessible object 2021-08-22 16:08:37 -08:00
hay-kot
122d35ec09 feat(backend): 🗃️ Add CRUD opertaions for Food and Units 2021-08-22 13:10:18 -08:00
hay-kot
cb85b14e01 feat(backend): Add Rich for Development Logging 2021-08-07 15:13:42 -08:00
hay-kot
51876508f3 improve backend performance with caching 2021-08-07 11:28:40 -08:00
hay-kot
d67240d449 refactor schema folders 2021-08-01 19:24:33 -08:00
Hayden
d7c883feca Frontend Fixes + Adjust Caddyfile (#518)
* token error handling

* Add additional settings to recipes

* fixes #515

* remove index.html

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-06-14 19:37:38 -08:00
Hayden
2dc9c8e843 Improve Test Coverage (#511)
* add recipe scaling notes

* test theme rename

* fix coverage call to use poetry

* remove print

* remove async

* consolidate test case data

* fix mealplan tests

* remove redundant else

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-06-13 13:09:44 -08:00
Hayden
e95ca870b1 Add Database Layer for Recipe Scaling (#506)
* move badge

* fix add individual ingredient

* fix redirect issue

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-06-12 22:23:23 -08:00
Hayden
c175c8e9a0 add soft fail user dependency (#479)
* add soft fail user dependency

* filter private recipes on get_recipe_summary

* code clean-up

* restrict single recipe

* cleanup dependencies

* add auto_error oauth2 scheme

* update make file

* update make file

* fix early return

* bump python deps

* restrict category/tags

* format deps

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-06-10 18:31:14 -08:00
hay-kot
785ab184af fix column type 2021-05-29 21:24:23 -08:00
Hayden
2b97af5728 feature/recipe-comments (#448)
* fix favorite color issue

* db and models for comments

* rename files

* initial UI for comments

* fix format

* import / export

* fixes #428

* format

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-05-29 20:50:17 -08:00
Hayden
6f38fcf81b feature/favorite-recipes (#443)
* add favorites options

* bump dependencies

* add badges to all cards

* typo

* remove console.log

* fix site-loader viewport

Co-authored-by: hay-kot <hay-kot@pm.me>
2021-05-29 15:54:18 -08:00