"""Move checkout settings to JSON

Revision ID: d8515a8b706e
Revises: efe99ea3b809
Create Date: 2021-01-22 14:57:51.026193

"""

from collections.abc import Sequence

import sqlalchemy as sa
from alembic import op

# revision identifiers, used by Alembic.
revision: str = "d8515a8b706e"
down_revision: str | None = "efe99ea3b809"
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.add_column("stores", sa.Column("checkout_settings", sa.JSON(), nullable=True))
    op.drop_column("stores", "transaction_speed")
    op.drop_column("stores", "use_html_templates")
    op.drop_column("stores", "underpaid_percentage")
    op.drop_column("stores", "expiration")
    # ### end Alembic commands ###


def downgrade() -> None:
    # ### commands auto generated by Alembic - please adjust! ###
    op.add_column("stores", sa.Column("expiration", sa.INTEGER(), autoincrement=False, nullable=True))
    op.add_column("stores", sa.Column("underpaid_percentage", sa.INTEGER(), autoincrement=False, nullable=True))
    op.add_column("stores", sa.Column("use_html_templates", sa.BOOLEAN(), autoincrement=False, nullable=True))
    op.add_column("stores", sa.Column("transaction_speed", sa.INTEGER(), autoincrement=False, nullable=True))
    op.drop_column("stores", "checkout_settings")
    # ### end Alembic commands ###
