Changeset View
Changeset View
Standalone View
Standalone View
lib/shared/search-utils.js
Show First 20 Lines • Show All 98 Lines • ▼ Show 20 Lines | function usePotentialMemberItems({ | ||||
+text: string, | +text: string, | ||||
+userInfos: { +[id: string]: AccountUserInfo }, | +userInfos: { +[id: string]: AccountUserInfo }, | ||||
+excludeUserIDs: $ReadOnlyArray<string>, | +excludeUserIDs: $ReadOnlyArray<string>, | ||||
+includeServerSearchUsers?: $ReadOnlyArray<GlobalAccountUserInfo>, | +includeServerSearchUsers?: $ReadOnlyArray<GlobalAccountUserInfo>, | ||||
+inputParentThreadInfo?: ?ThreadInfo, | +inputParentThreadInfo?: ?ThreadInfo, | ||||
+inputCommunityThreadInfo?: ?ThreadInfo, | +inputCommunityThreadInfo?: ?ThreadInfo, | ||||
+threadType?: ?ThreadType, | +threadType?: ?ThreadType, | ||||
}): UserListItem[] { | }): UserListItem[] { | ||||
const searchIndex: SearchIndex = useUserSearchIndex(values(userInfos)); | const memoizedUserInfos = React.useMemo(() => values(userInfos), [userInfos]); | ||||
const searchIndex: SearchIndex = useUserSearchIndex(memoizedUserInfos); | |||||
const communityThreadInfo = React.useMemo( | const communityThreadInfo = React.useMemo( | ||||
() => | () => | ||||
inputCommunityThreadInfo && inputCommunityThreadInfo.id !== genesis.id | inputCommunityThreadInfo && inputCommunityThreadInfo.id !== genesis.id | ||||
? inputCommunityThreadInfo | ? inputCommunityThreadInfo | ||||
: null, | : null, | ||||
[inputCommunityThreadInfo], | [inputCommunityThreadInfo], | ||||
); | ); | ||||
▲ Show 20 Lines • Show All 337 Lines • Show Last 20 Lines |