feat: improve app ui and project metadata

This commit is contained in:
Yaojia Wang
2026-06-28 07:31:20 +02:00
parent 3bd464d400
commit 90a66437d7
86 changed files with 4892 additions and 1108 deletions

View File

@@ -0,0 +1,35 @@
"""Add updated_at to chapters.
Revision ID: 8c1d2e3f4a5b
Revises: 59a9198d4604
Create Date: 2026-06-28 00:00:00.000000
"""
from __future__ import annotations
from collections.abc import Sequence
import sqlalchemy as sa
from alembic import op
revision: str = "8c1d2e3f4a5b"
down_revision: str | None = "59a9198d4604"
branch_labels: str | Sequence[str] | None = None
depends_on: str | Sequence[str] | None = None
def upgrade() -> None:
op.add_column(
"chapters",
sa.Column(
"updated_at",
sa.DateTime(timezone=True),
server_default=sa.text("now()"),
nullable=False,
),
)
op.execute("UPDATE chapters SET updated_at = created_at")
def downgrade() -> None:
op.drop_column("chapters", "updated_at")

View File

@@ -165,7 +165,7 @@ class Rule(UuidPk, CreatedAt, Base):
content: Mapped[str] = mapped_column(Text, nullable=False)
class Chapter(UuidPk, CreatedAt, Base):
class Chapter(UuidPk, TimestampedMixin, Base):
__tablename__ = "chapters"
__table_args__ = (
UniqueConstraint("project_id", "chapter_no", "version"),