#!/usr/bin/env python3
"""Generate PDF from SOW page using Playwright."""

import asyncio
import sys
from playwright.async_api import async_playwright
from datetime import datetime

async def generate_pdf(url: str = None, output: str = None):
    url = url or 'https://curiousendeavor.com/etoro/sow/?mode=view'
    output = output or f'/home/clawd/workspace/public/etoro/etoro-sow-{datetime.now().strftime("%Y%m%d-%H%M")}.pdf'
    
    async with async_playwright() as p:
        browser = await p.chromium.launch(headless=True)
        page = await browser.new_page()
        
        print(f"Loading: {url}")
        await page.goto(url, timeout=30000)
        await page.wait_for_timeout(3000)
        
        print(f"Generating PDF: {output}")
        await page.pdf(
            path=output,
            format='A4',
            margin={'top': '0.75in', 'right': '0.75in', 'bottom': '0.75in', 'left': '0.75in'},
            print_background=True
        )
        
        # Also save to standard location
        standard_path = '/home/clawd/workspace/public/etoro/etoro-sow.pdf'
        await page.pdf(
            path=standard_path,
            format='A4',
            margin={'top': '0.75in', 'right': '0.75in', 'bottom': '0.75in', 'left': '0.75in'},
            print_background=True
        )
        
        await browser.close()
        print(f"Done! PDF at: {standard_path}")
        return standard_path

if __name__ == "__main__":
    asyncio.run(generate_pdf())
