"""add webhook url to calendar sync state

Revision ID: 20260526_0008
Revises: 20260525_0007
Create Date: 2026-05-26 15:30:00
"""
from __future__ import annotations

from alembic import op
import sqlalchemy as sa


revision = "20260526_0008"
down_revision = "20260525_0007"
branch_labels = None
depends_on = None


def upgrade() -> None:
    bind = op.get_bind()
    inspector = sa.inspect(bind)
    columns = {column["name"] for column in inspector.get_columns("calendar_sync_states")}
    if "webhook_url" not in columns:
        op.add_column("calendar_sync_states", sa.Column("webhook_url", sa.Text(), nullable=True))


def downgrade() -> None:
    bind = op.get_bind()
    inspector = sa.inspect(bind)
    columns = {column["name"] for column in inspector.get_columns("calendar_sync_states")}
    if "webhook_url" in columns:
        op.drop_column("calendar_sync_states", "webhook_url")
