fix(ui): R3 S1 review fixes — don't blank data on transient refetch errors
- The honest-state branch now guards on `isError && !data`, so a background/window-focus refetch failure keeps already-visible content instead of replacing the list with a full error screen (regression the bare `isError` introduced). Applied to AuditLog, Channels, ChannelDiscovery, PlexBrowse, PlexPlaylistView, Messages(people), Feed — matching the guard already used in Messages(conversations)/NotificationsPanel/Scheduler. - Drop the unused DataTable loading/error/onRetry props (every table page uses the outer StateMessage branch, not the props) — reverts DataTable to its simple empty block. - StateMessage announces errors with role=alert/aria-live=assertive (was polite for all tones). - Remove the now-unused common.empty string (en+hu), left over from the removed QueryState render-prop.
This commit is contained in:
@@ -225,7 +225,7 @@ function Directory({ onPick, onBack }: { onPick: (u: MessageUser) => void; onBac
|
||||
placeholder={t("messages.searchPeople")}
|
||||
className="w-full bg-card border border-border rounded-xl px-3 py-2 text-sm outline-none focus:border-accent"
|
||||
/>
|
||||
{q.isError ? (
|
||||
{q.isError && !q.data ? (
|
||||
<StateMessage tone="error" onRetry={() => q.refetch()}>
|
||||
{t("common.loadError")}
|
||||
</StateMessage>
|
||||
|
||||
Reference in New Issue
Block a user