)]}'
{
  "commit": "170bc1c13ef7b5c62624dc647c37ebb416402601",
  "tree": "0806c9da11093cf82d675bdbad56f1f4d9cd3913",
  "parents": [
    "77be30bcac9ff7caaebd8d76634710b6c5a1f3b3"
  ],
  "author": {
    "name": "George Engelbrecht",
    "email": "engeg@google.com",
    "time": "Tue Sep 08 20:29:50 2026 +0000"
  },
  "committer": {
    "name": "George Engelbrecht",
    "email": "engeg@google.com",
    "time": "Tue Sep 08 16:09:52 2026 -0700"
  },
  "message": "Add dark mode theme support for Mermaid diagrams\n\nGitiles renders Mermaid diagrams server-side into SVG. Previously, all\nSVG shapes (nodes, subgraphs, edges, markers, text, and labels) used\nhardcoded light-mode hex values, causing them to display as glaring\nwhite rectangles with poor contrast in dark mode.\n\nThis change:\n- Defines CSS variables for Mermaid diagram elements (--mermaid-node-bg,\n  --mermaid-node-stroke, --mermaid-node-text, --mermaid-edge,\n  --mermaid-subgraph-bg, etc.) in doc.css under :root, light mode,\n  dark media query, and html[data-theme\u003d\"dark\"].\n- Adds semantic CSS classes (.mermaid-node, .mermaid-subgraph,\n  .mermaid-edge, .mermaid-arrow, .mermaid-shadow, etc.) to rendered SVG\n  elements in SimpleMermaidRenderer while preserving presentation\n  attribute fallbacks.\n- Selectively applies fill/stroke classes when custom style directives\n  are absent, preserving user-defined colors without stylesheet overrides.\n- Supports `color:` in `style` directives and computes background\n  luminance for custom-filled nodes (e.g. pastel database cylinders)\n  to preserve dark, readable text without stylesheet theme inversion.\n- Adds comprehensive unit tests in SimpleMermaidRendererTest covering\n  theme classes, custom styles, and text contrast on custom-filled shapes.\n\nChange-Id: Iac234a2dd627a06ecceb41c4fabbbbdd92233605\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "140fc443b12e12d9982da67d4251de440a195c3c",
      "old_mode": 33188,
      "old_path": "java/com/google/gitiles/doc/SimpleMermaidRenderer.java",
      "new_id": "1429e43d72b6c6813005eeede0da85bd037a88a8",
      "new_mode": 33188,
      "new_path": "java/com/google/gitiles/doc/SimpleMermaidRenderer.java"
    },
    {
      "type": "modify",
      "old_id": "2d3267663fa893a34ef384bdf658e368327ef744",
      "old_mode": 33188,
      "old_path": "javatests/com/google/gitiles/doc/SimpleMermaidRendererTest.java",
      "new_id": "b38a1e6d3e540f761da303d8f32efd22befc85fe",
      "new_mode": 33188,
      "new_path": "javatests/com/google/gitiles/doc/SimpleMermaidRendererTest.java"
    },
    {
      "type": "modify",
      "old_id": "dde3aa705570c71a4296d413dc80641ceaf9683f",
      "old_mode": 33188,
      "old_path": "resources/com/google/gitiles/static/doc.css",
      "new_id": "e421cd2b8303b67c37324bc8b7c29f4d53d969eb",
      "new_mode": 33188,
      "new_path": "resources/com/google/gitiles/static/doc.css"
    }
  ]
}
