export const ingredientTypeEnum = pgEnum('ingredientType', ['ITEM', 'FOOD']);
export const food = pgTable('food', {
id: serial('id').primaryKey(),
name: varchar('name', { length: 256 }).notNull(),
});
export const item = pgTable('item', {
id: serial('id').primaryKey(),
name: varchar('name', { length: 256 }).notNull(),
description: text('description').array(),
});
export const ingredient = pgTable('ingredient', {
recipe_id: integer('recipe_id').references(() => recipe.id),
ingredientType: ingredientTypeEnum('ingredientType'),
quantity: integer('amount').notNull(),
});
export const recipe = pgTable('recipe', {
id: serial('id').primaryKey(),
name: varchar('name', { length: 256 }).notNull(),
instructions: text('description').array(),
});
export const recipeRelations = relations(recipe, ({ many }) => ({
ingredients: many(ingredient),
}));
export const ingredientTypeEnum = pgEnum('ingredientType', ['ITEM', 'FOOD']);
export const food = pgTable('food', {
id: serial('id').primaryKey(),
name: varchar('name', { length: 256 }).notNull(),
});
export const item = pgTable('item', {
id: serial('id').primaryKey(),
name: varchar('name', { length: 256 }).notNull(),
description: text('description').array(),
});
export const ingredient = pgTable('ingredient', {
recipe_id: integer('recipe_id').references(() => recipe.id),
ingredientType: ingredientTypeEnum('ingredientType'),
quantity: integer('amount').notNull(),
});
export const recipe = pgTable('recipe', {
id: serial('id').primaryKey(),
name: varchar('name', { length: 256 }).notNull(),
instructions: text('description').array(),
});
export const recipeRelations = relations(recipe, ({ many }) => ({
ingredients: many(ingredient),
}));