mirror of
https://github.com/TelegramMessenger/Telegram-iOS.git
synced 2026-07-06 03:33:41 +02:00
Consolidates 137 wave commits + 31 supporting commits (CLAUDE.md bump, typealias additions, AnyObject→EngineMedia restoration) into one squashed commit. Migrates dozens of consumer-side public APIs, struct fields, protocol methods, and enum payloads from Postbox protocols/structs to TelegramEngine engine wrappers and typealiases. Drops `import Postbox` from many files. Adds new TelegramCore typealiases and one TelegramEngineUnauthorized facade. Notable changes by category: **TelegramCore typealias additions** (rule 2 — narrow utility typealiases): - EngineChatListIndex, EngineTempBoxFile, EngineItemCollectionItemIndex, EngineItemCollectionViewEntryIndex, EngineValueBoxEncryptionParameters, EngineMessageAndThreadId, EnginePeerStoryStats, EngineMessageHistoryAnchorIndex, EngineChatListTotalUnreadStateCategory, EngineChatListTotalUnreadStateStats, EnginePeerSummaryCounterTags, EngineChatListTotalUnreadState, EngineItemCacheEntryId, EngineHashFunctions, EngineCachedMediaResourceRepresentationResult, EngineMediaResourceDataFetchResult, EngineMediaResourceDataFetchError, EngineMediaResourceStatus, EngineCachedPeerData **TelegramCore engine extensions/forwarders**: - EngineMessage.engineMedia, EngineMessage.enginePeers, EngineMessage.adAttribute, EngineMessage.effectivelyIncoming - engineFileSize forwarder - TelegramEngine.Resources.clearCachedMediaResources(mediaResourceIds: Set<EngineMediaResource.Id>) - TelegramEngine.Resources.fetchStatus(id:resourceSize:) - TelegramEngineUnauthorized.UnauthorizedResources facade with storeResourceData **Public API/struct migrations to engine types**: - ChatAvailableMessageActions.banAuthor/banAuthors → EnginePeer?/[EnginePeer] - WebSessionsContextState.peers → [EnginePeer.Id: EnginePeer] - CacheUsageStats.peers → [EnginePeer.Id: EnginePeer] - PeerCommand.peer → EnginePeer - PeerInfoControllerMode.calls(messages:) → [EngineMessage] - CallControllerNodeProtocol.updatePeer → EnginePeer params - ChatHistoryListNode.messageInCurrentHistoryView (and 4 variants) → EngineMessage? - ChatHistorySearchContainerNode.messageForGallery → EngineMessage? - PeerInfoPaneNode.findLoadedMessage / ensureMessageIsVisible / transitionNodeForGallery → engine-typed - GalleryHiddenMediaTarget.getTransitionInfo / GalleryHiddenMediaManager.findTarget → engine-typed - ChatPanelInterfaceInteraction.presentReactionDeletionOptions / presentBan*MessageOptions → EnginePeer - DrawingMessageRenderer.messages → [EngineMessage] - ChatVideoGalleryItemScrubberView.setFetchStatusSignal → EngineMediaResource.FetchStatus - ChannelDiscussionGroupActionSheetItem.peer, VoiceChatPeerEntry.peer, VoiceChatFullscreenParticipantItem.peer, MediaStreamComponent.chatPeer, MediaStreamVideoComponent.callPeer, ChatMessageContactBubbleContentNode.contactPeer, ChatMessageForwardInfoNode.peer, ChatMessageCommentFooterContentNode.replyPeers, ChatReportPeerTitlePanelNode.peer, ChatMessageActionUrlAuthController.bot, PeerMediaCollectionInterfaceState.peer, ChatMessageCallBubbleContentNode.peopleAvatars, ChatLoadingNode.renderedPeer (→ EngineRenderedPeer) — all to engine types **Wave-71-shadow stored-field migrations** (Postbox Peer/Message → Engine wrapper): - LegacyCallControllerNode.peer - CallStatusBarNode.currentPeer **Dead-code / dead-field removals**: - CallController.peer, CallControllerNodeV2.account, ContactMultiselectionController PeerNameIndex fields, preparedChatListNodeViewTransition account: Account param, FetchResource.swift entirely (unused function) **Module-level Postbox import drops**: 30+ files including TelegramRootController, EditStories, GiftViewScreen, AnimatedStickerUtils, FetchPhotoLibraryImageResource, PeerInfoGiftsPaneNode, PeerInfoPaneContainerNode, PresentAddMembers, PeerInfoProfileItems, ChatControllerAdminBanUsers, PresentationData typealiases, DefaultDayPresentationTheme, ChatListViewTransition, GalleryHiddenMediaManager, RecentSessionsController, GifContext, AuthorizationSequenceController, PeerInfoHeaderEditingContentNode, PeerInfoHeaderNode, PeerAllowedReactionListController, CallControllerNodeV2, and 6 PeerInfo pane files. **AnyObject restoration**: rule 8 added (never substitute Postbox protocols with Any/AnyObject) — undid previous AnyObject substitutions in waves 141/143 back to EngineMedia. Doc maintenance: CLAUDE.md updated to reflect new typealiases and forwarders. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| ActionPanelComponent | ||
| AdminUserActionsSheet | ||
| AdPanelHeaderPanelComponent | ||
| Ads | ||
| AlertComponent | ||
| AnimatedCounterComponent | ||
| AnimatedTextComponent | ||
| AnimationCache | ||
| AsyncListComponent | ||
| AttachmentFileController | ||
| AudioTranscriptionButtonComponent | ||
| AudioTranscriptionPendingIndicatorComponent | ||
| AudioWaveformComponent | ||
| AudioWaveformNode | ||
| AuthConfirmationScreen | ||
| AvatarBackground | ||
| AvatarComponent | ||
| AvatarEditorScreen | ||
| AvatarUploadToastScreen | ||
| BackButtonComponent | ||
| BadgeComponent | ||
| BatchVideoRendering | ||
| BottomButtonPanelComponent | ||
| ButtonComponent | ||
| Calls | ||
| CameraButtonComponent | ||
| CameraScreen | ||
| Chat | ||
| ChatControllerInteraction | ||
| ChatEntityKeyboardInputNode | ||
| ChatFolderLinkPreviewScreen | ||
| ChatInputNode | ||
| ChatInputPanelContainer | ||
| ChatList | ||
| ChatListHeaderComponent | ||
| ChatListTitleView | ||
| ChatParticipantRightsScreen | ||
| ChatScheduleTimeController | ||
| ChatScheduleTimeScreen | ||
| ChatSendButtonRadialStatusNode | ||
| ChatTextInputMediaRecordingButton | ||
| ChatThemeScreen | ||
| ChatTimerScreen | ||
| ChatTitleView | ||
| CheckComponent | ||
| CocoonInfoScreen | ||
| ComposePollScreen | ||
| ComposeTodoScreen | ||
| CompositeTextNode | ||
| Contacts/NewContactScreen | ||
| ContentReportScreen | ||
| ContextControllerImpl | ||
| ContextMenuScreen | ||
| ContextReferenceButtonComponent | ||
| CreateBotScreen | ||
| DCTAnimationCacheImpl | ||
| DCTMultiAnimationRendererImpl | ||
| DustEffect | ||
| DynamicCornerRadiusView | ||
| EdgeEffect | ||
| EditableChatTextNode | ||
| EmojiActionIconComponent | ||
| EmojiGameStakeScreen | ||
| EmojiStatusComponent | ||
| EmojiStatusSelectionComponent | ||
| EmojiSuggestionsComponent | ||
| EmojiTextAttachmentView | ||
| EmptyStateIndicatorComponent | ||
| EntityKeyboard | ||
| EntityKeyboardGifContent | ||
| FaceScanScreen | ||
| ForumCreateTopicScreen | ||
| ForumSettingsScreen | ||
| Gifts | ||
| GifVideoLayer | ||
| GlassBackgroundComponent | ||
| GlassBarButtonComponent | ||
| GlassControls | ||
| GlobalControlPanelsContext | ||
| GroupCallHeaderPanelComponent | ||
| GroupStickerPackSetupController | ||
| HeaderPanelContainerComponent | ||
| HorizontalTabsComponent | ||
| InteractiveTextComponent | ||
| ItemListDatePickerItem | ||
| JoinSubjectScreen | ||
| LegacyCamera | ||
| LegacyChatHeaderPanelComponent | ||
| LegacyInstantVideoController | ||
| LegacyMessageInputPanel | ||
| LegacyMessageInputPanelInputView | ||
| LensTransition | ||
| LiquidLens | ||
| ListActionItemComponent | ||
| ListComposePollOptionComponent | ||
| ListItemComponentAdaptor | ||
| ListItemSliderSelectorComponent | ||
| ListItemSwipeOptionContainer | ||
| ListMultilineTextFieldItemComponent | ||
| ListSectionComponent | ||
| ListSwitchItemComponent | ||
| ListTextFieldItemComponent | ||
| LiveLocationHeaderPanelComponent | ||
| LottieAnimationCache | ||
| LottieComponent | ||
| LottieComponentEmojiContent | ||
| LottieComponentResourceContent | ||
| LottieMetal | ||
| MarqueeComponent | ||
| MaskedContainerComponent | ||
| MediaAssetsContext | ||
| MediaEditor | ||
| MediaEditorScreen | ||
| MediaManager/PeerMessagesMediaPlaylist | ||
| MediaPlaybackHeaderPanelComponent | ||
| MediaScrubberComponent | ||
| MeshTransform | ||
| MessageFeeHeaderPanelComponent | ||
| MessageInputActionButtonComponent | ||
| MessageInputPanelComponent | ||
| MiniAppListScreen | ||
| MinimizedContainer | ||
| MoreHeaderButton | ||
| MultiAnimationRenderer | ||
| MultiplexedVideoNode | ||
| MultiScaleTextNode | ||
| NavigationBarImpl | ||
| NavigationSearchComponent | ||
| NavigationStackComponent | ||
| NotificationExceptionsScreen | ||
| NotificationPeerExceptionController | ||
| OptionButtonComponent | ||
| PeerAllowedReactionsScreen | ||
| PeerInfo | ||
| PeerManagement | ||
| PeerNameTextComponent | ||
| PeerReportScreen | ||
| PeerSelectionController | ||
| PlainButtonComponent | ||
| PollStatsScreen | ||
| Premium | ||
| PremiumAlertController | ||
| PremiumGiftAttachmentScreen | ||
| PremiumLockButtonSubtitleComponent | ||
| PremiumPeerShortcutComponent | ||
| ProxyServerPreviewScreen | ||
| RankChatPreviewItem | ||
| RasterizedCompositionComponent | ||
| Resources | ||
| SavedMessages/SavedMessagesScreen | ||
| SaveProgressScreen | ||
| ScrollComponent | ||
| SearchInputPanelComponent | ||
| SectionTitleContextItem | ||
| SegmentControlComponent | ||
| SendInviteLinkScreen | ||
| Settings | ||
| ShareExtensionContext | ||
| ShareWithPeersScreen | ||
| SliderComponent | ||
| SliderContextItem | ||
| SpaceWarpView | ||
| Stars | ||
| StarsParticleEffect | ||
| StickerPickerScreen | ||
| Stickers/StickerPackEditTitleController | ||
| StorageUsageScreen | ||
| Stories | ||
| SubcodecAnimationCacheImpl | ||
| SubcodecMultiAnimationRendererImpl | ||
| SuggestedPostApproveAlert | ||
| SwitchComponent | ||
| TabBarComponent | ||
| TabSelectionRecognizer | ||
| TabSelectorComponent | ||
| TelegramAccountAuxiliaryMethods | ||
| TelegramUIDeclareEncodables | ||
| TextBadgeComponent | ||
| TextFieldComponent | ||
| TextLoadingEffect | ||
| TextNodeWithEntities | ||
| TextProcessingScreen | ||
| TimeSelectionActionSheet | ||
| ToastComponent | ||
| TokenListTextField | ||
| TooltipComponent | ||
| TranslateHeaderPanelComponent | ||
| TranslationLanguagesContextMenuContent | ||
| Utils | ||
| VideoAnimationCache | ||
| VideoMessageCameraScreen | ||
| VideoPlaybackControlsComponent | ||
| VolumeSliderContextItem | ||
| WallpaperPreviewMedia | ||