Merge pull request #169 from simoleo89/feat/navigator-p5-error-boundaries

feat(navigator): wrap sub-views in WidgetErrorBoundary
This commit is contained in:
DuckieTM
2026-05-28 13:05:12 +02:00
committed by GitHub
+19 -6
View File
@@ -7,7 +7,7 @@ import createRoomImg from '../../assets/images/navigator/create_room.png';
import randomRoomImg from '../../assets/images/navigator/random_room.png'; import randomRoomImg from '../../assets/images/navigator/random_room.png';
import promoteRoomImg from '../../assets/images/navigator/promote_room.png'; import promoteRoomImg from '../../assets/images/navigator/promote_room.png';
import { CreateLinkEvent, LocalizeText, SendMessageComposer, TryVisitRoom } from '../../api'; import { CreateLinkEvent, LocalizeText, SendMessageComposer, TryVisitRoom } from '../../api';
import { Flex, Text } from '../../common'; import { Flex, Text, WidgetErrorBoundary } from '../../common';
import { useNavigatorActions, useNavigatorData, useNavigatorUiState, useNavigatorUiStore, useNitroEvent } from '../../hooks'; import { useNavigatorActions, useNavigatorData, useNavigatorUiState, useNavigatorUiStore, useNitroEvent } from '../../hooks';
import { NavigatorDoorStateView } from './views/NavigatorDoorStateView'; import { NavigatorDoorStateView } from './views/NavigatorDoorStateView';
import { NavigatorRoomCreatorView } from './views/NavigatorRoomCreatorView'; import { NavigatorRoomCreatorView } from './views/NavigatorRoomCreatorView';
@@ -197,13 +197,26 @@ export const NavigatorView: FC<{}> = props =>
</Flex> </Flex>
</div> </div>
</div> } </div> }
{ isCreatorOpen && <NavigatorRoomCreatorView /> } { isCreatorOpen &&
<WidgetErrorBoundary name="NavigatorRoomCreator">
<NavigatorRoomCreatorView />
</WidgetErrorBoundary> }
</NitroCard.Content> </NitroCard.Content>
</NitroCard> } </NitroCard> }
<NavigatorDoorStateView /> <WidgetErrorBoundary name="NavigatorDoorState">
{ isRoomInfoOpen && <NavigatorRoomInfoView onCloseClick={ () => useNavigatorUiStore.getState().setRoomInfoOpen(false) } /> } <NavigatorDoorStateView />
{ isRoomLinkOpen && <NavigatorRoomLinkView onCloseClick={ () => useNavigatorUiStore.getState().setRoomLinkOpen(false) } /> } </WidgetErrorBoundary>
<NavigatorRoomSettingsView /> { isRoomInfoOpen &&
<WidgetErrorBoundary name="NavigatorRoomInfo">
<NavigatorRoomInfoView onCloseClick={ () => useNavigatorUiStore.getState().setRoomInfoOpen(false) } />
</WidgetErrorBoundary> }
{ isRoomLinkOpen &&
<WidgetErrorBoundary name="NavigatorRoomLink">
<NavigatorRoomLinkView onCloseClick={ () => useNavigatorUiStore.getState().setRoomLinkOpen(false) } />
</WidgetErrorBoundary> }
<WidgetErrorBoundary name="NavigatorRoomSettings">
<NavigatorRoomSettingsView />
</WidgetErrorBoundary>
</> </>
); );
}; };