diff --git a/lib/components/chat-mention-provider.react.js b/lib/components/chat-mention-provider.react.js --- a/lib/components/chat-mention-provider.react.js +++ b/lib/components/chat-mention-provider.react.js @@ -13,7 +13,6 @@ import type { ChatMentionCandidate, ChatMentionCandidatesObj, - LegacyResolvedThreadInfo, LegacyThreadInfo, } from '../types/thread-types.js'; import { useResolvedThreadInfosObj } from '../utils/entity-helpers.js'; @@ -77,11 +76,9 @@ } function getChatMentionCandidates( - threadInfos: { +[id: string]: LegacyThreadInfo | ThreadInfo }, + threadInfos: { +[id: string]: ThreadInfo }, resolvedThreadInfos: { - +[id: string]: - | LegacyResolvedThreadInfo - | MinimallyEncodedResolvedThreadInfo, + +[id: string]: MinimallyEncodedResolvedThreadInfo, }, ): { chatMentionCandidatesObj: ChatMentionCandidatesObj, @@ -219,9 +216,7 @@ function useChatMentionCandidatesObjAndUtils(): { chatMentionCandidatesObj: ChatMentionCandidatesObj, resolvedThreadInfos: { - +[id: string]: - | LegacyResolvedThreadInfo - | MinimallyEncodedResolvedThreadInfo, + +[id: string]: MinimallyEncodedResolvedThreadInfo, }, communityThreadIDForGenesisThreads: { +[id: string]: string }, } { diff --git a/lib/shared/markdown.js b/lib/shared/markdown.js --- a/lib/shared/markdown.js +++ b/lib/shared/markdown.js @@ -11,7 +11,6 @@ import type { MinimallyEncodedResolvedThreadInfo } from '../types/minimally-encoded-thread-permissions-types.js'; import type { ChatMentionCandidates, - LegacyResolvedThreadInfo, RelativeMemberInfo, } from '../types/thread-types.js'; @@ -286,7 +285,7 @@ chatMentionCandidates: ChatMentionCandidates, capture: Capture, ): { - threadInfo: ?(LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo), + threadInfo: ?MinimallyEncodedResolvedThreadInfo, content: string, hasAccessToChat: boolean, } { diff --git a/lib/shared/mention-utils.js b/lib/shared/mention-utils.js --- a/lib/shared/mention-utils.js +++ b/lib/shared/mention-utils.js @@ -14,7 +14,6 @@ import { threadTypes } from '../types/thread-types-enum.js'; import type { ChatMentionCandidates, - LegacyResolvedThreadInfo, LegacyThreadInfo, RelativeMemberInfo, } from '../types/thread-types.js'; @@ -37,7 +36,7 @@ type MentionTypeaheadChatSuggestionItem = { +type: 'chat', - +threadInfo: LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, + +threadInfo: MinimallyEncodedResolvedThreadInfo, }; export type MentionTypeaheadSuggestionItem = @@ -78,7 +77,7 @@ } function getRawChatMention( - threadInfo: LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, + threadInfo: MinimallyEncodedResolvedThreadInfo, ): string { return `@[[${threadInfo.id}:${encodeChatMentionText(threadInfo.uiName)}]]`; } diff --git a/lib/shared/mention-utils.test.js b/lib/shared/mention-utils.test.js --- a/lib/shared/mention-utils.test.js +++ b/lib/shared/mention-utils.test.js @@ -7,7 +7,6 @@ renderChatMentionsWithAltText, } from './mention-utils.js'; import type { MinimallyEncodedResolvedThreadInfo } from '../types/minimally-encoded-thread-permissions-types.js'; -import type { LegacyResolvedThreadInfo } from '../types/thread-types.js'; describe('encodeChatMentionText', () => { it('should encode closing brackets', () => { @@ -37,9 +36,7 @@ it('should return raw chat mention', () => expect( getRawChatMention({ - ...(({}: any): - | LegacyResolvedThreadInfo - | MinimallyEncodedResolvedThreadInfo), + ...(({}: any): MinimallyEncodedResolvedThreadInfo), id: '256|123', uiName: 'thread-name', }), @@ -48,9 +45,7 @@ it('should return raw chat mention with encoded text', () => expect( getRawChatMention({ - ...(({}: any): - | LegacyResolvedThreadInfo - | MinimallyEncodedResolvedThreadInfo), + ...(({}: any): MinimallyEncodedResolvedThreadInfo), id: '256|123', uiName: 'thread-]name]]', }), diff --git a/lib/types/filter-types.js b/lib/types/filter-types.js --- a/lib/types/filter-types.js +++ b/lib/types/filter-types.js @@ -3,7 +3,6 @@ import t, { type TUnion } from 'tcomb'; import type { MinimallyEncodedResolvedThreadInfo } from './minimally-encoded-thread-permissions-types.js'; -import type { LegacyResolvedThreadInfo } from './thread-types.js'; import { tID, tShape, tString } from '../utils/validation-utils.js'; export const calendarThreadFilterTypes = Object.freeze({ @@ -42,6 +41,6 @@ }; export type FilterThreadInfo = { - +threadInfo: LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, + +threadInfo: MinimallyEncodedResolvedThreadInfo, +numVisibleEntries: number, }; diff --git a/lib/types/thread-types.js b/lib/types/thread-types.js --- a/lib/types/thread-types.js +++ b/lib/types/thread-types.js @@ -191,26 +191,6 @@ pinnedCount: t.maybe(t.Number), }); -export type LegacyResolvedThreadInfo = { - +id: string, - +type: ThreadType, - +name: ?string, - +uiName: string, - +avatar?: ?ClientAvatar, - +description: ?string, - +color: string, // hex, without "#" or "0x" - +creationTime: number, // millisecond timestamp - +parentThreadID: ?string, - +containingThreadID: ?string, - +community: ?string, - +members: $ReadOnlyArray, - +roles: { +[id: string]: LegacyRoleInfo }, - +currentUser: ThreadCurrentUserInfo, - +sourceMessageID?: string, - +repliesCount: number, - +pinnedCount?: number, -}; - export type ServerMemberInfo = { +id: string, +role: ?string, @@ -487,7 +467,7 @@ export type ThreadStoreThreadInfos = LegacyRawThreadInfos; export type ChatMentionCandidate = { - +threadInfo: LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, + +threadInfo: MinimallyEncodedResolvedThreadInfo, +rawChatName: string | ThreadEntity, }; export type ChatMentionCandidates = { diff --git a/lib/utils/drawer-utils.react.js b/lib/utils/drawer-utils.react.js --- a/lib/utils/drawer-utils.react.js +++ b/lib/utils/drawer-utils.react.js @@ -10,10 +10,7 @@ RawThreadInfo, } from '../types/minimally-encoded-thread-permissions-types.js'; import { communitySubthreads } from '../types/thread-types-enum.js'; -import type { - LegacyResolvedThreadInfo, - LegacyThreadInfo, -} from '../types/thread-types.js'; +import type { LegacyThreadInfo } from '../types/thread-types.js'; type WritableCommunityDrawerItemData = { threadInfo: ThreadInfo, @@ -81,17 +78,10 @@ } function useAppendCommunitySuffix( - communities: $ReadOnlyArray< - LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, - >, -): $ReadOnlyArray< - LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, -> { + communities: $ReadOnlyArray, +): $ReadOnlyArray { return React.useMemo(() => { - const result: ( - | LegacyResolvedThreadInfo - | MinimallyEncodedResolvedThreadInfo - )[] = []; + const result: MinimallyEncodedResolvedThreadInfo[] = []; const names = new Map(); for (const chat of communities) { diff --git a/native/avatars/thread-avatar.react.js b/native/avatars/thread-avatar.react.js --- a/native/avatars/thread-avatar.react.js +++ b/native/avatars/thread-avatar.react.js @@ -14,10 +14,7 @@ RawThreadInfo, } from 'lib/types/minimally-encoded-thread-permissions-types.js'; import { threadTypes } from 'lib/types/thread-types-enum.js'; -import type { - LegacyResolvedThreadInfo, - LegacyThreadInfo, -} from 'lib/types/thread-types.js'; +import type { LegacyThreadInfo } from 'lib/types/thread-types.js'; import Avatar from './avatar.react.js'; import { useSelector } from '../redux/redux-utils.js'; @@ -27,7 +24,6 @@ | RawThreadInfo | LegacyThreadInfo | ThreadInfo - | LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, +size: AvatarSize, }; diff --git a/native/chat/settings/delete-thread.react.js b/native/chat/settings/delete-thread.react.js --- a/native/chat/settings/delete-thread.react.js +++ b/native/chat/settings/delete-thread.react.js @@ -31,7 +31,6 @@ } from 'lib/types/minimally-encoded-thread-permissions-types.js'; import type { LeaveThreadPayload, - LegacyResolvedThreadInfo, LegacyThreadInfo, } from 'lib/types/thread-types.js'; import { useResolvedThreadInfo } from 'lib/utils/entity-helpers.js'; @@ -118,7 +117,7 @@ type Props = { ...BaseProps, // Redux state - +threadInfo: LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, + +threadInfo: MinimallyEncodedResolvedThreadInfo, +shouldUseDeleteConfirmationAlert: boolean, +loadingStatus: LoadingStatus, +colors: Colors, diff --git a/native/chat/settings/thread-settings-avatar.react.js b/native/chat/settings/thread-settings-avatar.react.js --- a/native/chat/settings/thread-settings-avatar.react.js +++ b/native/chat/settings/thread-settings-avatar.react.js @@ -4,13 +4,12 @@ import { View } from 'react-native'; import type { MinimallyEncodedResolvedThreadInfo } from 'lib/types/minimally-encoded-thread-permissions-types.js'; -import type { LegacyResolvedThreadInfo } from 'lib/types/thread-types.js'; import EditThreadAvatar from '../../avatars/edit-thread-avatar.react.js'; import { useStyles } from '../../themes/colors.js'; type Props = { - +threadInfo: LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, + +threadInfo: MinimallyEncodedResolvedThreadInfo, +canChangeSettings: boolean, }; function ThreadSettingsAvatar(props: Props): React.Node { diff --git a/native/chat/settings/thread-settings-delete-thread.react.js b/native/chat/settings/thread-settings-delete-thread.react.js --- a/native/chat/settings/thread-settings-delete-thread.react.js +++ b/native/chat/settings/thread-settings-delete-thread.react.js @@ -4,7 +4,6 @@ import { Text, View } from 'react-native'; import type { MinimallyEncodedResolvedThreadInfo } from 'lib/types/minimally-encoded-thread-permissions-types.js'; -import type { LegacyResolvedThreadInfo } from 'lib/types/thread-types.js'; import type { ThreadSettingsNavigate } from './thread-settings.react.js'; import Button from '../../components/button.react.js'; @@ -13,7 +12,7 @@ import type { ViewStyle } from '../../types/styles.js'; type Props = { - +threadInfo: LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, + +threadInfo: MinimallyEncodedResolvedThreadInfo, +navigate: ThreadSettingsNavigate, +buttonStyle: ViewStyle, }; diff --git a/native/chat/settings/thread-settings-name.react.js b/native/chat/settings/thread-settings-name.react.js --- a/native/chat/settings/thread-settings-name.react.js +++ b/native/chat/settings/thread-settings-name.react.js @@ -18,7 +18,6 @@ import type { MinimallyEncodedResolvedThreadInfo } from 'lib/types/minimally-encoded-thread-permissions-types.js'; import type { ChangeThreadSettingsPayload, - LegacyResolvedThreadInfo, UpdateThreadRequest, } from 'lib/types/thread-types.js'; import { @@ -62,7 +61,7 @@ }; type BaseProps = { - +threadInfo: LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, + +threadInfo: MinimallyEncodedResolvedThreadInfo, +nameEditValue: ?string, +setNameEditValue: (value: ?string, callback?: () => void) => void, +canChangeSettings: boolean, diff --git a/web/calendar/entry.react.js b/web/calendar/entry.react.js --- a/web/calendar/entry.react.js +++ b/web/calendar/entry.react.js @@ -37,7 +37,6 @@ import type { MinimallyEncodedResolvedThreadInfo } from 'lib/types/minimally-encoded-thread-permissions-types.js'; import type { Dispatch } from 'lib/types/redux-types.js'; import { threadPermissions } from 'lib/types/thread-permission-types.js'; -import type { LegacyResolvedThreadInfo } from 'lib/types/thread-types.js'; import { dateString } from 'lib/utils/date-utils.js'; import { useResolvedThreadInfo } from 'lib/utils/entity-helpers.js'; import { ServerError } from 'lib/utils/errors.js'; @@ -65,7 +64,7 @@ }; type Props = { ...BaseProps, - +threadInfo: LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, + +threadInfo: MinimallyEncodedResolvedThreadInfo, +loggedIn: boolean, +calendarQuery: () => CalendarQuery, +online: boolean, diff --git a/web/markdown/markdown-chat-mention.react.js b/web/markdown/markdown-chat-mention.react.js --- a/web/markdown/markdown-chat-mention.react.js +++ b/web/markdown/markdown-chat-mention.react.js @@ -3,13 +3,12 @@ import * as React from 'react'; import type { MinimallyEncodedResolvedThreadInfo } from 'lib/types/minimally-encoded-thread-permissions-types.js'; -import type { LegacyResolvedThreadInfo } from 'lib/types/thread-types.js'; import css from './markdown.css'; import { useOnClickThread } from '../selectors/thread-selectors.js'; type MarkdownChatMentionProps = { - +threadInfo: LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, + +threadInfo: MinimallyEncodedResolvedThreadInfo, +hasAccessToChat: boolean, +text: string, }; diff --git a/web/modals/history/history-entry.react.js b/web/modals/history/history-entry.react.js --- a/web/modals/history/history-entry.react.js +++ b/web/modals/history/history-entry.react.js @@ -21,7 +21,6 @@ } from 'lib/types/entry-types.js'; import type { LoadingStatus } from 'lib/types/loading-types.js'; import type { MinimallyEncodedResolvedThreadInfo } from 'lib/types/minimally-encoded-thread-permissions-types.js'; -import type { LegacyResolvedThreadInfo } from 'lib/types/thread-types.js'; import type { UserInfo } from 'lib/types/user-types.js'; import { useResolvedThreadInfo } from 'lib/utils/entity-helpers.js'; import { @@ -41,7 +40,7 @@ }; type Props = { ...BaseProps, - +threadInfo: LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, + +threadInfo: MinimallyEncodedResolvedThreadInfo, +loggedIn: boolean, +restoreLoadingStatus: LoadingStatus, +calendarQuery: () => CalendarQuery, diff --git a/web/navigation-sidebar/community-list-item.react.js b/web/navigation-sidebar/community-list-item.react.js --- a/web/navigation-sidebar/community-list-item.react.js +++ b/web/navigation-sidebar/community-list-item.react.js @@ -4,7 +4,6 @@ import { unreadCountSelectorForCommunity } from 'lib/selectors/thread-selectors.js'; import type { MinimallyEncodedResolvedThreadInfo } from 'lib/types/minimally-encoded-thread-permissions-types.js'; -import type { LegacyResolvedThreadInfo } from 'lib/types/thread-types.js'; import css from './community-list-item.css'; import { navigationSidebarLabelTooltipMargin } from './navigation-sidebar-constants.js'; @@ -15,7 +14,7 @@ import { tooltipPositions } from '../tooltips/tooltip-utils.js'; type Props = { - +threadInfo: LegacyResolvedThreadInfo | MinimallyEncodedResolvedThreadInfo, + +threadInfo: MinimallyEncodedResolvedThreadInfo, }; function CommunityListItem(props: Props): React.Node {