@@ -71,7 +71,11 @@ export const MentionDataProvider: React.FC<MentionDataProviderProps> = ({ server
7171 const existingData = queryClient . getQueryData ( queryKey ) ;
7272 const existingState = queryClient . getQueryState ( queryKey ) ;
7373
74- if ( existingData !== undefined || existingState ?. fetchStatus === "fetching" ) {
74+ if (
75+ existingData !== undefined ||
76+ existingState ?. fetchStatus === "fetching" ||
77+ existingState ?. status === "error"
78+ ) {
7579 return ;
7680 }
7781
@@ -86,6 +90,7 @@ export const MentionDataProvider: React.FC<MentionDataProviderProps> = ({ server
8690 return result ?. result ? { displayName : result . result . displayName } : null ;
8791 } ,
8892 } )
93+ . catch ( ( ) => { } )
8994 . finally ( ( ) => {
9095 setLoadingUserIds ( ( prev ) => {
9196 const next = new Set ( prev ) ;
@@ -95,7 +100,7 @@ export const MentionDataProvider: React.FC<MentionDataProviderProps> = ({ server
95100 } ) ;
96101 } ) ;
97102 } ,
98- [ serverId , queryClient ] ,
103+ [ serverId , queryClient ]
99104 ) ;
100105
101106 const requestRolesFetch = useCallback ( ( ) => {
@@ -106,7 +111,11 @@ export const MentionDataProvider: React.FC<MentionDataProviderProps> = ({ server
106111 const existingData = queryClient . getQueryData ( queryKey ) ;
107112 const existingState = queryClient . getQueryState ( queryKey ) ;
108113
109- if ( existingData !== undefined || existingState ?. fetchStatus === "fetching" ) {
114+ if (
115+ existingData !== undefined ||
116+ existingState ?. fetchStatus === "fetching" ||
117+ existingState ?. status === "error"
118+ ) {
110119 return ;
111120 }
112121
@@ -117,6 +126,7 @@ export const MentionDataProvider: React.FC<MentionDataProviderProps> = ({ server
117126 queryKey : [ ...queryKey ] ,
118127 queryFn : ( ) => getServerRoles ( { serverId } ) ,
119128 } )
129+ . catch ( ( ) => { } )
120130 . finally ( ( ) => {
121131 setIsRolesLoading ( false ) ;
122132 } ) ;
@@ -130,7 +140,11 @@ export const MentionDataProvider: React.FC<MentionDataProviderProps> = ({ server
130140 const existingData = queryClient . getQueryData ( queryKey ) ;
131141 const existingState = queryClient . getQueryState ( queryKey ) ;
132142
133- if ( existingData !== undefined || existingState ?. fetchStatus === "fetching" ) {
143+ if (
144+ existingData !== undefined ||
145+ existingState ?. fetchStatus === "fetching" ||
146+ existingState ?. status === "error"
147+ ) {
134148 return ;
135149 }
136150
@@ -141,6 +155,7 @@ export const MentionDataProvider: React.FC<MentionDataProviderProps> = ({ server
141155 queryKey : [ ...queryKey ] ,
142156 queryFn : ( ) => getServerChannels ( { serverId, types : [ GetDiscordChannelType . All ] } ) ,
143157 } )
158+ . catch ( ( ) => { } )
144159 . finally ( ( ) => {
145160 setIsChannelsLoading ( false ) ;
146161 } ) ;
@@ -151,45 +166,45 @@ export const MentionDataProvider: React.FC<MentionDataProviderProps> = ({ server
151166 if ( ! serverId ) return null ;
152167
153168 const data = queryClient . getQueryData < UserData | null > (
154- discordServerQueryKeys . serverMember ( serverId , userId ) ,
169+ discordServerQueryKeys . serverMember ( serverId , userId )
155170 ) ;
156171
157172 return data ?? null ;
158173 } ,
159- [ serverId , queryClient ] ,
174+ [ serverId , queryClient ]
160175 ) ;
161176
162177 const getRole = useCallback (
163178 ( roleId : string ) : DiscordRole | null => {
164179 if ( ! serverId ) return null ;
165180
166181 const data = queryClient . getQueryData < RolesResponse > (
167- discordServerQueryKeys . serverRoles ( serverId ) ,
182+ discordServerQueryKeys . serverRoles ( serverId )
168183 ) ;
169184
170185 return data ?. results ?. find ( ( role ) => role . id === roleId ) ?? null ;
171186 } ,
172- [ serverId , queryClient ] ,
187+ [ serverId , queryClient ]
173188 ) ;
174189
175190 const getChannel = useCallback (
176191 ( channelId : string ) : DiscordServerChannel | null => {
177192 if ( ! serverId ) return null ;
178193
179194 const data = queryClient . getQueryData < ChannelsResponse > (
180- discordServerQueryKeys . allChannels ( serverId ) ,
195+ discordServerQueryKeys . allChannels ( serverId )
181196 ) ;
182197
183198 return data ?. results ?. find ( ( channel ) => channel . id === channelId ) ?? null ;
184199 } ,
185- [ serverId , queryClient ] ,
200+ [ serverId , queryClient ]
186201 ) ;
187202
188203 const isUserLoading = useCallback (
189204 ( userId : string ) : boolean => {
190205 return loadingUserIds . has ( userId ) ;
191206 } ,
192- [ loadingUserIds ] ,
207+ [ loadingUserIds ]
193208 ) ;
194209
195210 const contextValue : MentionDataContextType = useMemo (
@@ -214,7 +229,7 @@ export const MentionDataProvider: React.FC<MentionDataProviderProps> = ({ server
214229 requestUserFetch ,
215230 requestRolesFetch ,
216231 requestChannelsFetch ,
217- ] ,
232+ ]
218233 ) ;
219234
220235 return < MentionDataContext . Provider value = { contextValue } > { children } </ MentionDataContext . Provider > ;
0 commit comments