Page MenuHomePhabricator

D13001.diff
No OneTemporary

D13001.diff

diff --git a/lib/shared/community-utils.js b/lib/shared/community-utils.js
--- a/lib/shared/community-utils.js
+++ b/lib/shared/community-utils.js
@@ -33,6 +33,7 @@
import { threadPermissions } from '../types/thread-permission-types.js';
import { threadTypes } from '../types/thread-types-enum.js';
import type { ThreadJoinPayload } from '../types/thread-types.js';
+import { FetchTimeout } from '../utils/errors.js';
import { useCurrentUserFID } from '../utils/farcaster-utils.js';
import { useDispatchActionPromise } from '../utils/redux-promise-utils.js';
import { useDispatch, useSelector } from '../utils/redux-utils.js';
@@ -357,9 +358,13 @@
await joinThreadPromise;
setStep('join_thread');
} catch (e) {
- setLinkStatus?.((status: LinkStatus) =>
- status === 'valid' ? 'invalid' : status,
- );
+ if (e instanceof FetchTimeout) {
+ setLinkStatus?.('timed_out');
+ } else {
+ setLinkStatus?.((status: LinkStatus) =>
+ status === 'valid' ? 'invalid' : status,
+ );
+ }
ongoingJoinData.reject();
setOngoingJoinData(null);
} finally {
@@ -411,9 +416,13 @@
setStep('finished');
ongoingJoinData.resolve();
} catch (e) {
- setLinkStatus?.((status: LinkStatus) =>
- status === 'valid' ? 'invalid' : status,
- );
+ if (e instanceof FetchTimeout) {
+ setLinkStatus?.('timed_out');
+ } else {
+ setLinkStatus?.((status: LinkStatus) =>
+ status === 'valid' ? 'invalid' : status,
+ );
+ }
ongoingJoinData.reject();
} finally {
setOngoingJoinData(null);

File Metadata

Mime Type
text/plain
Expires
Fri, Sep 20, 3:21 PM (21 h, 39 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2150968
Default Alt Text
D13001.diff (1 KB)

Event Timeline