Telegram-iOS/submodules/TelegramUI/Components
isaac d1aa0db537 Postbox -> TelegramEngine waves 46-93 (squashed)
Squash of 63 commits spanning waves 46-93 (plus interspersed docs commits)
of the gradual Postbox->TelegramEngine consumer-side migration.

Scope: 139 files changed, 2123 insertions(+), 452 deletions(-).

## Themes by wave-block

**Waves 46-58 — Peer field migrations + facade additions**
Foundational EnginePeer convenience init additions (PeerReference, RenderedPeer,
SelectivePrivacyPeer). Multiple `peer: Peer` field migrations across PeerInfo,
ChatList, and SettingsUI components.

**Waves 59-73 — peer field cascade + EnginePeer wrap drops**
Series of single- to two-file peer-field migrations; consumer-side wrap
removal (`EnginePeer(peer)` -> direct EnginePeer use); `as? TelegramUser`
cast conversion to `case let .user(...)` enum match. Wave 64: RenderedPeer
convenience init. Wave 68: SelectivePrivacyPeer convenience init.

**Waves 74-83 — controller-Node bridge cleanup + small migrations**
Wave-71 shadow-pattern cleanup at controller->Node bridges. Migrations of
ChatRecentActionsController.peer (74), PeerInfoMember (75), MentionChatInputPanelItem
(76), PassportUI SecureIdAuthController (77), AccountWithInfo + ShareController
(78), peerInputActivitiesPromise (79), InactiveChannel (80), BlockedPeers (81),
openHashtag resolveSignal (82), NotificationExceptionsList (83).

**Waves 84-90 — TelegramEngine.Resources facade migrations**
Per-method Shape-A/B sweeps converting `<ctx>.account.postbox.mediaBox.X(...)`
to `<ctx>.engine.resources.X(...)`. Wave 90 was a single-commit big sweep:
40 fetchedMediaResource sites in 25 files migrated to engine.resources.fetch
facade in one atomic pass with first-pass-clean build.

Methods covered: storeResourceData, completedResourcePath, cancelInteractiveResourceFetch,
resourceRangesStatus, resourceStatus, fetch (fetchedMediaResource).

**Waves 91-92 — additional type migrations**
Wave 91: ItemListWebsiteItem.peer + RecentSessionsController enum-case payload
+ openWebSession callback Peer? -> EnginePeer?.
Wave 92: ChatListController StateHolder.EntryContext status type
MediaResourceStatus -> EngineMediaResource.FetchStatus.

**Wave 93 — speculative `import Postbox` drop sweep**
Drop import from 7 wave-touched files where it became unused; restore in 5
files where bare PeerId/Message/MediaId/StoryId references escaped the
pre-flight regex. Includes one MediaId(...) -> EngineMedia.Id(...) swap in
InAppPurchaseManager to unlock its import drop.

## Build state

Final state at squash: clean Telegram/Telegram build at debug_sim_arm64.

## Persistent-state notes

- Pre-existing WIP unchanged across the squashed range:
  - build-system/bazel-rules/sourcekit-bazel-bsp submodule marker
  - Untracked: build-system/tulsi/, submodules/TgVoip/, third-party/libx264/

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 20:48:15 +04:00
..
ActionPanelComponent
AdminUserActionsSheet Postbox -> TelegramEngine waves 37-43 + wave 44 design/plan (squashed) 2026-04-24 23:19:43 +04:00
AdPanelHeaderPanelComponent Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
Ads Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
AlertComponent Various improvements 2026-02-23 13:51:13 +04:00
AnimatedCounterComponent
AnimatedTextComponent Glass 2025-12-26 20:29:30 +08:00
AnimationCache Refactoring 2026-04-07 11:31:22 +02:00
AsyncListComponent Temp 2026-04-14 15:33:19 +02:00
AttachmentFileController Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
AudioTranscriptionButtonComponent
AudioTranscriptionPendingIndicatorComponent
AudioWaveformComponent
AudioWaveformNode
AuthConfirmationScreen Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
AvatarBackground
AvatarComponent Various fixes 2026-02-02 15:54:43 +04:00
AvatarEditorScreen Merge commit '23c4d94748' 2026-04-19 23:54:22 +02:00
AvatarUploadToastScreen Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
BackButtonComponent Update 2025-11-26 23:05:30 +08:00
BadgeComponent
BatchVideoRendering Postbox -> TelegramEngine waves 27-36 2026-04-24 11:24:13 +04:00
BottomButtonPanelComponent
ButtonComponent Various improvements 2026-04-22 23:03:51 +02:00
Calls Update 2025-11-26 23:05:30 +08:00
CameraButtonComponent
CameraScreen Various fixes 2026-04-14 03:33:34 +02:00
Chat Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
ChatControllerInteraction Postbox -> TelegramEngine waves 27-36 2026-04-24 11:24:13 +04:00
ChatEntityKeyboardInputNode Various improvements 2026-04-24 04:55:22 +02:00
ChatFolderLinkPreviewScreen Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
ChatInputNode
ChatInputPanelContainer
ChatList Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
ChatListHeaderComponent Various improvements 2026-02-03 20:17:44 +08:00
ChatListTitleView Various improvements 2026-01-25 22:17:49 +04:00
ChatParticipantRightsScreen Various improvements 2026-04-24 03:16:14 +02:00
ChatScheduleTimeController Merge commit '96b1432434' 2026-04-24 11:24:47 +04:00
ChatScheduleTimeScreen Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
ChatSendButtonRadialStatusNode
ChatTextInputMediaRecordingButton Bug fixes 2026-02-06 17:14:35 +04:00
ChatThemeScreen Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
ChatTimerScreen Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
ChatTitleView Various improvements 2026-04-18 08:41:08 +02:00
CheckComponent Reapply "Update API" 2026-03-11 18:51:44 +01:00
CocoonInfoScreen Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
ComposePollScreen Various improvements 2026-04-24 04:55:22 +02:00
ComposeTodoScreen Various improvements 2026-04-24 04:55:22 +02:00
CompositeTextNode
Contacts/NewContactScreen Postbox -> TelegramEngine waves 37-43 + wave 44 design/plan (squashed) 2026-04-24 23:19:43 +04:00
ContentReportScreen Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
ContextControllerImpl Various improvements 2026-04-22 23:03:51 +02:00
ContextMenuScreen Text selection 2026-03-24 22:51:44 +08:00
ContextReferenceButtonComponent
CreateBotScreen Various improvements 2026-03-28 00:52:16 +08:00
DCTAnimationCacheImpl Refactoring 2026-04-07 11:31:22 +02:00
DCTMultiAnimationRendererImpl Refactoring 2026-04-07 11:31:22 +02:00
DustEffect Various improvements 2026-01-25 22:17:49 +04:00
DynamicCornerRadiusView
EdgeEffect Various improvements 2026-02-03 20:17:44 +08:00
EditableChatTextNode
EmojiActionIconComponent
EmojiGameStakeScreen Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
EmojiStatusComponent
EmojiStatusSelectionComponent Postbox -> TelegramEngine waves 27-36 2026-04-24 11:24:13 +04:00
EmojiSuggestionsComponent Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
EmojiTextAttachmentView Refactoring 2026-04-07 11:31:22 +02:00
EmptyStateIndicatorComponent
EntityKeyboard Various improvements 2026-04-24 03:16:14 +02:00
EntityKeyboardGifContent
FaceScanScreen Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
ForumCreateTopicScreen Various improvements 2026-04-10 14:30:23 +02:00
ForumSettingsScreen Various improvements 2025-10-16 05:30:06 +04:00
Gifts Postbox -> TelegramEngine waves 37-43 + wave 44 design/plan (squashed) 2026-04-24 23:19:43 +04:00
GifVideoLayer
GlassBackgroundComponent Various fixes 2026-04-15 23:12:53 +02:00
GlassBarButtonComponent [WIP] Polls 2026-03-13 11:04:33 +01:00
GlassControls Various fixes 2026-03-27 16:48:23 +01:00
GlobalControlPanelsContext Postbox -> TelegramEngine waves 27-36 2026-04-24 11:24:13 +04:00
GroupCallHeaderPanelComponent Postbox -> TelegramEngine wave 6: unused import Postbox batch sweep 2026-04-19 23:46:13 +02:00
GroupStickerPackSetupController Postbox -> TelegramEngine wave 6: unused import Postbox batch sweep 2026-04-19 23:46:13 +02:00
HeaderPanelContainerComponent Various improvements 2026-03-18 00:27:13 +01:00
HorizontalTabsComponent Various improvements 2026-03-18 00:27:13 +01:00
InteractiveTextComponent Cleanup 2026-04-20 18:55:27 +02:00
ItemListDatePickerItem Various improvements 2026-03-12 13:51:27 +01:00
JoinSubjectScreen Postbox -> TelegramEngine waves 37-43 + wave 44 design/plan (squashed) 2026-04-24 23:19:43 +04:00
LegacyCamera Various improvements 2026-04-24 03:16:14 +02:00
LegacyChatHeaderPanelComponent Glass 2025-12-01 22:13:33 +08:00
LegacyInstantVideoController Various improvements 2026-04-24 03:16:14 +02:00
LegacyMessageInputPanel Various improvements 2026-04-24 04:55:22 +02:00
LegacyMessageInputPanelInputView
LensTransition Fix 2026-03-07 15:33:36 +01:00
LiquidLens Translation improvements 2026-03-22 05:17:29 +03:00
ListActionItemComponent Various improvements 2026-04-22 23:03:51 +02:00
ListComposePollOptionComponent Various improvements 2026-04-22 23:03:51 +02:00
ListItemComponentAdaptor Various improvements 2025-10-16 05:30:06 +04:00
ListItemSliderSelectorComponent Collapse sibling options 2025-12-02 17:20:43 +08:00
ListItemSwipeOptionContainer
ListMultilineTextFieldItemComponent TextProcessing: style create/edit/delete, AI previews, and integration 2026-04-19 23:45:18 +02:00
ListSectionComponent Collapse sibling options 2025-12-02 17:20:43 +08:00
ListSwitchItemComponent Various improvements 2025-11-13 08:27:11 +04:00
ListTextFieldItemComponent Various fixes 2026-02-27 14:34:18 +04:00
LiveLocationHeaderPanelComponent Various fixes 2026-04-15 23:12:53 +02:00
LottieAnimationCache
LottieComponent Various improvements 2026-01-25 22:17:49 +04:00
LottieComponentEmojiContent
LottieComponentResourceContent
LottieMetal
MarqueeComponent
MaskedContainerComponent
MediaAssetsContext
MediaEditor Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
MediaEditorScreen Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
MediaManager/PeerMessagesMediaPlaylist Various improvements 2026-03-24 06:54:30 +01:00
MediaPlaybackHeaderPanelComponent Various fixes 2026-04-16 21:45:26 +02:00
MediaScrubberComponent Various improvements 2025-10-16 05:30:06 +04:00
MeshTransform Optimize 2026-03-10 19:33:45 +01:00
MessageFeeHeaderPanelComponent Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
MessageInputActionButtonComponent Glass 2026-01-25 00:31:18 +08:00
MessageInputPanelComponent Postbox -> TelegramEngine waves 27-36 2026-04-24 11:24:13 +04:00
MiniAppListScreen Postbox -> TelegramEngine waves 37-43 + wave 44 design/plan (squashed) 2026-04-24 23:19:43 +04:00
MinimizedContainer Various fixes 2026-04-15 23:12:53 +02:00
MoreHeaderButton Glass 2025-12-06 01:28:06 +08:00
MultiAnimationRenderer Refactoring 2026-04-07 11:31:22 +02:00
MultiplexedVideoNode Postbox -> TelegramEngine wave 6: unused import Postbox batch sweep 2026-04-19 23:46:13 +02:00
MultiScaleTextNode
NavigationBarImpl Various improvements 2026-04-24 23:21:05 +04:00
NavigationSearchComponent
NavigationStackComponent Various improvements 2026-01-25 22:17:49 +04:00
NotificationExceptionsScreen
NotificationPeerExceptionController Various improvements 2026-04-24 03:16:14 +02:00
OptionButtonComponent
PeerAllowedReactionsScreen Stickers & emoji search pagination 2026-04-19 18:32:40 +02:00
PeerInfo Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
PeerManagement Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
PeerNameTextComponent Stories 2025-11-07 22:54:56 +08:00
PeerReportScreen Various improvements 2026-04-24 04:55:22 +02:00
PeerSelectionController Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
PlainButtonComponent Various improvements 2026-03-30 02:55:35 +02:00
PollStatsScreen Update API 2026-04-16 01:18:22 +02:00
Premium Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
PremiumAlertController Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
PremiumGiftAttachmentScreen Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
PremiumLockButtonSubtitleComponent
PremiumPeerShortcutComponent
ProxyServerPreviewScreen Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
RankChatPreviewItem Various improvements 2026-02-25 04:38:32 +04:00
RasterizedCompositionComponent
Resources [WIP] Live photos 2026-02-20 13:28:58 +04:00
SavedMessages/SavedMessagesScreen Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
SaveProgressScreen
ScrollComponent
SearchInputPanelComponent Glass 2026-01-25 00:31:18 +08:00
SectionTitleContextItem Various improvements 2026-01-16 21:23:32 +08:00
SegmentControlComponent Various improvements 2025-12-05 18:41:50 +04:00
SendInviteLinkScreen Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
Settings Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
ShareExtensionContext Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
ShareWithPeersScreen Postbox -> TelegramEngine waves 37-43 + wave 44 design/plan (squashed) 2026-04-24 23:19:43 +04:00
SliderComponent Various improvements 2025-11-15 01:14:50 +04:00
SliderContextItem Various improvements 2026-01-16 21:23:32 +08:00
SpaceWarpView Upgrade SpaceWarpNode 2026-02-13 12:23:53 +04:00
Stars Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
StarsParticleEffect Stories 2025-10-28 15:44:44 +04:00
StickerPickerScreen Stickers & emoji search pagination 2026-04-19 18:32:40 +02:00
Stickers/StickerPackEditTitleController
StorageUsageScreen Postbox -> TelegramEngine waves 37-43 + wave 44 design/plan (squashed) 2026-04-24 23:19:43 +04:00
Stories Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
SubcodecAnimationCacheImpl fix: correct Swift-ObjC bridging in subcodec animation modules 2026-04-07 12:35:54 +02:00
SubcodecMultiAnimationRendererImpl fix: correct Swift-ObjC bridging in subcodec animation modules 2026-04-07 12:35:54 +02:00
SuggestedPostApproveAlert Merge branch 'master' of gitlab.com:peter-iakovlev/telegram-ios 2025-12-22 00:48:28 +04:00
SwitchComponent
TabBarComponent Translation improvements 2026-03-22 05:17:29 +03:00
TabSelectionRecognizer Various improvements 2025-12-16 20:05:44 +04:00
TabSelectorComponent Glass 2025-12-28 22:39:34 +08:00
TelegramAccountAuxiliaryMethods
TelegramUIDeclareEncodables
TextBadgeComponent
TextFieldComponent Various improvements 2026-03-22 13:44:04 +01:00
TextLoadingEffect
TextNodeWithEntities Various improvements 2025-12-16 20:05:44 +04:00
TextProcessingScreen Postbox -> TelegramEngine waves 46-93 (squashed) 2026-04-25 20:48:15 +04:00
TimeSelectionActionSheet
ToastComponent Translation improvements 2026-03-22 05:17:29 +03:00
TokenListTextField Glass 2025-12-26 20:29:30 +08:00
TooltipComponent Translation improvements 2026-03-22 05:17:29 +03:00
TranslateHeaderPanelComponent Postbox -> TelegramEngine wave 6: unused import Postbox batch sweep 2026-04-19 23:46:13 +02:00
TranslationLanguagesContextMenuContent Postbox -> TelegramEngine waves 11-14: stateManager collapse + BUILD-dep sweep 2026-04-20 20:26:58 +02:00
Utils Temp 2026-04-14 15:33:19 +02:00
VideoAnimationCache Fix stickers memory leak 2026-04-02 20:37:35 +02:00
VideoMessageCameraScreen Various improvements 2026-04-24 03:16:14 +02:00
VideoPlaybackControlsComponent Glass 2026-02-13 17:08:48 +04:00
VolumeSliderContextItem Various fixes 2026-03-03 20:26:45 +04:00
WallpaperPreviewMedia Update API 2025-12-02 14:28:47 +04:00