mirror of
https://github.com/mealie-recipes/mealie.git
synced 2025-07-24 07:39:41 +02:00
reorganize all frontend items
This commit is contained in:
parent
d67240d449
commit
00a8fdda41
147 changed files with 3845 additions and 743 deletions
253
frontend/types/api-types/admin.ts
Normal file
253
frontend/types/api-types/admin.ts
Normal file
|
@ -0,0 +1,253 @@
|
|||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
/* This file was automatically generated from pydantic models by running pydantic2ts.
|
||||
/* Do not modify it by hand - just update the pydantic models and then re-run the script
|
||||
*/
|
||||
|
||||
export interface AppInfo {
|
||||
production: boolean;
|
||||
version: string;
|
||||
demoStatus: boolean;
|
||||
}
|
||||
export interface AppStatistics {
|
||||
totalRecipes: number;
|
||||
totalUsers: number;
|
||||
totalGroups: number;
|
||||
uncategorizedRecipes: number;
|
||||
untaggedRecipes: number;
|
||||
}
|
||||
export interface BackupJob {
|
||||
tag?: string;
|
||||
options: BackupOptions;
|
||||
templates?: string[];
|
||||
}
|
||||
export interface BackupOptions {
|
||||
recipes?: boolean;
|
||||
settings?: boolean;
|
||||
pages?: boolean;
|
||||
themes?: boolean;
|
||||
groups?: boolean;
|
||||
users?: boolean;
|
||||
notifications?: boolean;
|
||||
}
|
||||
export interface CategoryBase {
|
||||
name: string;
|
||||
id: number;
|
||||
slug: string;
|
||||
}
|
||||
export interface ChowdownURL {
|
||||
url: string;
|
||||
}
|
||||
export interface Colors {
|
||||
primary?: string;
|
||||
accent?: string;
|
||||
secondary?: string;
|
||||
success?: string;
|
||||
info?: string;
|
||||
warning?: string;
|
||||
error?: string;
|
||||
}
|
||||
export interface CustomPageBase {
|
||||
name: string;
|
||||
slug?: string;
|
||||
position: number;
|
||||
categories?: RecipeCategoryResponse[];
|
||||
}
|
||||
export interface RecipeCategoryResponse {
|
||||
name: string;
|
||||
id: number;
|
||||
slug: string;
|
||||
recipes?: Recipe[];
|
||||
}
|
||||
export interface Recipe {
|
||||
id?: number;
|
||||
name?: string;
|
||||
slug?: string;
|
||||
image?: unknown;
|
||||
description?: string;
|
||||
recipeCategory?: string[];
|
||||
tags?: string[];
|
||||
rating?: number;
|
||||
dateAdded?: string;
|
||||
dateUpdated?: string;
|
||||
recipeYield?: string;
|
||||
recipeIngredient?: RecipeIngredient[];
|
||||
recipeInstructions?: RecipeStep[];
|
||||
nutrition?: Nutrition;
|
||||
tools?: string[];
|
||||
totalTime?: string;
|
||||
prepTime?: string;
|
||||
performTime?: string;
|
||||
settings?: RecipeSettings;
|
||||
assets?: RecipeAsset[];
|
||||
notes?: RecipeNote[];
|
||||
orgURL?: string;
|
||||
extras?: {
|
||||
[k: string]: unknown;
|
||||
};
|
||||
comments?: CommentOut[];
|
||||
}
|
||||
export interface RecipeIngredient {
|
||||
title?: string;
|
||||
note?: string;
|
||||
unit?: RecipeIngredientUnit;
|
||||
food?: RecipeIngredientFood;
|
||||
disableAmount?: boolean;
|
||||
quantity?: number;
|
||||
}
|
||||
export interface RecipeIngredientUnit {
|
||||
name?: string;
|
||||
description?: string;
|
||||
}
|
||||
export interface RecipeIngredientFood {
|
||||
name?: string;
|
||||
description?: string;
|
||||
}
|
||||
export interface RecipeStep {
|
||||
title?: string;
|
||||
text: string;
|
||||
}
|
||||
export interface Nutrition {
|
||||
calories?: string;
|
||||
fatContent?: string;
|
||||
proteinContent?: string;
|
||||
carbohydrateContent?: string;
|
||||
fiberContent?: string;
|
||||
sodiumContent?: string;
|
||||
sugarContent?: string;
|
||||
}
|
||||
export interface RecipeSettings {
|
||||
public?: boolean;
|
||||
showNutrition?: boolean;
|
||||
showAssets?: boolean;
|
||||
landscapeView?: boolean;
|
||||
disableComments?: boolean;
|
||||
disableAmount?: boolean;
|
||||
}
|
||||
export interface RecipeAsset {
|
||||
name: string;
|
||||
icon: string;
|
||||
fileName?: string;
|
||||
}
|
||||
export interface RecipeNote {
|
||||
title: string;
|
||||
text: string;
|
||||
}
|
||||
export interface CommentOut {
|
||||
text: string;
|
||||
id: number;
|
||||
uuid: string;
|
||||
recipeSlug: string;
|
||||
dateAdded: string;
|
||||
user: UserBase;
|
||||
}
|
||||
export interface UserBase {
|
||||
id: number;
|
||||
username?: string;
|
||||
admin: boolean;
|
||||
}
|
||||
export interface CustomPageImport {
|
||||
name: string;
|
||||
status: boolean;
|
||||
exception?: string;
|
||||
}
|
||||
export interface CustomPageOut {
|
||||
name: string;
|
||||
slug?: string;
|
||||
position: number;
|
||||
categories?: RecipeCategoryResponse[];
|
||||
id: number;
|
||||
}
|
||||
export interface DebugInfo {
|
||||
production: boolean;
|
||||
version: string;
|
||||
demoStatus: boolean;
|
||||
apiPort: number;
|
||||
apiDocs: boolean;
|
||||
dbType: string;
|
||||
dbUrl: string;
|
||||
defaultGroup: string;
|
||||
}
|
||||
export interface GroupImport {
|
||||
name: string;
|
||||
status: boolean;
|
||||
exception?: string;
|
||||
}
|
||||
export interface ImportBase {
|
||||
name: string;
|
||||
status: boolean;
|
||||
exception?: string;
|
||||
}
|
||||
export interface ImportJob {
|
||||
recipes?: boolean;
|
||||
settings?: boolean;
|
||||
pages?: boolean;
|
||||
themes?: boolean;
|
||||
groups?: boolean;
|
||||
users?: boolean;
|
||||
notifications?: boolean;
|
||||
name: string;
|
||||
force?: boolean;
|
||||
rebase?: boolean;
|
||||
}
|
||||
export interface Imports {
|
||||
imports: LocalBackup[];
|
||||
templates: string[];
|
||||
}
|
||||
export interface LocalBackup {
|
||||
name: string;
|
||||
date: string;
|
||||
}
|
||||
export interface MigrationFile {
|
||||
name: string;
|
||||
date: string;
|
||||
}
|
||||
export interface MigrationImport {
|
||||
name: string;
|
||||
status: boolean;
|
||||
exception?: string;
|
||||
slug?: string;
|
||||
}
|
||||
export interface Migrations {
|
||||
type: string;
|
||||
files?: MigrationFile[];
|
||||
}
|
||||
export interface NotificationImport {
|
||||
name: string;
|
||||
status: boolean;
|
||||
exception?: string;
|
||||
}
|
||||
export interface RecipeImport {
|
||||
name: string;
|
||||
status: boolean;
|
||||
exception?: string;
|
||||
slug?: string;
|
||||
}
|
||||
export interface SettingsImport {
|
||||
name: string;
|
||||
status: boolean;
|
||||
exception?: string;
|
||||
}
|
||||
export interface SiteSettings {
|
||||
language?: string;
|
||||
firstDayOfWeek?: number;
|
||||
showRecent?: boolean;
|
||||
cardsPerSection?: number;
|
||||
categories?: CategoryBase[];
|
||||
}
|
||||
export interface SiteTheme {
|
||||
id?: number;
|
||||
name?: string;
|
||||
colors?: Colors;
|
||||
}
|
||||
export interface ThemeImport {
|
||||
name: string;
|
||||
status: boolean;
|
||||
exception?: string;
|
||||
}
|
||||
export interface UserImport {
|
||||
name: string;
|
||||
status: boolean;
|
||||
exception?: string;
|
||||
}
|
60
frontend/types/api-types/events.ts
Normal file
60
frontend/types/api-types/events.ts
Normal file
|
@ -0,0 +1,60 @@
|
|||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
/* This file was automatically generated from pydantic models by running pydantic2ts.
|
||||
/* Do not modify it by hand - just update the pydantic models and then re-run the script
|
||||
*/
|
||||
|
||||
export type EventCategory = "general" | "recipe" | "backup" | "scheduled" | "migration" | "group" | "user";
|
||||
export type DeclaredTypes = "General" | "Discord" | "Gotify" | "Pushover" | "Home Assistant";
|
||||
export type GotifyPriority = "low" | "moderate" | "normal" | "high";
|
||||
|
||||
export interface Discord {
|
||||
webhookId: string;
|
||||
webhookToken: string;
|
||||
}
|
||||
export interface Event {
|
||||
id?: number;
|
||||
title: string;
|
||||
text: string;
|
||||
timeStamp?: string;
|
||||
category?: EventCategory & string;
|
||||
}
|
||||
export interface EventNotificationIn {
|
||||
id?: number;
|
||||
name?: string;
|
||||
type?: DeclaredTypes & string;
|
||||
general?: boolean;
|
||||
recipe?: boolean;
|
||||
backup?: boolean;
|
||||
scheduled?: boolean;
|
||||
migration?: boolean;
|
||||
group?: boolean;
|
||||
user?: boolean;
|
||||
notificationUrl?: string;
|
||||
}
|
||||
export interface EventNotificationOut {
|
||||
id?: number;
|
||||
name?: string;
|
||||
type?: DeclaredTypes & string;
|
||||
general?: boolean;
|
||||
recipe?: boolean;
|
||||
backup?: boolean;
|
||||
scheduled?: boolean;
|
||||
migration?: boolean;
|
||||
group?: boolean;
|
||||
user?: boolean;
|
||||
}
|
||||
export interface EventsOut {
|
||||
total: number;
|
||||
events: Event[];
|
||||
}
|
||||
export interface Gotify {
|
||||
hostname: string;
|
||||
token: string;
|
||||
priority?: GotifyPriority & string;
|
||||
}
|
||||
export interface TestEvent {
|
||||
id?: number;
|
||||
testUrl?: string;
|
||||
}
|
52
frontend/types/api-types/meal-plan.ts
Normal file
52
frontend/types/api-types/meal-plan.ts
Normal file
|
@ -0,0 +1,52 @@
|
|||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
/* This file was automatically generated from pydantic models by running pydantic2ts.
|
||||
/* Do not modify it by hand - just update the pydantic models and then re-run the script
|
||||
*/
|
||||
|
||||
export interface ListItem {
|
||||
title?: string;
|
||||
text?: string;
|
||||
quantity?: number;
|
||||
checked?: boolean;
|
||||
}
|
||||
export interface MealDayIn {
|
||||
date?: string;
|
||||
meals: MealIn[];
|
||||
}
|
||||
export interface MealIn {
|
||||
slug?: string;
|
||||
name?: string;
|
||||
description?: string;
|
||||
}
|
||||
export interface MealDayOut {
|
||||
date?: string;
|
||||
meals: MealIn[];
|
||||
id: number;
|
||||
}
|
||||
export interface MealPlanIn {
|
||||
group: string;
|
||||
startDate: string;
|
||||
endDate: string;
|
||||
planDays: MealDayIn[];
|
||||
}
|
||||
export interface MealPlanOut {
|
||||
group: string;
|
||||
startDate: string;
|
||||
endDate: string;
|
||||
planDays: MealDayIn[];
|
||||
uid: number;
|
||||
shoppingList?: number;
|
||||
}
|
||||
export interface ShoppingListIn {
|
||||
name: string;
|
||||
group?: string;
|
||||
items: ListItem[];
|
||||
}
|
||||
export interface ShoppingListOut {
|
||||
name: string;
|
||||
group?: string;
|
||||
items: ListItem[];
|
||||
id: number;
|
||||
}
|
141
frontend/types/api-types/recipe.ts
Normal file
141
frontend/types/api-types/recipe.ts
Normal file
|
@ -0,0 +1,141 @@
|
|||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
/* This file was automatically generated from pydantic models by running pydantic2ts.
|
||||
/* Do not modify it by hand - just update the pydantic models and then re-run the script
|
||||
*/
|
||||
|
||||
export interface AllRecipeRequest {
|
||||
properties: string[];
|
||||
limit?: number;
|
||||
}
|
||||
export interface CategoryBase {
|
||||
name: string;
|
||||
id: number;
|
||||
slug: string;
|
||||
}
|
||||
export interface CategoryIn {
|
||||
name: string;
|
||||
}
|
||||
export interface CommentIn {
|
||||
text: string;
|
||||
}
|
||||
export interface CommentOut {
|
||||
text: string;
|
||||
id: number;
|
||||
uuid: string;
|
||||
recipeSlug: string;
|
||||
dateAdded: string;
|
||||
user: UserBase;
|
||||
}
|
||||
export interface UserBase {
|
||||
id: number;
|
||||
username?: string;
|
||||
admin: boolean;
|
||||
}
|
||||
export interface CommentSaveToDB {
|
||||
text: string;
|
||||
recipeSlug: string;
|
||||
user: number;
|
||||
}
|
||||
export interface Nutrition {
|
||||
calories?: string;
|
||||
fatContent?: string;
|
||||
proteinContent?: string;
|
||||
carbohydrateContent?: string;
|
||||
fiberContent?: string;
|
||||
sodiumContent?: string;
|
||||
sugarContent?: string;
|
||||
}
|
||||
export interface Recipe {
|
||||
id?: number;
|
||||
name?: string;
|
||||
slug?: string;
|
||||
image?: unknown;
|
||||
description?: string;
|
||||
recipeCategory?: string[];
|
||||
tags?: string[];
|
||||
rating?: number;
|
||||
dateAdded?: string;
|
||||
dateUpdated?: string;
|
||||
recipeYield?: string;
|
||||
recipeIngredient?: RecipeIngredient[];
|
||||
recipeInstructions?: RecipeStep[];
|
||||
nutrition?: Nutrition;
|
||||
tools?: string[];
|
||||
totalTime?: string;
|
||||
prepTime?: string;
|
||||
performTime?: string;
|
||||
settings?: RecipeSettings;
|
||||
assets?: RecipeAsset[];
|
||||
notes?: RecipeNote[];
|
||||
orgURL?: string;
|
||||
extras?: {
|
||||
[k: string]: unknown;
|
||||
};
|
||||
comments?: CommentOut[];
|
||||
}
|
||||
export interface RecipeIngredient {
|
||||
title?: string;
|
||||
note?: string;
|
||||
unit?: RecipeIngredientUnit;
|
||||
food?: RecipeIngredientFood;
|
||||
disableAmount?: boolean;
|
||||
quantity?: number;
|
||||
}
|
||||
export interface RecipeIngredientUnit {
|
||||
name?: string;
|
||||
description?: string;
|
||||
}
|
||||
export interface RecipeIngredientFood {
|
||||
name?: string;
|
||||
description?: string;
|
||||
}
|
||||
export interface RecipeStep {
|
||||
title?: string;
|
||||
text: string;
|
||||
}
|
||||
export interface RecipeSettings {
|
||||
public?: boolean;
|
||||
showNutrition?: boolean;
|
||||
showAssets?: boolean;
|
||||
landscapeView?: boolean;
|
||||
disableComments?: boolean;
|
||||
disableAmount?: boolean;
|
||||
}
|
||||
export interface RecipeAsset {
|
||||
name: string;
|
||||
icon: string;
|
||||
fileName?: string;
|
||||
}
|
||||
export interface RecipeNote {
|
||||
title: string;
|
||||
text: string;
|
||||
}
|
||||
export interface RecipeSlug {
|
||||
slug: string;
|
||||
}
|
||||
export interface RecipeSummary {
|
||||
id?: number;
|
||||
name?: string;
|
||||
slug?: string;
|
||||
image?: unknown;
|
||||
description?: string;
|
||||
recipeCategory?: string[];
|
||||
tags?: string[];
|
||||
rating?: number;
|
||||
dateAdded?: string;
|
||||
dateUpdated?: string;
|
||||
}
|
||||
export interface RecipeURLIn {
|
||||
url: string;
|
||||
}
|
||||
export interface SlugResponse {}
|
||||
export interface TagBase {
|
||||
name: string;
|
||||
id: number;
|
||||
slug: string;
|
||||
}
|
||||
export interface TagIn {
|
||||
name: string;
|
||||
}
|
166
frontend/types/api-types/user.ts
Normal file
166
frontend/types/api-types/user.ts
Normal file
|
@ -0,0 +1,166 @@
|
|||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
/* This file was automatically generated from pydantic models by running pydantic2ts.
|
||||
/* Do not modify it by hand - just update the pydantic models and then re-run the script
|
||||
*/
|
||||
|
||||
export interface CategoryBase {
|
||||
name: string;
|
||||
id: number;
|
||||
slug: string;
|
||||
}
|
||||
export interface ChangePassword {
|
||||
currentPassword: string;
|
||||
newPassword: string;
|
||||
}
|
||||
export interface CreateToken {
|
||||
name: string;
|
||||
parentId: number;
|
||||
token: string;
|
||||
}
|
||||
export interface GroupBase {
|
||||
name: string;
|
||||
}
|
||||
export interface GroupInDB {
|
||||
name: string;
|
||||
id: number;
|
||||
categories?: CategoryBase[];
|
||||
webhookUrls?: string[];
|
||||
webhookTime?: string;
|
||||
webhookEnable: boolean;
|
||||
users?: UserOut[];
|
||||
mealplans?: MealPlanOut[];
|
||||
shoppingLists?: ShoppingListOut[];
|
||||
}
|
||||
export interface UserOut {
|
||||
username?: string;
|
||||
fullName?: string;
|
||||
email: string;
|
||||
admin: boolean;
|
||||
group: string;
|
||||
favoriteRecipes?: string[];
|
||||
id: number;
|
||||
tokens?: LongLiveTokenOut[];
|
||||
}
|
||||
export interface LongLiveTokenOut {
|
||||
name: string;
|
||||
id: number;
|
||||
}
|
||||
export interface MealPlanOut {
|
||||
group: string;
|
||||
startDate: string;
|
||||
endDate: string;
|
||||
planDays: MealDayIn[];
|
||||
uid: number;
|
||||
shoppingList?: number;
|
||||
}
|
||||
export interface MealDayIn {
|
||||
date?: string;
|
||||
meals: MealIn[];
|
||||
}
|
||||
export interface MealIn {
|
||||
slug?: string;
|
||||
name?: string;
|
||||
description?: string;
|
||||
}
|
||||
export interface ShoppingListOut {
|
||||
name: string;
|
||||
group?: string;
|
||||
items: ListItem[];
|
||||
id: number;
|
||||
}
|
||||
export interface ListItem {
|
||||
title?: string;
|
||||
text?: string;
|
||||
quantity?: number;
|
||||
checked?: boolean;
|
||||
}
|
||||
export interface LoingLiveTokenIn {
|
||||
name: string;
|
||||
}
|
||||
export interface LongLiveTokenInDB {
|
||||
name: string;
|
||||
parentId: number;
|
||||
token: string;
|
||||
id: number;
|
||||
user: UserInDB;
|
||||
}
|
||||
export interface UserInDB {
|
||||
username?: string;
|
||||
fullName?: string;
|
||||
email: string;
|
||||
admin: boolean;
|
||||
group: string;
|
||||
favoriteRecipes?: string[];
|
||||
id: number;
|
||||
tokens?: LongLiveTokenOut[];
|
||||
password: string;
|
||||
}
|
||||
export interface RecipeSummary {
|
||||
id?: number;
|
||||
name?: string;
|
||||
slug?: string;
|
||||
image?: unknown;
|
||||
description?: string;
|
||||
recipeCategory?: string[];
|
||||
tags?: string[];
|
||||
rating?: number;
|
||||
dateAdded?: string;
|
||||
dateUpdated?: string;
|
||||
}
|
||||
export interface SignUpIn {
|
||||
name: string;
|
||||
admin: boolean;
|
||||
}
|
||||
export interface SignUpOut {
|
||||
name: string;
|
||||
admin: boolean;
|
||||
token: string;
|
||||
id: number;
|
||||
}
|
||||
export interface SignUpToken {
|
||||
name: string;
|
||||
admin: boolean;
|
||||
token: string;
|
||||
}
|
||||
export interface Token {
|
||||
access_token: string;
|
||||
token_type: string;
|
||||
}
|
||||
export interface TokenData {
|
||||
username?: string;
|
||||
}
|
||||
export interface UpdateGroup {
|
||||
name: string;
|
||||
id: number;
|
||||
categories?: CategoryBase[];
|
||||
webhookUrls?: string[];
|
||||
webhookTime?: string;
|
||||
webhookEnable: boolean;
|
||||
}
|
||||
export interface UserBase {
|
||||
username?: string;
|
||||
fullName?: string;
|
||||
email: string;
|
||||
admin: boolean;
|
||||
group?: string;
|
||||
favoriteRecipes?: string[];
|
||||
}
|
||||
export interface UserFavorites {
|
||||
username?: string;
|
||||
fullName?: string;
|
||||
email: string;
|
||||
admin: boolean;
|
||||
group?: string;
|
||||
favoriteRecipes?: RecipeSummary[];
|
||||
}
|
||||
export interface UserIn {
|
||||
username?: string;
|
||||
fullName?: string;
|
||||
email: string;
|
||||
admin: boolean;
|
||||
group?: string;
|
||||
favoriteRecipes?: string[];
|
||||
password: string;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue