Conversation
|
@frdm666 thank you for the contribution. We could reuse the same modal dialog component, which is used for other similar overlays. Or at least same cross icon, instead of the custom "Close" button.
|
2cbd55c to
a33d1ed
Compare
|
Good point -done. One small addition: Also rebased onto main to resolve the conflict with #351, and moved the test into |
The overlay covered the whole viewport and had no way to dismiss it, so when Dekaf couldn't reach the Pulsar broker the UI became unusable. In particular it blocked the credentials button, which made it impossible to authenticate from the UI when DEKAF_DEFAULT_PULSAR_AUTH is not set - the only workaround was to remove the overlay via browser devtools. - Add a Close button (and Esc) to dismiss the overlay. - Show the overlay again when the connection drops after being restored. - Mention how to set Pulsar credentials in the overlay. - Drop a leftover console.log. Fixes visortelle#353
a33d1ed to
a815fdb
Compare

Problem
When Dekaf can't reach the Pulsar broker, it shows a full-screen "There are
connectivity issues" overlay that cannot be dismissed — no close button, no Esc,
no click-outside.
That is especially painful when the cluster requires authentication and
DEKAF_DEFAULT_PULSAR_AUTHis not set: the health check fails, the overlayappears, and it covers the credentials button — the very control needed to fix
the connection. As reported in #352, the only workaround was to delete the
overlay via browser devtools.
What changed
ModalElementfromModals.tsx— same backdrop, card,title bar with the close icon, and Esc handling as every other dialog. The
component was already presentational; it just wasn't exported.
restored, so a new outage is still reported.
navigation sidebar, so the dialog says what to do.
ModalStackEntrygained an optionaltestId(defaults to"modal") so theoverlay keeps the
health-overlaytest id introduced in e2e test suite + bunch of bugfixes #351.The credentials editor can't be opened from the overlay directly, because
HealthCheckContextsits aboveModals.DefaultProviderin the tree — hence thetextual hint.
Test plan
Added
NAV-11toe2e/src/test/scala/routes/HealthCheckSpec.scala: it aborts thehealth check poll, waits for the overlay, dismisses it with Esc, then waits longer
than the 5s poll interval to assert it does not come back while connectivity is
still down, and that the credentials button is reachable again.
Both
NAV-10(existing) andNAV-11pass;NAV-11fails without this change.Fixes #353