- Uses setInterval(50ms) waiting for offsetWidth > 0
- Falls back to minWidth/minHeight after 10s timeout
- Solves 'cannot access property w' when deck is hidden (scale 0)
- Wraps the entire fetch+render in requestAnimationFrame
so the container has real size before Cytoscape runs cose layout
- Uses 'preset' layout first, then cose with animate:'end'
to play nice with 0-size containers during deck animation
- cytoscape-graph.js now uses MutationObserver, not DOMContentLoaded
(the <gioser-graph> element is created dynamically by WASM)
- Remove unused dispatchEvent from lib.rs
- Rebuild WASM