"""Make user_id a unique constraint in templates

Revision ID: 5f88cc45615c
Revises: 03e98a49599c
Create Date: 2020-07-07 15:05:35.893167

"""

from collections.abc import Sequence

from alembic import op

# revision identifiers, used by Alembic.
revision: str = "5f88cc45615c"
down_revision: str | None = "03e98a49599c"
branch_labels: str | Sequence[str] | None = None
depends_on: str | Sequence[str] | None = None


def upgrade() -> None:
    # ### commands auto generated by Alembic - please adjust! ###
    op.create_unique_constraint(op.f("templates_user_id_key"), "templates", ["user_id", "name"])
    op.drop_index("templates_name_idx", table_name="templates")
    op.create_index(op.f("templates_name_idx"), "templates", ["name"], unique=False)
    # ### end Alembic commands ###


def downgrade() -> None:
    # ### commands auto generated by Alembic - please adjust! ###
    op.drop_index(op.f("templates_name_idx"), table_name="templates")
    op.create_index("templates_name_idx", "templates", ["name"], unique=True)
    op.drop_constraint(op.f("templates_user_id_key"), "templates", type_="unique")
    # ### end Alembic commands ###
