from pathlib import Path import typer from cv_generator.generator import generate_pdf app = typer.Typer() @app.command() def generate( input_file: Path = typer.Argument(help="Markdown file with YAML frontmatter"), # pyright: ignore[reportCallInDefaultInitializer] output_file: Path | None = typer.Option( # pyright: ignore[reportCallInDefaultInitializer] None, "--output", "-o", help="Output PDF path" ), ) -> None: """Generate a PDF CV from a Markdown file with YAML frontmatter.""" if not input_file.exists(): typer.echo(f"Error: Markdown file not found: {input_file}", err=True) raise typer.Exit(1) try: result = generate_pdf(input_file, output_file) except FileNotFoundError as e: typer.echo(f"Error: {e}", err=True) raise typer.Exit(1) typer.echo(f"Generated {result}") if __name__ == "__main__": app()