"""initial outline-rs schema Revision ID: 040713502ba4 Revises: Create Date: 2026-03-30 10:47:36.255978 """ from typing import Sequence, Union from alembic import op import sqlalchemy as sa # revision identifiers, used by Alembic. revision: str = '040713502ba4' 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.""" # block table holds individual bullet points in the outline op.create_table( "blocks", sa.Column("id", sa.INTEGER, primary_key=True), sa.Column("first_child_id", sa.INTEGER, sa.schema.ForeignKey("blocks.id")), sa.Column("next_sibling_id", sa.INTEGER, sa.schema.ForeignKey("blocks.id")), sa.Column("page_id", sa.INTEGER, sa.schema.ForeignKey("pages.id"), index=True), sa.Column("content", sa.types.UnicodeText) ) op.create_table( "pages", sa.Column("id", sa.INTEGER, primary_key=True), sa.Column("root_block_id", sa.INTEGER, sa.schema.ForeignKey("blocks.id")), sa.Column("title", sa.types.UnicodeText) ) pass def downgrade() -> None: """Downgrade schema.""" op.drop_table("blocks") op.drop_table("pages") pass