Fix release build: box the call tiles, icons and in-call subtree
`cargo leptos build --release` died with "queries overflow the depth limit": every tile's Show/icon views inlined into one enormous hydrate_async type for the whole call subtree. VideoTile, CallIcon and CallActive now return AnyView, the same cut CallPanel got in 0.2.1. The dev profile never tripped it, which is why 0.3.0 shipped broken. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01L3sD29ozDvqA7jozeZXZoB
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
0ad4b732e5
commit
e4c0094f34
+8
-1
@@ -660,6 +660,7 @@ fn CallActive(call_state: crate::webrtc::CallState) -> impl IntoView {
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
.into_any()
|
||||
}
|
||||
|
||||
#[cfg(feature = "hydrate")]
|
||||
@@ -729,10 +730,15 @@ fn CallIcon(kind: CallIconKind, off: Signal<bool>) -> impl IntoView {
|
||||
</Show>
|
||||
</svg>
|
||||
}
|
||||
.into_any()
|
||||
}
|
||||
|
||||
/// One participant's tile: the `<video>` plus a name label and mic/cam/
|
||||
/// screen badges. Click pins it as the stage; double-click goes
|
||||
/// screen badges. Returns `AnyView` (as do `CallIcon` and `CallActive`):
|
||||
/// left generic, every tile's `Show`s and icons inline into one enormous
|
||||
/// `hydrate_async` type for the whole call subtree, and the release build
|
||||
/// dies with "queries overflow the depth limit" - the same wall
|
||||
/// `CallPanel` hit in 0.2.1. Click pins it as the stage; double-click goes
|
||||
/// fullscreen (handy for reading a shared screen). A child component so
|
||||
/// each tile owns its `NodeRef`/effect pair instead of the parent juggling
|
||||
/// a `Vec` of node refs by hand.
|
||||
@@ -825,6 +831,7 @@ fn VideoTile(
|
||||
</span>
|
||||
</div>
|
||||
}
|
||||
.into_any()
|
||||
}
|
||||
|
||||
/// Bridges `/call-sse/{room}` into `CallState::handle_signal`. A separate
|
||||
|
||||
Reference in New Issue
Block a user