From 8c0c8be6592fbf134526c0547273e618eef2c6d4 Mon Sep 17 00:00:00 2001 From: Hayden <64056131+hay-kot@users.noreply.github.com> Date: Thu, 17 Mar 2022 10:30:10 -0800 Subject: [PATCH] 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 --- frontend/api/class-interfaces/recipe-units.ts | 14 +- .../components/Domain/Recipe/RecipeTools.vue | 5 +- frontend/components/global/CrudTable.vue | 187 ++++++++++++++++++ .../composables/recipes/use-recipe-units.ts | 12 +- frontend/composables/use-utils.ts | 11 ++ frontend/layouts/admin.vue | 17 -- frontend/layouts/default.vue | 8 - frontend/pages/admin/toolbox/foods.vue | 171 ---------------- frontend/pages/admin/toolbox/units.vue | 142 ------------- frontend/pages/group/data.vue | 83 ++++++++ frontend/pages/group/data/foods.vue | 176 +++++++++++++++++ frontend/pages/group/data/index.vue | 24 +++ frontend/pages/group/data/units.vue | 167 ++++++++++++++++ frontend/pages/group/mealplan/settings.vue | 4 +- frontend/pages/user/profile/index.vue | 9 + frontend/types/api-types/admin.ts | 2 +- frontend/types/components.d.ts | 6 +- 17 files changed, 674 insertions(+), 364 deletions(-) create mode 100644 frontend/components/global/CrudTable.vue delete mode 100644 frontend/pages/admin/toolbox/foods.vue delete mode 100644 frontend/pages/admin/toolbox/units.vue create mode 100644 frontend/pages/group/data.vue create mode 100644 frontend/pages/group/data/foods.vue create mode 100644 frontend/pages/group/data/index.vue create mode 100644 frontend/pages/group/data/units.vue diff --git a/frontend/api/class-interfaces/recipe-units.ts b/frontend/api/class-interfaces/recipe-units.ts index 7d9d14860633..a63f8a055bb2 100644 --- a/frontend/api/class-interfaces/recipe-units.ts +++ b/frontend/api/class-interfaces/recipe-units.ts @@ -1,24 +1,14 @@ import { BaseCRUDAPI } from "../_base"; +import { CreateIngredientUnit, IngredientUnit } from "~/types/api-types/recipe"; const prefix = "/api"; -export interface CreateUnit { - name: string; - abbreviation: string; - fraction: boolean; - description: string; -} - -export interface Unit extends CreateUnit { - id: number; -} - const routes = { unit: `${prefix}/units`, unitsUnit: (tag: string) => `${prefix}/units/${tag}`, }; -export class UnitAPI extends BaseCRUDAPI { +export class UnitAPI extends BaseCRUDAPI { baseRoute: string = routes.unit; itemRoute = routes.unitsUnit; } diff --git a/frontend/components/Domain/Recipe/RecipeTools.vue b/frontend/components/Domain/Recipe/RecipeTools.vue index 1ab1e1c1ea77..622b72a8b628 100644 --- a/frontend/components/Domain/Recipe/RecipeTools.vue +++ b/frontend/components/Domain/Recipe/RecipeTools.vue @@ -27,7 +27,7 @@ {{ data.item.name || data.item }} -