120 Commits

Author SHA1 Message Date
Michael Genson
cb15db2d27
feat: re-write get all routes to use pagination (#1424)
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>
2022-06-25 11:39:38 -08:00
Hayden
5db4dedc3f hotfix: tame typescript beast 2022-06-20 16:48:39 -08:00
Hayden
f122c382e9
add recipe.image cache key to bush caches (#1427)
* add recipe.image cache key to bush caches

* hotfix: TS type error
2022-06-19 11:47:16 -08:00
Hayden
c865bc7769
fix: only show scaler when ingredients amounts enabled (#1426) 2022-06-19 10:27:32 -08:00
Hayden
5a053cdcd6
feat: mealplan-webhooks (#1403)
* 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
2022-06-17 13:25:47 -08:00
Hayden
3030e3e7f4
feat: implement user favorites page (#1376)
* fix geFavorites return

* add support for toggling to dense cards on desktop

* add favorites page link

* implement basic favorites page
2022-06-13 09:33:46 -08:00
Michael Genson
f6c18ec73d
fix avoid page breaks in sections when printing recipes and other CSS tweaks (#1372)
* grouped ingredients and instructions into sections

* added missing import

* divided ingredient sections and instruction sections into their own containers

* tweaked css to prevent sections from getting split between pages

* replaced horizontal rule with a text underline

* removed leftover CSS

* implement computer properties as reducers

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2022-06-12 16:43:09 -08:00
Michael Genson
92ccbae657
fix: fixed text color on RecipeCard in RecipePrintView and implemented ingredient sections (#1351)
* Enhanced ingredients in RecipePrintView

* Resolved frontend lint tests

* switched lets to consts and simplified import

* implement with CSS grid

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2022-06-10 16:48:07 -08:00
Michael Genson
4662253d0e
Fixed alpha sort in RecipeOrganizerPage (#1354) 2022-06-09 08:50:03 -08:00
Benjamin Pabst
8836a258bd
feat: add custom scaling option (#1345)
* Added custom scaling option

* Allow custom scaling with no yield set

* Made edit-scale translated

* fixed merge conflict

* Refactored scale editor to use menu

* replaced vslot with #

* linter issues

* fixed linter issues

* fixed one more linter issue

* format files + minor UI changes

* remove console.log

* move buttons into component and setup v-model

* drop servings text

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2022-06-09 08:01:25 -08:00
Hayden
7eb80d18d2
feat: attached images by drag and drop for recipe steps (#1341)
* add drag and drop support for recipe steps

* fix recipe assets dialog state

* add attr support for markdown editor

* add persistent hint for recipe text editor
2022-06-05 11:28:38 -08:00
Hayden
12f480eb75
refactor: unify recipe-organizer components (#1340)
* use generic context menu

* implement organizer stores

* add basic organizer types

* refactor selectors to apply for all organizers

* remove legacy organizer composables
2022-06-03 20:12:32 -08:00
Hayden
5a0c034391
fix: shopping list label editor (#1333)
* remove head props

* lazily compute itemsByLabel with watcher on fetch

* remove unused import
2022-06-02 09:12:05 -08:00
Hayden
d2a9f7ca24 fix: consoldate stores to fix mismatched state 2022-05-29 17:34:41 -08:00
Hayden
c3bdfe7b3b
fix: printer page refs (#1314) 2022-05-29 09:15:38 -08:00
Hayden
3542bb0927
fix: bad import path (#1313)
* fix bad import

* add eslint rule for incorrect imports
2022-05-29 09:09:36 -08:00
Hayden
3dcfcc1fa9
feat: rewrite print implementation to support new ing (#1305) 2022-05-28 17:00:37 -08:00
Hayden
d66d6c55ae
fix recipe assets build (#1286) 2022-05-25 11:50:45 -08:00
Hayden
7609715d9e
remove explicity typescript version (#1285)
* remove explicity typescript version

* i hate javascript
2022-05-25 10:14:24 -08:00
Hayden
921fceddea
chore: update dev dependencies (#1282)
* update dev dependencies

* upgrade eslint

* resolve several errors

* resolve eslint errors
2022-05-25 09:38:21 -08:00
Hayden
8235bd5104
chore: bump deps (#1252)
* bump deps

* fix: add apt-get update
2022-05-22 11:52:57 -08:00
Hayden
cd0da36e7c
fix: recipe ingredient editor bugs (#1251)
* filter unallowed fields #1140

* fix type and layout

* propery validate none type quantites

* fix rendering error #1237
2022-05-22 11:16:23 -08:00
Philipp Fischbeck
479900e912
Consolidate frontend types (#1245) 2022-05-21 11:22:02 -08:00
Miroito
3125730702
Improve ingredient sections behavior (#1233) 2022-05-15 15:30:18 -08:00
Hayden
4fe19b88ca
ux: unify UI based on user-feedback (#1216)
* unify UI based on user-feedback

* fix layout shify error

* implement drag and drop animation
2022-05-11 17:14:03 -08:00
Hayden
1fefd40623
feat: show-recipe-scraper-version (#1210)
* add recipe scraper version

* add scraper version and details copy dialog

* implement axios downloader - fix #1171
2022-05-08 17:43:03 -08:00
Hayden
7e4da3e5a4
feat: improved registration signup flow (#1188)
refactored signup flow for entire registration process. Utilized seed data option for optional seeding of Foods, Units, and Labels. Localized registration page.
2022-05-06 11:18:06 -08:00
Hayden
d6e2b4ab85
Feature/user seedable foods (#1176)
* remove odd ingredients

* UI Elements for food

* update translated percentage

* spek -> speck

* generate types

* seeder api endpoints + tests

* implement foods seeder UI

* localize some food strings
2022-05-01 12:45:50 -08:00
Hayden
2613420cd1
security: fix unsafe html inputs (#1173)
* use DomPurify to sanatize ingredient html

* fix list-item render for markdown

* address volar linter issue
2022-04-24 13:00:04 -08:00
Miroito
60682dba75
Allow tags/categories/tools deletion (#1142)
* feat: allow tags/categories/tools deletion

* Use gray color for delete action
2022-04-20 10:09:23 -08:00
Hayden
b93dae109e
feat: merge food into another (#1143)
* setup food repository

* add merge route and payloads

* remove type checking

* generate types

* implement merge dialog

* food repo tests

* split install from workflow

* bum dependencies

* revert changes

* update copy

* refactor URLs to avoid incorrect template being used

* stick advanced items under developer mode

* use utility component for advanced feature
2022-04-09 19:08:48 -08:00
Hayden
10784b6e24
feat: support require_all property for cookbooks (#1130)
* add direction prop for icon position

* add support for require_all properties on cookbook

* update type annotations

* add and - or filter support

* update cookbook API

* generate types

* implement editor for additional options

* update version number
2022-04-03 16:32:58 -08:00
Hayden
e9bb39c744
feat: docker volume validation (#1125)
* feat: add api endpoints for volume check

* feat: add docker icon

* add size prop

* feat: add frontend UI for checking docker-volume

* update caddy to server validation file

* add more extensive documentation around setup req

* fix: wrong type on user id #1123

* spelling

* refactor: cleanup excessive function calls
2022-04-02 16:35:53 -08:00
Hayden
3e3b43c977
feat: add on mounted hook for bookmarklets (#1120)
* add utility type to hide Advanced items

* add default text

* fix #1115 and minor refactorings

* generate types

* hotfix: add validator to catch null vlaues
2022-04-01 11:05:25 -08:00
Hayden
cfaac2e060
feat: additional cookbook features (tags, tools, and public) (#1116)
* migration: add public, tags, and tools

* generate frontend types

* add help icon

* start replacement for tool-tag-category selector

* add help icon utility

* use generator types

* add support for cookbook features

* add UI elements for cookbook features

* fix tests

* fix type error
2022-04-01 09:50:31 -08:00
Hayden
1092e0ce7c
feat: add peak toggle for seeing original ingredient txt (#1111)
* add peak toggle for seeing original ingredient txt

* add recent changes + format

* cleanup search view

* space out results
2022-03-29 09:38:23 -08:00
Hayden
1e90dc2022
feat: add group statistics on profile page
* resolve file not found error and add constants

* add group stats and storage functionality

* generate new types

* add statistics and storage cap graphs

* fix: add loadFood query param #1103

* refactor to flex view
2022-03-27 15:12:18 -08:00
Hayden
0f82523cdd
Fix/category link (#1087)
* fix and refactor chip links

* fix missing UI components for data management

* fix button text
2022-03-22 21:08:06 -08:00
Hayden
ba325c12f7
Fix/fix broken pwa (#1086)
* remove fetch / use axios fix #1077

* revert checkbox change

* add password peek

* fix bool check
2022-03-22 20:41:54 -08:00
Miroito
e743d2c66b
Reorganize Group/User Page Routes (#1084)
* Consolidate group routes

* Update doc migration link
2022-03-22 19:54:16 -08:00
Hayden
50a67f9301
Feature/auto generate crowdin data (#1071)
* add translated key

* update code generation for crowdin generation

* use composition api and minor styling changes
2022-03-19 16:33:55 -08:00
Philipp Fischbeck
022cbd1616
Enable localization based on browser settings, add language selector (#925)
* Enable localization based on browser settings, add language selector

* Add dialog for language selection
2022-03-19 13:27:40 -08:00
Hayden
8f569509bf
Feature/move label editor (#1069)
* update default color

* move labels editor
2022-03-19 11:31:17 -08:00
Hayden
8c0c8be659
Feature/group items editor (#1064)
* update types

* remove toolbox routes

* remove unused ""

* add generic crud table

* update calls for type safety

* recreate food/unit editors

* fix type error

* remove shopping list link

* add transition

* add basic search box

* conditional show-select

* styling + basic download support

* generic download as json function

* add fraction support

* add export option

* add label text
2022-03-17 10:30:10 -08:00
Hayden
8eefa05393
Feature/database backups (#1040)
* add annotations to docs

* alchemy data dumper

* initial tests

* sourcery refactor

* db backups/restore

* potential postgres fix

* potential postgres fix

* this is terrible

* potential pg fix

* cleanup

* remove unused import

* fix comparison

* generate frontend types

* update timestamp and add directory filter

* rewrite to new admin-api

* update backup routers

* add file_token response helper

* update imports

* remove test_backup
2022-03-13 15:42:22 -08:00
Hayden
de6fd9472d
Feature/collapse recipe sections (#1021)
* toggle hide recipe sections

* disable parser if food or units is defined

* make inputs clearable

* remove console.logs

* fix linter error

* fix linter errors
2022-03-03 19:43:56 -09:00
Hayden
568a1a0015
Fix/multiple bug fixes (#1015)
* test-case for #1011

* revert regressions for #1011

* update cache key on new image

* lint

* fix #1012

* typing

* random_recipe fixture

* remove delete button when no listeners are present

* spacing

* update copy to match settings value
2022-02-27 12:48:21 -09:00
Hayden
6a5fd8e4f8
Style/update mobile styles (#1008)
* update styling for mobile

* remove Coming Soon
2022-02-26 14:00:55 -09:00
Hayden
ccfaa02b03
Fix/multiple bug reports (#1002)
* fix type issues for #999

* fix regression #995

* remove error from frontend and log error #996

* cleanup darkmode on login page

* keep primary color bg
2022-02-23 15:04:45 -09:00
Hayden
c617251f4c
feature: proper multi-tenant-support (#969)(WIP)
* update naming

* refactor tests to use shared structure

* shorten names

* add tools test case

* refactor to support multi-tenant

* set group_id on creation

* initial refactor for multitenant tags/cats

* spelling

* additional test case for same valued resources

* fix recipe update tests

* apply indexes to foreign keys

* fix performance regressions

* handle unknown exception

* utility decorator for function debugging

* migrate recipe_id to UUID

* GUID for recipes

* remove unused import

* move image functions into package

* move utilities to packages dir

* update import

* linter

* image image and asset routes

* update assets and images to use UUIDs

* fix migration base

* image asset test coverage

* use ids for categories and tag crud functions

* refactor recipe organizer test suite to reduce duplication

* add uuid serlization utility

* organizer base router

* slug routes testing and fixes

* fix postgres error

* adopt UUIDs

* move tags, categories, and tools under "organizers" umbrella

* update composite label

* generate ts types

* fix import error

* update frontend types

* fix type errors

* fix postgres errors

* fix #978

* add null check for title validation

* add note in docs on multi-tenancy
2022-02-13 12:23:42 -09:00