diff --git a/web/chat/chat-input-bar.react.js b/web/chat/chat-input-bar.react.js --- a/web/chat/chat-input-bar.react.js +++ b/web/chat/chat-input-bar.react.js @@ -38,7 +38,6 @@ import { messageTypes } from 'lib/types/message-types-enum.js'; import { threadPermissions } from 'lib/types/thread-permission-types.js'; import { - type LegacyThreadInfo, type ClientThreadJoinRequest, type ThreadJoinPayload, type ThreadInfo, @@ -84,7 +83,7 @@ +joinThread: (request: ClientThreadJoinRequest) => Promise, +typeaheadMatchedStrings: ?TypeaheadMatchedStrings, +suggestions: $ReadOnlyArray, - +parentThreadInfo: ?LegacyThreadInfo, + +parentThreadInfo: ?ThreadInfo, }; class ChatInputBar extends React.PureComponent { diff --git a/web/chat/failed-send.react.js b/web/chat/failed-send.react.js --- a/web/chat/failed-send.react.js +++ b/web/chat/failed-send.react.js @@ -11,7 +11,7 @@ type RawComposableMessageInfo, assertComposableMessageType, } from 'lib/types/message-types.js'; -import type { LegacyThreadInfo, ThreadInfo } from 'lib/types/thread-types.js'; +import type { ThreadInfo } from 'lib/types/thread-types.js'; import css from './chat-message-list.css'; import multimediaMessageSendFailed from './multimedia-message-send-failed.js'; @@ -28,7 +28,7 @@ ...BaseProps, +rawMessageInfo: RawComposableMessageInfo, +inputState: ?InputState, - +parentThreadInfo: ?LegacyThreadInfo, + +parentThreadInfo: ?ThreadInfo, }; class FailedSend extends React.PureComponent { retryingText = false; diff --git a/web/chat/message-preview.react.js b/web/chat/message-preview.react.js --- a/web/chat/message-preview.react.js +++ b/web/chat/message-preview.react.js @@ -7,14 +7,14 @@ import { useThreadChatMentionCandidates } from 'lib/hooks/chat-mention-hooks.js'; import { useMessagePreview } from 'lib/shared/message-utils.js'; import { type MessageInfo } from 'lib/types/message-types.js'; -import { type LegacyThreadInfo } from 'lib/types/thread-types.js'; +import type { ThreadInfo } from 'lib/types/thread-types.js'; import css from './chat-thread-list.css'; import { getDefaultTextMessageRules } from '../markdown/rules.react.js'; type Props = { +messageInfo: ?MessageInfo, - +threadInfo: LegacyThreadInfo, + +threadInfo: ThreadInfo, }; function MessagePreview(props: Props): React.Node { const { messageInfo, threadInfo } = props; diff --git a/web/input/input-state-container.react.js b/web/input/input-state-container.react.js --- a/web/input/input-state-container.react.js +++ b/web/input/input-state-container.react.js @@ -79,7 +79,6 @@ import { type ClientNewThreadRequest, type NewThreadResult, - type LegacyThreadInfo, type ThreadInfo, } from 'lib/types/thread-types.js'; import { @@ -420,7 +419,7 @@ return rawMessageInfo; } - shouldEncryptMedia(threadInfo: LegacyThreadInfo): boolean { + shouldEncryptMedia(threadInfo: ThreadInfo): boolean { return threadInfoInsideCommunity(threadInfo, commStaffCommunity.id); } @@ -627,20 +626,20 @@ draft: draft ?? '', textCursorPosition: textCursorPosition ?? 0, appendFiles: ( - threadInfo: LegacyThreadInfo, + threadInfo: ThreadInfo, files: $ReadOnlyArray, ) => this.appendFiles(threadInfo, files), cancelPendingUpload: (localUploadID: string) => this.cancelPendingUpload(threadID, localUploadID), sendTextMessage: ( messageInfo: RawTextMessageInfo, - threadInfo: LegacyThreadInfo, - parentThreadInfo: ?LegacyThreadInfo, + threadInfo: ThreadInfo, + parentThreadInfo: ?ThreadInfo, ) => this.sendTextMessage(messageInfo, threadInfo, parentThreadInfo), createMultimediaMessage: ( localID: number, - threadInfo: LegacyThreadInfo, + threadInfo: ThreadInfo, ) => this.createMultimediaMessage(localID, threadInfo), setDraft: (newDraft: string) => this.setDraft(threadID, newDraft), setTextCursorPosition: (newPosition: number) => @@ -649,7 +648,7 @@ this.messageHasUploadFailure(assignedUploads[localMessageID]), retryMultimediaMessage: ( localMessageID: string, - threadInfo: LegacyThreadInfo, + threadInfo: ThreadInfo, ) => this.retryMultimediaMessage( localMessageID, @@ -688,7 +687,7 @@ } async appendFiles( - threadInfo: LegacyThreadInfo, + threadInfo: ThreadInfo, files: $ReadOnlyArray, ): Promise { const selectionTime = Date.now(); @@ -745,7 +744,7 @@ } async appendFile( - threadInfo: LegacyThreadInfo, + threadInfo: ThreadInfo, file: File, selectTime: number, ): Promise<{ @@ -1380,7 +1379,7 @@ // Creates a MultimediaMessage from the unassigned pending uploads, // if there are any - createMultimediaMessage(localID: number, threadInfo: LegacyThreadInfo) { + createMultimediaMessage(localID: number, threadInfo: ThreadInfo) { this.props.sendCallbacks.forEach(callback => callback()); const localMessageID = `${localIDPrefix}${localID}`; @@ -1501,7 +1500,7 @@ retryMultimediaMessage( localMessageID: string, - threadInfo: LegacyThreadInfo, + threadInfo: ThreadInfo, pendingUploads: ?$ReadOnlyArray, ) { this.props.sendCallbacks.forEach(callback => callback()); diff --git a/web/modals/threads/create/steps/subchannel-members.react.js b/web/modals/threads/create/steps/subchannel-members.react.js --- a/web/modals/threads/create/steps/subchannel-members.react.js +++ b/web/modals/threads/create/steps/subchannel-members.react.js @@ -4,8 +4,7 @@ import { userStoreSearchIndex } from 'lib/selectors/user-selectors.js'; import { useAncestorThreads } from 'lib/shared/ancestor-threads.js'; -import type { MinimallyEncodedThreadInfo } from 'lib/types/minimally-encoded-thread-permissions-types.js'; -import type { LegacyThreadInfo } from 'lib/types/thread-types.js'; +import type { ThreadInfo } from 'lib/types/thread-types.js'; import MembersList from './subchannel-members-list.react.js'; import css from './subchannel-members.css'; @@ -13,7 +12,7 @@ import { useSelector } from '../../../../redux/redux-utils.js'; type SubchannelMembersProps = { - +parentThreadInfo: LegacyThreadInfo | MinimallyEncodedThreadInfo, + +parentThreadInfo: ThreadInfo, +selectedUsers: $ReadOnlySet, +searchText: string, +setSearchText: string => void, diff --git a/web/modals/threads/thread-picker-modal.react.js b/web/modals/threads/thread-picker-modal.react.js --- a/web/modals/threads/thread-picker-modal.react.js +++ b/web/modals/threads/thread-picker-modal.react.js @@ -5,7 +5,7 @@ import { useGlobalThreadSearchIndex } from 'lib/selectors/nav-selectors.js'; import { onScreenEntryEditableThreadInfos } from 'lib/selectors/thread-selectors.js'; -import type { LegacyThreadInfo } from 'lib/types/thread-types.js'; +import type { ThreadInfo } from 'lib/types/thread-types.js'; import { useResolvedThreadInfo } from 'lib/utils/entity-helpers.js'; import css from './thread-picker-modal.css'; @@ -16,7 +16,7 @@ import Modal, { type ModalOverridableProps } from '../modal.react.js'; type OptionProps = { - +threadInfo: LegacyThreadInfo, + +threadInfo: ThreadInfo, +createNewEntry: (threadID: string) => void, +onCloseModal: () => void, }; diff --git a/web/modals/user-profile/user-profile-action-buttons.react.js b/web/modals/user-profile/user-profile-action-buttons.react.js --- a/web/modals/user-profile/user-profile-action-buttons.react.js +++ b/web/modals/user-profile/user-profile-action-buttons.react.js @@ -5,7 +5,7 @@ import { useRelationshipPrompt } from 'lib/hooks/relationship-prompt.js'; import { userRelationshipStatus } from 'lib/types/relationship-types.js'; -import type { LegacyThreadInfo } from 'lib/types/thread-types'; +import type { ThreadInfo } from 'lib/types/thread-types'; import UserProfileMessageButton from './user-profile-message-button.react.js'; import css from './user-profile.css'; @@ -13,7 +13,7 @@ import { buttonThemes } from '../../components/button.react.js'; type Props = { - +threadInfo: LegacyThreadInfo, + +threadInfo: ThreadInfo, }; function UserProfileActionButtons(props: Props): React.Node { diff --git a/web/roles/create-roles-modal.react.js b/web/roles/create-roles-modal.react.js --- a/web/roles/create-roles-modal.react.js +++ b/web/roles/create-roles-modal.react.js @@ -17,8 +17,8 @@ userSurfacedPermissionOptions, } from 'lib/types/thread-permission-types.js'; import type { - LegacyThreadInfo, RoleModificationRequest, + ThreadInfo, } from 'lib/types/thread-types.js'; import { useDispatchActionPromise } from 'lib/utils/action-utils.js'; import { values } from 'lib/utils/objects.js'; @@ -37,7 +37,7 @@ ); type CreateRolesModalProps = { - +threadInfo: LegacyThreadInfo, + +threadInfo: ThreadInfo, +action: 'create_role' | 'edit_role', +existingRoleID?: string, +roleName: string, diff --git a/web/roles/delete-role-modal.react.js b/web/roles/delete-role-modal.react.js --- a/web/roles/delete-role-modal.react.js +++ b/web/roles/delete-role-modal.react.js @@ -10,7 +10,7 @@ import { createLoadingStatusSelector } from 'lib/selectors/loading-selectors.js'; import { useRoleMemberCountsForCommunity } from 'lib/shared/thread-utils.js'; import type { LoadingStatus } from 'lib/types/loading-types.js'; -import type { LegacyThreadInfo } from 'lib/types/thread-types.js'; +import type { ThreadInfo } from 'lib/types/thread-types.js'; import { useDispatchActionPromise } from 'lib/utils/action-utils.js'; import { constructRoleDeletionMessagePrompt } from 'lib/utils/role-utils.js'; @@ -24,7 +24,7 @@ ); type DeleteRoleModalProps = { - +threadInfo: LegacyThreadInfo, + +threadInfo: ThreadInfo, +defaultRoleID: string, +roleID: string, }; diff --git a/web/selectors/calendar-selectors.js b/web/selectors/calendar-selectors.js --- a/web/selectors/calendar-selectors.js +++ b/web/selectors/calendar-selectors.js @@ -9,7 +9,7 @@ import { threadInfoSelector } from 'lib/selectors/thread-selectors.js'; import type SearchIndex from 'lib/shared/search-index.js'; import type { FilterThreadInfo } from 'lib/types/filter-types.js'; -import type { LegacyThreadInfo } from 'lib/types/thread-types.js'; +import type { ThreadInfo } from 'lib/types/thread-types.js'; import { filterThreadIDsBelongingToCommunity } from 'lib/utils/drawer-utils.react.js'; import type { AppState } from '../redux/redux-setup.js'; @@ -32,7 +32,7 @@ threadInfoSelector, ( calendarPickedCommunityID: ?string, - threadInfos: { +[id: string]: LegacyThreadInfo }, + threadInfos: { +[id: string]: ThreadInfo }, ) => { if (!calendarPickedCommunityID) { return null;