A Message Sequence Charts extension for odoc
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Improve odoc extensions and align docsite HTML with stock odoc

odoc-docsite:
- Rename CSS classes to align with stock odoc conventions
- Use odoc-nav, odoc-content, odoc-tocs for compatibility
- Prefix docsite-specific features with docsite-* (header, sidebar, etc.)
- Add class="odoc" to body element

odoc extensions:
- Add blocks_of_nestable_elements to extension API for preserving refs
- Fix admonition extension to render cross-references properly
- Fix MSC extension resource handling for nested module pages
- Fix Mermaid extension dark mode styling

Documentation:
- Improve JMAP docs with diagrams, admonitions, and better organization
- Fix IMAP state diagram (remove confusing logout from NotAuthenticated)
- Add JMAP dependency on ocaml-imap for cross-package references

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

+59
+59
src/msc_extension.ml
··· 217 217 overrides = []; 218 218 resources = [ 219 219 Api.Js_inline loader_script; 220 + Api.Css_url "extensions/msc.css"; 220 221 ]; 221 222 assets = []; 222 223 } ··· 245 246 246 247 .odoc-msc-error pre { 247 248 color: #c00; 249 + } 250 + 251 + /* Dark mode support - target specific mscgen SVG elements */ 252 + @media (prefers-color-scheme: dark) { 253 + /* Main background */ 254 + .odoc-msc-diagram svg { 255 + background-color: transparent; 256 + } 257 + 258 + /* Text labels - make them light colored */ 259 + .odoc-msc-diagram svg text { 260 + fill: #ebdbb2 !important; 261 + } 262 + 263 + /* Lines and arrows */ 264 + .odoc-msc-diagram svg line, 265 + .odoc-msc-diagram svg path, 266 + .odoc-msc-diagram svg polyline, 267 + .odoc-msc-diagram svg polygon { 268 + stroke: #a89984 !important; 269 + } 270 + 271 + /* Arrow heads and filled shapes */ 272 + .odoc-msc-diagram svg polygon[fill], 273 + .odoc-msc-diagram svg path[fill] { 274 + fill: #a89984 !important; 275 + } 276 + 277 + /* Entity boxes - use dark background with border */ 278 + .odoc-msc-diagram svg rect { 279 + fill: #3c3836 !important; 280 + stroke: #665c54 !important; 281 + } 282 + 283 + /* Keep white fills as dark fills */ 284 + .odoc-msc-diagram svg [fill="white"], 285 + .odoc-msc-diagram svg [fill="#fff"], 286 + .odoc-msc-diagram svg [fill="#ffffff"], 287 + .odoc-msc-diagram svg [fill="rgb(255,255,255)"] { 288 + fill: #3c3836 !important; 289 + } 290 + 291 + /* Keep black strokes as light strokes */ 292 + .odoc-msc-diagram svg [stroke="black"], 293 + .odoc-msc-diagram svg [stroke="#000"], 294 + .odoc-msc-diagram svg [stroke="#000000"], 295 + .odoc-msc-diagram svg [stroke="rgb(0,0,0)"] { 296 + stroke: #a89984 !important; 297 + } 298 + 299 + .odoc-msc-diagram noscript pre { 300 + background: #3c3836; 301 + color: #ebdbb2; 302 + } 303 + 304 + .odoc-msc-error pre { 305 + color: #fb4934; 306 + } 248 307 } 249 308 |} 250 309