""" environments/trace_env/tools/dashboard_renderer.py Dashboard Renderer for Trace. Converts parsed transaction data โ beautiful HTML dashboard. Works for ALL transaction categories: ride | food | shopping | payment | subscription | travel | banking | utility | education | healthcare Usage: from environments.trace_env.tools.dashboard_renderer import render_dashboard html = render_dashboard(parsed_result) # Save to file or return via a new FastAPI endpoint """ from __future__ import annotations import json import re from datetime import datetime def render_dashboard(parsed_result: dict) -> str: """ Render a full HTML dashboard from parse_transactions_bulk() output. Args: parsed_result: output of transaction_parser.parse_transactions_bulk() Returns: Complete HTML string ready to open in browser or serve via FastAPI. """ transactions = parsed_result.get("transactions", []) summary = parsed_result.get("summary", {}) episode = parsed_result.get("episode", {}) cards_html = "\n".join(_render_card(t, i) for i, t in enumerate(transactions)) summary_html = _render_summary(summary) episode_html = _render_episode_bar(episode) chart_data = _build_chart_data(summary) sheet_url = parsed_result.get("sheet_url") sheets_html = "" if sheet_url: sheets_html = f"""
""" prompt = parsed_result.get("prompt", "") import html as html_lib prompt_escaped = html_lib.escape(prompt) prompt_html = f""" """ return f"""