""" Revision ID: d70663890e9d Revises: Create Date: 2026-04-16 13:17:38.973404 """ from typing import Sequence, Union from alembic import op import sqlalchemy as sa # revision identifiers, used by Alembic. revision: str = "d70663890e9d" down_revision: Union[str, Sequence[str], None] = None branch_labels: Union[str, Sequence[str], None] = None depends_on: Union[str, Sequence[str], None] = None def upgrade() -> None: """Upgrade schema.""" # ### commands auto generated by Alembic - please adjust! ### op.create_table( "product", sa.Column("name", sa.String(), nullable=False), sa.Column("protein", sa.Float(), nullable=False), sa.Column("carb", sa.Float(), nullable=False), sa.Column("fat", sa.Float(), nullable=False), sa.Column("fiber", sa.Float(), nullable=False), sa.Column("calories", sa.Float(), nullable=False), sa.Column("barcode", sa.String(), nullable=True), sa.Column("id", sa.Integer(), nullable=False), sa.Column("version", sa.Integer(), nullable=False), sa.Column("created_at", sa.DateTime(), nullable=False), sa.Column("last_changed", sa.DateTime(), nullable=False), sa.Column("deleted_at", sa.DateTime(), nullable=True), sa.PrimaryKeyConstraint("id"), ) op.create_index( "ix_product_barcode", "product", ["barcode"], unique=True, postgresql_where=sa.text("deleted_at IS NULL"), sqlite_where=sa.text("deleted_at IS NULL"), ) op.create_table( "user", sa.Column("username", sa.String(), nullable=False), sa.Column("id", sa.Integer(), nullable=False), sa.Column("version", sa.Integer(), nullable=False), sa.Column("created_at", sa.DateTime(), nullable=False), sa.Column("last_changed", sa.DateTime(), nullable=False), sa.Column("hashed_password", sa.String(), nullable=False), sa.Column("deleted_at", sa.DateTime(), nullable=True), sa.PrimaryKeyConstraint("id"), sa.UniqueConstraint("username"), ) op.create_table( "diary", sa.Column("date", sa.Date(), nullable=False), sa.Column("user_id", sa.Integer(), nullable=False), sa.Column("protein_goal", sa.Float(), nullable=False), sa.Column("carb_goal", sa.Float(), nullable=False), sa.Column("fat_goal", sa.Float(), nullable=False), sa.Column("fiber_goal", sa.Float(), nullable=False), sa.Column("calories_goal", sa.Float(), nullable=False), sa.Column("id", sa.Integer(), nullable=False), sa.Column("version", sa.Integer(), nullable=False), sa.Column("created_at", sa.DateTime(), nullable=False), sa.Column("last_changed", sa.DateTime(), nullable=False), sa.ForeignKeyConstraint( ["user_id"], ["user.id"], ), sa.PrimaryKeyConstraint("id"), sa.UniqueConstraint("user_id", "date"), ) op.create_table( "preset", sa.Column("name", sa.String(), nullable=False), sa.Column("user_id", sa.Integer(), nullable=False), sa.Column("id", sa.Integer(), nullable=False), sa.Column("version", sa.Integer(), nullable=False), sa.Column("created_at", sa.DateTime(), nullable=False), sa.Column("last_changed", sa.DateTime(), nullable=False), sa.ForeignKeyConstraint( ["user_id"], ["user.id"], ), sa.PrimaryKeyConstraint("id"), ) op.create_index( op.f("ix_preset_user_id"), "preset", ["user_id"], unique=False ) op.create_table( "userproductusage", sa.Column("product_id", sa.Integer(), nullable=False), sa.Column("user_id", sa.Integer(), nullable=False), sa.Column("count", sa.Integer(), nullable=False), sa.Column("id", sa.Integer(), nullable=False), sa.Column("version", sa.Integer(), nullable=False), sa.Column("created_at", sa.DateTime(), nullable=False), sa.Column("last_changed", sa.DateTime(), nullable=False), sa.ForeignKeyConstraint( ["product_id"], ["product.id"], ), sa.ForeignKeyConstraint( ["user_id"], ["user.id"], ), sa.PrimaryKeyConstraint("id"), sa.UniqueConstraint("user_id", "product_id"), ) op.create_index( "ix_userproductusage_product_user", "userproductusage", ["product_id", "user_id"], unique=False, ) op.create_index( op.f("ix_userproductusage_user_id"), "userproductusage", ["user_id"], unique=False, ) op.create_table( "usersettings", sa.Column("user_id", sa.Integer(), nullable=False), sa.Column("protein_goal", sa.Float(), nullable=False), sa.Column("carb_goal", sa.Float(), nullable=False), sa.Column("fat_goal", sa.Float(), nullable=False), sa.Column("fiber_goal", sa.Float(), nullable=False), sa.Column("calories_goal", sa.Float(), nullable=False), sa.Column("id", sa.Integer(), nullable=False), sa.Column("version", sa.Integer(), nullable=False), sa.Column("created_at", sa.DateTime(), nullable=False), sa.Column("last_changed", sa.DateTime(), nullable=False), sa.ForeignKeyConstraint( ["user_id"], ["user.id"], ), sa.PrimaryKeyConstraint("id"), sa.UniqueConstraint("user_id"), ) op.create_table( "meal", sa.Column("name", sa.String(), nullable=False), sa.Column("order", sa.Integer(), nullable=False), sa.Column("diary_id", sa.Integer(), nullable=False), sa.Column("id", sa.Integer(), nullable=False), sa.Column("version", sa.Integer(), nullable=False), sa.Column("created_at", sa.DateTime(), nullable=False), sa.Column("last_changed", sa.DateTime(), nullable=False), sa.ForeignKeyConstraint( ["diary_id"], ["diary.id"], ), sa.PrimaryKeyConstraint("id"), ) op.create_index( op.f("ix_meal_diary_id"), "meal", ["diary_id"], unique=False ) op.create_table( "presetentry", sa.Column("grams", sa.Float(), nullable=False), sa.Column("product_id", sa.Integer(), nullable=False), sa.Column("preset_id", sa.Integer(), nullable=False), sa.Column("id", sa.Integer(), nullable=False), sa.Column("version", sa.Integer(), nullable=False), sa.Column("created_at", sa.DateTime(), nullable=False), sa.Column("last_changed", sa.DateTime(), nullable=False), sa.ForeignKeyConstraint( ["preset_id"], ["preset.id"], ), sa.ForeignKeyConstraint( ["product_id"], ["product.id"], ), sa.PrimaryKeyConstraint("id"), ) op.create_index( op.f("ix_presetentry_preset_id"), "presetentry", ["preset_id"], unique=False, ) op.create_index( op.f("ix_presetentry_product_id"), "presetentry", ["product_id"], unique=False, ) op.create_table( "entry", sa.Column("grams", sa.Float(), nullable=False), sa.Column("product_id", sa.Integer(), nullable=False), sa.Column("meal_id", sa.Integer(), nullable=False), sa.Column("id", sa.Integer(), nullable=False), sa.Column("version", sa.Integer(), nullable=False), sa.Column("created_at", sa.DateTime(), nullable=False), sa.Column("last_changed", sa.DateTime(), nullable=False), sa.ForeignKeyConstraint( ["meal_id"], ["meal.id"], ), sa.ForeignKeyConstraint( ["product_id"], ["product.id"], ), sa.PrimaryKeyConstraint("id"), ) op.create_index( op.f("ix_entry_meal_id"), "entry", ["meal_id"], unique=False ) op.create_index( op.f("ix_entry_product_id"), "entry", ["product_id"], unique=False ) # ### end Alembic commands ### def downgrade() -> None: """Downgrade schema.""" # ### commands auto generated by Alembic - please adjust! ### op.drop_index(op.f("ix_entry_product_id"), table_name="entry") op.drop_index(op.f("ix_entry_meal_id"), table_name="entry") op.drop_table("entry") op.drop_index(op.f("ix_presetentry_product_id"), table_name="presetentry") op.drop_index(op.f("ix_presetentry_preset_id"), table_name="presetentry") op.drop_table("presetentry") op.drop_index(op.f("ix_meal_diary_id"), table_name="meal") op.drop_table("meal") op.drop_table("usersettings") op.drop_index( op.f("ix_userproductusage_user_id"), table_name="userproductusage" ) op.drop_index( "ix_userproductusage_product_user", table_name="userproductusage" ) op.drop_table("userproductusage") op.drop_index(op.f("ix_preset_user_id"), table_name="preset") op.drop_table("preset") op.drop_table("diary") op.drop_table("user") op.drop_index( "ix_product_barcode", table_name="product", postgresql_where=sa.text("deleted_at IS NULL"), sqlite_where=sa.text("deleted_at IS NULL"), ) op.drop_table("product") # ### end Alembic commands ###