diff --git a/CHANGELOG.md b/CHANGELOG.md index 9bd96583..97bade32 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,24 @@ # Changelog +### v3.13.0 (Dec 13, 2023) + +- Added `SBUScrollPostionConfiguration` configuration class + - Added `scrollPostionConfiguration` peroperty in `SBUGlobals` + +- Added `SBUScrollOptions` model +- Added `SBUScrollOptions.Result` model +- Added `SBUScrollPosition` enum + +- Added and modified methods in `SBUBaseChannelModule.List` class + - Modified `position` parameter in `scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:position:)` + - Added `scrollToMessage(message:enablesScrollAnimation:enablesMessageAnimation:position)` + +- Added and modified methods in `SBUBaseChannelViewController` class + - Modified `position` parameter in `scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:position:)` + - Added `scrollToMessage(message:enablesScrollAnimation:enablesMessageAnimation:position)` + +- Fixed message menu sheet not showing when emojiList is empty + ### v3.12.0 (Nov 29, 2023) #### Typing Indicator Bubble diff --git a/Framework/SendbirdUIKit.xcframework/Info.plist b/Framework/SendbirdUIKit.xcframework/Info.plist index 72334998..90a63748 100644 --- a/Framework/SendbirdUIKit.xcframework/Info.plist +++ b/Framework/SendbirdUIKit.xcframework/Info.plist @@ -8,32 +8,32 @@ DebugSymbolsPath dSYMs LibraryIdentifier - ios-arm64_x86_64-simulator + ios-arm64 LibraryPath SendbirdUIKit.framework SupportedArchitectures arm64 - x86_64 SupportedPlatform ios - SupportedPlatformVariant - simulator DebugSymbolsPath dSYMs LibraryIdentifier - ios-arm64 + ios-arm64_x86_64-simulator LibraryPath SendbirdUIKit.framework SupportedArchitectures arm64 + x86_64 SupportedPlatform ios + SupportedPlatformVariant + simulator CFBundlePackageType diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Base.xcconfig b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Base.xcconfig index 404cd269..608bac2d 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Base.xcconfig +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Base.xcconfig @@ -9,6 +9,6 @@ // Configuration settings file format documentation can be found at: // https://help.apple.com/xcode/#/dev745c5c974 -SBU_APP_VERSION = 3.12.0 -SBU_APP_BUNDLE_VERSION = 3.12.0 +SBU_APP_VERSION = 3.13.0 +SBU_APP_BUNDLE_VERSION = 3.13.0 SENDBIRD_CHAT_SDK_VERSION = 4.12.2 diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Headers/SendbirdUIKit-Swift.h b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Headers/SendbirdUIKit-Swift.h index 290ecc94..222b5d93 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Headers/SendbirdUIKit-Swift.h +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Headers/SendbirdUIKit-Swift.h @@ -258,6 +258,7 @@ using UInt = size_t; #if defined(__OBJC__) + SWIFT_CLASS("_TtCC13SendbirdUIKit9SBUConfig9BaseInput") @interface BaseInput : NSObject - (nonnull instancetype)init SWIFT_UNAVAILABLE; @@ -275,7 +276,6 @@ SWIFT_CLASS("_TtCC13SendbirdUIKit9SBUConfig9BaseInput") - @class NSCoder; SWIFT_CLASS("_TtCC13SendbirdUIKit32SBUFeedNotificationChannelModule14CategoryFilter") @@ -308,6 +308,7 @@ SWIFT_CLASS("_TtCC13SendbirdUIKit32SBUFeedNotificationChannelModule14CategoryFil @end + SWIFT_CLASS("_TtCCC13SendbirdUIKit9SBUConfig12GroupChannel7Channel") @interface Channel : NSObject - (nonnull instancetype)init SWIFT_UNAVAILABLE; @@ -318,7 +319,6 @@ SWIFT_CLASS("_TtCCC13SendbirdUIKit9SBUConfig12GroupChannel7Channel") @interface Channel (SWIFT_EXTENSION(SendbirdUIKit)) @end - /// This is an enumeration used to select the channel editing type. typedef SWIFT_ENUM(NSInteger, ChannelEditType, open) { ChannelEditTypeName = 0, @@ -445,6 +445,20 @@ SWIFT_CLASS_NAMED("List") @end +/// A module component that represent the list of SBUInviteUserModule. +SWIFT_CLASS_NAMED("List") +@interface SBUInviteUserModuleList : SBUBaseChannelSettingsModuleList +- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUInviteUserModule.List()'"); +- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUInviteUserModule.List()'"); +- (void)configureCell:(UITableViewCell * _Nullable)cell indexPath:(NSIndexPath * _Nonnull)indexPath; +@end + + +@interface SBUInviteUserModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +- (void)didSelectRetry; +@end + + /// A module component that represent the list of SBUCreateChannelModule. SWIFT_CLASS_NAMED("List") @interface SBUCreateChannelModuleList : SBUBaseChannelSettingsModuleList @@ -481,20 +495,6 @@ SWIFT_CLASS_NAMED("List") @end -/// A module component that represent the list of SBUInviteUserModule. -SWIFT_CLASS_NAMED("List") -@interface SBUInviteUserModuleList : SBUBaseChannelSettingsModuleList -- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUInviteUserModule.List()'"); -- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUInviteUserModule.List()'"); -- (void)configureCell:(UITableViewCell * _Nullable)cell indexPath:(NSIndexPath * _Nonnull)indexPath; -@end - - -@interface SBUInviteUserModuleList (SWIFT_EXTENSION(SendbirdUIKit)) -- (void)didSelectRetry; -@end - - @class SBDBaseChannel; @class SBDBaseMessage; @class UIScrollView; @@ -1063,41 +1063,41 @@ SWIFT_CLASS("_TtCC13SendbirdUIKit28SBUBaseChannelSettingsModule4List") - (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER; @end -@class SBDOpenChannel; -/// A module component that represent the list of SBUOpenChannelSettingsModule. +/// A module component that represent the list of SBUGroupChannelSettingsModule. SWIFT_CLASS_NAMED("List") -@interface SBUOpenChannelSettingsModuleList : List -@property (nonatomic, readonly, weak) SBDOpenChannel * _Nullable channel; -- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUOpenChannelSettingsModule.List()'"); -- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUOpenChannelSettingsModule.List()'"); +@interface SBUGroupChannelSettingsModuleList : List +@property (nonatomic, readonly, weak) SBDGroupChannel * _Nullable channel; +- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUGroupChannelSettingsModule.List()'"); +- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUGroupChannelSettingsModule.List()'"); - (void)setupViews; +/// Sets up items for tableView cell configuration. - (void)setupItems; - (void)configureCell:(UITableViewCell * _Nullable)cell indexPath:(NSIndexPath * _Nonnull)indexPath; @end -@interface SBUOpenChannelSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +@interface SBUGroupChannelSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) - (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; - (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; - (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; @end +@class SBDOpenChannel; -/// A module component that represent the list of SBUGroupChannelSettingsModule. +/// A module component that represent the list of SBUOpenChannelSettingsModule. SWIFT_CLASS_NAMED("List") -@interface SBUGroupChannelSettingsModuleList : List -@property (nonatomic, readonly, weak) SBDGroupChannel * _Nullable channel; -- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUGroupChannelSettingsModule.List()'"); -- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUGroupChannelSettingsModule.List()'"); +@interface SBUOpenChannelSettingsModuleList : List +@property (nonatomic, readonly, weak) SBDOpenChannel * _Nullable channel; +- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUOpenChannelSettingsModule.List()'"); +- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUOpenChannelSettingsModule.List()'"); - (void)setupViews; -/// Sets up items for tableView cell configuration. - (void)setupItems; - (void)configureCell:(UITableViewCell * _Nullable)cell indexPath:(NSIndexPath * _Nonnull)indexPath; @end -@interface SBUGroupChannelSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +@interface SBUOpenChannelSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) - (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; - (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; - (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; @@ -1113,7 +1113,6 @@ SWIFT_CLASS_NAMED("List") - /// A module component that represent the list of SBUOpenChannelListModule. SWIFT_CLASS_NAMED("List") @interface SBUOpenChannelListModuleList : SBUBaseChannelListModuleList @@ -1134,6 +1133,7 @@ SWIFT_CLASS_NAMED("List") - (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; @end + @class SBUParentMessageInfoView; /// A module component that represent the list of SBUMessageThreadModule. @@ -1296,23 +1296,6 @@ SWIFT_CLASS_NAMED("List") @end -/// A module component that represent the list of SBUGroupChannelPushSettingsModule. -SWIFT_CLASS_NAMED("List") -@interface SBUGroupChannelPushSettingsModuleList : UIView -- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER; -- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER; -@end - - -@interface SBUGroupChannelPushSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) -- (UIView * _Nullable)tableView:(UITableView * _Nonnull)tableView viewForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; -- (CGFloat)tableView:(UITableView * _Nonnull)tableView heightForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; -- (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; -- (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; -- (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; -@end - - /// A module component that represent the list of SBUModerationsModuleList. SWIFT_CLASS_NAMED("List") @interface SBUModerationsModuleList : UIView @@ -1365,6 +1348,23 @@ SWIFT_CLASS_NAMED("List") - (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; @end + +/// A module component that represent the list of SBUGroupChannelPushSettingsModule. +SWIFT_CLASS_NAMED("List") +@interface SBUGroupChannelPushSettingsModuleList : UIView +- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER; +- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER; +@end + + +@interface SBUGroupChannelPushSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +- (UIView * _Nullable)tableView:(UITableView * _Nonnull)tableView viewForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; +- (CGFloat)tableView:(UITableView * _Nonnull)tableView heightForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; +- (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; +- (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; +- (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; +@end + @class UIContextualAction; /// A module component that represent the list of SBUGroupChannelListModule. @@ -1436,32 +1436,6 @@ SWIFT_CLASS_NAMED("List") - (UISwipeActionsConfiguration * _Nullable)tableView:(UITableView * _Nonnull)tableView trailingSwipeActionsConfigurationForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; @end - -@interface SBUBaseChannelModuleList (SWIFT_EXTENSION(SendbirdUIKit)) -@property (nonatomic, readonly) BOOL isScrollNearByBottom; -/// Scrolls to the message that is found by id. -/// \param id The identifier of the message that is wanted to find -/// -/// \param enablesScrollAnimation The boolean value whether scrolls to the message with animation or not. If false, it jumps to the message. -/// -/// \param enablesMessageAnimation The boolean value whether animate the message after the scrolling. If true, the message is shaked up and down. -/// -/// -/// returns: -/// false when it couldn’t find message with id. If it returns true, SBUBaseChannelModuleListDelegate/baseChannelModule(_:didScroll:) is called. -- (BOOL)scrollToMessageWithId:(int64_t)messageId enablesScrollAnimation:(BOOL)scrollAnimated enablesMessageAnimation:(BOOL)messageAnimated; -/// This function checks if the current message and the next message date have the same day. -/// \param currentIndex Current message index -/// -/// \param fullMessageList The full message list including failed/pending messages as well as sent messages -/// -/// -/// returns: -/// If true, the messages date is same day. -- (BOOL)checkSameDayAsNextMessageWithCurrentIndex:(NSInteger)currentIndex fullMessageList:(NSArray * _Nonnull)fullMessageList SWIFT_WARN_UNUSED_RESULT; -- (BOOL)checkSameDayAsPrevMessageWithCurrentIndex:(NSInteger)currentIndex fullMessageList:(NSArray * _Nonnull)fullMessageList SWIFT_WARN_UNUSED_RESULT; -@end - @class SBUVoicePlayer; @class SBUVoiceFileInfo; @@ -1482,6 +1456,21 @@ SWIFT_CLASS_NAMED("List") - (void)voicePlayerDidUpdatePlayTime:(SBUVoicePlayer * _Nonnull)player time:(NSTimeInterval)time; @end + +@interface SBUBaseChannelModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +@property (nonatomic, readonly) BOOL isScrollNearByBottom; +/// This function checks if the current message and the next message date have the same day. +/// \param currentIndex Current message index +/// +/// \param fullMessageList The full message list including failed/pending messages as well as sent messages +/// +/// +/// returns: +/// If true, the messages date is same day. +- (BOOL)checkSameDayAsNextMessageWithCurrentIndex:(NSInteger)currentIndex fullMessageList:(NSArray * _Nonnull)fullMessageList SWIFT_WARN_UNUSED_RESULT; +- (BOOL)checkSameDayAsPrevMessageWithCurrentIndex:(NSInteger)currentIndex fullMessageList:(NSArray * _Nonnull)fullMessageList SWIFT_WARN_UNUSED_RESULT; +@end + typedef SWIFT_ENUM(uint8_t, LogType, open) { LogTypeNone = 0b00000000, LogTypeError = 0b00000001, @@ -1743,10 +1732,10 @@ SWIFT_CLASS("_TtC13SendbirdUIKit24SBUBaseChannelListModule") @end + @interface SBUBaseChannelListModule (SWIFT_EXTENSION(SendbirdUIKit)) @end - @class Header; @class SBUBaseChannelListViewModel; @class SBDMessageListParams; @@ -2032,16 +2021,6 @@ SWIFT_CLASS("_TtC13SendbirdUIKit28SBUBaseChannelViewController") /// \param message BaseMessage object /// - (void)showEmojiListModalWithMessage:(SBDBaseMessage * _Nonnull)message; -/// Scrolls to the message that is found by id. When it scrolls successfully, SBUBaseChannelModuleListDelegate/baseChannelModule(_:didScroll:) delegate method is called. -/// seealso: -/// SBUBaseChannelModule/List/scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:) -/// \param id The identifier of the message that is wanted to find -/// -/// \param enablesScrollAnimation The boolean value whether scrolls to the message with animation or not. If false, it jumps to the message. -/// -/// \param enablesMessageAnimation The boolean value whether animate the message after the scrolling. If true, the message is shaked up and down. -/// -- (void)scrollToMessageWithId:(int64_t)messageId enablesScrollAnimation:(BOOL)enablesScrollAnimation enablesMessageAnimation:(BOOL)enablesMessageAnimation; /// This function updates new message info view’s hidden status. /// since: /// 3.0.0 @@ -2095,6 +2074,8 @@ SWIFT_CLASS("_TtC13SendbirdUIKit28SBUBaseChannelViewController") - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didTapReplyMessage:(SBDBaseMessage * _Nonnull)message; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didDismissMenuForCell:(UITableViewCell * _Nonnull)cell; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didTapMoreEmojisOnMessage:(SBDBaseMessage * _Nonnull)message; +- (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didFailScrollToMessageId:(int64_t)messageId needToSearch:(BOOL)needToSearch; +- (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didFailScrollToMessage:(SBDBaseMessage * _Nonnull)message needToSearch:(BOOL)needToSearch; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didReactToMessage:(SBDBaseMessage * _Nonnull)message withEmoji:(NSString * _Nonnull)key selected:(BOOL)selected; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didTapRetryFailedMessage:(SBDBaseMessage * _Nonnull)failedMessage; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didTapDeleteFailedMessage:(SBDBaseMessage * _Nonnull)failedMessage; @@ -5816,6 +5797,7 @@ SWIFT_CLASS("_TtC13SendbirdUIKit16SBUVoiceRecorder") + @interface UIView (SWIFT_EXTENSION(SendbirdUIKit)) /// This loads the nib file from the Sendbird UIKit bundle. /// diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Info.plist b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Info.plist index 1f69ebc9..4961b63c 100644 Binary files a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Info.plist and b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Info.plist differ diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.abi.json b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.abi.json index 913a4dea..ccbb9d81 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.abi.json +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.abi.json @@ -3646,6 +3646,48 @@ "reqNewWitnessTableEntry": true, "funcSelfKind": "NonMutating" }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didSelectScrollToBottonWithOptions:animated:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollOptions", + "printedName": "SendbirdUIKit.SBUScrollOptions", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_34didSelectScrollToBottonWithOptions8animatedyAA0cdE0C0F0C_AA09SBUScrollO0VSbtF", + "mangledName": "$s13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_34didSelectScrollToBottonWithOptions8animatedyAA0cdE0C0F0C_AA09SBUScrollO0VSbtF", + "moduleName": "SendbirdUIKit", + "genericSig": "<τ_0_0 where τ_0_0 : SendbirdUIKit.SBUBaseChannelModuleListDelegate>", + "sugared_genericSig": "", + "protocolReq": true, + "declAttributes": [ + "RawDocComment" + ], + "reqNewWitnessTableEntry": true, + "funcSelfKind": "NonMutating" + }, { "kind": "Function", "name": "baseChannelModuleDidSelectRetry", @@ -4047,6 +4089,90 @@ ], "reqNewWitnessTableEntry": true, "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didFailScrollToMessageId:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "Int64", + "printedName": "Swift.Int64", + "usr": "s:s5Int64V" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_24didFailScrollToMessageId04needL6SearchyAA0cdE0C0F0C_s5Int64VSbtF", + "mangledName": "$s13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_24didFailScrollToMessageId04needL6SearchyAA0cdE0C0F0C_s5Int64VSbtF", + "moduleName": "SendbirdUIKit", + "genericSig": "<τ_0_0 where τ_0_0 : SendbirdUIKit.SBUBaseChannelModuleListDelegate>", + "sugared_genericSig": "", + "protocolReq": true, + "declAttributes": [ + "RawDocComment" + ], + "reqNewWitnessTableEntry": true, + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didFailScrollToMessage:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "BaseMessage", + "printedName": "SendbirdChatSDK.BaseMessage", + "usr": "c:@M@SendbirdChatSDK@objc(cs)SBDBaseMessage" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_22didFailScrollToMessage04needL6SearchyAA0cdE0C0F0C_0A7ChatSDK04BaseM0CSbtF", + "mangledName": "$s13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_22didFailScrollToMessage04needL6SearchyAA0cdE0C0F0C_0A7ChatSDK04BaseM0CSbtF", + "moduleName": "SendbirdUIKit", + "genericSig": "<τ_0_0 where τ_0_0 : SendbirdUIKit.SBUBaseChannelModuleListDelegate>", + "sugared_genericSig": "", + "protocolReq": true, + "declAttributes": [ + "RawDocComment" + ], + "reqNewWitnessTableEntry": true, + "funcSelfKind": "NonMutating" } ], "declKind": "Protocol", @@ -4504,6 +4630,660 @@ "declKind": "Import", "moduleName": "SendbirdUIKit" }, + { + "kind": "TypeDecl", + "name": "SBUScrollPostionConfiguration", + "printedName": "SBUScrollPostionConfiguration", + "children": [ + { + "kind": "Var", + "name": "groupChannel", + "printedName": "groupChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0CvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0CvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "openChannel", + "printedName": "openChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0CvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0CvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "feedChannel", + "printedName": "feedChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0CvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0CvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "TypeDecl", + "name": "BaseChannel", + "printedName": "BaseChannel", + "children": [ + { + "kind": "Var", + "name": "scrollToBottom", + "printedName": "scrollToBottom", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "scrollToNewMessage", + "printedName": "scrollToNewMessage", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "scrollToInitial", + "printedName": "scrollToInitial", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "scrollToInitialWithStartingPoint", + "printedName": "scrollToInitialWithStartingPoint", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + } + ], + "declKind": "Class", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl" + ], + "hasMissingDesignatedInitializers": true + } + ], + "declKind": "Class", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl", + "RawDocComment" + ], + "hasMissingDesignatedInitializers": true + }, + { + "kind": "Import", + "name": "UIKit", + "printedName": "UIKit", + "declKind": "Import", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "Import", + "name": "SendbirdChatSDK", + "printedName": "SendbirdChatSDK", + "declKind": "Import", + "moduleName": "SendbirdUIKit" + }, { "kind": "TypeDecl", "name": "SBUBaseMessageCell", @@ -6150,6 +6930,231 @@ "RawDocComment" ] }, + { + "kind": "TypeDecl", + "name": "SBUScrollOptions", + "printedName": "SBUScrollOptions", + "children": [ + { + "kind": "Var", + "name": "count", + "printedName": "count", + "children": [ + { + "kind": "TypeNominal", + "name": "Optional", + "printedName": "Swift.Int?", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "usr": "s:Sq" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV5countSiSgvp", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV5countSiSgvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "isLet": true, + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Optional", + "printedName": "Swift.Int?", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "usr": "s:Sq" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV5countSiSgvg", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV5countSiSgvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + } + ] + }, + { + "kind": "Var", + "name": "position", + "printedName": "position", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV8positionAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV8positionAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "isLet": true, + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV8positionAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV8positionAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + } + ] + }, + { + "kind": "Var", + "name": "isInverted", + "printedName": "isInverted", + "children": [ + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV10isInvertedSbvp", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV10isInvertedSbvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "isLet": true, + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV10isInvertedSbvg", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV10isInvertedSbvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + } + ] + }, + { + "kind": "Constructor", + "name": "init", + "printedName": "init(count:position:isInverted:)", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollOptions", + "printedName": "SendbirdUIKit.SBUScrollOptions", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV" + }, + { + "kind": "TypeNominal", + "name": "Optional", + "printedName": "Swift.Int?", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "hasDefaultArg": true, + "usr": "s:Sq" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Constructor", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV5count8position10isInvertedACSiSg_AA0C8PositionOSbtcfc", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV5count8position10isInvertedACSiSg_AA0C8PositionOSbtcfc", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl", + "RawDocComment" + ], + "init_kind": "Designated" + } + ], + "declKind": "Struct", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl", + "RawDocComment" + ] + }, + { + "kind": "Import", + "name": "UIKit", + "printedName": "UIKit", + "declKind": "Import", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "RawDocComment" + ] + }, { "kind": "Import", "name": "SendbirdChatSDK", @@ -109383,6 +110388,48 @@ ], "funcSelfKind": "NonMutating" }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didSelectScrollToBottonWithOptions:animated:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollOptions", + "printedName": "SendbirdUIKit.SBUScrollOptions", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit29SBUGroupChannelViewControllerC04baseD6Module_34didSelectScrollToBottonWithOptions8animatedyAA07SBUBasedH0C4ListC_AA09SBUScrollO0VSbtF", + "mangledName": "$s13SendbirdUIKit29SBUGroupChannelViewControllerC04baseD6Module_34didSelectScrollToBottonWithOptions8animatedyAA07SBUBasedH0C4ListC_AA09SBUScrollO0VSbtF", + "moduleName": "SendbirdUIKit", + "overriding": true, + "isOpen": true, + "declAttributes": [ + "Custom", + "Override", + "AccessControl" + ], + "funcSelfKind": "NonMutating" + }, { "kind": "Function", "name": "baseChannelModule", @@ -163729,39 +164776,206 @@ } ], "declKind": "EnumElement", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO4textyA2CmF", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO4textyA2CmF", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO4textyA2CmF", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO4textyA2CmF", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "Var", + "name": "bubble", + "printedName": "bubble", + "children": [ + { + "kind": "TypeFunc", + "name": "Function", + "printedName": "(SendbirdUIKit.SBUTypingIndicatorType.Type) -> SendbirdUIKit.SBUTypingIndicatorType", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUTypingIndicatorType", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + }, + { + "kind": "TypeNominal", + "name": "Metatype", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType.Type", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUTypingIndicatorType", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + } + ] + } + ] + } + ], + "declKind": "EnumElement", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO6bubbleyA2CmF", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO6bubbleyA2CmF", "moduleName": "SendbirdUIKit", "declAttributes": [ "RawDocComment" ] }, + { + "kind": "Function", + "name": "==", + "printedName": "==(_:_:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUTypingIndicatorType", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + }, + { + "kind": "TypeNominal", + "name": "SBUTypingIndicatorType", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO2eeoiySbAC_ACtFZ", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO2eeoiySbAC_ACtFZ", + "moduleName": "SendbirdUIKit", + "static": true, + "implicit": true, + "funcSelfKind": "NonMutating" + }, { "kind": "Var", - "name": "bubble", - "printedName": "bubble", + "name": "hashValue", + "printedName": "hashValue", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivp", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivp", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivg", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + } + ] + }, + { + "kind": "Function", + "name": "hash", + "printedName": "hash(into:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Hasher", + "printedName": "Swift.Hasher", + "paramValueOwnership": "InOut", + "usr": "s:s6HasherV" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO4hash4intoys6HasherVz_tF", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO4hash4intoys6HasherVz_tF", + "moduleName": "SendbirdUIKit", + "implicit": true, + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Enum", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl", + "RawDocComment" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Equatable", + "printedName": "Equatable", + "usr": "s:SQ", + "mangledName": "$sSQ" + }, + { + "kind": "Conformance", + "name": "Hashable", + "printedName": "Hashable", + "usr": "s:SH", + "mangledName": "$sSH" + } + ] + }, + { + "kind": "TypeDecl", + "name": "SBUScrollPosition", + "printedName": "SBUScrollPosition", + "children": [ + { + "kind": "Var", + "name": "bottom", + "printedName": "bottom", "children": [ { "kind": "TypeFunc", "name": "Function", - "printedName": "(SendbirdUIKit.SBUTypingIndicatorType.Type) -> SendbirdUIKit.SBUTypingIndicatorType", + "printedName": "(SendbirdUIKit.SBUScrollPosition.Type) -> SendbirdUIKit.SBUScrollPosition", "children": [ { "kind": "TypeNominal", - "name": "SBUTypingIndicatorType", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" }, { "kind": "TypeNominal", "name": "Metatype", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType.Type", + "printedName": "SendbirdUIKit.SBUScrollPosition.Type", "children": [ { "kind": "TypeNominal", - "name": "SBUTypingIndicatorType", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" } ] } @@ -163769,12 +164983,83 @@ } ], "declKind": "EnumElement", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO6bubbleyA2CmF", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO6bubbleyA2CmF", - "moduleName": "SendbirdUIKit", - "declAttributes": [ - "RawDocComment" - ] + "usr": "s:13SendbirdUIKit17SBUScrollPositionO6bottomyA2CmF", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO6bottomyA2CmF", + "moduleName": "SendbirdUIKit" + }, + { + "kind": "Var", + "name": "middle", + "printedName": "middle", + "children": [ + { + "kind": "TypeFunc", + "name": "Function", + "printedName": "(SendbirdUIKit.SBUScrollPosition.Type) -> SendbirdUIKit.SBUScrollPosition", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Metatype", + "printedName": "SendbirdUIKit.SBUScrollPosition.Type", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ] + } + ] + } + ], + "declKind": "EnumElement", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO6middleyA2CmF", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO6middleyA2CmF", + "moduleName": "SendbirdUIKit" + }, + { + "kind": "Var", + "name": "top", + "printedName": "top", + "children": [ + { + "kind": "TypeFunc", + "name": "Function", + "printedName": "(SendbirdUIKit.SBUScrollPosition.Type) -> SendbirdUIKit.SBUScrollPosition", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Metatype", + "printedName": "SendbirdUIKit.SBUScrollPosition.Type", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ] + } + ] + } + ], + "declKind": "EnumElement", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO3topyA2CmF", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO3topyA2CmF", + "moduleName": "SendbirdUIKit" }, { "kind": "Function", @@ -163789,20 +165074,20 @@ }, { "kind": "TypeNominal", - "name": "SBUTypingIndicatorType", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" }, { "kind": "TypeNominal", - "name": "SBUTypingIndicatorType", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" } ], "declKind": "Func", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO2eeoiySbAC_ACtFZ", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO2eeoiySbAC_ACtFZ", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO2eeoiySbAC_ACtFZ", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO2eeoiySbAC_ACtFZ", "moduleName": "SendbirdUIKit", "static": true, "implicit": true, @@ -163821,8 +165106,8 @@ } ], "declKind": "Var", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivp", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivp", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO9hashValueSivp", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO9hashValueSivp", "moduleName": "SendbirdUIKit", "implicit": true, "accessors": [ @@ -163839,8 +165124,8 @@ } ], "declKind": "Accessor", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivg", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivg", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO9hashValueSivg", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO9hashValueSivg", "moduleName": "SendbirdUIKit", "implicit": true, "accessorKind": "get" @@ -163866,16 +165151,16 @@ } ], "declKind": "Func", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO4hash4intoys6HasherVz_tF", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO4hash4intoys6HasherVz_tF", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO4hash4intoys6HasherVz_tF", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO4hash4intoys6HasherVz_tF", "moduleName": "SendbirdUIKit", "implicit": true, "funcSelfKind": "NonMutating" } ], "declKind": "Enum", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO", "moduleName": "SendbirdUIKit", "declAttributes": [ "AccessControl", @@ -200947,7 +202232,7 @@ { "kind": "Function", "name": "scrollToMessage", - "printedName": "scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:)", + "printedName": "scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:position:needToSearch:)", "children": [ { "kind": "TypeNominal", @@ -200967,6 +202252,20 @@ "hasDefaultArg": true, "usr": "s:Sb" }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "hasDefaultArg": true, + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, { "kind": "TypeNominal", "name": "Bool", @@ -200976,14 +202275,69 @@ } ], "declKind": "Func", - "usr": "c:@M@SendbirdUIKit@objc(cs)SBUBaseChannelViewController(im)scrollToMessageWithId:enablesScrollAnimation:enablesMessageAnimation:", - "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage2id22enablesScrollAnimation0kiM0ys5Int64V_S2btF", + "usr": "s:13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage2id22enablesScrollAnimation0kiM08position04needH6Searchys5Int64V_S2bAA17SBUScrollPositionOSbtF", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage2id22enablesScrollAnimation0kiM08position04needH6Searchys5Int64V_S2bAA17SBUScrollPositionOSbtF", "moduleName": "SendbirdUIKit", "declAttributes": [ "Custom", "AccessControl", - "RawDocComment", - "ObjC" + "RawDocComment" + ], + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "scrollToMessage", + "printedName": "scrollToMessage(message:enablesScrollAnimation:enablesMessageAnimation:position:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "BaseMessage", + "printedName": "SendbirdChatSDK.BaseMessage", + "usr": "c:@M@SendbirdChatSDK@objc(cs)SBDBaseMessage" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "hasDefaultArg": true, + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage7message22enablesScrollAnimation0kiM08position04needH6Searchy0A7ChatSDK04BaseI0C_S2bAA17SBUScrollPositionOSbtF", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage7message22enablesScrollAnimation0kiM08position04needH6Searchy0A7ChatSDK04BaseI0C_S2bAA17SBUScrollPositionOSbtF", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "Custom", + "AccessControl", + "RawDocComment" ], "funcSelfKind": "NonMutating" }, @@ -202342,6 +203696,88 @@ ], "funcSelfKind": "NonMutating" }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didFailScrollToMessageId:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "Int64", + "printedName": "Swift.Int64", + "usr": "s:s5Int64V" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "c:@M@SendbirdUIKit@objc(cs)SBUBaseChannelViewController(im)baseChannelModule:didFailScrollToMessageId:needToSearch:", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC04baseD6Module_24didFailScrollToMessageId04needL6SearchyAA0cdH0C4ListC_s5Int64VSbtF", + "moduleName": "SendbirdUIKit", + "isOpen": true, + "declAttributes": [ + "Custom", + "AccessControl", + "ObjC" + ], + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didFailScrollToMessage:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "BaseMessage", + "printedName": "SendbirdChatSDK.BaseMessage", + "usr": "c:@M@SendbirdChatSDK@objc(cs)SBDBaseMessage" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "c:@M@SendbirdUIKit@objc(cs)SBUBaseChannelViewController(im)baseChannelModule:didFailScrollToMessage:needToSearch:", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC04baseD6Module_22didFailScrollToMessage04needL6SearchyAA0cdH0C4ListC_0A7ChatSDK04BaseM0CSbtF", + "moduleName": "SendbirdUIKit", + "isOpen": true, + "declAttributes": [ + "Custom", + "AccessControl", + "ObjC" + ], + "funcSelfKind": "NonMutating" + }, { "kind": "Function", "name": "baseChannelModule", @@ -202564,6 +204000,46 @@ ], "funcSelfKind": "NonMutating" }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didSelectScrollToBottonWithOptions:animated:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollOptions", + "printedName": "SendbirdUIKit.SBUScrollOptions", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit28SBUBaseChannelViewControllerC04baseD6Module_34didSelectScrollToBottonWithOptions8animatedyAA0cdH0C4ListC_AA09SBUScrollO0VSbtF", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC04baseD6Module_34didSelectScrollToBottonWithOptions8animatedyAA0cdH0C4ListC_AA09SBUScrollO0VSbtF", + "moduleName": "SendbirdUIKit", + "isOpen": true, + "declAttributes": [ + "Custom", + "AccessControl" + ], + "funcSelfKind": "NonMutating" + }, { "kind": "Function", "name": "baseChannelModuleDidSelectRetry", @@ -259183,7 +260659,7 @@ { "kind": "Function", "name": "scrollToMessage", - "printedName": "scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:)", + "printedName": "scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:position:needToSearch:)", "children": [ { "kind": "TypeNominal", @@ -259204,6 +260680,20 @@ "hasDefaultArg": true, "usr": "s:Sb" }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "hasDefaultArg": true, + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, { "kind": "TypeNominal", "name": "Bool", @@ -259213,16 +260703,73 @@ } ], "declKind": "Func", - "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage2id22enablesScrollAnimation0kiM0Sbs5Int64V_S2btF", - "mangledName": "$s13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage2id22enablesScrollAnimation0kiM0Sbs5Int64V_S2btF", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage2id22enablesScrollAnimation0kiM08position04needH6SearchSbs5Int64V_S2bAA17SBUScrollPositionOSbtF", + "mangledName": "$s13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage2id22enablesScrollAnimation0kiM08position04needH6SearchSbs5Int64V_S2bAA17SBUScrollPositionOSbtF", "moduleName": "SendbirdUIKit", "declAttributes": [ - "Dynamic", "Custom", "AccessControl", "DiscardableResult", - "RawDocComment", - "ObjC" + "RawDocComment" + ], + "isFromExtension": true, + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "scrollToMessage", + "printedName": "scrollToMessage(message:enablesScrollAnimation:enablesMessageAnimation:position:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "BaseMessage", + "printedName": "SendbirdChatSDK.BaseMessage", + "usr": "c:@M@SendbirdChatSDK@objc(cs)SBDBaseMessage" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "hasDefaultArg": true, + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage7message22enablesScrollAnimation0kiM08position04needH6SearchSb0A7ChatSDK04BaseI0C_S2bAA17SBUScrollPositionOSbtF", + "mangledName": "$s13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage7message22enablesScrollAnimation0kiM08position04needH6SearchSb0A7ChatSDK04BaseI0C_S2bAA17SBUScrollPositionOSbtF", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "Custom", + "AccessControl", + "DiscardableResult", + "RawDocComment" ], "isFromExtension": true, "funcSelfKind": "NonMutating" @@ -273129,6 +274676,107 @@ } ] }, + { + "kind": "Var", + "name": "scrollPostionConfiguration", + "printedName": "scrollPostionConfiguration", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPostionConfiguration", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvpZ", + "mangledName": "$s13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvpZ", + "moduleName": "SendbirdUIKit", + "static": true, + "declAttributes": [ + "HasInitialValue", + "Final", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPostionConfiguration", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvgZ", + "mangledName": "$s13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvgZ", + "moduleName": "SendbirdUIKit", + "static": true, + "implicit": true, + "declAttributes": [ + "Final" + ], + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPostionConfiguration", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvsZ", + "mangledName": "$s13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvsZ", + "moduleName": "SendbirdUIKit", + "static": true, + "implicit": true, + "declAttributes": [ + "Final" + ], + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvMZ", + "mangledName": "$s13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvMZ", + "moduleName": "SendbirdUIKit", + "static": true, + "implicit": true, + "declAttributes": [ + "Final" + ], + "accessorKind": "_modify" + } + ] + }, { "kind": "Var", "name": "ApplicationId", @@ -376157,150 +377805,178 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 14687, + "offset": 16264, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 14731, + "offset": 16308, "length": 1, "value": "5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 14762, + "offset": 16339, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "FloatLiteral", - "offset": 15162, + "offset": 16739, "length": 3, "value": "0.5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 15227, + "offset": 16804, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 15238, + "offset": 16815, "length": 1, "value": "5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "FloatLiteral", - "offset": 15280, + "offset": 16857, "length": 3, "value": "0.5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 15322, + "offset": 16899, "length": 1, "value": "5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 15363, + "offset": 16940, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 15586, + "offset": 17163, "length": 1, "value": "2" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 15635, + "offset": 17212, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 16418, + "offset": 17995, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 16431, + "offset": 18008, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 16439, + "offset": 18016, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 16450, + "offset": 18027, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 17736, + "offset": 19313, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 17776, + "offset": 19353, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 23626, + "offset": 25203, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 51958, + "offset": 53837, + "length": 5, + "value": "false" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", + "kind": "BooleanLiteral", + "offset": 57513, + "length": 5, + "value": "false" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", + "kind": "BooleanLiteral", + "offset": 57576, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 55194, + "offset": 57659, + "length": 4, + "value": "true" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", + "kind": "BooleanLiteral", + "offset": 59284, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 55257, + "offset": 59347, "length": 5, "value": "false" }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", + "kind": "BooleanLiteral", + "offset": 59430, + "length": 4, + "value": "true" + }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Manager\/CacheManager\/SBUCacheManager.Template.swift", "kind": "StringLiteral", @@ -376371,6 +378047,20 @@ "length": 2, "value": "16" }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Model\/SBUScrollOptions.swift", + "kind": "IntegerLiteral", + "offset": 984, + "length": 1, + "value": "0" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Model\/SBUScrollOptions.swift", + "kind": "IntegerLiteral", + "offset": 996, + "length": 1, + "value": "0" + }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/MessageCell\/NotificationChannel\/SBUNotificationCell.swift", "kind": "IntegerLiteral", @@ -381435,21 +383125,21 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUGroupChannelViewController.swift", "kind": "IntegerLiteral", - "offset": 15058, + "offset": 15519, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUGroupChannelViewController.swift", "kind": "IntegerLiteral", - "offset": 15093, + "offset": 15554, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUGroupChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 28348, + "offset": 28809, "length": 5, "value": "false" }, @@ -382513,14 +384203,14 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/NotificationChannel\/Feed\/SBUFeedNotificationChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 8486, + "offset": 9067, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/NotificationChannel\/Feed\/SBUFeedNotificationChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 23710, + "offset": 24291, "length": 5, "value": "false" }, @@ -385250,28 +386940,56 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 17597, + "offset": 17772, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 17644, + "offset": 17819, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 22651, + "offset": 17902, + "length": 4, + "value": "true" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", + "kind": "BooleanLiteral", + "offset": 19161, + "length": 5, + "value": "false" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", + "kind": "BooleanLiteral", + "offset": 19208, + "length": 5, + "value": "false" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", + "kind": "BooleanLiteral", + "offset": 19291, + "length": 4, + "value": "true" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", + "kind": "BooleanLiteral", + "offset": 24201, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 23974, + "offset": 25524, "length": 5, "value": "false" }, @@ -385600,14 +387318,14 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/NotificationChannel\/Chat\/SBUChatNotificationChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 8528, + "offset": 9109, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/NotificationChannel\/Chat\/SBUChatNotificationChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 24862, + "offset": 25443, "length": 5, "value": "false" }, diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.private.swiftinterface b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.private.swiftinterface index 735745bd..aaf05735 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.private.swiftinterface +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.private.swiftinterface @@ -101,6 +101,7 @@ public protocol SBUBaseChannelModuleListDelegate : SendbirdUIKit.SBUCommonDelega func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapVoiceMessage fileMessage: SendbirdChatSDK.FileMessage, cell: UIKit.UITableViewCell, forRowAt indexPath: Foundation.IndexPath) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) func baseChannelModuleDidSelectRetry(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapRetryFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapDeleteFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @@ -112,6 +113,8 @@ public protocol SBUBaseChannelModuleListDelegate : SendbirdUIKit.SBUCommonDelega func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didReactToMessage message: SendbirdChatSDK.BaseMessage, withEmoji key: Swift.String, selected: Swift.Bool) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapMoreEmojisOnMessage message: SendbirdChatSDK.BaseMessage) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didDismissMenuForCell cell: UIKit.UITableViewCell) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Swift.Int64, needToSearch: Swift.Bool) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessage message: SendbirdChatSDK.BaseMessage, needToSearch: Swift.Bool) } public protocol SBUBaseChannelModuleListDataSource : AnyObject { func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, channelForTableView tableView: UIKit.UITableView) -> SendbirdChatSDK.BaseChannel? @@ -195,8 +198,10 @@ extension SendbirdUIKit.SBUBaseChannelModule.List { @objc @_Concurrency.MainActor(unsafe) dynamic public var isScrollNearByBottom: Swift.Bool { @objc get } - @objc @discardableResult - @_Concurrency.MainActor(unsafe) dynamic public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false) -> Swift.Bool + @discardableResult + @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) -> Swift.Bool + @discardableResult + @_Concurrency.MainActor(unsafe) public func scrollToMessage(message: SendbirdChatSDK.BaseMessage, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) -> Swift.Bool @objc @_Concurrency.MainActor(unsafe) dynamic public func checkSameDayAsNextMessage(currentIndex: Swift.Int, fullMessageList: [SendbirdChatSDK.BaseMessage]) -> Swift.Bool @objc @_Concurrency.MainActor(unsafe) dynamic public func checkSameDayAsPrevMessage(currentIndex: Swift.Int, fullMessageList: [SendbirdChatSDK.BaseMessage]) -> Swift.Bool } @@ -212,6 +217,19 @@ extension SendbirdUIKit.SBUConfig { required public init(from decoder: Swift.Decoder) throws } } +@_hasMissingDesignatedInitializers public class SBUScrollPostionConfiguration { + public var groupChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + public var openChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + public var feedChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + @_hasMissingDesignatedInitializers public class BaseChannel { + public var scrollToBottom: SendbirdUIKit.SBUScrollPosition + public var scrollToNewMessage: SendbirdUIKit.SBUScrollPosition + public var scrollToInitial: SendbirdUIKit.SBUScrollPosition + public var scrollToInitialWithStartingPoint: SendbirdUIKit.SBUScrollPosition + @objc deinit + } + @objc deinit +} @objc @_inheritsConvenienceInitializers @IBDesignable @_Concurrency.MainActor(unsafe) open class SBUBaseMessageCell : SendbirdUIKit.SBUTableViewCell, SendbirdUIKit.SBUMessageCellProtocol { @objc @_Concurrency.MainActor(unsafe) public var message: SendbirdChatSDK.BaseMessage? @objc @_Concurrency.MainActor(unsafe) public var position: SendbirdUIKit.MessagePosition @@ -274,6 +292,12 @@ public protocol SBUCommonDelegate : AnyObject { @_Concurrency.MainActor(unsafe) @objc required dynamic public init?(coder: Foundation.NSCoder) @objc deinit } +public struct SBUScrollOptions { + public let count: Swift.Int? + public let position: SendbirdUIKit.SBUScrollPosition + public let isInverted: Swift.Bool + public init(count: Swift.Int? = nil, position: SendbirdUIKit.SBUScrollPosition, isInverted: Swift.Bool) +} @objc @_inheritsConvenienceInitializers @_Concurrency.MainActor(unsafe) open class SBUParentMessageInfoReactionView : SendbirdUIKit.SBUMessageReactionView { @_Concurrency.MainActor(unsafe) @objc override dynamic open func setupStyles() @_Concurrency.MainActor(unsafe) override open func configure(maxWidth: CoreFoundation.CGFloat, useReaction: Swift.Bool, reactions: [SendbirdChatSDK.Reaction]) @@ -3159,6 +3183,7 @@ public protocol SBUMessageCellProtocol { @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, didUpdate answer: SendbirdUIKit.SBUForm.Answer, messageCell: SendbirdUIKit.SBUBaseMessageCell) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapVoiceMessage fileMessage: SendbirdChatSDK.FileMessage, cell: UIKit.UITableViewCell, forRowAt indexPath: Foundation.IndexPath) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + @_Concurrency.MainActor(unsafe) override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, highlightInfoInTableView tableView: UIKit.UITableView) -> SendbirdUIKit.SBUHighlightMessageInfo? @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, answersFor messageId: Swift.Int64?) -> [SendbirdUIKit.SBUForm.Answer]? @@ -5181,6 +5206,16 @@ public enum SBUTypingIndicatorType { get } } +public enum SBUScrollPosition { + case bottom + case middle + case top + public static func == (a: SendbirdUIKit.SBUScrollPosition, b: SendbirdUIKit.SBUScrollPosition) -> Swift.Bool + public func hash(into hasher: inout Swift.Hasher) + public var hashValue: Swift.Int { + get + } +} public protocol SBUParentMessageInfoViewDelegate : AnyObject { func parentMessageInfoViewBoundsWillChanged(_ view: SendbirdUIKit.SBUParentMessageInfoView) func parentMessageInfoViewBoundsDidChanged(_ view: SendbirdUIKit.SBUParentMessageInfoView) @@ -6708,7 +6743,8 @@ extension SendbirdUIKit.SBUMessageSearchViewController { @objc @_Concurrency.MainActor(unsafe) open func showChannelSettings() @_Concurrency.MainActor(unsafe) open func showMessageThread(channelURL: Swift.String, parentMessageId: Swift.Int64, parentMessageCreatedAt: Swift.Int64? = 0, startingPoint: Swift.Int64? = 0) @objc @_Concurrency.MainActor(unsafe) open func showEmojiListModal(message: SendbirdChatSDK.BaseMessage) - @objc @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false) + @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) + @_Concurrency.MainActor(unsafe) public func scrollToMessage(message: SendbirdChatSDK.BaseMessage, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) @objc @_Concurrency.MainActor(unsafe) public func updateNewMessageInfo(hidden: Swift.Bool) @_Concurrency.MainActor(unsafe) open func openFile(_ fileData: SendbirdUIKit.SBUFileData) @objc @_Concurrency.MainActor(unsafe) open func openFile(fileMessage: SendbirdChatSDK.FileMessage) @@ -6745,12 +6781,15 @@ extension SendbirdUIKit.SBUMessageSearchViewController { @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapReplyMessage message: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didDismissMenuForCell cell: UIKit.UITableViewCell) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapMoreEmojisOnMessage message: SendbirdChatSDK.BaseMessage) + @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Swift.Int64, needToSearch: Swift.Bool) + @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessage message: SendbirdChatSDK.BaseMessage, needToSearch: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didReactToMessage message: SendbirdChatSDK.BaseMessage, withEmoji key: Swift.String, selected: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapRetryFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapDeleteFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapUserProfile user: SendbirdUIKit.SBUUser) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModuleDidSelectRetry(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, channelForTableView tableView: UIKit.UITableView) -> SendbirdChatSDK.BaseChannel? @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, sentMessagesInTableView tableView: UIKit.UITableView) -> [SendbirdChatSDK.BaseMessage] @@ -8704,6 +8743,7 @@ public class SBUMention : Swift.Equatable { public static var isAVPlayerAlwaysEnabled: Swift.Bool public static var isTintColorEnabledForCustomizedIcon: Swift.Bool public static var isCustomizedIconResizable: Swift.Bool + public static var scrollPostionConfiguration: SendbirdUIKit.SBUScrollPostionConfiguration @objc deinit } public protocol SBUOpenChannelListModuleListDelegate : SendbirdUIKit.SBUBaseChannelListModuleListDelegate { @@ -11208,6 +11248,8 @@ extension SendbirdUIKit.LogType : Swift.Hashable {} extension SendbirdUIKit.LogType : Swift.RawRepresentable {} extension SendbirdUIKit.SBUTypingIndicatorType : Swift.Equatable {} extension SendbirdUIKit.SBUTypingIndicatorType : Swift.Hashable {} +extension SendbirdUIKit.SBUScrollPosition : Swift.Equatable {} +extension SendbirdUIKit.SBUScrollPosition : Swift.Hashable {} @available(*, deprecated, renamed: "UserListType") extension SendbirdUIKit.MemberListType : Swift.Equatable {} @available(*, deprecated, renamed: "UserListType") diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.swiftdoc b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.swiftdoc index 95b951d7..c8bf85a7 100644 Binary files a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.swiftdoc and b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.swiftdoc differ diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.swiftinterface b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.swiftinterface index 735745bd..aaf05735 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.swiftinterface +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios.swiftinterface @@ -101,6 +101,7 @@ public protocol SBUBaseChannelModuleListDelegate : SendbirdUIKit.SBUCommonDelega func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapVoiceMessage fileMessage: SendbirdChatSDK.FileMessage, cell: UIKit.UITableViewCell, forRowAt indexPath: Foundation.IndexPath) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) func baseChannelModuleDidSelectRetry(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapRetryFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapDeleteFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @@ -112,6 +113,8 @@ public protocol SBUBaseChannelModuleListDelegate : SendbirdUIKit.SBUCommonDelega func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didReactToMessage message: SendbirdChatSDK.BaseMessage, withEmoji key: Swift.String, selected: Swift.Bool) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapMoreEmojisOnMessage message: SendbirdChatSDK.BaseMessage) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didDismissMenuForCell cell: UIKit.UITableViewCell) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Swift.Int64, needToSearch: Swift.Bool) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessage message: SendbirdChatSDK.BaseMessage, needToSearch: Swift.Bool) } public protocol SBUBaseChannelModuleListDataSource : AnyObject { func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, channelForTableView tableView: UIKit.UITableView) -> SendbirdChatSDK.BaseChannel? @@ -195,8 +198,10 @@ extension SendbirdUIKit.SBUBaseChannelModule.List { @objc @_Concurrency.MainActor(unsafe) dynamic public var isScrollNearByBottom: Swift.Bool { @objc get } - @objc @discardableResult - @_Concurrency.MainActor(unsafe) dynamic public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false) -> Swift.Bool + @discardableResult + @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) -> Swift.Bool + @discardableResult + @_Concurrency.MainActor(unsafe) public func scrollToMessage(message: SendbirdChatSDK.BaseMessage, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) -> Swift.Bool @objc @_Concurrency.MainActor(unsafe) dynamic public func checkSameDayAsNextMessage(currentIndex: Swift.Int, fullMessageList: [SendbirdChatSDK.BaseMessage]) -> Swift.Bool @objc @_Concurrency.MainActor(unsafe) dynamic public func checkSameDayAsPrevMessage(currentIndex: Swift.Int, fullMessageList: [SendbirdChatSDK.BaseMessage]) -> Swift.Bool } @@ -212,6 +217,19 @@ extension SendbirdUIKit.SBUConfig { required public init(from decoder: Swift.Decoder) throws } } +@_hasMissingDesignatedInitializers public class SBUScrollPostionConfiguration { + public var groupChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + public var openChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + public var feedChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + @_hasMissingDesignatedInitializers public class BaseChannel { + public var scrollToBottom: SendbirdUIKit.SBUScrollPosition + public var scrollToNewMessage: SendbirdUIKit.SBUScrollPosition + public var scrollToInitial: SendbirdUIKit.SBUScrollPosition + public var scrollToInitialWithStartingPoint: SendbirdUIKit.SBUScrollPosition + @objc deinit + } + @objc deinit +} @objc @_inheritsConvenienceInitializers @IBDesignable @_Concurrency.MainActor(unsafe) open class SBUBaseMessageCell : SendbirdUIKit.SBUTableViewCell, SendbirdUIKit.SBUMessageCellProtocol { @objc @_Concurrency.MainActor(unsafe) public var message: SendbirdChatSDK.BaseMessage? @objc @_Concurrency.MainActor(unsafe) public var position: SendbirdUIKit.MessagePosition @@ -274,6 +292,12 @@ public protocol SBUCommonDelegate : AnyObject { @_Concurrency.MainActor(unsafe) @objc required dynamic public init?(coder: Foundation.NSCoder) @objc deinit } +public struct SBUScrollOptions { + public let count: Swift.Int? + public let position: SendbirdUIKit.SBUScrollPosition + public let isInverted: Swift.Bool + public init(count: Swift.Int? = nil, position: SendbirdUIKit.SBUScrollPosition, isInverted: Swift.Bool) +} @objc @_inheritsConvenienceInitializers @_Concurrency.MainActor(unsafe) open class SBUParentMessageInfoReactionView : SendbirdUIKit.SBUMessageReactionView { @_Concurrency.MainActor(unsafe) @objc override dynamic open func setupStyles() @_Concurrency.MainActor(unsafe) override open func configure(maxWidth: CoreFoundation.CGFloat, useReaction: Swift.Bool, reactions: [SendbirdChatSDK.Reaction]) @@ -3159,6 +3183,7 @@ public protocol SBUMessageCellProtocol { @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, didUpdate answer: SendbirdUIKit.SBUForm.Answer, messageCell: SendbirdUIKit.SBUBaseMessageCell) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapVoiceMessage fileMessage: SendbirdChatSDK.FileMessage, cell: UIKit.UITableViewCell, forRowAt indexPath: Foundation.IndexPath) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + @_Concurrency.MainActor(unsafe) override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, highlightInfoInTableView tableView: UIKit.UITableView) -> SendbirdUIKit.SBUHighlightMessageInfo? @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, answersFor messageId: Swift.Int64?) -> [SendbirdUIKit.SBUForm.Answer]? @@ -5181,6 +5206,16 @@ public enum SBUTypingIndicatorType { get } } +public enum SBUScrollPosition { + case bottom + case middle + case top + public static func == (a: SendbirdUIKit.SBUScrollPosition, b: SendbirdUIKit.SBUScrollPosition) -> Swift.Bool + public func hash(into hasher: inout Swift.Hasher) + public var hashValue: Swift.Int { + get + } +} public protocol SBUParentMessageInfoViewDelegate : AnyObject { func parentMessageInfoViewBoundsWillChanged(_ view: SendbirdUIKit.SBUParentMessageInfoView) func parentMessageInfoViewBoundsDidChanged(_ view: SendbirdUIKit.SBUParentMessageInfoView) @@ -6708,7 +6743,8 @@ extension SendbirdUIKit.SBUMessageSearchViewController { @objc @_Concurrency.MainActor(unsafe) open func showChannelSettings() @_Concurrency.MainActor(unsafe) open func showMessageThread(channelURL: Swift.String, parentMessageId: Swift.Int64, parentMessageCreatedAt: Swift.Int64? = 0, startingPoint: Swift.Int64? = 0) @objc @_Concurrency.MainActor(unsafe) open func showEmojiListModal(message: SendbirdChatSDK.BaseMessage) - @objc @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false) + @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) + @_Concurrency.MainActor(unsafe) public func scrollToMessage(message: SendbirdChatSDK.BaseMessage, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) @objc @_Concurrency.MainActor(unsafe) public func updateNewMessageInfo(hidden: Swift.Bool) @_Concurrency.MainActor(unsafe) open func openFile(_ fileData: SendbirdUIKit.SBUFileData) @objc @_Concurrency.MainActor(unsafe) open func openFile(fileMessage: SendbirdChatSDK.FileMessage) @@ -6745,12 +6781,15 @@ extension SendbirdUIKit.SBUMessageSearchViewController { @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapReplyMessage message: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didDismissMenuForCell cell: UIKit.UITableViewCell) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapMoreEmojisOnMessage message: SendbirdChatSDK.BaseMessage) + @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Swift.Int64, needToSearch: Swift.Bool) + @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessage message: SendbirdChatSDK.BaseMessage, needToSearch: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didReactToMessage message: SendbirdChatSDK.BaseMessage, withEmoji key: Swift.String, selected: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapRetryFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapDeleteFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapUserProfile user: SendbirdUIKit.SBUUser) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModuleDidSelectRetry(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, channelForTableView tableView: UIKit.UITableView) -> SendbirdChatSDK.BaseChannel? @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, sentMessagesInTableView tableView: UIKit.UITableView) -> [SendbirdChatSDK.BaseMessage] @@ -8704,6 +8743,7 @@ public class SBUMention : Swift.Equatable { public static var isAVPlayerAlwaysEnabled: Swift.Bool public static var isTintColorEnabledForCustomizedIcon: Swift.Bool public static var isCustomizedIconResizable: Swift.Bool + public static var scrollPostionConfiguration: SendbirdUIKit.SBUScrollPostionConfiguration @objc deinit } public protocol SBUOpenChannelListModuleListDelegate : SendbirdUIKit.SBUBaseChannelListModuleListDelegate { @@ -11208,6 +11248,8 @@ extension SendbirdUIKit.LogType : Swift.Hashable {} extension SendbirdUIKit.LogType : Swift.RawRepresentable {} extension SendbirdUIKit.SBUTypingIndicatorType : Swift.Equatable {} extension SendbirdUIKit.SBUTypingIndicatorType : Swift.Hashable {} +extension SendbirdUIKit.SBUScrollPosition : Swift.Equatable {} +extension SendbirdUIKit.SBUScrollPosition : Swift.Hashable {} @available(*, deprecated, renamed: "UserListType") extension SendbirdUIKit.MemberListType : Swift.Equatable {} @available(*, deprecated, renamed: "UserListType") diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/SendbirdUIKit b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/SendbirdUIKit index 4373416d..3c07e5ba 100755 Binary files a/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/SendbirdUIKit and b/Framework/SendbirdUIKit.xcframework/ios-arm64/SendbirdUIKit.framework/SendbirdUIKit differ diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Info.plist b/Framework/SendbirdUIKit.xcframework/ios-arm64/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Info.plist index 3028f976..0d8d4331 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Info.plist +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Info.plist @@ -13,7 +13,7 @@ CFBundleSignature ???? CFBundleShortVersionString - 3.12.0 + 3.13.0 CFBundleVersion 1 diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Resources/DWARF/SendbirdUIKit b/Framework/SendbirdUIKit.xcframework/ios-arm64/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Resources/DWARF/SendbirdUIKit index 9cb59599..38b676f5 100644 Binary files a/Framework/SendbirdUIKit.xcframework/ios-arm64/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Resources/DWARF/SendbirdUIKit and b/Framework/SendbirdUIKit.xcframework/ios-arm64/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Resources/DWARF/SendbirdUIKit differ diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Base.xcconfig b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Base.xcconfig index 404cd269..608bac2d 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Base.xcconfig +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Base.xcconfig @@ -9,6 +9,6 @@ // Configuration settings file format documentation can be found at: // https://help.apple.com/xcode/#/dev745c5c974 -SBU_APP_VERSION = 3.12.0 -SBU_APP_BUNDLE_VERSION = 3.12.0 +SBU_APP_VERSION = 3.13.0 +SBU_APP_BUNDLE_VERSION = 3.13.0 SENDBIRD_CHAT_SDK_VERSION = 4.12.2 diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Headers/SendbirdUIKit-Swift.h b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Headers/SendbirdUIKit-Swift.h index 24e6e290..b8b27cf7 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Headers/SendbirdUIKit-Swift.h +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Headers/SendbirdUIKit-Swift.h @@ -258,6 +258,7 @@ using UInt = size_t; #if defined(__OBJC__) + SWIFT_CLASS("_TtCC13SendbirdUIKit9SBUConfig9BaseInput") @interface BaseInput : NSObject - (nonnull instancetype)init SWIFT_UNAVAILABLE; @@ -275,7 +276,6 @@ SWIFT_CLASS("_TtCC13SendbirdUIKit9SBUConfig9BaseInput") - @class NSCoder; SWIFT_CLASS("_TtCC13SendbirdUIKit32SBUFeedNotificationChannelModule14CategoryFilter") @@ -308,6 +308,7 @@ SWIFT_CLASS("_TtCC13SendbirdUIKit32SBUFeedNotificationChannelModule14CategoryFil @end + SWIFT_CLASS("_TtCCC13SendbirdUIKit9SBUConfig12GroupChannel7Channel") @interface Channel : NSObject - (nonnull instancetype)init SWIFT_UNAVAILABLE; @@ -318,7 +319,6 @@ SWIFT_CLASS("_TtCCC13SendbirdUIKit9SBUConfig12GroupChannel7Channel") @interface Channel (SWIFT_EXTENSION(SendbirdUIKit)) @end - /// This is an enumeration used to select the channel editing type. typedef SWIFT_ENUM(NSInteger, ChannelEditType, open) { ChannelEditTypeName = 0, @@ -445,6 +445,20 @@ SWIFT_CLASS_NAMED("List") @end +/// A module component that represent the list of SBUInviteUserModule. +SWIFT_CLASS_NAMED("List") +@interface SBUInviteUserModuleList : SBUBaseChannelSettingsModuleList +- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUInviteUserModule.List()'"); +- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUInviteUserModule.List()'"); +- (void)configureCell:(UITableViewCell * _Nullable)cell indexPath:(NSIndexPath * _Nonnull)indexPath; +@end + + +@interface SBUInviteUserModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +- (void)didSelectRetry; +@end + + /// A module component that represent the list of SBUCreateChannelModule. SWIFT_CLASS_NAMED("List") @interface SBUCreateChannelModuleList : SBUBaseChannelSettingsModuleList @@ -481,20 +495,6 @@ SWIFT_CLASS_NAMED("List") @end -/// A module component that represent the list of SBUInviteUserModule. -SWIFT_CLASS_NAMED("List") -@interface SBUInviteUserModuleList : SBUBaseChannelSettingsModuleList -- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUInviteUserModule.List()'"); -- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUInviteUserModule.List()'"); -- (void)configureCell:(UITableViewCell * _Nullable)cell indexPath:(NSIndexPath * _Nonnull)indexPath; -@end - - -@interface SBUInviteUserModuleList (SWIFT_EXTENSION(SendbirdUIKit)) -- (void)didSelectRetry; -@end - - @class SBDBaseChannel; @class SBDBaseMessage; @class UIScrollView; @@ -1063,41 +1063,41 @@ SWIFT_CLASS("_TtCC13SendbirdUIKit28SBUBaseChannelSettingsModule4List") - (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER; @end -@class SBDOpenChannel; -/// A module component that represent the list of SBUOpenChannelSettingsModule. +/// A module component that represent the list of SBUGroupChannelSettingsModule. SWIFT_CLASS_NAMED("List") -@interface SBUOpenChannelSettingsModuleList : List -@property (nonatomic, readonly, weak) SBDOpenChannel * _Nullable channel; -- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUOpenChannelSettingsModule.List()'"); -- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUOpenChannelSettingsModule.List()'"); +@interface SBUGroupChannelSettingsModuleList : List +@property (nonatomic, readonly, weak) SBDGroupChannel * _Nullable channel; +- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUGroupChannelSettingsModule.List()'"); +- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUGroupChannelSettingsModule.List()'"); - (void)setupViews; +/// Sets up items for tableView cell configuration. - (void)setupItems; - (void)configureCell:(UITableViewCell * _Nullable)cell indexPath:(NSIndexPath * _Nonnull)indexPath; @end -@interface SBUOpenChannelSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +@interface SBUGroupChannelSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) - (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; - (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; - (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; @end +@class SBDOpenChannel; -/// A module component that represent the list of SBUGroupChannelSettingsModule. +/// A module component that represent the list of SBUOpenChannelSettingsModule. SWIFT_CLASS_NAMED("List") -@interface SBUGroupChannelSettingsModuleList : List -@property (nonatomic, readonly, weak) SBDGroupChannel * _Nullable channel; -- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUGroupChannelSettingsModule.List()'"); -- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUGroupChannelSettingsModule.List()'"); +@interface SBUOpenChannelSettingsModuleList : List +@property (nonatomic, readonly, weak) SBDOpenChannel * _Nullable channel; +- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUOpenChannelSettingsModule.List()'"); +- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUOpenChannelSettingsModule.List()'"); - (void)setupViews; -/// Sets up items for tableView cell configuration. - (void)setupItems; - (void)configureCell:(UITableViewCell * _Nullable)cell indexPath:(NSIndexPath * _Nonnull)indexPath; @end -@interface SBUGroupChannelSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +@interface SBUOpenChannelSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) - (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; - (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; - (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; @@ -1113,7 +1113,6 @@ SWIFT_CLASS_NAMED("List") - /// A module component that represent the list of SBUOpenChannelListModule. SWIFT_CLASS_NAMED("List") @interface SBUOpenChannelListModuleList : SBUBaseChannelListModuleList @@ -1134,6 +1133,7 @@ SWIFT_CLASS_NAMED("List") - (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; @end + @class SBUParentMessageInfoView; /// A module component that represent the list of SBUMessageThreadModule. @@ -1296,23 +1296,6 @@ SWIFT_CLASS_NAMED("List") @end -/// A module component that represent the list of SBUGroupChannelPushSettingsModule. -SWIFT_CLASS_NAMED("List") -@interface SBUGroupChannelPushSettingsModuleList : UIView -- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER; -- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER; -@end - - -@interface SBUGroupChannelPushSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) -- (UIView * _Nullable)tableView:(UITableView * _Nonnull)tableView viewForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; -- (CGFloat)tableView:(UITableView * _Nonnull)tableView heightForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; -- (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; -- (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; -- (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; -@end - - /// A module component that represent the list of SBUModerationsModuleList. SWIFT_CLASS_NAMED("List") @interface SBUModerationsModuleList : UIView @@ -1365,6 +1348,23 @@ SWIFT_CLASS_NAMED("List") - (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; @end + +/// A module component that represent the list of SBUGroupChannelPushSettingsModule. +SWIFT_CLASS_NAMED("List") +@interface SBUGroupChannelPushSettingsModuleList : UIView +- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER; +- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER; +@end + + +@interface SBUGroupChannelPushSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +- (UIView * _Nullable)tableView:(UITableView * _Nonnull)tableView viewForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; +- (CGFloat)tableView:(UITableView * _Nonnull)tableView heightForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; +- (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; +- (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; +- (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; +@end + @class UIContextualAction; /// A module component that represent the list of SBUGroupChannelListModule. @@ -1436,32 +1436,6 @@ SWIFT_CLASS_NAMED("List") - (UISwipeActionsConfiguration * _Nullable)tableView:(UITableView * _Nonnull)tableView trailingSwipeActionsConfigurationForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; @end - -@interface SBUBaseChannelModuleList (SWIFT_EXTENSION(SendbirdUIKit)) -@property (nonatomic, readonly) BOOL isScrollNearByBottom; -/// Scrolls to the message that is found by id. -/// \param id The identifier of the message that is wanted to find -/// -/// \param enablesScrollAnimation The boolean value whether scrolls to the message with animation or not. If false, it jumps to the message. -/// -/// \param enablesMessageAnimation The boolean value whether animate the message after the scrolling. If true, the message is shaked up and down. -/// -/// -/// returns: -/// false when it couldn’t find message with id. If it returns true, SBUBaseChannelModuleListDelegate/baseChannelModule(_:didScroll:) is called. -- (BOOL)scrollToMessageWithId:(int64_t)messageId enablesScrollAnimation:(BOOL)scrollAnimated enablesMessageAnimation:(BOOL)messageAnimated; -/// This function checks if the current message and the next message date have the same day. -/// \param currentIndex Current message index -/// -/// \param fullMessageList The full message list including failed/pending messages as well as sent messages -/// -/// -/// returns: -/// If true, the messages date is same day. -- (BOOL)checkSameDayAsNextMessageWithCurrentIndex:(NSInteger)currentIndex fullMessageList:(NSArray * _Nonnull)fullMessageList SWIFT_WARN_UNUSED_RESULT; -- (BOOL)checkSameDayAsPrevMessageWithCurrentIndex:(NSInteger)currentIndex fullMessageList:(NSArray * _Nonnull)fullMessageList SWIFT_WARN_UNUSED_RESULT; -@end - @class SBUVoicePlayer; @class SBUVoiceFileInfo; @@ -1482,6 +1456,21 @@ SWIFT_CLASS_NAMED("List") - (void)voicePlayerDidUpdatePlayTime:(SBUVoicePlayer * _Nonnull)player time:(NSTimeInterval)time; @end + +@interface SBUBaseChannelModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +@property (nonatomic, readonly) BOOL isScrollNearByBottom; +/// This function checks if the current message and the next message date have the same day. +/// \param currentIndex Current message index +/// +/// \param fullMessageList The full message list including failed/pending messages as well as sent messages +/// +/// +/// returns: +/// If true, the messages date is same day. +- (BOOL)checkSameDayAsNextMessageWithCurrentIndex:(NSInteger)currentIndex fullMessageList:(NSArray * _Nonnull)fullMessageList SWIFT_WARN_UNUSED_RESULT; +- (BOOL)checkSameDayAsPrevMessageWithCurrentIndex:(NSInteger)currentIndex fullMessageList:(NSArray * _Nonnull)fullMessageList SWIFT_WARN_UNUSED_RESULT; +@end + typedef SWIFT_ENUM(uint8_t, LogType, open) { LogTypeNone = 0b00000000, LogTypeError = 0b00000001, @@ -1743,10 +1732,10 @@ SWIFT_CLASS("_TtC13SendbirdUIKit24SBUBaseChannelListModule") @end + @interface SBUBaseChannelListModule (SWIFT_EXTENSION(SendbirdUIKit)) @end - @class Header; @class SBUBaseChannelListViewModel; @class SBDMessageListParams; @@ -2032,16 +2021,6 @@ SWIFT_CLASS("_TtC13SendbirdUIKit28SBUBaseChannelViewController") /// \param message BaseMessage object /// - (void)showEmojiListModalWithMessage:(SBDBaseMessage * _Nonnull)message; -/// Scrolls to the message that is found by id. When it scrolls successfully, SBUBaseChannelModuleListDelegate/baseChannelModule(_:didScroll:) delegate method is called. -/// seealso: -/// SBUBaseChannelModule/List/scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:) -/// \param id The identifier of the message that is wanted to find -/// -/// \param enablesScrollAnimation The boolean value whether scrolls to the message with animation or not. If false, it jumps to the message. -/// -/// \param enablesMessageAnimation The boolean value whether animate the message after the scrolling. If true, the message is shaked up and down. -/// -- (void)scrollToMessageWithId:(int64_t)messageId enablesScrollAnimation:(BOOL)enablesScrollAnimation enablesMessageAnimation:(BOOL)enablesMessageAnimation; /// This function updates new message info view’s hidden status. /// since: /// 3.0.0 @@ -2095,6 +2074,8 @@ SWIFT_CLASS("_TtC13SendbirdUIKit28SBUBaseChannelViewController") - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didTapReplyMessage:(SBDBaseMessage * _Nonnull)message; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didDismissMenuForCell:(UITableViewCell * _Nonnull)cell; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didTapMoreEmojisOnMessage:(SBDBaseMessage * _Nonnull)message; +- (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didFailScrollToMessageId:(int64_t)messageId needToSearch:(BOOL)needToSearch; +- (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didFailScrollToMessage:(SBDBaseMessage * _Nonnull)message needToSearch:(BOOL)needToSearch; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didReactToMessage:(SBDBaseMessage * _Nonnull)message withEmoji:(NSString * _Nonnull)key selected:(BOOL)selected; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didTapRetryFailedMessage:(SBDBaseMessage * _Nonnull)failedMessage; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didTapDeleteFailedMessage:(SBDBaseMessage * _Nonnull)failedMessage; @@ -5816,6 +5797,7 @@ SWIFT_CLASS("_TtC13SendbirdUIKit16SBUVoiceRecorder") + @interface UIView (SWIFT_EXTENSION(SendbirdUIKit)) /// This loads the nib file from the Sendbird UIKit bundle. /// @@ -6100,6 +6082,7 @@ using UInt = size_t; #if defined(__OBJC__) + SWIFT_CLASS("_TtCC13SendbirdUIKit9SBUConfig9BaseInput") @interface BaseInput : NSObject - (nonnull instancetype)init SWIFT_UNAVAILABLE; @@ -6117,7 +6100,6 @@ SWIFT_CLASS("_TtCC13SendbirdUIKit9SBUConfig9BaseInput") - @class NSCoder; SWIFT_CLASS("_TtCC13SendbirdUIKit32SBUFeedNotificationChannelModule14CategoryFilter") @@ -6150,6 +6132,7 @@ SWIFT_CLASS("_TtCC13SendbirdUIKit32SBUFeedNotificationChannelModule14CategoryFil @end + SWIFT_CLASS("_TtCCC13SendbirdUIKit9SBUConfig12GroupChannel7Channel") @interface Channel : NSObject - (nonnull instancetype)init SWIFT_UNAVAILABLE; @@ -6160,7 +6143,6 @@ SWIFT_CLASS("_TtCCC13SendbirdUIKit9SBUConfig12GroupChannel7Channel") @interface Channel (SWIFT_EXTENSION(SendbirdUIKit)) @end - /// This is an enumeration used to select the channel editing type. typedef SWIFT_ENUM(NSInteger, ChannelEditType, open) { ChannelEditTypeName = 0, @@ -6287,6 +6269,20 @@ SWIFT_CLASS_NAMED("List") @end +/// A module component that represent the list of SBUInviteUserModule. +SWIFT_CLASS_NAMED("List") +@interface SBUInviteUserModuleList : SBUBaseChannelSettingsModuleList +- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUInviteUserModule.List()'"); +- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUInviteUserModule.List()'"); +- (void)configureCell:(UITableViewCell * _Nullable)cell indexPath:(NSIndexPath * _Nonnull)indexPath; +@end + + +@interface SBUInviteUserModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +- (void)didSelectRetry; +@end + + /// A module component that represent the list of SBUCreateChannelModule. SWIFT_CLASS_NAMED("List") @interface SBUCreateChannelModuleList : SBUBaseChannelSettingsModuleList @@ -6323,20 +6319,6 @@ SWIFT_CLASS_NAMED("List") @end -/// A module component that represent the list of SBUInviteUserModule. -SWIFT_CLASS_NAMED("List") -@interface SBUInviteUserModuleList : SBUBaseChannelSettingsModuleList -- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUInviteUserModule.List()'"); -- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUInviteUserModule.List()'"); -- (void)configureCell:(UITableViewCell * _Nullable)cell indexPath:(NSIndexPath * _Nonnull)indexPath; -@end - - -@interface SBUInviteUserModuleList (SWIFT_EXTENSION(SendbirdUIKit)) -- (void)didSelectRetry; -@end - - @class SBDBaseChannel; @class SBDBaseMessage; @class UIScrollView; @@ -6905,41 +6887,41 @@ SWIFT_CLASS("_TtCC13SendbirdUIKit28SBUBaseChannelSettingsModule4List") - (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER; @end -@class SBDOpenChannel; -/// A module component that represent the list of SBUOpenChannelSettingsModule. +/// A module component that represent the list of SBUGroupChannelSettingsModule. SWIFT_CLASS_NAMED("List") -@interface SBUOpenChannelSettingsModuleList : List -@property (nonatomic, readonly, weak) SBDOpenChannel * _Nullable channel; -- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUOpenChannelSettingsModule.List()'"); -- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUOpenChannelSettingsModule.List()'"); +@interface SBUGroupChannelSettingsModuleList : List +@property (nonatomic, readonly, weak) SBDGroupChannel * _Nullable channel; +- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUGroupChannelSettingsModule.List()'"); +- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUGroupChannelSettingsModule.List()'"); - (void)setupViews; +/// Sets up items for tableView cell configuration. - (void)setupItems; - (void)configureCell:(UITableViewCell * _Nullable)cell indexPath:(NSIndexPath * _Nonnull)indexPath; @end -@interface SBUOpenChannelSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +@interface SBUGroupChannelSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) - (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; - (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; - (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; @end +@class SBDOpenChannel; -/// A module component that represent the list of SBUGroupChannelSettingsModule. +/// A module component that represent the list of SBUOpenChannelSettingsModule. SWIFT_CLASS_NAMED("List") -@interface SBUGroupChannelSettingsModuleList : List -@property (nonatomic, readonly, weak) SBDGroupChannel * _Nullable channel; -- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUGroupChannelSettingsModule.List()'"); -- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUGroupChannelSettingsModule.List()'"); +@interface SBUOpenChannelSettingsModuleList : List +@property (nonatomic, readonly, weak) SBDOpenChannel * _Nullable channel; +- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUOpenChannelSettingsModule.List()'"); +- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("'init' has been renamed to 'SBUOpenChannelSettingsModule.List()'"); - (void)setupViews; -/// Sets up items for tableView cell configuration. - (void)setupItems; - (void)configureCell:(UITableViewCell * _Nullable)cell indexPath:(NSIndexPath * _Nonnull)indexPath; @end -@interface SBUGroupChannelSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +@interface SBUOpenChannelSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) - (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; - (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; - (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; @@ -6955,7 +6937,6 @@ SWIFT_CLASS_NAMED("List") - /// A module component that represent the list of SBUOpenChannelListModule. SWIFT_CLASS_NAMED("List") @interface SBUOpenChannelListModuleList : SBUBaseChannelListModuleList @@ -6976,6 +6957,7 @@ SWIFT_CLASS_NAMED("List") - (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; @end + @class SBUParentMessageInfoView; /// A module component that represent the list of SBUMessageThreadModule. @@ -7138,23 +7120,6 @@ SWIFT_CLASS_NAMED("List") @end -/// A module component that represent the list of SBUGroupChannelPushSettingsModule. -SWIFT_CLASS_NAMED("List") -@interface SBUGroupChannelPushSettingsModuleList : UIView -- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER; -- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER; -@end - - -@interface SBUGroupChannelPushSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) -- (UIView * _Nullable)tableView:(UITableView * _Nonnull)tableView viewForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; -- (CGFloat)tableView:(UITableView * _Nonnull)tableView heightForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; -- (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; -- (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; -- (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; -@end - - /// A module component that represent the list of SBUModerationsModuleList. SWIFT_CLASS_NAMED("List") @interface SBUModerationsModuleList : UIView @@ -7207,6 +7172,23 @@ SWIFT_CLASS_NAMED("List") - (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; @end + +/// A module component that represent the list of SBUGroupChannelPushSettingsModule. +SWIFT_CLASS_NAMED("List") +@interface SBUGroupChannelPushSettingsModuleList : UIView +- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER; +- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER; +@end + + +@interface SBUGroupChannelPushSettingsModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +- (UIView * _Nullable)tableView:(UITableView * _Nonnull)tableView viewForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; +- (CGFloat)tableView:(UITableView * _Nonnull)tableView heightForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; +- (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; +- (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT; +- (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath; +@end + @class UIContextualAction; /// A module component that represent the list of SBUGroupChannelListModule. @@ -7278,32 +7260,6 @@ SWIFT_CLASS_NAMED("List") - (UISwipeActionsConfiguration * _Nullable)tableView:(UITableView * _Nonnull)tableView trailingSwipeActionsConfigurationForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT; @end - -@interface SBUBaseChannelModuleList (SWIFT_EXTENSION(SendbirdUIKit)) -@property (nonatomic, readonly) BOOL isScrollNearByBottom; -/// Scrolls to the message that is found by id. -/// \param id The identifier of the message that is wanted to find -/// -/// \param enablesScrollAnimation The boolean value whether scrolls to the message with animation or not. If false, it jumps to the message. -/// -/// \param enablesMessageAnimation The boolean value whether animate the message after the scrolling. If true, the message is shaked up and down. -/// -/// -/// returns: -/// false when it couldn’t find message with id. If it returns true, SBUBaseChannelModuleListDelegate/baseChannelModule(_:didScroll:) is called. -- (BOOL)scrollToMessageWithId:(int64_t)messageId enablesScrollAnimation:(BOOL)scrollAnimated enablesMessageAnimation:(BOOL)messageAnimated; -/// This function checks if the current message and the next message date have the same day. -/// \param currentIndex Current message index -/// -/// \param fullMessageList The full message list including failed/pending messages as well as sent messages -/// -/// -/// returns: -/// If true, the messages date is same day. -- (BOOL)checkSameDayAsNextMessageWithCurrentIndex:(NSInteger)currentIndex fullMessageList:(NSArray * _Nonnull)fullMessageList SWIFT_WARN_UNUSED_RESULT; -- (BOOL)checkSameDayAsPrevMessageWithCurrentIndex:(NSInteger)currentIndex fullMessageList:(NSArray * _Nonnull)fullMessageList SWIFT_WARN_UNUSED_RESULT; -@end - @class SBUVoicePlayer; @class SBUVoiceFileInfo; @@ -7324,6 +7280,21 @@ SWIFT_CLASS_NAMED("List") - (void)voicePlayerDidUpdatePlayTime:(SBUVoicePlayer * _Nonnull)player time:(NSTimeInterval)time; @end + +@interface SBUBaseChannelModuleList (SWIFT_EXTENSION(SendbirdUIKit)) +@property (nonatomic, readonly) BOOL isScrollNearByBottom; +/// This function checks if the current message and the next message date have the same day. +/// \param currentIndex Current message index +/// +/// \param fullMessageList The full message list including failed/pending messages as well as sent messages +/// +/// +/// returns: +/// If true, the messages date is same day. +- (BOOL)checkSameDayAsNextMessageWithCurrentIndex:(NSInteger)currentIndex fullMessageList:(NSArray * _Nonnull)fullMessageList SWIFT_WARN_UNUSED_RESULT; +- (BOOL)checkSameDayAsPrevMessageWithCurrentIndex:(NSInteger)currentIndex fullMessageList:(NSArray * _Nonnull)fullMessageList SWIFT_WARN_UNUSED_RESULT; +@end + typedef SWIFT_ENUM(uint8_t, LogType, open) { LogTypeNone = 0b00000000, LogTypeError = 0b00000001, @@ -7585,10 +7556,10 @@ SWIFT_CLASS("_TtC13SendbirdUIKit24SBUBaseChannelListModule") @end + @interface SBUBaseChannelListModule (SWIFT_EXTENSION(SendbirdUIKit)) @end - @class Header; @class SBUBaseChannelListViewModel; @class SBDMessageListParams; @@ -7874,16 +7845,6 @@ SWIFT_CLASS("_TtC13SendbirdUIKit28SBUBaseChannelViewController") /// \param message BaseMessage object /// - (void)showEmojiListModalWithMessage:(SBDBaseMessage * _Nonnull)message; -/// Scrolls to the message that is found by id. When it scrolls successfully, SBUBaseChannelModuleListDelegate/baseChannelModule(_:didScroll:) delegate method is called. -/// seealso: -/// SBUBaseChannelModule/List/scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:) -/// \param id The identifier of the message that is wanted to find -/// -/// \param enablesScrollAnimation The boolean value whether scrolls to the message with animation or not. If false, it jumps to the message. -/// -/// \param enablesMessageAnimation The boolean value whether animate the message after the scrolling. If true, the message is shaked up and down. -/// -- (void)scrollToMessageWithId:(int64_t)messageId enablesScrollAnimation:(BOOL)enablesScrollAnimation enablesMessageAnimation:(BOOL)enablesMessageAnimation; /// This function updates new message info view’s hidden status. /// since: /// 3.0.0 @@ -7937,6 +7898,8 @@ SWIFT_CLASS("_TtC13SendbirdUIKit28SBUBaseChannelViewController") - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didTapReplyMessage:(SBDBaseMessage * _Nonnull)message; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didDismissMenuForCell:(UITableViewCell * _Nonnull)cell; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didTapMoreEmojisOnMessage:(SBDBaseMessage * _Nonnull)message; +- (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didFailScrollToMessageId:(int64_t)messageId needToSearch:(BOOL)needToSearch; +- (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didFailScrollToMessage:(SBDBaseMessage * _Nonnull)message needToSearch:(BOOL)needToSearch; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didReactToMessage:(SBDBaseMessage * _Nonnull)message withEmoji:(NSString * _Nonnull)key selected:(BOOL)selected; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didTapRetryFailedMessage:(SBDBaseMessage * _Nonnull)failedMessage; - (void)baseChannelModule:(SBUBaseChannelModuleList * _Nonnull)listComponent didTapDeleteFailedMessage:(SBDBaseMessage * _Nonnull)failedMessage; @@ -11658,6 +11621,7 @@ SWIFT_CLASS("_TtC13SendbirdUIKit16SBUVoiceRecorder") + @interface UIView (SWIFT_EXTENSION(SendbirdUIKit)) /// This loads the nib file from the Sendbird UIKit bundle. /// diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Info.plist b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Info.plist index cda22465..23e0d44b 100644 Binary files a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Info.plist and b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Info.plist differ diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.abi.json b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.abi.json index 913a4dea..ccbb9d81 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.abi.json +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.abi.json @@ -3646,6 +3646,48 @@ "reqNewWitnessTableEntry": true, "funcSelfKind": "NonMutating" }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didSelectScrollToBottonWithOptions:animated:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollOptions", + "printedName": "SendbirdUIKit.SBUScrollOptions", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_34didSelectScrollToBottonWithOptions8animatedyAA0cdE0C0F0C_AA09SBUScrollO0VSbtF", + "mangledName": "$s13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_34didSelectScrollToBottonWithOptions8animatedyAA0cdE0C0F0C_AA09SBUScrollO0VSbtF", + "moduleName": "SendbirdUIKit", + "genericSig": "<τ_0_0 where τ_0_0 : SendbirdUIKit.SBUBaseChannelModuleListDelegate>", + "sugared_genericSig": "", + "protocolReq": true, + "declAttributes": [ + "RawDocComment" + ], + "reqNewWitnessTableEntry": true, + "funcSelfKind": "NonMutating" + }, { "kind": "Function", "name": "baseChannelModuleDidSelectRetry", @@ -4047,6 +4089,90 @@ ], "reqNewWitnessTableEntry": true, "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didFailScrollToMessageId:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "Int64", + "printedName": "Swift.Int64", + "usr": "s:s5Int64V" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_24didFailScrollToMessageId04needL6SearchyAA0cdE0C0F0C_s5Int64VSbtF", + "mangledName": "$s13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_24didFailScrollToMessageId04needL6SearchyAA0cdE0C0F0C_s5Int64VSbtF", + "moduleName": "SendbirdUIKit", + "genericSig": "<τ_0_0 where τ_0_0 : SendbirdUIKit.SBUBaseChannelModuleListDelegate>", + "sugared_genericSig": "", + "protocolReq": true, + "declAttributes": [ + "RawDocComment" + ], + "reqNewWitnessTableEntry": true, + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didFailScrollToMessage:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "BaseMessage", + "printedName": "SendbirdChatSDK.BaseMessage", + "usr": "c:@M@SendbirdChatSDK@objc(cs)SBDBaseMessage" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_22didFailScrollToMessage04needL6SearchyAA0cdE0C0F0C_0A7ChatSDK04BaseM0CSbtF", + "mangledName": "$s13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_22didFailScrollToMessage04needL6SearchyAA0cdE0C0F0C_0A7ChatSDK04BaseM0CSbtF", + "moduleName": "SendbirdUIKit", + "genericSig": "<τ_0_0 where τ_0_0 : SendbirdUIKit.SBUBaseChannelModuleListDelegate>", + "sugared_genericSig": "", + "protocolReq": true, + "declAttributes": [ + "RawDocComment" + ], + "reqNewWitnessTableEntry": true, + "funcSelfKind": "NonMutating" } ], "declKind": "Protocol", @@ -4504,6 +4630,660 @@ "declKind": "Import", "moduleName": "SendbirdUIKit" }, + { + "kind": "TypeDecl", + "name": "SBUScrollPostionConfiguration", + "printedName": "SBUScrollPostionConfiguration", + "children": [ + { + "kind": "Var", + "name": "groupChannel", + "printedName": "groupChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0CvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0CvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "openChannel", + "printedName": "openChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0CvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0CvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "feedChannel", + "printedName": "feedChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0CvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0CvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "TypeDecl", + "name": "BaseChannel", + "printedName": "BaseChannel", + "children": [ + { + "kind": "Var", + "name": "scrollToBottom", + "printedName": "scrollToBottom", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "scrollToNewMessage", + "printedName": "scrollToNewMessage", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "scrollToInitial", + "printedName": "scrollToInitial", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "scrollToInitialWithStartingPoint", + "printedName": "scrollToInitialWithStartingPoint", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + } + ], + "declKind": "Class", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl" + ], + "hasMissingDesignatedInitializers": true + } + ], + "declKind": "Class", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl", + "RawDocComment" + ], + "hasMissingDesignatedInitializers": true + }, + { + "kind": "Import", + "name": "UIKit", + "printedName": "UIKit", + "declKind": "Import", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "Import", + "name": "SendbirdChatSDK", + "printedName": "SendbirdChatSDK", + "declKind": "Import", + "moduleName": "SendbirdUIKit" + }, { "kind": "TypeDecl", "name": "SBUBaseMessageCell", @@ -6150,6 +6930,231 @@ "RawDocComment" ] }, + { + "kind": "TypeDecl", + "name": "SBUScrollOptions", + "printedName": "SBUScrollOptions", + "children": [ + { + "kind": "Var", + "name": "count", + "printedName": "count", + "children": [ + { + "kind": "TypeNominal", + "name": "Optional", + "printedName": "Swift.Int?", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "usr": "s:Sq" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV5countSiSgvp", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV5countSiSgvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "isLet": true, + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Optional", + "printedName": "Swift.Int?", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "usr": "s:Sq" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV5countSiSgvg", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV5countSiSgvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + } + ] + }, + { + "kind": "Var", + "name": "position", + "printedName": "position", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV8positionAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV8positionAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "isLet": true, + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV8positionAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV8positionAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + } + ] + }, + { + "kind": "Var", + "name": "isInverted", + "printedName": "isInverted", + "children": [ + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV10isInvertedSbvp", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV10isInvertedSbvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "isLet": true, + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV10isInvertedSbvg", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV10isInvertedSbvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + } + ] + }, + { + "kind": "Constructor", + "name": "init", + "printedName": "init(count:position:isInverted:)", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollOptions", + "printedName": "SendbirdUIKit.SBUScrollOptions", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV" + }, + { + "kind": "TypeNominal", + "name": "Optional", + "printedName": "Swift.Int?", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "hasDefaultArg": true, + "usr": "s:Sq" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Constructor", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV5count8position10isInvertedACSiSg_AA0C8PositionOSbtcfc", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV5count8position10isInvertedACSiSg_AA0C8PositionOSbtcfc", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl", + "RawDocComment" + ], + "init_kind": "Designated" + } + ], + "declKind": "Struct", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl", + "RawDocComment" + ] + }, + { + "kind": "Import", + "name": "UIKit", + "printedName": "UIKit", + "declKind": "Import", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "RawDocComment" + ] + }, { "kind": "Import", "name": "SendbirdChatSDK", @@ -109383,6 +110388,48 @@ ], "funcSelfKind": "NonMutating" }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didSelectScrollToBottonWithOptions:animated:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollOptions", + "printedName": "SendbirdUIKit.SBUScrollOptions", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit29SBUGroupChannelViewControllerC04baseD6Module_34didSelectScrollToBottonWithOptions8animatedyAA07SBUBasedH0C4ListC_AA09SBUScrollO0VSbtF", + "mangledName": "$s13SendbirdUIKit29SBUGroupChannelViewControllerC04baseD6Module_34didSelectScrollToBottonWithOptions8animatedyAA07SBUBasedH0C4ListC_AA09SBUScrollO0VSbtF", + "moduleName": "SendbirdUIKit", + "overriding": true, + "isOpen": true, + "declAttributes": [ + "Custom", + "Override", + "AccessControl" + ], + "funcSelfKind": "NonMutating" + }, { "kind": "Function", "name": "baseChannelModule", @@ -163729,39 +164776,206 @@ } ], "declKind": "EnumElement", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO4textyA2CmF", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO4textyA2CmF", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO4textyA2CmF", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO4textyA2CmF", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "Var", + "name": "bubble", + "printedName": "bubble", + "children": [ + { + "kind": "TypeFunc", + "name": "Function", + "printedName": "(SendbirdUIKit.SBUTypingIndicatorType.Type) -> SendbirdUIKit.SBUTypingIndicatorType", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUTypingIndicatorType", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + }, + { + "kind": "TypeNominal", + "name": "Metatype", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType.Type", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUTypingIndicatorType", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + } + ] + } + ] + } + ], + "declKind": "EnumElement", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO6bubbleyA2CmF", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO6bubbleyA2CmF", "moduleName": "SendbirdUIKit", "declAttributes": [ "RawDocComment" ] }, + { + "kind": "Function", + "name": "==", + "printedName": "==(_:_:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUTypingIndicatorType", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + }, + { + "kind": "TypeNominal", + "name": "SBUTypingIndicatorType", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO2eeoiySbAC_ACtFZ", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO2eeoiySbAC_ACtFZ", + "moduleName": "SendbirdUIKit", + "static": true, + "implicit": true, + "funcSelfKind": "NonMutating" + }, { "kind": "Var", - "name": "bubble", - "printedName": "bubble", + "name": "hashValue", + "printedName": "hashValue", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivp", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivp", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivg", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + } + ] + }, + { + "kind": "Function", + "name": "hash", + "printedName": "hash(into:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Hasher", + "printedName": "Swift.Hasher", + "paramValueOwnership": "InOut", + "usr": "s:s6HasherV" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO4hash4intoys6HasherVz_tF", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO4hash4intoys6HasherVz_tF", + "moduleName": "SendbirdUIKit", + "implicit": true, + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Enum", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl", + "RawDocComment" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Equatable", + "printedName": "Equatable", + "usr": "s:SQ", + "mangledName": "$sSQ" + }, + { + "kind": "Conformance", + "name": "Hashable", + "printedName": "Hashable", + "usr": "s:SH", + "mangledName": "$sSH" + } + ] + }, + { + "kind": "TypeDecl", + "name": "SBUScrollPosition", + "printedName": "SBUScrollPosition", + "children": [ + { + "kind": "Var", + "name": "bottom", + "printedName": "bottom", "children": [ { "kind": "TypeFunc", "name": "Function", - "printedName": "(SendbirdUIKit.SBUTypingIndicatorType.Type) -> SendbirdUIKit.SBUTypingIndicatorType", + "printedName": "(SendbirdUIKit.SBUScrollPosition.Type) -> SendbirdUIKit.SBUScrollPosition", "children": [ { "kind": "TypeNominal", - "name": "SBUTypingIndicatorType", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" }, { "kind": "TypeNominal", "name": "Metatype", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType.Type", + "printedName": "SendbirdUIKit.SBUScrollPosition.Type", "children": [ { "kind": "TypeNominal", - "name": "SBUTypingIndicatorType", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" } ] } @@ -163769,12 +164983,83 @@ } ], "declKind": "EnumElement", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO6bubbleyA2CmF", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO6bubbleyA2CmF", - "moduleName": "SendbirdUIKit", - "declAttributes": [ - "RawDocComment" - ] + "usr": "s:13SendbirdUIKit17SBUScrollPositionO6bottomyA2CmF", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO6bottomyA2CmF", + "moduleName": "SendbirdUIKit" + }, + { + "kind": "Var", + "name": "middle", + "printedName": "middle", + "children": [ + { + "kind": "TypeFunc", + "name": "Function", + "printedName": "(SendbirdUIKit.SBUScrollPosition.Type) -> SendbirdUIKit.SBUScrollPosition", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Metatype", + "printedName": "SendbirdUIKit.SBUScrollPosition.Type", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ] + } + ] + } + ], + "declKind": "EnumElement", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO6middleyA2CmF", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO6middleyA2CmF", + "moduleName": "SendbirdUIKit" + }, + { + "kind": "Var", + "name": "top", + "printedName": "top", + "children": [ + { + "kind": "TypeFunc", + "name": "Function", + "printedName": "(SendbirdUIKit.SBUScrollPosition.Type) -> SendbirdUIKit.SBUScrollPosition", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Metatype", + "printedName": "SendbirdUIKit.SBUScrollPosition.Type", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ] + } + ] + } + ], + "declKind": "EnumElement", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO3topyA2CmF", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO3topyA2CmF", + "moduleName": "SendbirdUIKit" }, { "kind": "Function", @@ -163789,20 +165074,20 @@ }, { "kind": "TypeNominal", - "name": "SBUTypingIndicatorType", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" }, { "kind": "TypeNominal", - "name": "SBUTypingIndicatorType", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" } ], "declKind": "Func", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO2eeoiySbAC_ACtFZ", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO2eeoiySbAC_ACtFZ", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO2eeoiySbAC_ACtFZ", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO2eeoiySbAC_ACtFZ", "moduleName": "SendbirdUIKit", "static": true, "implicit": true, @@ -163821,8 +165106,8 @@ } ], "declKind": "Var", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivp", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivp", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO9hashValueSivp", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO9hashValueSivp", "moduleName": "SendbirdUIKit", "implicit": true, "accessors": [ @@ -163839,8 +165124,8 @@ } ], "declKind": "Accessor", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivg", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivg", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO9hashValueSivg", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO9hashValueSivg", "moduleName": "SendbirdUIKit", "implicit": true, "accessorKind": "get" @@ -163866,16 +165151,16 @@ } ], "declKind": "Func", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO4hash4intoys6HasherVz_tF", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO4hash4intoys6HasherVz_tF", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO4hash4intoys6HasherVz_tF", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO4hash4intoys6HasherVz_tF", "moduleName": "SendbirdUIKit", "implicit": true, "funcSelfKind": "NonMutating" } ], "declKind": "Enum", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO", "moduleName": "SendbirdUIKit", "declAttributes": [ "AccessControl", @@ -200947,7 +202232,7 @@ { "kind": "Function", "name": "scrollToMessage", - "printedName": "scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:)", + "printedName": "scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:position:needToSearch:)", "children": [ { "kind": "TypeNominal", @@ -200967,6 +202252,20 @@ "hasDefaultArg": true, "usr": "s:Sb" }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "hasDefaultArg": true, + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, { "kind": "TypeNominal", "name": "Bool", @@ -200976,14 +202275,69 @@ } ], "declKind": "Func", - "usr": "c:@M@SendbirdUIKit@objc(cs)SBUBaseChannelViewController(im)scrollToMessageWithId:enablesScrollAnimation:enablesMessageAnimation:", - "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage2id22enablesScrollAnimation0kiM0ys5Int64V_S2btF", + "usr": "s:13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage2id22enablesScrollAnimation0kiM08position04needH6Searchys5Int64V_S2bAA17SBUScrollPositionOSbtF", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage2id22enablesScrollAnimation0kiM08position04needH6Searchys5Int64V_S2bAA17SBUScrollPositionOSbtF", "moduleName": "SendbirdUIKit", "declAttributes": [ "Custom", "AccessControl", - "RawDocComment", - "ObjC" + "RawDocComment" + ], + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "scrollToMessage", + "printedName": "scrollToMessage(message:enablesScrollAnimation:enablesMessageAnimation:position:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "BaseMessage", + "printedName": "SendbirdChatSDK.BaseMessage", + "usr": "c:@M@SendbirdChatSDK@objc(cs)SBDBaseMessage" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "hasDefaultArg": true, + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage7message22enablesScrollAnimation0kiM08position04needH6Searchy0A7ChatSDK04BaseI0C_S2bAA17SBUScrollPositionOSbtF", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage7message22enablesScrollAnimation0kiM08position04needH6Searchy0A7ChatSDK04BaseI0C_S2bAA17SBUScrollPositionOSbtF", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "Custom", + "AccessControl", + "RawDocComment" ], "funcSelfKind": "NonMutating" }, @@ -202342,6 +203696,88 @@ ], "funcSelfKind": "NonMutating" }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didFailScrollToMessageId:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "Int64", + "printedName": "Swift.Int64", + "usr": "s:s5Int64V" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "c:@M@SendbirdUIKit@objc(cs)SBUBaseChannelViewController(im)baseChannelModule:didFailScrollToMessageId:needToSearch:", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC04baseD6Module_24didFailScrollToMessageId04needL6SearchyAA0cdH0C4ListC_s5Int64VSbtF", + "moduleName": "SendbirdUIKit", + "isOpen": true, + "declAttributes": [ + "Custom", + "AccessControl", + "ObjC" + ], + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didFailScrollToMessage:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "BaseMessage", + "printedName": "SendbirdChatSDK.BaseMessage", + "usr": "c:@M@SendbirdChatSDK@objc(cs)SBDBaseMessage" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "c:@M@SendbirdUIKit@objc(cs)SBUBaseChannelViewController(im)baseChannelModule:didFailScrollToMessage:needToSearch:", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC04baseD6Module_22didFailScrollToMessage04needL6SearchyAA0cdH0C4ListC_0A7ChatSDK04BaseM0CSbtF", + "moduleName": "SendbirdUIKit", + "isOpen": true, + "declAttributes": [ + "Custom", + "AccessControl", + "ObjC" + ], + "funcSelfKind": "NonMutating" + }, { "kind": "Function", "name": "baseChannelModule", @@ -202564,6 +204000,46 @@ ], "funcSelfKind": "NonMutating" }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didSelectScrollToBottonWithOptions:animated:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollOptions", + "printedName": "SendbirdUIKit.SBUScrollOptions", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit28SBUBaseChannelViewControllerC04baseD6Module_34didSelectScrollToBottonWithOptions8animatedyAA0cdH0C4ListC_AA09SBUScrollO0VSbtF", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC04baseD6Module_34didSelectScrollToBottonWithOptions8animatedyAA0cdH0C4ListC_AA09SBUScrollO0VSbtF", + "moduleName": "SendbirdUIKit", + "isOpen": true, + "declAttributes": [ + "Custom", + "AccessControl" + ], + "funcSelfKind": "NonMutating" + }, { "kind": "Function", "name": "baseChannelModuleDidSelectRetry", @@ -259183,7 +260659,7 @@ { "kind": "Function", "name": "scrollToMessage", - "printedName": "scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:)", + "printedName": "scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:position:needToSearch:)", "children": [ { "kind": "TypeNominal", @@ -259204,6 +260680,20 @@ "hasDefaultArg": true, "usr": "s:Sb" }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "hasDefaultArg": true, + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, { "kind": "TypeNominal", "name": "Bool", @@ -259213,16 +260703,73 @@ } ], "declKind": "Func", - "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage2id22enablesScrollAnimation0kiM0Sbs5Int64V_S2btF", - "mangledName": "$s13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage2id22enablesScrollAnimation0kiM0Sbs5Int64V_S2btF", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage2id22enablesScrollAnimation0kiM08position04needH6SearchSbs5Int64V_S2bAA17SBUScrollPositionOSbtF", + "mangledName": "$s13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage2id22enablesScrollAnimation0kiM08position04needH6SearchSbs5Int64V_S2bAA17SBUScrollPositionOSbtF", "moduleName": "SendbirdUIKit", "declAttributes": [ - "Dynamic", "Custom", "AccessControl", "DiscardableResult", - "RawDocComment", - "ObjC" + "RawDocComment" + ], + "isFromExtension": true, + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "scrollToMessage", + "printedName": "scrollToMessage(message:enablesScrollAnimation:enablesMessageAnimation:position:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "BaseMessage", + "printedName": "SendbirdChatSDK.BaseMessage", + "usr": "c:@M@SendbirdChatSDK@objc(cs)SBDBaseMessage" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "hasDefaultArg": true, + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage7message22enablesScrollAnimation0kiM08position04needH6SearchSb0A7ChatSDK04BaseI0C_S2bAA17SBUScrollPositionOSbtF", + "mangledName": "$s13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage7message22enablesScrollAnimation0kiM08position04needH6SearchSb0A7ChatSDK04BaseI0C_S2bAA17SBUScrollPositionOSbtF", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "Custom", + "AccessControl", + "DiscardableResult", + "RawDocComment" ], "isFromExtension": true, "funcSelfKind": "NonMutating" @@ -273129,6 +274676,107 @@ } ] }, + { + "kind": "Var", + "name": "scrollPostionConfiguration", + "printedName": "scrollPostionConfiguration", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPostionConfiguration", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvpZ", + "mangledName": "$s13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvpZ", + "moduleName": "SendbirdUIKit", + "static": true, + "declAttributes": [ + "HasInitialValue", + "Final", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPostionConfiguration", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvgZ", + "mangledName": "$s13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvgZ", + "moduleName": "SendbirdUIKit", + "static": true, + "implicit": true, + "declAttributes": [ + "Final" + ], + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPostionConfiguration", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvsZ", + "mangledName": "$s13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvsZ", + "moduleName": "SendbirdUIKit", + "static": true, + "implicit": true, + "declAttributes": [ + "Final" + ], + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvMZ", + "mangledName": "$s13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvMZ", + "moduleName": "SendbirdUIKit", + "static": true, + "implicit": true, + "declAttributes": [ + "Final" + ], + "accessorKind": "_modify" + } + ] + }, { "kind": "Var", "name": "ApplicationId", @@ -376157,150 +377805,178 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 14687, + "offset": 16264, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 14731, + "offset": 16308, "length": 1, "value": "5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 14762, + "offset": 16339, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "FloatLiteral", - "offset": 15162, + "offset": 16739, "length": 3, "value": "0.5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 15227, + "offset": 16804, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 15238, + "offset": 16815, "length": 1, "value": "5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "FloatLiteral", - "offset": 15280, + "offset": 16857, "length": 3, "value": "0.5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 15322, + "offset": 16899, "length": 1, "value": "5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 15363, + "offset": 16940, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 15586, + "offset": 17163, "length": 1, "value": "2" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 15635, + "offset": 17212, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 16418, + "offset": 17995, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 16431, + "offset": 18008, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 16439, + "offset": 18016, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 16450, + "offset": 18027, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 17736, + "offset": 19313, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 17776, + "offset": 19353, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 23626, + "offset": 25203, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 51958, + "offset": 53837, + "length": 5, + "value": "false" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", + "kind": "BooleanLiteral", + "offset": 57513, + "length": 5, + "value": "false" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", + "kind": "BooleanLiteral", + "offset": 57576, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 55194, + "offset": 57659, + "length": 4, + "value": "true" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", + "kind": "BooleanLiteral", + "offset": 59284, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 55257, + "offset": 59347, "length": 5, "value": "false" }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", + "kind": "BooleanLiteral", + "offset": 59430, + "length": 4, + "value": "true" + }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Manager\/CacheManager\/SBUCacheManager.Template.swift", "kind": "StringLiteral", @@ -376371,6 +378047,20 @@ "length": 2, "value": "16" }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Model\/SBUScrollOptions.swift", + "kind": "IntegerLiteral", + "offset": 984, + "length": 1, + "value": "0" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Model\/SBUScrollOptions.swift", + "kind": "IntegerLiteral", + "offset": 996, + "length": 1, + "value": "0" + }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/MessageCell\/NotificationChannel\/SBUNotificationCell.swift", "kind": "IntegerLiteral", @@ -381435,21 +383125,21 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUGroupChannelViewController.swift", "kind": "IntegerLiteral", - "offset": 15058, + "offset": 15519, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUGroupChannelViewController.swift", "kind": "IntegerLiteral", - "offset": 15093, + "offset": 15554, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUGroupChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 28348, + "offset": 28809, "length": 5, "value": "false" }, @@ -382513,14 +384203,14 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/NotificationChannel\/Feed\/SBUFeedNotificationChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 8486, + "offset": 9067, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/NotificationChannel\/Feed\/SBUFeedNotificationChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 23710, + "offset": 24291, "length": 5, "value": "false" }, @@ -385250,28 +386940,56 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 17597, + "offset": 17772, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 17644, + "offset": 17819, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 22651, + "offset": 17902, + "length": 4, + "value": "true" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", + "kind": "BooleanLiteral", + "offset": 19161, + "length": 5, + "value": "false" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", + "kind": "BooleanLiteral", + "offset": 19208, + "length": 5, + "value": "false" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", + "kind": "BooleanLiteral", + "offset": 19291, + "length": 4, + "value": "true" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", + "kind": "BooleanLiteral", + "offset": 24201, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 23974, + "offset": 25524, "length": 5, "value": "false" }, @@ -385600,14 +387318,14 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/NotificationChannel\/Chat\/SBUChatNotificationChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 8528, + "offset": 9109, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/NotificationChannel\/Chat\/SBUChatNotificationChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 24862, + "offset": 25443, "length": 5, "value": "false" }, diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface index b0c73065..cbb82fbf 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface @@ -101,6 +101,7 @@ public protocol SBUBaseChannelModuleListDelegate : SendbirdUIKit.SBUCommonDelega func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapVoiceMessage fileMessage: SendbirdChatSDK.FileMessage, cell: UIKit.UITableViewCell, forRowAt indexPath: Foundation.IndexPath) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) func baseChannelModuleDidSelectRetry(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapRetryFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapDeleteFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @@ -112,6 +113,8 @@ public protocol SBUBaseChannelModuleListDelegate : SendbirdUIKit.SBUCommonDelega func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didReactToMessage message: SendbirdChatSDK.BaseMessage, withEmoji key: Swift.String, selected: Swift.Bool) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapMoreEmojisOnMessage message: SendbirdChatSDK.BaseMessage) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didDismissMenuForCell cell: UIKit.UITableViewCell) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Swift.Int64, needToSearch: Swift.Bool) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessage message: SendbirdChatSDK.BaseMessage, needToSearch: Swift.Bool) } public protocol SBUBaseChannelModuleListDataSource : AnyObject { func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, channelForTableView tableView: UIKit.UITableView) -> SendbirdChatSDK.BaseChannel? @@ -195,8 +198,10 @@ extension SendbirdUIKit.SBUBaseChannelModule.List { @objc @_Concurrency.MainActor(unsafe) dynamic public var isScrollNearByBottom: Swift.Bool { @objc get } - @objc @discardableResult - @_Concurrency.MainActor(unsafe) dynamic public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false) -> Swift.Bool + @discardableResult + @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) -> Swift.Bool + @discardableResult + @_Concurrency.MainActor(unsafe) public func scrollToMessage(message: SendbirdChatSDK.BaseMessage, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) -> Swift.Bool @objc @_Concurrency.MainActor(unsafe) dynamic public func checkSameDayAsNextMessage(currentIndex: Swift.Int, fullMessageList: [SendbirdChatSDK.BaseMessage]) -> Swift.Bool @objc @_Concurrency.MainActor(unsafe) dynamic public func checkSameDayAsPrevMessage(currentIndex: Swift.Int, fullMessageList: [SendbirdChatSDK.BaseMessage]) -> Swift.Bool } @@ -212,6 +217,19 @@ extension SendbirdUIKit.SBUConfig { required public init(from decoder: Swift.Decoder) throws } } +@_hasMissingDesignatedInitializers public class SBUScrollPostionConfiguration { + public var groupChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + public var openChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + public var feedChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + @_hasMissingDesignatedInitializers public class BaseChannel { + public var scrollToBottom: SendbirdUIKit.SBUScrollPosition + public var scrollToNewMessage: SendbirdUIKit.SBUScrollPosition + public var scrollToInitial: SendbirdUIKit.SBUScrollPosition + public var scrollToInitialWithStartingPoint: SendbirdUIKit.SBUScrollPosition + @objc deinit + } + @objc deinit +} @objc @_inheritsConvenienceInitializers @IBDesignable @_Concurrency.MainActor(unsafe) open class SBUBaseMessageCell : SendbirdUIKit.SBUTableViewCell, SendbirdUIKit.SBUMessageCellProtocol { @objc @_Concurrency.MainActor(unsafe) public var message: SendbirdChatSDK.BaseMessage? @objc @_Concurrency.MainActor(unsafe) public var position: SendbirdUIKit.MessagePosition @@ -274,6 +292,12 @@ public protocol SBUCommonDelegate : AnyObject { @_Concurrency.MainActor(unsafe) @objc required dynamic public init?(coder: Foundation.NSCoder) @objc deinit } +public struct SBUScrollOptions { + public let count: Swift.Int? + public let position: SendbirdUIKit.SBUScrollPosition + public let isInverted: Swift.Bool + public init(count: Swift.Int? = nil, position: SendbirdUIKit.SBUScrollPosition, isInverted: Swift.Bool) +} @objc @_inheritsConvenienceInitializers @_Concurrency.MainActor(unsafe) open class SBUParentMessageInfoReactionView : SendbirdUIKit.SBUMessageReactionView { @_Concurrency.MainActor(unsafe) @objc override dynamic open func setupStyles() @_Concurrency.MainActor(unsafe) override open func configure(maxWidth: CoreFoundation.CGFloat, useReaction: Swift.Bool, reactions: [SendbirdChatSDK.Reaction]) @@ -3159,6 +3183,7 @@ public protocol SBUMessageCellProtocol { @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, didUpdate answer: SendbirdUIKit.SBUForm.Answer, messageCell: SendbirdUIKit.SBUBaseMessageCell) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapVoiceMessage fileMessage: SendbirdChatSDK.FileMessage, cell: UIKit.UITableViewCell, forRowAt indexPath: Foundation.IndexPath) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + @_Concurrency.MainActor(unsafe) override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, highlightInfoInTableView tableView: UIKit.UITableView) -> SendbirdUIKit.SBUHighlightMessageInfo? @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, answersFor messageId: Swift.Int64?) -> [SendbirdUIKit.SBUForm.Answer]? @@ -5181,6 +5206,16 @@ public enum SBUTypingIndicatorType { get } } +public enum SBUScrollPosition { + case bottom + case middle + case top + public static func == (a: SendbirdUIKit.SBUScrollPosition, b: SendbirdUIKit.SBUScrollPosition) -> Swift.Bool + public func hash(into hasher: inout Swift.Hasher) + public var hashValue: Swift.Int { + get + } +} public protocol SBUParentMessageInfoViewDelegate : AnyObject { func parentMessageInfoViewBoundsWillChanged(_ view: SendbirdUIKit.SBUParentMessageInfoView) func parentMessageInfoViewBoundsDidChanged(_ view: SendbirdUIKit.SBUParentMessageInfoView) @@ -6708,7 +6743,8 @@ extension SendbirdUIKit.SBUMessageSearchViewController { @objc @_Concurrency.MainActor(unsafe) open func showChannelSettings() @_Concurrency.MainActor(unsafe) open func showMessageThread(channelURL: Swift.String, parentMessageId: Swift.Int64, parentMessageCreatedAt: Swift.Int64? = 0, startingPoint: Swift.Int64? = 0) @objc @_Concurrency.MainActor(unsafe) open func showEmojiListModal(message: SendbirdChatSDK.BaseMessage) - @objc @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false) + @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) + @_Concurrency.MainActor(unsafe) public func scrollToMessage(message: SendbirdChatSDK.BaseMessage, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) @objc @_Concurrency.MainActor(unsafe) public func updateNewMessageInfo(hidden: Swift.Bool) @_Concurrency.MainActor(unsafe) open func openFile(_ fileData: SendbirdUIKit.SBUFileData) @objc @_Concurrency.MainActor(unsafe) open func openFile(fileMessage: SendbirdChatSDK.FileMessage) @@ -6745,12 +6781,15 @@ extension SendbirdUIKit.SBUMessageSearchViewController { @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapReplyMessage message: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didDismissMenuForCell cell: UIKit.UITableViewCell) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapMoreEmojisOnMessage message: SendbirdChatSDK.BaseMessage) + @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Swift.Int64, needToSearch: Swift.Bool) + @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessage message: SendbirdChatSDK.BaseMessage, needToSearch: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didReactToMessage message: SendbirdChatSDK.BaseMessage, withEmoji key: Swift.String, selected: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapRetryFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapDeleteFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapUserProfile user: SendbirdUIKit.SBUUser) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModuleDidSelectRetry(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, channelForTableView tableView: UIKit.UITableView) -> SendbirdChatSDK.BaseChannel? @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, sentMessagesInTableView tableView: UIKit.UITableView) -> [SendbirdChatSDK.BaseMessage] @@ -8704,6 +8743,7 @@ public class SBUMention : Swift.Equatable { public static var isAVPlayerAlwaysEnabled: Swift.Bool public static var isTintColorEnabledForCustomizedIcon: Swift.Bool public static var isCustomizedIconResizable: Swift.Bool + public static var scrollPostionConfiguration: SendbirdUIKit.SBUScrollPostionConfiguration @objc deinit } public protocol SBUOpenChannelListModuleListDelegate : SendbirdUIKit.SBUBaseChannelListModuleListDelegate { @@ -11208,6 +11248,8 @@ extension SendbirdUIKit.LogType : Swift.Hashable {} extension SendbirdUIKit.LogType : Swift.RawRepresentable {} extension SendbirdUIKit.SBUTypingIndicatorType : Swift.Equatable {} extension SendbirdUIKit.SBUTypingIndicatorType : Swift.Hashable {} +extension SendbirdUIKit.SBUScrollPosition : Swift.Equatable {} +extension SendbirdUIKit.SBUScrollPosition : Swift.Hashable {} @available(*, deprecated, renamed: "UserListType") extension SendbirdUIKit.MemberListType : Swift.Equatable {} @available(*, deprecated, renamed: "UserListType") diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftdoc b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftdoc index f4ea71dc..1f5c0856 100644 Binary files a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftdoc and b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftdoc differ diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftinterface b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftinterface index b0c73065..cbb82fbf 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftinterface +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftinterface @@ -101,6 +101,7 @@ public protocol SBUBaseChannelModuleListDelegate : SendbirdUIKit.SBUCommonDelega func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapVoiceMessage fileMessage: SendbirdChatSDK.FileMessage, cell: UIKit.UITableViewCell, forRowAt indexPath: Foundation.IndexPath) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) func baseChannelModuleDidSelectRetry(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapRetryFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapDeleteFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @@ -112,6 +113,8 @@ public protocol SBUBaseChannelModuleListDelegate : SendbirdUIKit.SBUCommonDelega func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didReactToMessage message: SendbirdChatSDK.BaseMessage, withEmoji key: Swift.String, selected: Swift.Bool) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapMoreEmojisOnMessage message: SendbirdChatSDK.BaseMessage) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didDismissMenuForCell cell: UIKit.UITableViewCell) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Swift.Int64, needToSearch: Swift.Bool) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessage message: SendbirdChatSDK.BaseMessage, needToSearch: Swift.Bool) } public protocol SBUBaseChannelModuleListDataSource : AnyObject { func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, channelForTableView tableView: UIKit.UITableView) -> SendbirdChatSDK.BaseChannel? @@ -195,8 +198,10 @@ extension SendbirdUIKit.SBUBaseChannelModule.List { @objc @_Concurrency.MainActor(unsafe) dynamic public var isScrollNearByBottom: Swift.Bool { @objc get } - @objc @discardableResult - @_Concurrency.MainActor(unsafe) dynamic public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false) -> Swift.Bool + @discardableResult + @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) -> Swift.Bool + @discardableResult + @_Concurrency.MainActor(unsafe) public func scrollToMessage(message: SendbirdChatSDK.BaseMessage, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) -> Swift.Bool @objc @_Concurrency.MainActor(unsafe) dynamic public func checkSameDayAsNextMessage(currentIndex: Swift.Int, fullMessageList: [SendbirdChatSDK.BaseMessage]) -> Swift.Bool @objc @_Concurrency.MainActor(unsafe) dynamic public func checkSameDayAsPrevMessage(currentIndex: Swift.Int, fullMessageList: [SendbirdChatSDK.BaseMessage]) -> Swift.Bool } @@ -212,6 +217,19 @@ extension SendbirdUIKit.SBUConfig { required public init(from decoder: Swift.Decoder) throws } } +@_hasMissingDesignatedInitializers public class SBUScrollPostionConfiguration { + public var groupChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + public var openChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + public var feedChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + @_hasMissingDesignatedInitializers public class BaseChannel { + public var scrollToBottom: SendbirdUIKit.SBUScrollPosition + public var scrollToNewMessage: SendbirdUIKit.SBUScrollPosition + public var scrollToInitial: SendbirdUIKit.SBUScrollPosition + public var scrollToInitialWithStartingPoint: SendbirdUIKit.SBUScrollPosition + @objc deinit + } + @objc deinit +} @objc @_inheritsConvenienceInitializers @IBDesignable @_Concurrency.MainActor(unsafe) open class SBUBaseMessageCell : SendbirdUIKit.SBUTableViewCell, SendbirdUIKit.SBUMessageCellProtocol { @objc @_Concurrency.MainActor(unsafe) public var message: SendbirdChatSDK.BaseMessage? @objc @_Concurrency.MainActor(unsafe) public var position: SendbirdUIKit.MessagePosition @@ -274,6 +292,12 @@ public protocol SBUCommonDelegate : AnyObject { @_Concurrency.MainActor(unsafe) @objc required dynamic public init?(coder: Foundation.NSCoder) @objc deinit } +public struct SBUScrollOptions { + public let count: Swift.Int? + public let position: SendbirdUIKit.SBUScrollPosition + public let isInverted: Swift.Bool + public init(count: Swift.Int? = nil, position: SendbirdUIKit.SBUScrollPosition, isInverted: Swift.Bool) +} @objc @_inheritsConvenienceInitializers @_Concurrency.MainActor(unsafe) open class SBUParentMessageInfoReactionView : SendbirdUIKit.SBUMessageReactionView { @_Concurrency.MainActor(unsafe) @objc override dynamic open func setupStyles() @_Concurrency.MainActor(unsafe) override open func configure(maxWidth: CoreFoundation.CGFloat, useReaction: Swift.Bool, reactions: [SendbirdChatSDK.Reaction]) @@ -3159,6 +3183,7 @@ public protocol SBUMessageCellProtocol { @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, didUpdate answer: SendbirdUIKit.SBUForm.Answer, messageCell: SendbirdUIKit.SBUBaseMessageCell) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapVoiceMessage fileMessage: SendbirdChatSDK.FileMessage, cell: UIKit.UITableViewCell, forRowAt indexPath: Foundation.IndexPath) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + @_Concurrency.MainActor(unsafe) override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, highlightInfoInTableView tableView: UIKit.UITableView) -> SendbirdUIKit.SBUHighlightMessageInfo? @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, answersFor messageId: Swift.Int64?) -> [SendbirdUIKit.SBUForm.Answer]? @@ -5181,6 +5206,16 @@ public enum SBUTypingIndicatorType { get } } +public enum SBUScrollPosition { + case bottom + case middle + case top + public static func == (a: SendbirdUIKit.SBUScrollPosition, b: SendbirdUIKit.SBUScrollPosition) -> Swift.Bool + public func hash(into hasher: inout Swift.Hasher) + public var hashValue: Swift.Int { + get + } +} public protocol SBUParentMessageInfoViewDelegate : AnyObject { func parentMessageInfoViewBoundsWillChanged(_ view: SendbirdUIKit.SBUParentMessageInfoView) func parentMessageInfoViewBoundsDidChanged(_ view: SendbirdUIKit.SBUParentMessageInfoView) @@ -6708,7 +6743,8 @@ extension SendbirdUIKit.SBUMessageSearchViewController { @objc @_Concurrency.MainActor(unsafe) open func showChannelSettings() @_Concurrency.MainActor(unsafe) open func showMessageThread(channelURL: Swift.String, parentMessageId: Swift.Int64, parentMessageCreatedAt: Swift.Int64? = 0, startingPoint: Swift.Int64? = 0) @objc @_Concurrency.MainActor(unsafe) open func showEmojiListModal(message: SendbirdChatSDK.BaseMessage) - @objc @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false) + @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) + @_Concurrency.MainActor(unsafe) public func scrollToMessage(message: SendbirdChatSDK.BaseMessage, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) @objc @_Concurrency.MainActor(unsafe) public func updateNewMessageInfo(hidden: Swift.Bool) @_Concurrency.MainActor(unsafe) open func openFile(_ fileData: SendbirdUIKit.SBUFileData) @objc @_Concurrency.MainActor(unsafe) open func openFile(fileMessage: SendbirdChatSDK.FileMessage) @@ -6745,12 +6781,15 @@ extension SendbirdUIKit.SBUMessageSearchViewController { @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapReplyMessage message: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didDismissMenuForCell cell: UIKit.UITableViewCell) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapMoreEmojisOnMessage message: SendbirdChatSDK.BaseMessage) + @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Swift.Int64, needToSearch: Swift.Bool) + @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessage message: SendbirdChatSDK.BaseMessage, needToSearch: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didReactToMessage message: SendbirdChatSDK.BaseMessage, withEmoji key: Swift.String, selected: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapRetryFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapDeleteFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapUserProfile user: SendbirdUIKit.SBUUser) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModuleDidSelectRetry(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, channelForTableView tableView: UIKit.UITableView) -> SendbirdChatSDK.BaseChannel? @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, sentMessagesInTableView tableView: UIKit.UITableView) -> [SendbirdChatSDK.BaseMessage] @@ -8704,6 +8743,7 @@ public class SBUMention : Swift.Equatable { public static var isAVPlayerAlwaysEnabled: Swift.Bool public static var isTintColorEnabledForCustomizedIcon: Swift.Bool public static var isCustomizedIconResizable: Swift.Bool + public static var scrollPostionConfiguration: SendbirdUIKit.SBUScrollPostionConfiguration @objc deinit } public protocol SBUOpenChannelListModuleListDelegate : SendbirdUIKit.SBUBaseChannelListModuleListDelegate { @@ -11208,6 +11248,8 @@ extension SendbirdUIKit.LogType : Swift.Hashable {} extension SendbirdUIKit.LogType : Swift.RawRepresentable {} extension SendbirdUIKit.SBUTypingIndicatorType : Swift.Equatable {} extension SendbirdUIKit.SBUTypingIndicatorType : Swift.Hashable {} +extension SendbirdUIKit.SBUScrollPosition : Swift.Equatable {} +extension SendbirdUIKit.SBUScrollPosition : Swift.Hashable {} @available(*, deprecated, renamed: "UserListType") extension SendbirdUIKit.MemberListType : Swift.Equatable {} @available(*, deprecated, renamed: "UserListType") diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.abi.json b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.abi.json index 913a4dea..ccbb9d81 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.abi.json +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.abi.json @@ -3646,6 +3646,48 @@ "reqNewWitnessTableEntry": true, "funcSelfKind": "NonMutating" }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didSelectScrollToBottonWithOptions:animated:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollOptions", + "printedName": "SendbirdUIKit.SBUScrollOptions", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_34didSelectScrollToBottonWithOptions8animatedyAA0cdE0C0F0C_AA09SBUScrollO0VSbtF", + "mangledName": "$s13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_34didSelectScrollToBottonWithOptions8animatedyAA0cdE0C0F0C_AA09SBUScrollO0VSbtF", + "moduleName": "SendbirdUIKit", + "genericSig": "<τ_0_0 where τ_0_0 : SendbirdUIKit.SBUBaseChannelModuleListDelegate>", + "sugared_genericSig": "", + "protocolReq": true, + "declAttributes": [ + "RawDocComment" + ], + "reqNewWitnessTableEntry": true, + "funcSelfKind": "NonMutating" + }, { "kind": "Function", "name": "baseChannelModuleDidSelectRetry", @@ -4047,6 +4089,90 @@ ], "reqNewWitnessTableEntry": true, "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didFailScrollToMessageId:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "Int64", + "printedName": "Swift.Int64", + "usr": "s:s5Int64V" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_24didFailScrollToMessageId04needL6SearchyAA0cdE0C0F0C_s5Int64VSbtF", + "mangledName": "$s13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_24didFailScrollToMessageId04needL6SearchyAA0cdE0C0F0C_s5Int64VSbtF", + "moduleName": "SendbirdUIKit", + "genericSig": "<τ_0_0 where τ_0_0 : SendbirdUIKit.SBUBaseChannelModuleListDelegate>", + "sugared_genericSig": "", + "protocolReq": true, + "declAttributes": [ + "RawDocComment" + ], + "reqNewWitnessTableEntry": true, + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didFailScrollToMessage:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "BaseMessage", + "printedName": "SendbirdChatSDK.BaseMessage", + "usr": "c:@M@SendbirdChatSDK@objc(cs)SBDBaseMessage" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_22didFailScrollToMessage04needL6SearchyAA0cdE0C0F0C_0A7ChatSDK04BaseM0CSbtF", + "mangledName": "$s13SendbirdUIKit32SBUBaseChannelModuleListDelegateP04basedE0_22didFailScrollToMessage04needL6SearchyAA0cdE0C0F0C_0A7ChatSDK04BaseM0CSbtF", + "moduleName": "SendbirdUIKit", + "genericSig": "<τ_0_0 where τ_0_0 : SendbirdUIKit.SBUBaseChannelModuleListDelegate>", + "sugared_genericSig": "", + "protocolReq": true, + "declAttributes": [ + "RawDocComment" + ], + "reqNewWitnessTableEntry": true, + "funcSelfKind": "NonMutating" } ], "declKind": "Protocol", @@ -4504,6 +4630,660 @@ "declKind": "Import", "moduleName": "SendbirdUIKit" }, + { + "kind": "TypeDecl", + "name": "SBUScrollPostionConfiguration", + "printedName": "SBUScrollPostionConfiguration", + "children": [ + { + "kind": "Var", + "name": "groupChannel", + "printedName": "groupChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0Cvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0CvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC12groupChannelAC04BaseG0CvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "openChannel", + "printedName": "openChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0Cvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0CvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11openChannelAC04BaseG0CvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "feedChannel", + "printedName": "feedChannel", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "BaseChannel", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0Cvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0CvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11feedChannelAC04BaseG0CvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "TypeDecl", + "name": "BaseChannel", + "printedName": "BaseChannel", + "children": [ + { + "kind": "Var", + "name": "scrollToBottom", + "printedName": "scrollToBottom", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC14scrollToBottomAA0C8PositionOvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "scrollToNewMessage", + "printedName": "scrollToNewMessage", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC18scrollToNewMessageAA0C8PositionOvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "scrollToInitial", + "printedName": "scrollToInitial", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC15scrollToInitialAA0C8PositionOvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + }, + { + "kind": "Var", + "name": "scrollToInitialWithStartingPoint", + "printedName": "scrollToInitialWithStartingPoint", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasInitialValue", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvs", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvs", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvM", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC32scrollToInitialWithStartingPointAA0C8PositionOvM", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "_modify" + } + ] + } + ], + "declKind": "Class", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC11BaseChannelC", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl" + ], + "hasMissingDesignatedInitializers": true + } + ], + "declKind": "Class", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC", + "mangledName": "$s13SendbirdUIKit29SBUScrollPostionConfigurationC", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl", + "RawDocComment" + ], + "hasMissingDesignatedInitializers": true + }, + { + "kind": "Import", + "name": "UIKit", + "printedName": "UIKit", + "declKind": "Import", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "Import", + "name": "SendbirdChatSDK", + "printedName": "SendbirdChatSDK", + "declKind": "Import", + "moduleName": "SendbirdUIKit" + }, { "kind": "TypeDecl", "name": "SBUBaseMessageCell", @@ -6150,6 +6930,231 @@ "RawDocComment" ] }, + { + "kind": "TypeDecl", + "name": "SBUScrollOptions", + "printedName": "SBUScrollOptions", + "children": [ + { + "kind": "Var", + "name": "count", + "printedName": "count", + "children": [ + { + "kind": "TypeNominal", + "name": "Optional", + "printedName": "Swift.Int?", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "usr": "s:Sq" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV5countSiSgvp", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV5countSiSgvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "isLet": true, + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Optional", + "printedName": "Swift.Int?", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "usr": "s:Sq" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV5countSiSgvg", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV5countSiSgvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + } + ] + }, + { + "kind": "Var", + "name": "position", + "printedName": "position", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV8positionAA0C8PositionOvp", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV8positionAA0C8PositionOvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "isLet": true, + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV8positionAA0C8PositionOvg", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV8positionAA0C8PositionOvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + } + ] + }, + { + "kind": "Var", + "name": "isInverted", + "printedName": "isInverted", + "children": [ + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV10isInvertedSbvp", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV10isInvertedSbvp", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "isLet": true, + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV10isInvertedSbvg", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV10isInvertedSbvg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + } + ] + }, + { + "kind": "Constructor", + "name": "init", + "printedName": "init(count:position:isInverted:)", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollOptions", + "printedName": "SendbirdUIKit.SBUScrollOptions", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV" + }, + { + "kind": "TypeNominal", + "name": "Optional", + "printedName": "Swift.Int?", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "hasDefaultArg": true, + "usr": "s:Sq" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Constructor", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV5count8position10isInvertedACSiSg_AA0C8PositionOSbtcfc", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV5count8position10isInvertedACSiSg_AA0C8PositionOSbtcfc", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl", + "RawDocComment" + ], + "init_kind": "Designated" + } + ], + "declKind": "Struct", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV", + "mangledName": "$s13SendbirdUIKit16SBUScrollOptionsV", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl", + "RawDocComment" + ] + }, + { + "kind": "Import", + "name": "UIKit", + "printedName": "UIKit", + "declKind": "Import", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "RawDocComment" + ] + }, { "kind": "Import", "name": "SendbirdChatSDK", @@ -109383,6 +110388,48 @@ ], "funcSelfKind": "NonMutating" }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didSelectScrollToBottonWithOptions:animated:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollOptions", + "printedName": "SendbirdUIKit.SBUScrollOptions", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit29SBUGroupChannelViewControllerC04baseD6Module_34didSelectScrollToBottonWithOptions8animatedyAA07SBUBasedH0C4ListC_AA09SBUScrollO0VSbtF", + "mangledName": "$s13SendbirdUIKit29SBUGroupChannelViewControllerC04baseD6Module_34didSelectScrollToBottonWithOptions8animatedyAA07SBUBasedH0C4ListC_AA09SBUScrollO0VSbtF", + "moduleName": "SendbirdUIKit", + "overriding": true, + "isOpen": true, + "declAttributes": [ + "Custom", + "Override", + "AccessControl" + ], + "funcSelfKind": "NonMutating" + }, { "kind": "Function", "name": "baseChannelModule", @@ -163729,39 +164776,206 @@ } ], "declKind": "EnumElement", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO4textyA2CmF", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO4textyA2CmF", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO4textyA2CmF", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO4textyA2CmF", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "RawDocComment" + ] + }, + { + "kind": "Var", + "name": "bubble", + "printedName": "bubble", + "children": [ + { + "kind": "TypeFunc", + "name": "Function", + "printedName": "(SendbirdUIKit.SBUTypingIndicatorType.Type) -> SendbirdUIKit.SBUTypingIndicatorType", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUTypingIndicatorType", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + }, + { + "kind": "TypeNominal", + "name": "Metatype", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType.Type", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUTypingIndicatorType", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + } + ] + } + ] + } + ], + "declKind": "EnumElement", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO6bubbleyA2CmF", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO6bubbleyA2CmF", "moduleName": "SendbirdUIKit", "declAttributes": [ "RawDocComment" ] }, + { + "kind": "Function", + "name": "==", + "printedName": "==(_:_:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUTypingIndicatorType", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + }, + { + "kind": "TypeNominal", + "name": "SBUTypingIndicatorType", + "printedName": "SendbirdUIKit.SBUTypingIndicatorType", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO2eeoiySbAC_ACtFZ", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO2eeoiySbAC_ACtFZ", + "moduleName": "SendbirdUIKit", + "static": true, + "implicit": true, + "funcSelfKind": "NonMutating" + }, { "kind": "Var", - "name": "bubble", - "printedName": "bubble", + "name": "hashValue", + "printedName": "hashValue", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivp", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivp", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "Int", + "printedName": "Swift.Int", + "usr": "s:Si" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivg", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivg", + "moduleName": "SendbirdUIKit", + "implicit": true, + "accessorKind": "get" + } + ] + }, + { + "kind": "Function", + "name": "hash", + "printedName": "hash(into:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "Hasher", + "printedName": "Swift.Hasher", + "paramValueOwnership": "InOut", + "usr": "s:s6HasherV" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO4hash4intoys6HasherVz_tF", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO4hash4intoys6HasherVz_tF", + "moduleName": "SendbirdUIKit", + "implicit": true, + "funcSelfKind": "NonMutating" + } + ], + "declKind": "Enum", + "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO", + "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "AccessControl", + "RawDocComment" + ], + "conformances": [ + { + "kind": "Conformance", + "name": "Equatable", + "printedName": "Equatable", + "usr": "s:SQ", + "mangledName": "$sSQ" + }, + { + "kind": "Conformance", + "name": "Hashable", + "printedName": "Hashable", + "usr": "s:SH", + "mangledName": "$sSH" + } + ] + }, + { + "kind": "TypeDecl", + "name": "SBUScrollPosition", + "printedName": "SBUScrollPosition", + "children": [ + { + "kind": "Var", + "name": "bottom", + "printedName": "bottom", "children": [ { "kind": "TypeFunc", "name": "Function", - "printedName": "(SendbirdUIKit.SBUTypingIndicatorType.Type) -> SendbirdUIKit.SBUTypingIndicatorType", + "printedName": "(SendbirdUIKit.SBUScrollPosition.Type) -> SendbirdUIKit.SBUScrollPosition", "children": [ { "kind": "TypeNominal", - "name": "SBUTypingIndicatorType", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" }, { "kind": "TypeNominal", "name": "Metatype", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType.Type", + "printedName": "SendbirdUIKit.SBUScrollPosition.Type", "children": [ { "kind": "TypeNominal", - "name": "SBUTypingIndicatorType", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" } ] } @@ -163769,12 +164983,83 @@ } ], "declKind": "EnumElement", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO6bubbleyA2CmF", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO6bubbleyA2CmF", - "moduleName": "SendbirdUIKit", - "declAttributes": [ - "RawDocComment" - ] + "usr": "s:13SendbirdUIKit17SBUScrollPositionO6bottomyA2CmF", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO6bottomyA2CmF", + "moduleName": "SendbirdUIKit" + }, + { + "kind": "Var", + "name": "middle", + "printedName": "middle", + "children": [ + { + "kind": "TypeFunc", + "name": "Function", + "printedName": "(SendbirdUIKit.SBUScrollPosition.Type) -> SendbirdUIKit.SBUScrollPosition", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Metatype", + "printedName": "SendbirdUIKit.SBUScrollPosition.Type", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ] + } + ] + } + ], + "declKind": "EnumElement", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO6middleyA2CmF", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO6middleyA2CmF", + "moduleName": "SendbirdUIKit" + }, + { + "kind": "Var", + "name": "top", + "printedName": "top", + "children": [ + { + "kind": "TypeFunc", + "name": "Function", + "printedName": "(SendbirdUIKit.SBUScrollPosition.Type) -> SendbirdUIKit.SBUScrollPosition", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Metatype", + "printedName": "SendbirdUIKit.SBUScrollPosition.Type", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + } + ] + } + ] + } + ], + "declKind": "EnumElement", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO3topyA2CmF", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO3topyA2CmF", + "moduleName": "SendbirdUIKit" }, { "kind": "Function", @@ -163789,20 +165074,20 @@ }, { "kind": "TypeNominal", - "name": "SBUTypingIndicatorType", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" }, { "kind": "TypeNominal", - "name": "SBUTypingIndicatorType", - "printedName": "SendbirdUIKit.SBUTypingIndicatorType", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO" + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" } ], "declKind": "Func", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO2eeoiySbAC_ACtFZ", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO2eeoiySbAC_ACtFZ", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO2eeoiySbAC_ACtFZ", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO2eeoiySbAC_ACtFZ", "moduleName": "SendbirdUIKit", "static": true, "implicit": true, @@ -163821,8 +165106,8 @@ } ], "declKind": "Var", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivp", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivp", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO9hashValueSivp", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO9hashValueSivp", "moduleName": "SendbirdUIKit", "implicit": true, "accessors": [ @@ -163839,8 +165124,8 @@ } ], "declKind": "Accessor", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivg", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO9hashValueSivg", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO9hashValueSivg", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO9hashValueSivg", "moduleName": "SendbirdUIKit", "implicit": true, "accessorKind": "get" @@ -163866,16 +165151,16 @@ } ], "declKind": "Func", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO4hash4intoys6HasherVz_tF", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO4hash4intoys6HasherVz_tF", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO4hash4intoys6HasherVz_tF", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO4hash4intoys6HasherVz_tF", "moduleName": "SendbirdUIKit", "implicit": true, "funcSelfKind": "NonMutating" } ], "declKind": "Enum", - "usr": "s:13SendbirdUIKit22SBUTypingIndicatorTypeO", - "mangledName": "$s13SendbirdUIKit22SBUTypingIndicatorTypeO", + "usr": "s:13SendbirdUIKit17SBUScrollPositionO", + "mangledName": "$s13SendbirdUIKit17SBUScrollPositionO", "moduleName": "SendbirdUIKit", "declAttributes": [ "AccessControl", @@ -200947,7 +202232,7 @@ { "kind": "Function", "name": "scrollToMessage", - "printedName": "scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:)", + "printedName": "scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:position:needToSearch:)", "children": [ { "kind": "TypeNominal", @@ -200967,6 +202252,20 @@ "hasDefaultArg": true, "usr": "s:Sb" }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "hasDefaultArg": true, + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, { "kind": "TypeNominal", "name": "Bool", @@ -200976,14 +202275,69 @@ } ], "declKind": "Func", - "usr": "c:@M@SendbirdUIKit@objc(cs)SBUBaseChannelViewController(im)scrollToMessageWithId:enablesScrollAnimation:enablesMessageAnimation:", - "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage2id22enablesScrollAnimation0kiM0ys5Int64V_S2btF", + "usr": "s:13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage2id22enablesScrollAnimation0kiM08position04needH6Searchys5Int64V_S2bAA17SBUScrollPositionOSbtF", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage2id22enablesScrollAnimation0kiM08position04needH6Searchys5Int64V_S2bAA17SBUScrollPositionOSbtF", "moduleName": "SendbirdUIKit", "declAttributes": [ "Custom", "AccessControl", - "RawDocComment", - "ObjC" + "RawDocComment" + ], + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "scrollToMessage", + "printedName": "scrollToMessage(message:enablesScrollAnimation:enablesMessageAnimation:position:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "BaseMessage", + "printedName": "SendbirdChatSDK.BaseMessage", + "usr": "c:@M@SendbirdChatSDK@objc(cs)SBDBaseMessage" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "hasDefaultArg": true, + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage7message22enablesScrollAnimation0kiM08position04needH6Searchy0A7ChatSDK04BaseI0C_S2bAA17SBUScrollPositionOSbtF", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC15scrollToMessage7message22enablesScrollAnimation0kiM08position04needH6Searchy0A7ChatSDK04BaseI0C_S2bAA17SBUScrollPositionOSbtF", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "Custom", + "AccessControl", + "RawDocComment" ], "funcSelfKind": "NonMutating" }, @@ -202342,6 +203696,88 @@ ], "funcSelfKind": "NonMutating" }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didFailScrollToMessageId:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "Int64", + "printedName": "Swift.Int64", + "usr": "s:s5Int64V" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "c:@M@SendbirdUIKit@objc(cs)SBUBaseChannelViewController(im)baseChannelModule:didFailScrollToMessageId:needToSearch:", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC04baseD6Module_24didFailScrollToMessageId04needL6SearchyAA0cdH0C4ListC_s5Int64VSbtF", + "moduleName": "SendbirdUIKit", + "isOpen": true, + "declAttributes": [ + "Custom", + "AccessControl", + "ObjC" + ], + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didFailScrollToMessage:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "BaseMessage", + "printedName": "SendbirdChatSDK.BaseMessage", + "usr": "c:@M@SendbirdChatSDK@objc(cs)SBDBaseMessage" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "c:@M@SendbirdUIKit@objc(cs)SBUBaseChannelViewController(im)baseChannelModule:didFailScrollToMessage:needToSearch:", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC04baseD6Module_22didFailScrollToMessage04needL6SearchyAA0cdH0C4ListC_0A7ChatSDK04BaseM0CSbtF", + "moduleName": "SendbirdUIKit", + "isOpen": true, + "declAttributes": [ + "Custom", + "AccessControl", + "ObjC" + ], + "funcSelfKind": "NonMutating" + }, { "kind": "Function", "name": "baseChannelModule", @@ -202564,6 +204000,46 @@ ], "funcSelfKind": "NonMutating" }, + { + "kind": "Function", + "name": "baseChannelModule", + "printedName": "baseChannelModule(_:didSelectScrollToBottonWithOptions:animated:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "List", + "printedName": "SendbirdUIKit.SBUBaseChannelModule.List", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollOptions", + "printedName": "SendbirdUIKit.SBUScrollOptions", + "usr": "s:13SendbirdUIKit16SBUScrollOptionsV" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit28SBUBaseChannelViewControllerC04baseD6Module_34didSelectScrollToBottonWithOptions8animatedyAA0cdH0C4ListC_AA09SBUScrollO0VSbtF", + "mangledName": "$s13SendbirdUIKit28SBUBaseChannelViewControllerC04baseD6Module_34didSelectScrollToBottonWithOptions8animatedyAA0cdH0C4ListC_AA09SBUScrollO0VSbtF", + "moduleName": "SendbirdUIKit", + "isOpen": true, + "declAttributes": [ + "Custom", + "AccessControl" + ], + "funcSelfKind": "NonMutating" + }, { "kind": "Function", "name": "baseChannelModuleDidSelectRetry", @@ -259183,7 +260659,7 @@ { "kind": "Function", "name": "scrollToMessage", - "printedName": "scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:)", + "printedName": "scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:position:needToSearch:)", "children": [ { "kind": "TypeNominal", @@ -259204,6 +260680,20 @@ "hasDefaultArg": true, "usr": "s:Sb" }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "hasDefaultArg": true, + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, { "kind": "TypeNominal", "name": "Bool", @@ -259213,16 +260703,73 @@ } ], "declKind": "Func", - "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage2id22enablesScrollAnimation0kiM0Sbs5Int64V_S2btF", - "mangledName": "$s13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage2id22enablesScrollAnimation0kiM0Sbs5Int64V_S2btF", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage2id22enablesScrollAnimation0kiM08position04needH6SearchSbs5Int64V_S2bAA17SBUScrollPositionOSbtF", + "mangledName": "$s13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage2id22enablesScrollAnimation0kiM08position04needH6SearchSbs5Int64V_S2bAA17SBUScrollPositionOSbtF", "moduleName": "SendbirdUIKit", "declAttributes": [ - "Dynamic", "Custom", "AccessControl", "DiscardableResult", - "RawDocComment", - "ObjC" + "RawDocComment" + ], + "isFromExtension": true, + "funcSelfKind": "NonMutating" + }, + { + "kind": "Function", + "name": "scrollToMessage", + "printedName": "scrollToMessage(message:enablesScrollAnimation:enablesMessageAnimation:position:needToSearch:)", + "children": [ + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "BaseMessage", + "printedName": "SendbirdChatSDK.BaseMessage", + "usr": "c:@M@SendbirdChatSDK@objc(cs)SBDBaseMessage" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPosition", + "printedName": "SendbirdUIKit.SBUScrollPosition", + "hasDefaultArg": true, + "usr": "s:13SendbirdUIKit17SBUScrollPositionO" + }, + { + "kind": "TypeNominal", + "name": "Bool", + "printedName": "Swift.Bool", + "hasDefaultArg": true, + "usr": "s:Sb" + } + ], + "declKind": "Func", + "usr": "s:13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage7message22enablesScrollAnimation0kiM08position04needH6SearchSb0A7ChatSDK04BaseI0C_S2bAA17SBUScrollPositionOSbtF", + "mangledName": "$s13SendbirdUIKit20SBUBaseChannelModuleC4ListC15scrollToMessage7message22enablesScrollAnimation0kiM08position04needH6SearchSb0A7ChatSDK04BaseI0C_S2bAA17SBUScrollPositionOSbtF", + "moduleName": "SendbirdUIKit", + "declAttributes": [ + "Custom", + "AccessControl", + "DiscardableResult", + "RawDocComment" ], "isFromExtension": true, "funcSelfKind": "NonMutating" @@ -273129,6 +274676,107 @@ } ] }, + { + "kind": "Var", + "name": "scrollPostionConfiguration", + "printedName": "scrollPostionConfiguration", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPostionConfiguration", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC" + } + ], + "declKind": "Var", + "usr": "s:13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvpZ", + "mangledName": "$s13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvpZ", + "moduleName": "SendbirdUIKit", + "static": true, + "declAttributes": [ + "HasInitialValue", + "Final", + "HasStorage", + "AccessControl", + "RawDocComment" + ], + "hasStorage": true, + "accessors": [ + { + "kind": "Accessor", + "name": "Get", + "printedName": "Get()", + "children": [ + { + "kind": "TypeNominal", + "name": "SBUScrollPostionConfiguration", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvgZ", + "mangledName": "$s13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvgZ", + "moduleName": "SendbirdUIKit", + "static": true, + "implicit": true, + "declAttributes": [ + "Final" + ], + "accessorKind": "get" + }, + { + "kind": "Accessor", + "name": "Set", + "printedName": "Set()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + }, + { + "kind": "TypeNominal", + "name": "SBUScrollPostionConfiguration", + "printedName": "SendbirdUIKit.SBUScrollPostionConfiguration", + "usr": "s:13SendbirdUIKit29SBUScrollPostionConfigurationC" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvsZ", + "mangledName": "$s13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvsZ", + "moduleName": "SendbirdUIKit", + "static": true, + "implicit": true, + "declAttributes": [ + "Final" + ], + "accessorKind": "set" + }, + { + "kind": "Accessor", + "name": "Modify", + "printedName": "Modify()", + "children": [ + { + "kind": "TypeNominal", + "name": "Void", + "printedName": "()" + } + ], + "declKind": "Accessor", + "usr": "s:13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvMZ", + "mangledName": "$s13SendbirdUIKit10SBUGlobalsC26scrollPostionConfigurationAA09SBUScrolleF0CvMZ", + "moduleName": "SendbirdUIKit", + "static": true, + "implicit": true, + "declAttributes": [ + "Final" + ], + "accessorKind": "_modify" + } + ] + }, { "kind": "Var", "name": "ApplicationId", @@ -376157,150 +377805,178 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 14687, + "offset": 16264, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 14731, + "offset": 16308, "length": 1, "value": "5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 14762, + "offset": 16339, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "FloatLiteral", - "offset": 15162, + "offset": 16739, "length": 3, "value": "0.5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 15227, + "offset": 16804, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 15238, + "offset": 16815, "length": 1, "value": "5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "FloatLiteral", - "offset": 15280, + "offset": 16857, "length": 3, "value": "0.5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 15322, + "offset": 16899, "length": 1, "value": "5" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 15363, + "offset": 16940, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 15586, + "offset": 17163, "length": 1, "value": "2" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 15635, + "offset": 17212, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 16418, + "offset": 17995, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 16431, + "offset": 18008, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 16439, + "offset": 18016, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "IntegerLiteral", - "offset": 16450, + "offset": 18027, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 17736, + "offset": 19313, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 17776, + "offset": 19353, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 23626, + "offset": 25203, "length": 4, "value": "true" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 51958, + "offset": 53837, + "length": 5, + "value": "false" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", + "kind": "BooleanLiteral", + "offset": 57513, + "length": 5, + "value": "false" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", + "kind": "BooleanLiteral", + "offset": 57576, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 55194, + "offset": 57659, + "length": 4, + "value": "true" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", + "kind": "BooleanLiteral", + "offset": 59284, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 55257, + "offset": 59347, "length": 5, "value": "false" }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/SBUBaseChannelModule.List.swift", + "kind": "BooleanLiteral", + "offset": 59430, + "length": 4, + "value": "true" + }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Manager\/CacheManager\/SBUCacheManager.Template.swift", "kind": "StringLiteral", @@ -376371,6 +378047,20 @@ "length": 2, "value": "16" }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Model\/SBUScrollOptions.swift", + "kind": "IntegerLiteral", + "offset": 984, + "length": 1, + "value": "0" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Model\/SBUScrollOptions.swift", + "kind": "IntegerLiteral", + "offset": 996, + "length": 1, + "value": "0" + }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/MessageCell\/NotificationChannel\/SBUNotificationCell.swift", "kind": "IntegerLiteral", @@ -381435,21 +383125,21 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUGroupChannelViewController.swift", "kind": "IntegerLiteral", - "offset": 15058, + "offset": 15519, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUGroupChannelViewController.swift", "kind": "IntegerLiteral", - "offset": 15093, + "offset": 15554, "length": 1, "value": "0" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUGroupChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 28348, + "offset": 28809, "length": 5, "value": "false" }, @@ -382513,14 +384203,14 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/NotificationChannel\/Feed\/SBUFeedNotificationChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 8486, + "offset": 9067, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/NotificationChannel\/Feed\/SBUFeedNotificationChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 23710, + "offset": 24291, "length": 5, "value": "false" }, @@ -385250,28 +386940,56 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 17597, + "offset": 17772, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 17644, + "offset": 17819, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 22651, + "offset": 17902, + "length": 4, + "value": "true" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", + "kind": "BooleanLiteral", + "offset": 19161, + "length": 5, + "value": "false" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", + "kind": "BooleanLiteral", + "offset": 19208, + "length": 5, + "value": "false" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", + "kind": "BooleanLiteral", + "offset": 19291, + "length": 4, + "value": "true" + }, + { + "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", + "kind": "BooleanLiteral", + "offset": 24201, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/View\/Channel\/SBUBaseChannelViewController.swift", "kind": "BooleanLiteral", - "offset": 23974, + "offset": 25524, "length": 5, "value": "false" }, @@ -385600,14 +387318,14 @@ { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/NotificationChannel\/Chat\/SBUChatNotificationChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 8528, + "offset": 9109, "length": 5, "value": "false" }, { "filePath": "\/Users\/distiller\/project\/uikit-ios\/SendbirdUIKit\/Module\/Channel\/NotificationChannel\/Chat\/SBUChatNotificationChannelModule.List.swift", "kind": "BooleanLiteral", - "offset": 24862, + "offset": 25443, "length": 5, "value": "false" }, diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface index 193cf57e..538c3ce5 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface @@ -101,6 +101,7 @@ public protocol SBUBaseChannelModuleListDelegate : SendbirdUIKit.SBUCommonDelega func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapVoiceMessage fileMessage: SendbirdChatSDK.FileMessage, cell: UIKit.UITableViewCell, forRowAt indexPath: Foundation.IndexPath) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) func baseChannelModuleDidSelectRetry(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapRetryFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapDeleteFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @@ -112,6 +113,8 @@ public protocol SBUBaseChannelModuleListDelegate : SendbirdUIKit.SBUCommonDelega func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didReactToMessage message: SendbirdChatSDK.BaseMessage, withEmoji key: Swift.String, selected: Swift.Bool) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapMoreEmojisOnMessage message: SendbirdChatSDK.BaseMessage) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didDismissMenuForCell cell: UIKit.UITableViewCell) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Swift.Int64, needToSearch: Swift.Bool) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessage message: SendbirdChatSDK.BaseMessage, needToSearch: Swift.Bool) } public protocol SBUBaseChannelModuleListDataSource : AnyObject { func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, channelForTableView tableView: UIKit.UITableView) -> SendbirdChatSDK.BaseChannel? @@ -195,8 +198,10 @@ extension SendbirdUIKit.SBUBaseChannelModule.List { @objc @_Concurrency.MainActor(unsafe) dynamic public var isScrollNearByBottom: Swift.Bool { @objc get } - @objc @discardableResult - @_Concurrency.MainActor(unsafe) dynamic public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false) -> Swift.Bool + @discardableResult + @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) -> Swift.Bool + @discardableResult + @_Concurrency.MainActor(unsafe) public func scrollToMessage(message: SendbirdChatSDK.BaseMessage, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) -> Swift.Bool @objc @_Concurrency.MainActor(unsafe) dynamic public func checkSameDayAsNextMessage(currentIndex: Swift.Int, fullMessageList: [SendbirdChatSDK.BaseMessage]) -> Swift.Bool @objc @_Concurrency.MainActor(unsafe) dynamic public func checkSameDayAsPrevMessage(currentIndex: Swift.Int, fullMessageList: [SendbirdChatSDK.BaseMessage]) -> Swift.Bool } @@ -212,6 +217,19 @@ extension SendbirdUIKit.SBUConfig { required public init(from decoder: Swift.Decoder) throws } } +@_hasMissingDesignatedInitializers public class SBUScrollPostionConfiguration { + public var groupChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + public var openChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + public var feedChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + @_hasMissingDesignatedInitializers public class BaseChannel { + public var scrollToBottom: SendbirdUIKit.SBUScrollPosition + public var scrollToNewMessage: SendbirdUIKit.SBUScrollPosition + public var scrollToInitial: SendbirdUIKit.SBUScrollPosition + public var scrollToInitialWithStartingPoint: SendbirdUIKit.SBUScrollPosition + @objc deinit + } + @objc deinit +} @objc @_inheritsConvenienceInitializers @IBDesignable @_Concurrency.MainActor(unsafe) open class SBUBaseMessageCell : SendbirdUIKit.SBUTableViewCell, SendbirdUIKit.SBUMessageCellProtocol { @objc @_Concurrency.MainActor(unsafe) public var message: SendbirdChatSDK.BaseMessage? @objc @_Concurrency.MainActor(unsafe) public var position: SendbirdUIKit.MessagePosition @@ -274,6 +292,12 @@ public protocol SBUCommonDelegate : AnyObject { @_Concurrency.MainActor(unsafe) @objc required dynamic public init?(coder: Foundation.NSCoder) @objc deinit } +public struct SBUScrollOptions { + public let count: Swift.Int? + public let position: SendbirdUIKit.SBUScrollPosition + public let isInverted: Swift.Bool + public init(count: Swift.Int? = nil, position: SendbirdUIKit.SBUScrollPosition, isInverted: Swift.Bool) +} @objc @_inheritsConvenienceInitializers @_Concurrency.MainActor(unsafe) open class SBUParentMessageInfoReactionView : SendbirdUIKit.SBUMessageReactionView { @_Concurrency.MainActor(unsafe) @objc override dynamic open func setupStyles() @_Concurrency.MainActor(unsafe) override open func configure(maxWidth: CoreFoundation.CGFloat, useReaction: Swift.Bool, reactions: [SendbirdChatSDK.Reaction]) @@ -3159,6 +3183,7 @@ public protocol SBUMessageCellProtocol { @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, didUpdate answer: SendbirdUIKit.SBUForm.Answer, messageCell: SendbirdUIKit.SBUBaseMessageCell) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapVoiceMessage fileMessage: SendbirdChatSDK.FileMessage, cell: UIKit.UITableViewCell, forRowAt indexPath: Foundation.IndexPath) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + @_Concurrency.MainActor(unsafe) override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, highlightInfoInTableView tableView: UIKit.UITableView) -> SendbirdUIKit.SBUHighlightMessageInfo? @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, answersFor messageId: Swift.Int64?) -> [SendbirdUIKit.SBUForm.Answer]? @@ -5181,6 +5206,16 @@ public enum SBUTypingIndicatorType { get } } +public enum SBUScrollPosition { + case bottom + case middle + case top + public static func == (a: SendbirdUIKit.SBUScrollPosition, b: SendbirdUIKit.SBUScrollPosition) -> Swift.Bool + public func hash(into hasher: inout Swift.Hasher) + public var hashValue: Swift.Int { + get + } +} public protocol SBUParentMessageInfoViewDelegate : AnyObject { func parentMessageInfoViewBoundsWillChanged(_ view: SendbirdUIKit.SBUParentMessageInfoView) func parentMessageInfoViewBoundsDidChanged(_ view: SendbirdUIKit.SBUParentMessageInfoView) @@ -6708,7 +6743,8 @@ extension SendbirdUIKit.SBUMessageSearchViewController { @objc @_Concurrency.MainActor(unsafe) open func showChannelSettings() @_Concurrency.MainActor(unsafe) open func showMessageThread(channelURL: Swift.String, parentMessageId: Swift.Int64, parentMessageCreatedAt: Swift.Int64? = 0, startingPoint: Swift.Int64? = 0) @objc @_Concurrency.MainActor(unsafe) open func showEmojiListModal(message: SendbirdChatSDK.BaseMessage) - @objc @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false) + @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) + @_Concurrency.MainActor(unsafe) public func scrollToMessage(message: SendbirdChatSDK.BaseMessage, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) @objc @_Concurrency.MainActor(unsafe) public func updateNewMessageInfo(hidden: Swift.Bool) @_Concurrency.MainActor(unsafe) open func openFile(_ fileData: SendbirdUIKit.SBUFileData) @objc @_Concurrency.MainActor(unsafe) open func openFile(fileMessage: SendbirdChatSDK.FileMessage) @@ -6745,12 +6781,15 @@ extension SendbirdUIKit.SBUMessageSearchViewController { @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapReplyMessage message: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didDismissMenuForCell cell: UIKit.UITableViewCell) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapMoreEmojisOnMessage message: SendbirdChatSDK.BaseMessage) + @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Swift.Int64, needToSearch: Swift.Bool) + @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessage message: SendbirdChatSDK.BaseMessage, needToSearch: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didReactToMessage message: SendbirdChatSDK.BaseMessage, withEmoji key: Swift.String, selected: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapRetryFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapDeleteFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapUserProfile user: SendbirdUIKit.SBUUser) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModuleDidSelectRetry(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, channelForTableView tableView: UIKit.UITableView) -> SendbirdChatSDK.BaseChannel? @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, sentMessagesInTableView tableView: UIKit.UITableView) -> [SendbirdChatSDK.BaseMessage] @@ -8704,6 +8743,7 @@ public class SBUMention : Swift.Equatable { public static var isAVPlayerAlwaysEnabled: Swift.Bool public static var isTintColorEnabledForCustomizedIcon: Swift.Bool public static var isCustomizedIconResizable: Swift.Bool + public static var scrollPostionConfiguration: SendbirdUIKit.SBUScrollPostionConfiguration @objc deinit } public protocol SBUOpenChannelListModuleListDelegate : SendbirdUIKit.SBUBaseChannelListModuleListDelegate { @@ -11208,6 +11248,8 @@ extension SendbirdUIKit.LogType : Swift.Hashable {} extension SendbirdUIKit.LogType : Swift.RawRepresentable {} extension SendbirdUIKit.SBUTypingIndicatorType : Swift.Equatable {} extension SendbirdUIKit.SBUTypingIndicatorType : Swift.Hashable {} +extension SendbirdUIKit.SBUScrollPosition : Swift.Equatable {} +extension SendbirdUIKit.SBUScrollPosition : Swift.Hashable {} @available(*, deprecated, renamed: "UserListType") extension SendbirdUIKit.MemberListType : Swift.Equatable {} @available(*, deprecated, renamed: "UserListType") diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftdoc b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftdoc index 27c37c57..6187ec5b 100644 Binary files a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftdoc and b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftdoc differ diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftinterface b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftinterface index 193cf57e..538c3ce5 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftinterface @@ -101,6 +101,7 @@ public protocol SBUBaseChannelModuleListDelegate : SendbirdUIKit.SBUCommonDelega func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapVoiceMessage fileMessage: SendbirdChatSDK.FileMessage, cell: UIKit.UITableViewCell, forRowAt indexPath: Foundation.IndexPath) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) func baseChannelModuleDidSelectRetry(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapRetryFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapDeleteFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @@ -112,6 +113,8 @@ public protocol SBUBaseChannelModuleListDelegate : SendbirdUIKit.SBUCommonDelega func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didReactToMessage message: SendbirdChatSDK.BaseMessage, withEmoji key: Swift.String, selected: Swift.Bool) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapMoreEmojisOnMessage message: SendbirdChatSDK.BaseMessage) func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didDismissMenuForCell cell: UIKit.UITableViewCell) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Swift.Int64, needToSearch: Swift.Bool) + func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessage message: SendbirdChatSDK.BaseMessage, needToSearch: Swift.Bool) } public protocol SBUBaseChannelModuleListDataSource : AnyObject { func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, channelForTableView tableView: UIKit.UITableView) -> SendbirdChatSDK.BaseChannel? @@ -195,8 +198,10 @@ extension SendbirdUIKit.SBUBaseChannelModule.List { @objc @_Concurrency.MainActor(unsafe) dynamic public var isScrollNearByBottom: Swift.Bool { @objc get } - @objc @discardableResult - @_Concurrency.MainActor(unsafe) dynamic public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false) -> Swift.Bool + @discardableResult + @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) -> Swift.Bool + @discardableResult + @_Concurrency.MainActor(unsafe) public func scrollToMessage(message: SendbirdChatSDK.BaseMessage, enablesScrollAnimation scrollAnimated: Swift.Bool = false, enablesMessageAnimation messageAnimated: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) -> Swift.Bool @objc @_Concurrency.MainActor(unsafe) dynamic public func checkSameDayAsNextMessage(currentIndex: Swift.Int, fullMessageList: [SendbirdChatSDK.BaseMessage]) -> Swift.Bool @objc @_Concurrency.MainActor(unsafe) dynamic public func checkSameDayAsPrevMessage(currentIndex: Swift.Int, fullMessageList: [SendbirdChatSDK.BaseMessage]) -> Swift.Bool } @@ -212,6 +217,19 @@ extension SendbirdUIKit.SBUConfig { required public init(from decoder: Swift.Decoder) throws } } +@_hasMissingDesignatedInitializers public class SBUScrollPostionConfiguration { + public var groupChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + public var openChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + public var feedChannel: SendbirdUIKit.SBUScrollPostionConfiguration.BaseChannel + @_hasMissingDesignatedInitializers public class BaseChannel { + public var scrollToBottom: SendbirdUIKit.SBUScrollPosition + public var scrollToNewMessage: SendbirdUIKit.SBUScrollPosition + public var scrollToInitial: SendbirdUIKit.SBUScrollPosition + public var scrollToInitialWithStartingPoint: SendbirdUIKit.SBUScrollPosition + @objc deinit + } + @objc deinit +} @objc @_inheritsConvenienceInitializers @IBDesignable @_Concurrency.MainActor(unsafe) open class SBUBaseMessageCell : SendbirdUIKit.SBUTableViewCell, SendbirdUIKit.SBUMessageCellProtocol { @objc @_Concurrency.MainActor(unsafe) public var message: SendbirdChatSDK.BaseMessage? @objc @_Concurrency.MainActor(unsafe) public var position: SendbirdUIKit.MessagePosition @@ -274,6 +292,12 @@ public protocol SBUCommonDelegate : AnyObject { @_Concurrency.MainActor(unsafe) @objc required dynamic public init?(coder: Foundation.NSCoder) @objc deinit } +public struct SBUScrollOptions { + public let count: Swift.Int? + public let position: SendbirdUIKit.SBUScrollPosition + public let isInverted: Swift.Bool + public init(count: Swift.Int? = nil, position: SendbirdUIKit.SBUScrollPosition, isInverted: Swift.Bool) +} @objc @_inheritsConvenienceInitializers @_Concurrency.MainActor(unsafe) open class SBUParentMessageInfoReactionView : SendbirdUIKit.SBUMessageReactionView { @_Concurrency.MainActor(unsafe) @objc override dynamic open func setupStyles() @_Concurrency.MainActor(unsafe) override open func configure(maxWidth: CoreFoundation.CGFloat, useReaction: Swift.Bool, reactions: [SendbirdChatSDK.Reaction]) @@ -3159,6 +3183,7 @@ public protocol SBUMessageCellProtocol { @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, didUpdate answer: SendbirdUIKit.SBUForm.Answer, messageCell: SendbirdUIKit.SBUBaseMessageCell) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapVoiceMessage fileMessage: SendbirdChatSDK.FileMessage, cell: UIKit.UITableViewCell, forRowAt indexPath: Foundation.IndexPath) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + @_Concurrency.MainActor(unsafe) override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) @_Concurrency.MainActor(unsafe) @objc override open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, highlightInfoInTableView tableView: UIKit.UITableView) -> SendbirdUIKit.SBUHighlightMessageInfo? @_Concurrency.MainActor(unsafe) open func groupChannelModule(_ listComponent: SendbirdUIKit.SBUGroupChannelModule.List, answersFor messageId: Swift.Int64?) -> [SendbirdUIKit.SBUForm.Answer]? @@ -5181,6 +5206,16 @@ public enum SBUTypingIndicatorType { get } } +public enum SBUScrollPosition { + case bottom + case middle + case top + public static func == (a: SendbirdUIKit.SBUScrollPosition, b: SendbirdUIKit.SBUScrollPosition) -> Swift.Bool + public func hash(into hasher: inout Swift.Hasher) + public var hashValue: Swift.Int { + get + } +} public protocol SBUParentMessageInfoViewDelegate : AnyObject { func parentMessageInfoViewBoundsWillChanged(_ view: SendbirdUIKit.SBUParentMessageInfoView) func parentMessageInfoViewBoundsDidChanged(_ view: SendbirdUIKit.SBUParentMessageInfoView) @@ -6708,7 +6743,8 @@ extension SendbirdUIKit.SBUMessageSearchViewController { @objc @_Concurrency.MainActor(unsafe) open func showChannelSettings() @_Concurrency.MainActor(unsafe) open func showMessageThread(channelURL: Swift.String, parentMessageId: Swift.Int64, parentMessageCreatedAt: Swift.Int64? = 0, startingPoint: Swift.Int64? = 0) @objc @_Concurrency.MainActor(unsafe) open func showEmojiListModal(message: SendbirdChatSDK.BaseMessage) - @objc @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false) + @_Concurrency.MainActor(unsafe) public func scrollToMessage(id messageId: Swift.Int64, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) + @_Concurrency.MainActor(unsafe) public func scrollToMessage(message: SendbirdChatSDK.BaseMessage, enablesScrollAnimation: Swift.Bool = false, enablesMessageAnimation: Swift.Bool = false, position: SendbirdUIKit.SBUScrollPosition = .middle, needToSearch: Swift.Bool = true) @objc @_Concurrency.MainActor(unsafe) public func updateNewMessageInfo(hidden: Swift.Bool) @_Concurrency.MainActor(unsafe) open func openFile(_ fileData: SendbirdUIKit.SBUFileData) @objc @_Concurrency.MainActor(unsafe) open func openFile(fileMessage: SendbirdChatSDK.FileMessage) @@ -6745,12 +6781,15 @@ extension SendbirdUIKit.SBUMessageSearchViewController { @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapReplyMessage message: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didDismissMenuForCell cell: UIKit.UITableViewCell) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapMoreEmojisOnMessage message: SendbirdChatSDK.BaseMessage) + @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Swift.Int64, needToSearch: Swift.Bool) + @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didFailScrollToMessage message: SendbirdChatSDK.BaseMessage, needToSearch: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didReactToMessage message: SendbirdChatSDK.BaseMessage, withEmoji key: Swift.String, selected: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapRetryFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapDeleteFailedMessage failedMessage: SendbirdChatSDK.BaseMessage) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didTapUserProfile user: SendbirdUIKit.SBUUser) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didScroll scrollView: UIKit.UIScrollView) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModuleDidTapScrollToButton(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, animated: Swift.Bool) + @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, didSelectScrollToBottonWithOptions options: SendbirdUIKit.SBUScrollOptions, animated: Swift.Bool) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModuleDidSelectRetry(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List) @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, channelForTableView tableView: UIKit.UITableView) -> SendbirdChatSDK.BaseChannel? @objc @_Concurrency.MainActor(unsafe) open func baseChannelModule(_ listComponent: SendbirdUIKit.SBUBaseChannelModule.List, sentMessagesInTableView tableView: UIKit.UITableView) -> [SendbirdChatSDK.BaseMessage] @@ -8704,6 +8743,7 @@ public class SBUMention : Swift.Equatable { public static var isAVPlayerAlwaysEnabled: Swift.Bool public static var isTintColorEnabledForCustomizedIcon: Swift.Bool public static var isCustomizedIconResizable: Swift.Bool + public static var scrollPostionConfiguration: SendbirdUIKit.SBUScrollPostionConfiguration @objc deinit } public protocol SBUOpenChannelListModuleListDelegate : SendbirdUIKit.SBUBaseChannelListModuleListDelegate { @@ -11208,6 +11248,8 @@ extension SendbirdUIKit.LogType : Swift.Hashable {} extension SendbirdUIKit.LogType : Swift.RawRepresentable {} extension SendbirdUIKit.SBUTypingIndicatorType : Swift.Equatable {} extension SendbirdUIKit.SBUTypingIndicatorType : Swift.Hashable {} +extension SendbirdUIKit.SBUScrollPosition : Swift.Equatable {} +extension SendbirdUIKit.SBUScrollPosition : Swift.Hashable {} @available(*, deprecated, renamed: "UserListType") extension SendbirdUIKit.MemberListType : Swift.Equatable {} @available(*, deprecated, renamed: "UserListType") diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/SendbirdUIKit b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/SendbirdUIKit index edb2e6a5..e7fc31b8 100755 Binary files a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/SendbirdUIKit and b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/SendbirdUIKit differ diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/_CodeSignature/CodeResources b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/_CodeSignature/CodeResources index 89a4d0a6..809e7706 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/_CodeSignature/CodeResources +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/SendbirdUIKit.framework/_CodeSignature/CodeResources @@ -10,7 +10,7 @@ Base.xcconfig - t+HesKwxjlY7sxjoUW4GQ2K76cM= + 7c9ZaUBLR86aT+6VpJCmBVOTJnE= Debug.xcconfig @@ -18,51 +18,51 @@ Headers/SendbirdUIKit-Swift.h - 7exMGqwTzHmF352RTd9lsX1R6HA= + mbCMgqdc042idqsycCQzOA/rJwY= Info.plist - 0OTPhsbHwGWE8BJ7WSMrStqgtEc= + 80WuU75Xb8ROgC7AFzGult7EQqI= Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.abi.json - 6Uc4PLv0NQQXWGUlyA0399fcpfc= + ZJOuabkO7tvJjJnopbOp3bjuPrg= Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface - eeV5roX3bjW3gxaaXaLC430IuQQ= + DogtMbAo3G2DRnoEwEMtJHYEGTs= Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftdoc - bUag0ITbFnoPYWV1luYf2zQuzpY= + PYCQipug86EK4MhuaMu/lryKqgI= Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftinterface - eeV5roX3bjW3gxaaXaLC430IuQQ= + DogtMbAo3G2DRnoEwEMtJHYEGTs= Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftmodule - st5ifvNZ4V1lfMD890Y5MYNrhyw= + S70bWRcfljKMlUSOL39vWwwD5A0= Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.abi.json - 6Uc4PLv0NQQXWGUlyA0399fcpfc= + ZJOuabkO7tvJjJnopbOp3bjuPrg= Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface - hsdqDczACFHOk8arE812QP0XmgQ= + w4SBD6yC0lXrf6DZA8RVc/a/tQI= Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftdoc - vcHzz6aXKB6i754cFajBI8RzMfE= + uCnyumPfQEs95MhvWmwAzjlTryM= Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftinterface - hsdqDczACFHOk8arE812QP0XmgQ= + w4SBD6yC0lXrf6DZA8RVc/a/tQI= Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftmodule - dt19h2JRq0NhbEl3lXZHi8WJdT0= + nv9J6iqUcvelgVM7RTCgnkQYnjw= Modules/module.modulemap @@ -98,7 +98,7 @@ hash2 - HtT6v5TeIMHSoOhCzj9q16SAC0DSojdIRs2XwiMWzMg= + L/kDvNWfgsXLyRIgoGrChu1X0Z95YlKxEr9SHayUFIE= Debug.xcconfig @@ -112,77 +112,77 @@ hash2 - bYIyOb0DCmOXRK4Bh6qrJaOvn3zNUQI4OnqBhTIFzQg= + 2t+7eJd+IbC3Klj3vIy6yNwadsHUQuHwrOqb+yZdMSs= Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.abi.json hash2 - a3TDsz2DLJtDySsxzcdwAP7C68cD383alSfT1uavU5o= + o4e3ftmf4oG6vBta0cNSfB13sMVdIj4kKBaBd06P0QI= Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface hash2 - uEF5I4S6VFaC0wDXVD65FkS8qLF+99sc+q7hPNGXm68= + K4sf8ta5gWxnTn+Tm+3tyAmG2pMFSi6rY7+38SGQgW0= Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftdoc hash2 - Jlz4lOQeESnOSkMDRC+FeNnFiz6gX/NlAPAJjmE8bwI= + cLvzEjNXFhrj3fW1ICAbYuMnlehTMqv9Mj+UwssHjs8= Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftinterface hash2 - uEF5I4S6VFaC0wDXVD65FkS8qLF+99sc+q7hPNGXm68= + K4sf8ta5gWxnTn+Tm+3tyAmG2pMFSi6rY7+38SGQgW0= Modules/SendbirdUIKit.swiftmodule/arm64-apple-ios-simulator.swiftmodule hash2 - u1cZpAAWs50GpmmawSbF3bkQkLHIyp5FDBTb5qn3dfY= + uGGTchUCQn3DGlWVTWhGPNkBQBylHCkJ/9DVOEpmyds= Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.abi.json hash2 - a3TDsz2DLJtDySsxzcdwAP7C68cD383alSfT1uavU5o= + o4e3ftmf4oG6vBta0cNSfB13sMVdIj4kKBaBd06P0QI= Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface hash2 - cjsNV6lAL3XdJvsESiw/FBg5OdkEU1fTqOLshP1tslg= + sFzvf34/GvhyWkDFT4kAzzWWU29HgL/l6eRDMso4sNs= Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftdoc hash2 - FGhrUeEu0M7Q7XLdBGn8awHasZOdKDA5WEnFIghzMHU= + YzE+uXnuo99jn1B4WIHLBmNskr91GPOHXMRZ7j+jiiI= Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftinterface hash2 - cjsNV6lAL3XdJvsESiw/FBg5OdkEU1fTqOLshP1tslg= + sFzvf34/GvhyWkDFT4kAzzWWU29HgL/l6eRDMso4sNs= Modules/SendbirdUIKit.swiftmodule/x86_64-apple-ios-simulator.swiftmodule hash2 - WBxNpXTn/B/YBnDkB2axU6vwRjGjo8gV6OO+qVOZx0M= + Hl0KZ5DX+2jRsG9cZPZF+zjyJVIPAWw95fYpIKaAN3M= Modules/module.modulemap diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Info.plist b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Info.plist index 3028f976..0d8d4331 100644 --- a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Info.plist +++ b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Info.plist @@ -13,7 +13,7 @@ CFBundleSignature ???? CFBundleShortVersionString - 3.12.0 + 3.13.0 CFBundleVersion 1 diff --git a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Resources/DWARF/SendbirdUIKit b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Resources/DWARF/SendbirdUIKit index 4b6392e4..0c99870f 100644 Binary files a/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Resources/DWARF/SendbirdUIKit and b/Framework/SendbirdUIKit.xcframework/ios-arm64_x86_64-simulator/dSYMs/SendbirdUIKit.framework.dSYM/Contents/Resources/DWARF/SendbirdUIKit differ diff --git a/Sample/QuickStart.xcodeproj/project.pbxproj b/Sample/QuickStart.xcodeproj/project.pbxproj index 7135fa31..bcb213de 100644 --- a/Sample/QuickStart.xcodeproj/project.pbxproj +++ b/Sample/QuickStart.xcodeproj/project.pbxproj @@ -3,105 +3,146 @@ archiveVersion = 1; classes = { }; - objectVersion = 52; + objectVersion = 54; objects = { /* Begin PBXBuildFile section */ - 0141EE1EC1D8AA4E735465B1 /* SBUUserListModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = EB141E7614FFAE4105A5556B /* SBUUserListModule.swift */; }; - 038A9042B005122E8CE46F89 /* SBUView.Unavaliable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4B3AA80DA43D9234ACEF6CC /* SBUView.Unavaliable.swift */; }; - 05F458061A71382C4A3CE165 /* SBUFeedNotificationCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D693BE951DE318F82F66966 /* SBUFeedNotificationCell.swift */; }; - 0882CE77886C90D46A56EE4F /* SBURegisterOperatorModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = A64F7A1E3A39A65A300C1D73 /* SBURegisterOperatorModule.List.swift */; }; - 092458461544B46017D5B3D5 /* SBUAlertView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5812E468BF5387897D079CAD /* SBUAlertView.swift */; }; - 096D23D8168205DA952D5425 /* SBUMultipleFilesMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8CB848D66D4117A6BFFFD5E /* SBUMultipleFilesMessageCellParams.swift */; }; - 0B1C9ADC0514277EFA2429A1 /* SBUOpenChannelSettingsModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB5D71D53BEDE638B94809E7 /* SBUOpenChannelSettingsModule.swift */; }; - 0C32577E6DFEDED6999DAE34 /* SBUTheme+Type.swift in Sources */ = {isa = PBXBuildFile; fileRef = F41A61AB3CB6C94843EABCA7 /* SBUTheme+Type.swift */; }; - 0C904F9438F44AE83A2268CC /* SBUBaseChannelListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF903E4A4E1F698BF871B285 /* SBUBaseChannelListViewController.swift */; }; - 0D6434403E13EE5168E33E76 /* SBUOpenChannelModule.Input.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E12C5CC90BAE642EF4A3839 /* SBUOpenChannelModule.Input.swift */; }; - 0D9479E7AD1D322C25090069 /* SBUGroupChannelViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 361858E6AF6714A5C7D5652D /* SBUGroupChannelViewController.Deprecated.swift */; }; - 0E5FAA8D60AA7B836D348128 /* SBUExtendedMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA26745EFD07034A5B770365 /* SBUExtendedMessage.swift */; }; - 0E61618FCBFC6CB16DE83780 /* SBUPaddingLabel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DFFA9C0C18E0D11BFF088E33 /* SBUPaddingLabel.swift */; }; - 0F525DA26C8C2A13DDA102BE /* SBUGroupChannelListModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6EC6F9EB11ADDDB3546DAE8 /* SBUGroupChannelListModule.List.swift */; }; - 1075F2D696E9D85DF87F2485 /* SBUQuotedBaseMessageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0248A62B121D5C8BB779C45 /* SBUQuotedBaseMessageView.swift */; }; - 11A61F948996A1B269EF9ACE /* SBUModerationCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = C79BFD010A2187F68AC71D1C /* SBUModerationCell.swift */; }; - 12534B2341F3CB15A455C8E7 /* SBUContentBaseMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1A8BFF1E5950193EBFF3429 /* SBUContentBaseMessageCell.swift */; }; - 131BF1B8B19186C718BA30A6 /* SBUMessageSearchViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 451B29849E7603F4F21C2319 /* SBUMessageSearchViewController.swift */; }; - 1480919994CCAAB78EF481CE /* SBUUnderLineTextField.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9E292B4148A2541F6A4E7B1 /* SBUUnderLineTextField.swift */; }; - 14A7974210520D3D54D080DC /* SBUBaseChannelViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78681C8D5C6D98166A705445 /* SBUBaseChannelViewController.Deprecated.swift */; }; - 158B9FDC474EEE0BCB0A51EA /* SBUMessageSearchViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50F6D11A6B4CBA1DFD1102DB /* SBUMessageSearchViewModel.swift */; }; - 1804AF1363599AC6C8FBC73C /* SBUBaseChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 120F917F075AA125F1D8F296 /* SBUBaseChannelViewModel.swift */; }; - 19DF828A0962CF4F1DF292C2 /* SBUGlobalCustomParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8817BD5A99D66B4974A7DBB /* SBUGlobalCustomParams.swift */; }; - 1A73031654C74DE8091E6D2A /* SBUAnimation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44D0E55FD21850FA17AFD504 /* SBUAnimation.swift */; }; - 1AAAE1D996496AD7579D475D /* SBUOpenChannelViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 670C989FDB28B344823A7B70 /* SBUOpenChannelViewController.Deprecated.swift */; }; - 1BAFBEF239F30DA038A0C227 /* SBUUserCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = E47F0637CABD3B2832E657C6 /* SBUUserCell.swift */; }; - 1C27FC63FD4268EB143BB335 /* SBUGroupChannelSettingCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6104680EDBA19D05B19A3E15 /* SBUGroupChannelSettingCell.swift */; }; - 1C9FF660170D52EF4597F5E9 /* SBUMessageInputMode.swift in Sources */ = {isa = PBXBuildFile; fileRef = A09B750C2DB2602C8AB8A7C2 /* SBUMessageInputMode.swift */; }; - 1D48AB053364CB4FD10FACA1 /* BlockingOperation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8EDE5C8C193B7FADF990872B /* BlockingOperation.swift */; }; - 1F5D1C5609A49E9B9A837A0E /* UIStackView.SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87982BEE5F42C384DE2E37D1 /* UIStackView.SBUIKit.swift */; }; - 1F7E0A756F21D4B84A0B2C88 /* SBUChatNotificationChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC1E8BEE4CF8796421B2BBA6 /* SBUChatNotificationChannelModule.swift */; }; - 1FD6DC653399375A3947A1A8 /* SBUCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51709567943DAB8C50D3264C /* SBUCollectionViewCell.swift */; }; - 20038F327FF4BEBBF5755EBC /* SBUIconSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = B91378B69877698735D7E6EF /* SBUIconSet.swift */; }; - 20C9125BFD19043BB77224A2 /* SBUReplyConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBCBEDB37CED382793736705 /* SBUReplyConfiguration.swift */; }; - 211B7CB6F9946D31ACE5DA7A /* SBUUnknownMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ED22441EFFFDCB1F4FBBFE6 /* SBUUnknownMessageCellParams.swift */; }; - 21864FAF988EEB1CC6FA226A /* SBUNewMessageInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C350D231FEA2A3E7E57694D /* SBUNewMessageInfo.swift */; }; - 2257B1EDC8FFEFD2B80BB7F6 /* SBUEmojiListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDECD971E137033BAAB0C3D9 /* SBUEmojiListViewController.swift */; }; - 2264B75D06F1E42FCB891192 /* SBUModerationsModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D048F31B64D36BFE7445172 /* SBUModerationsModule.swift */; }; - 22C9253FF10AE0A46BA844A5 /* SBUThreadInfoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F0FAEE6EB611CC9C820982EA /* SBUThreadInfoView.swift */; }; - 24867E42A054C4CFC5F5B8BE /* UIColor+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7C9B6CF517F736AF92B4748 /* UIColor+SBUIKit.swift */; }; - 2509E2DC10AEBB3D9F4B1D32 /* SBUBaseMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBB372FD4425E4003ED702D1 /* SBUBaseMessageCellParams.swift */; }; - 25BB20BDDF2CA8E2DF9C709E /* SBUBaseChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE6A4367B48D7CCC83A95627 /* SBUBaseChannelModule.swift */; }; - 25E75E3C0DDF78EDD590CE0A /* SBUContentBaseMessageCell.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DD9DAEDDD5610833F128949 /* SBUContentBaseMessageCell.Deprecated.swift */; }; - 2758BB1F43A83A801214CC53 /* SBUFormView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEA63156B965D436054BB286 /* SBUFormView.swift */; }; - 275E3CA8725E02326F819881 /* SBUOpenChannelSettingsModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = B18231524A58DC92E01DACDF /* SBUOpenChannelSettingsModule.List.swift */; }; - 286090358497F3F344E360D4 /* SBUBaseChannelSettingsModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2A2565DC446FCC255BB3C57 /* SBUBaseChannelSettingsModule.List.swift */; }; - 29DBE4F59B616043A463161D /* SBUCategoryFilterCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6DA7CE8764EF08BEC1F407DC /* SBUCategoryFilterCell.swift */; }; - 2B3CBE693899A36B6E5B8C28 /* SBUEnums.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE27762C63CCA4E0B765A0AD /* SBUEnums.swift */; }; - 2D28694E9FBEAC618E87B365 /* SBUOpenChannelUnknownMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC95A834BD5D53718533C5C /* SBUOpenChannelUnknownMessageCell.swift */; }; - 2F140250B4C1355F441E55DE /* SBUOpenChannelCommonContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 15A1BF567A75F9C0A0BF6A27 /* SBUOpenChannelCommonContentView.swift */; }; - 2F53D6B171B1AC773070D643 /* SBUMessageThreadTitleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BB111DED5C17F8AA0475D82 /* SBUMessageThreadTitleView.swift */; }; - 2F7D36B89E98C047ED3ABB27 /* SBUGroupChannelSettingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4178C75282723C0CC9B98E9 /* SBUGroupChannelSettingsViewController.swift */; }; - 32DAA0D9BAAFDF99E7DD7B61 /* SBUMenuCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 708F5AC6588D7574B38BF62D /* SBUMenuCell.xib */; }; - 33104F7AD5AC20AE9DE2837C /* SBUToastManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D057BA6DE20320A25A70FB2 /* SBUToastManager.swift */; }; - 3322422192BFF0340FEC2AD7 /* SBUIconSetType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30CA852116CE976496836A3C /* SBUIconSetType.swift */; }; - 3322B5176B6EF9CB510596A5 /* SBUGroupChannelSettingsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4F9723828456EF4586C5E1F /* SBUGroupChannelSettingsViewModel.swift */; }; - 345D24548A70E6948DD8C414 /* SBUGroupChannelListViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18AAE5721F34A45127DB10F3 /* SBUGroupChannelListViewModel.swift */; }; - 3496FAC459A2BDC09A210B96 /* SBUUserMessageTextView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48B6765D972BAE0935C977B5 /* SBUUserMessageTextView.swift */; }; - 3546CF593EE5DBBC96546307 /* SBUGroupChannelListModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14D6F9DFA7C12E0C6A805175 /* SBUGroupChannelListModule.swift */; }; - 35E7295C0155116CA019395B /* SBUConfigManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BD9F5A50AB5ED4D3C3D1EF8 /* SBUConfigManager.swift */; }; - 372F2F8FA62F3DCDE094B93F /* SBUMessageWebViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93FC7EB3725A6694B5FA8A3F /* SBUMessageWebViewModel.swift */; }; - 3747BE6B797F1947D30C1466 /* SBUCreateOpenChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61A461C5FB81AA384E1F35D7 /* SBUCreateOpenChannelViewController.swift */; }; - 38207DCB49226FB8ED70E557 /* SBUModerationsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD0B7546CD8231BFB3BC59B0 /* SBUModerationsViewModel.swift */; }; - 385493D5910A2044285111AD /* SBUGroupChannelPushSettingsModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 023681DE8880079B4C932080 /* SBUGroupChannelPushSettingsModule.List.swift */; }; - 3857060A83D15B251B1E1B09 /* SBUMenuCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EA1B0589A0E5C19D00CAF27 /* SBUMenuCell.swift */; }; - 3922BA98027A00C793C23643 /* SBUHighlightMessageInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 41ED8B8595477035024F4F83 /* SBUHighlightMessageInfo.swift */; }; - 396A5A9E80930E6C46274EB3 /* SBUCreateChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 97715C40BF9A25445E4A43E0 /* SBUCreateChannelModule.Header.swift */; }; - 398EDA99D303E26A5FDF1E74 /* SBUCommonItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EB21D7E23556A522FD774A0 /* SBUCommonItem.swift */; }; - 39C460AFC615EB969453807D /* SBUBaseChannelCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6C2ABA2F639506278D9B647 /* SBUBaseChannelCell.swift */; }; - 39F7A3E96158AC68261055CC /* SBUNotificationNavigationTitleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64EC32C82C5FF837F4A3D6AC /* SBUNotificationNavigationTitleView.swift */; }; - 3A6717DA4DE84E7E2A8BD4F1 /* SBUSuggestedReplyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59A3FA994CE9A95016CA3FBF /* SBUSuggestedReplyView.swift */; }; - 3C2311328D550F36C873B44A /* SBUFeedNotificationChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18C97B8C2E383122135420FF /* SBUFeedNotificationChannelModule.Header.swift */; }; - 3C9294F3951A03D54B4619E6 /* SBUParentMessageInfoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57265A2B441BB2B3FAF2596C /* SBUParentMessageInfoView.swift */; }; - 3D5C8523E89B36FE7E3899B4 /* SBUEmptyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92FBB65724E212D676EAE9C9 /* SBUEmptyView.swift */; }; - 3D99C9CE32FB2EF16EC9147D /* SBUBaseMessageCellParams.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7FD1BED5D2B1F6D5DAD0240C /* SBUBaseMessageCellParams.Deprecated.swift */; }; - 3DDF81BF2D9A02219A3326F1 /* SBUVoiceContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D434EAE8595B3F2004D0EEE8 /* SBUVoiceContentView.swift */; }; - 3F01448353EEE25534AD2F24 /* MessageTemplateTestViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBF47B26CDFC022EF6B8911E /* MessageTemplateTestViewController.swift */; }; - 3F16F6FCF0CBC490BABABAEB /* SBUMessageThreadModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24EC75ECA405DFE879C36A34 /* SBUMessageThreadModule.Header.swift */; }; - 3F47A7ABEC8005C2D48B1928 /* SBUBaseChannelSettingsModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 58027EC0A8743F4A606CA608 /* SBUBaseChannelSettingsModule.swift */; }; - 3FDD0899344ABCB90091AA7F /* SBUNotificationEmptyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 999B98F96140924676C25BF9 /* SBUNotificationEmptyView.swift */; }; - 40F6A1C3DF997610DBA02728 /* SBUOpenChannelBaseMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F02FECB5DD3547EB858B0DE /* SBUOpenChannelBaseMessageCell.swift */; }; - 41572A20CA1EF7531648D645 /* SBUMessageSearchViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B16D089622F63F650A75B47 /* SBUMessageSearchViewController.Deprecated.swift */; }; - 41FC7B7115F274676D0750F4 /* SBUOpenChannelMessageWebView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7171FBEE26A1D269D2FCFEF3 /* SBUOpenChannelMessageWebView.swift */; }; - 42B7E34F6291D141A1BE1EA4 /* SBUMessageThreadModule.Input.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FEC6560FCA5AC43400EAE68 /* SBUMessageThreadModule.Input.swift */; }; - 42BB0F89D6AE9F1AB239C21C /* SBUFeedNotificationCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = A0D8383300A0ECFAC83488FA /* SBUFeedNotificationCellParams.swift */; }; - 436234D077218FB75C21207F /* SBUQuoteMessageInputView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 523C6F510E763850528BF1E7 /* SBUQuoteMessageInputView.swift */; }; - 450EC34A7C4A80EC082D9F09 /* SBUCreateChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5866547E6F669831E320738 /* SBUCreateChannelViewModel.swift */; }; - 4598B6C582FB9BE18A8C2B00 /* Formatter+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = D435EF09822E6A48A0629318 /* Formatter+SBUIKit.swift */; }; - 4633134536E1295AD4F4B6A9 /* SBUFeedNotificationChannelModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = C45567BF7012DB8362B74153 /* SBUFeedNotificationChannelModule.List.swift */; }; - 4667E77C17D6E4B242B52197 /* SBUActionSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = F45107805C04C0A825F9120C /* SBUActionSheet.swift */; }; - 4827144ADCAEA6142BA70918 /* SBUCacheManager.File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EF1D7CA370CC6582649260E /* SBUCacheManager.File.swift */; }; - 489799C238E7FD8D4756A176 /* SBUModuleSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19146BE18864C0A1F6BDD85D /* SBUModuleSet.swift */; }; - 48E055B78B51A6B4133C7D1E /* SBUBaseMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9AD3FB44A0730562C0F753B /* SBUBaseMessageCell.swift */; }; - 48E6E8473036DF48BFB1463E /* UIApplication+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFA07F52850027CB7EC7E924 /* UIApplication+SBUIKit.swift */; }; - 48F372A8605BF54DC3A6E2DE /* Float+SBUKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 177474FE6BB9754AF9C7311D /* Float+SBUKit.swift */; }; + 00627F6C540A66EA20416422 /* SBUInviteUserModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3D081C78F707505ABDF12F1 /* SBUInviteUserModule.swift */; }; + 00D11268496B6E366BAD380A /* SBUConfig.GroupChannel.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB8B918C3C0874F6E5399623 /* SBUConfig.GroupChannel.swift */; }; + 01454D50AD8BDD9BFEC1C6D9 /* SBUUserMessageTextView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C21555DDCF993FD577EACD4 /* SBUUserMessageTextView.swift */; }; + 01849F34287E5A6C6A507277 /* SBUUserListModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA4D97ABE2450DA4CF86B7B1 /* SBUUserListModule.List.swift */; }; + 030AA7A3825CE2A810184B06 /* SBUQuotedBaseMessageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE0F61DD6E53F245C1BFBDC0 /* SBUQuotedBaseMessageView.swift */; }; + 03216A3CAB06D37F2579BDAD /* SBUUserListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7883481FDE9ABF715E4E25C1 /* SBUUserListViewController.swift */; }; + 03D48B3D96BB3BED14680CEB /* SBUMessageInputView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 901D841790009294F3C1F383 /* SBUMessageInputView.swift */; }; + 04B57706E646AD5593094F31 /* SBULinkClickableTextView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4DB181EA553D91008580CD /* SBULinkClickableTextView.swift */; }; + 04BFBFE762B25132D7D46785 /* SBUViewModelDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0727BF56798D054B69AE7664 /* SBUViewModelDelegate.swift */; }; + 0513D6FDD75145BF744E3663 /* SBUChannelPushSettingCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F367C0A57424DBCC5D34FD1 /* SBUChannelPushSettingCell.swift */; }; + 05C047D2EF83F4070F1FB339 /* SBUGroupChannelViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEAA3B116BF4A427CE167D1D /* SBUGroupChannelViewController.Deprecated.swift */; }; + 06FDC17D33B6D8E80FB83CF3 /* SBUConfig.OpenChannel.swift in Sources */ = {isa = PBXBuildFile; fileRef = ACC1F8C6414F503CDB7F6174 /* SBUConfig.OpenChannel.swift */; }; + 071B571BD5BD2DB29C3EEF0C /* SBUStringSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDAAA5C67531628867DFFD7A /* SBUStringSet.swift */; }; + 089103CD044BAB773CC6079A /* SBUOpenChannelListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEB8247FA9D45E8639A66668 /* SBUOpenChannelListViewController.swift */; }; + 08CF5B97EB6B390840FF194D /* SBUConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F5A1D92C78BC5B3135C66DB /* SBUConfig.swift */; }; + 090A7E42FA08AA969CC464DA /* SBUConfig.Common.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53BFCBF1186A94B1ED22AAEE /* SBUConfig.Common.swift */; }; + 0933EA8521D79818954747EC /* SBUPaddingLabel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19856622611F351F18CB458E /* SBUPaddingLabel.swift */; }; + 0A47A0536723D9F3C1A6B373 /* SBUEnums.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = FFCBB242E40E79FCFE1A41EA /* SBUEnums.Deprecated.swift */; }; + 0AD549EB16CB78D194A38001 /* SBUBaseMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD8DC66BE78A39DF9980D1D9 /* SBUBaseMessageCell.swift */; }; + 0B5B3F9383C61D1B93F2D6C2 /* SBUReactionCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 153D526660CB939E23444CDA /* SBUReactionCollectionViewCell.swift */; }; + 0BAB66DBC1D23301F3CD8B63 /* SBUFeedNotificationChannelModule.CategoryFilter.swift in Sources */ = {isa = PBXBuildFile; fileRef = B264A99CBCD2D6A4F4101B93 /* SBUFeedNotificationChannelModule.CategoryFilter.swift */; }; + 0BB262DD2FD0F7E58E56DEFB /* SBURegisterOperatorViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD14F4B7AA8A8E530506803A /* SBURegisterOperatorViewModel.swift */; }; + 0BBB93626BD932C9B996C943 /* SBUActionSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 473F29F366CD515D71133272 /* SBUActionSheet.swift */; }; + 0D1E85118BAABDFFCAB56B5C /* SBUOpenChannelSettingsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83F4BF5C4CDAAD25155E22C7 /* SBUOpenChannelSettingsViewModel.swift */; }; + 0D6C5939B151A4EE704505F8 /* SBUOpenChannelAdminMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 969CC8582C2EFD870EB3BAAA /* SBUOpenChannelAdminMessageCell.swift */; }; + 0D962935D30531F6C7F4464E /* SBUChannelSettingsChannelInfoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CDADAA49466BDA35BD973EE /* SBUChannelSettingsChannelInfoView.swift */; }; + 0EC8827025F5A14DD4E3F3D2 /* SBUBaseChannelCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DC1E67F57F827A1633A2467 /* SBUBaseChannelCell.swift */; }; + 1091519C4EB22991A75C593D /* SBUCreateOpenChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 070F74328384AAC18B2F655F /* SBUCreateOpenChannelViewController.swift */; }; + 1091D01133DE50C415BD4770 /* SBUBaseSelectUserModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 81FD78B595B3F3718CE84774 /* SBUBaseSelectUserModule.swift */; }; + 11258060B283B5AF39A7FA45 /* SBUFormFieldView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1098A4787B2E2A6A75CCA323 /* SBUFormFieldView.swift */; }; + 127599EA5A662210C0B7DD37 /* SBUMessageThreadModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00F8536AA7C6BD346478CC70 /* SBUMessageThreadModule.swift */; }; + 12D643C7A8850F98E11B797F /* SBUMessageSearchModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = F55F9A300250DB49089A018A /* SBUMessageSearchModule.swift */; }; + 1369DF3B5E7E16A2EC1E0974 /* SBULogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC8F86D01729096DF7302562 /* SBULogger.swift */; }; + 1427E2BC1C89E6CEB55CE4DD /* SBUBaseMessageCellParams.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = A0015634D994EE7F2B3E6C06 /* SBUBaseMessageCellParams.Deprecated.swift */; }; + 143D157740276064F9DB41C4 /* SBUQuotedBaseMessageViewParams.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 94A59A4397AA5EC62CD0E9AB /* SBUQuotedBaseMessageViewParams.Deprecated.swift */; }; + 152AC0C3DC0214FDE8501EEA /* SBUNotificationNavigationTitleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AA1BCEB4A4A2491E09161CD /* SBUNotificationNavigationTitleView.swift */; }; + 1635618852E7D8FAE6FCD54A /* SBUTypingMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F55AE7C708C4CC5B6545241 /* SBUTypingMessageCellParams.swift */; }; + 1667FD8586947825A22FA38E /* MultipleFilesMessage+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2CD0E3414CAEBB89FC2ABEE /* MultipleFilesMessage+SBUIKit.swift */; }; + 1732C7EBBF3BCFE03955045F /* SBUBaseChannelViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D8B5F801AB9DD43400729E4 /* SBUBaseChannelViewController.Deprecated.swift */; }; + 1755C521495BD79FE3677E14 /* SBUMessageCellConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84A1EDA5AB7BA03BAFAD6313 /* SBUMessageCellConfiguration.swift */; }; + 17B05B2447CACC5605B73AA3 /* SBUMessageThreadModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 470469C36899D1C5E483FCF8 /* SBUMessageThreadModule.Header.swift */; }; + 192C5EC52AD78A23C8BC25D5 /* SBUInviteUserViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A952A4E3AF10E4E3173E5562 /* SBUInviteUserViewModel.swift */; }; + 19442580697F6DAAEC7DD2B9 /* SBUUserListViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = B034C5EA6838C021CEDF3510 /* SBUUserListViewModel.swift */; }; + 199DD59D37F986520462238A /* SBUMenuView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8B47CAEC62803515F9ECA08 /* SBUMenuView.swift */; }; + 1A2047263D9FBC21D04D3AC0 /* SBUCreateOpenChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC9302E58E72DE08D478C932 /* SBUCreateOpenChannelModule.swift */; }; + 1A94ED42EBD782A23AAD5B34 /* SBUModuleSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A6F3C3CA56F8CF9B1AE0116 /* SBUModuleSet.swift */; }; + 1B595747F7BAC4DCED210A10 /* UIColor+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = D51CDE6D25EF8DE20CFD1F50 /* UIColor+SBUIKit.swift */; }; + 1BACEB156D8B0319A0744919 /* SBUBaseChannelViewController.Keyboard.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93EECBF11BEB9B318358EC4E /* SBUBaseChannelViewController.Keyboard.swift */; }; + 1BC14E6E73E3FBADBCBA9CDC /* SBUMentionConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = B485D885781EECFF17EF2A3E /* SBUMentionConfiguration.swift */; }; + 1D3762712B81E4D102534657 /* UIButton+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = C781E108B22597D1B9A7F8F8 /* UIButton+SBUIKit.swift */; }; + 1D8A896BA7D70E6211DAD648 /* UITextField+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 974A8D57B1D361C2033AC176 /* UITextField+SBUIKit.swift */; }; + 1DD2887FFCBE4FF582ADE2B2 /* SBUPhotoCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93B3279889AB5E3FB27C1C85 /* SBUPhotoCollectionViewCell.swift */; }; + 1E29ADE98B8F752A3E497B2E /* SBUSuggestedReplyOptionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0F7A21B5553E98E1A4E8D36 /* SBUSuggestedReplyOptionView.swift */; }; + 1E9C3907901437518A1BC260 /* SBUScrollPostionConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4240C69BF382E9736D6736A2 /* SBUScrollPostionConfiguration.swift */; }; + 1EDEFF4B56AF1AE7D3BD2ACF /* SBUVoiceContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC81492A5041F5ECDB48B72C /* SBUVoiceContentView.swift */; }; + 1FDB7F7EEBFD7D1F572A350C /* SBUUserNameView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 219797BDAF59463A06A3DEB4 /* SBUUserNameView.swift */; }; + 2086A0A8CFA51A8DCA34AFD0 /* SBUMenuCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDFC590A799C7174BCE2F22E /* SBUMenuCell.swift */; }; + 20980EB92318F0FCAC540A72 /* SBUMarginView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D02FB12CDD38B92A5AA12A04 /* SBUMarginView.swift */; }; + 224F376A0B5D067EC80FD3A7 /* SBUReplyConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 885D613FEDCF9E4AE9124492 /* SBUReplyConfiguration.swift */; }; + 2284A6673959A1BE1B487BD5 /* SBUCacheManager.Config.swift in Sources */ = {isa = PBXBuildFile; fileRef = C24555BDBB78BCA7652A6496 /* SBUCacheManager.Config.swift */; }; + 229DCF6F4A2B57AD4506B5FF /* SBUFeedNotificationCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0A4829E72995CBA2D86464CA /* SBUFeedNotificationCellParams.swift */; }; + 22DEA575982555E905341E99 /* SBUTheme.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E436F823E54872F236D3B43 /* SBUTheme.Deprecated.swift */; }; + 2357EDD8472D1DCCBC4C17D3 /* SBUModerationsViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4DE82857890FB3E573EB7E0 /* SBUModerationsViewController.Deprecated.swift */; }; + 23B4C1BA0B8C10983C9D5846 /* SBUMessageReactionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 05124D9926BFAA1E594B90E7 /* SBUMessageReactionView.swift */; }; + 24EDF941D65976A8C1C1FB26 /* UIViewController+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9CF1ED3054A51749E9EE435 /* UIViewController+SBUIKit.swift */; }; + 25D67216A823C4EF5AFB9760 /* SBUUserMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA8156E1D371ABA2ED207B47 /* SBUUserMessageCell.swift */; }; + 2656CAE5BECFFCF4FDF683F8 /* SBUCreateChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AE928F64E99D76A18B17FD9 /* SBUCreateChannelModule.Header.swift */; }; + 26780932EA8A7859DB9B6351 /* SBUOpenChannelModule.Input.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03F45E76F3A34B1E17A7F19A /* SBUOpenChannelModule.Input.swift */; }; + 27A075AE5405C328C3E8E5A2 /* SBUMenuSheetViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1F89183FD2710F17F339E1C /* SBUMenuSheetViewController.swift */; }; + 291319A2D12D98635A439CCE /* SBUGroupChannelPushSettingsModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25470C7458E4CEFF63B37375 /* SBUGroupChannelPushSettingsModule.List.swift */; }; + 29A12B5C59DC75706276A6C8 /* SBUFileMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 38067DB0F430F19FB4CB6829 /* SBUFileMessageCell.swift */; }; + 29EDAD63E7AA10B1565B0896 /* SBUOpenChannelImageContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9153E830EC5DB460E46090A /* SBUOpenChannelImageContentView.swift */; }; + 2B5A2978BDD14FD414E3779C /* SBUTemplateLabel.swift in Sources */ = {isa = PBXBuildFile; fileRef = C535093052F5B8F06BDFCA62 /* SBUTemplateLabel.swift */; }; + 2B9A4630BBD95E7A71A17F87 /* Array+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5653454C4E7042EF849C077C /* Array+SBUIKit.swift */; }; + 2C3789D46012A3A8A0BCABB5 /* SBUNewMessageInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = E773FD2840237A93FA2EC097 /* SBUNewMessageInfo.swift */; }; + 2DD5E3089827AB10FA1479BA /* SBUNotificationCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BBA7D26B15B96DE79CCD255 /* SBUNotificationCell.swift */; }; + 2E9850E12B1EEB8600EA4F39 /* AdditionalFeaturesManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E9850E02B1EEB8600EA4F39 /* AdditionalFeaturesManager.swift */; }; + 2E9850E32B1EEBA900EA4F39 /* ChannelVC_AdditionalFeatures.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E9850E22B1EEBA900EA4F39 /* ChannelVC_AdditionalFeatures.swift */; }; + 2E9850E72B1EEC0B00EA4F39 /* GroupChannelViewModel_AdditionalFeatures.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E9850E62B1EEC0B00EA4F39 /* GroupChannelViewModel_AdditionalFeatures.swift */; }; + 2E9850EA2B1EEC3000EA4F39 /* MetadataViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E9850E92B1EEC3000EA4F39 /* MetadataViewController.swift */; }; + 2E9850EC2B1EEC4B00EA4F39 /* PaddedLabel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E9850EB2B1EEC4B00EA4F39 /* PaddedLabel.swift */; }; + 2ED4578D12D2E78DA47EEC79 /* SBUMessageStateView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 301A75B128C9F918A62AFD14 /* SBUMessageStateView.swift */; }; + 304927150788C17400A20744 /* UINavigationController+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65E152807A84A65A93E961DD /* UINavigationController+SBUIKit.swift */; }; + 30936A9EA4AA2C78AC9A0FF3 /* SBUTypingIndicatorMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03FA91D49CCDDACD36563AC9 /* SBUTypingIndicatorMessage.swift */; }; + 30A133488518DBB621AACE58 /* BaseMessage+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = B07C348322ACB048E9EAFBA3 /* BaseMessage+SBUIKit.swift */; }; + 30CA44F3E2B500EBD95B38FB /* SBUChannelSettingItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 86170B209644D6F0F269CAAA /* SBUChannelSettingItem.swift */; }; + 30E0065084627A7F36C23703 /* SBUCommonContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FE87DC7C154FA915C08D735 /* SBUCommonContentView.swift */; }; + 3100A0DFA4E3CC5F7F0D1BB2 /* SBUGlobals.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6A157AB2D7099FE9C9B171D /* SBUGlobals.Deprecated.swift */; }; + 31A6C12AFEA5BFA530149F06 /* SBUBaseChannelViewController.Unavailable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90EA277BB22C9E37797C98B3 /* SBUBaseChannelViewController.Unavailable.swift */; }; + 32F86073A412773DA0DDF604 /* SBUOpenChannelSettingCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9849D1106F01153493D75D9 /* SBUOpenChannelSettingCell.swift */; }; + 3385247291A4CE45070D03DD /* SBUIconSetType.swift in Sources */ = {isa = PBXBuildFile; fileRef = E88E980588C29EFE8E975130 /* SBUIconSetType.swift */; }; + 33DB411B2A785EC0C2A2F3FA /* SBUGroupChannelSettingCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8417232FBF8002EB65572308 /* SBUGroupChannelSettingCell.swift */; }; + 34431D39A4B0F9092E1CE08A /* BlockingOperation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1BD535F43388F6276BE09736 /* BlockingOperation.swift */; }; + 3557E20BB44108E43C4E5CB4 /* SBUGroupChannelSettingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E0DAAB23F5C6FDEF7837EC9B /* SBUGroupChannelSettingsViewController.swift */; }; + 3611946401D23F425360054A /* SBUOpenChannelListModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F797391BF7579094802CC02 /* SBUOpenChannelListModule.Header.swift */; }; + 364722B92370625B020BC123 /* SBUGlobalCustomParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F32BF4819FA37E319296D33 /* SBUGlobalCustomParams.swift */; }; + 367F74000916FA26F5741C06 /* SBUView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44F9C7790EE178F36A6DAA7E /* SBUView.swift */; }; + 36F3F6965C2506BCBF684857 /* SBUGroupChannelSettingsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F7F1F9BF57F2A409F6E68A9 /* SBUGroupChannelSettingsViewModel.swift */; }; + 37B249A7216C55E8F2736C77 /* SBUUserProfileView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E48CC4D7DB045DEE72C4C94F /* SBUUserProfileView.swift */; }; + 37F86D219100091803A3D86E /* SBUSelectablePhotoViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 99EB3F800A89AF02D774D584 /* SBUSelectablePhotoViewController.swift */; }; + 38931C5862485306CF0D5EE0 /* SBUQuoteMessageInputViewProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA88FB2FFC442EBBC6B03C0A /* SBUQuoteMessageInputViewProtocol.swift */; }; + 38ABBBA24FDDBD3A9184FBF2 /* SBUCacheManager.NotificationSetting.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9A85738FFE75C7D458F944 /* SBUCacheManager.NotificationSetting.swift */; }; + 396C66A46F09F31A0301A922 /* SBUCreateOpenChannelModule.ProfileInput.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21F5625DC1D293F998AA82AA /* SBUCreateOpenChannelModule.ProfileInput.swift */; }; + 398BD939DE3EDE679C9202EB /* SBUOpenChannelViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 348DD072851F8C686F265851 /* SBUOpenChannelViewController.Deprecated.swift */; }; + 3B108EA4F92D184251F4BE94 /* SBUUserCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F5BC5ECF81747D1122595F0 /* SBUUserCell.swift */; }; + 3B25780D187BC5CF3EBB5A05 /* SBUMessageThreadViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8406C61DAEE3827076C587B /* SBUMessageThreadViewController.swift */; }; + 3B501308B2461D596E470C45 /* SBUCommonItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 938DD9A1CD35661207613834 /* SBUCommonItem.swift */; }; + 3B768C291B48A0A2037BD6AC /* SBUBaseChannelSettingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45485BDF50AC4FBB142760FE /* SBUBaseChannelSettingsViewController.swift */; }; + 3BACE6D76E8136184A15626C /* SBUUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = A79FDF21A1D449CA027CA28B /* SBUUtils.swift */; }; + 3BE9246E51DCC1A7691FD3AF /* SBUInviteUserViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E4045143A35DBDB6CC3EBBBD /* SBUInviteUserViewController.swift */; }; + 3D66C2B50840FBCA3FC86887 /* SBUGroupChannelCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1688E36777593F08B812CA1 /* SBUGroupChannelCell.swift */; }; + 3DB18BAEF463256E7F97C7AC /* Float+SBUKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = A058EA64703DD199986BDE45 /* Float+SBUKit.swift */; }; + 3EA63529C69BD7E9DC029706 /* StringProtocol+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = E31D08D9C7403E290D1B1D55 /* StringProtocol+SBUIKit.swift */; }; + 3EDBEE99BAE2FBD4E18D9F15 /* SBUEnums.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A73EBCFD8FF5402C497035C /* SBUEnums.swift */; }; + 404A2F83B293E29E44088C92 /* QuotedFileCommonContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABB24CF7362F81585989AC25 /* QuotedFileCommonContentView.swift */; }; + 410D2D9EC4AC5403E38ABE01 /* SBUBaseChannelModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDCBE48B02F60EDD81E05810 /* SBUBaseChannelModule.List.swift */; }; + 415BEF93DDC1AA00F8810F76 /* SBUFeedNotificationChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 665624EE08CC9A6036D0CB01 /* SBUFeedNotificationChannelModule.swift */; }; + 417775016893662AD442EA10 /* SBUOpenChannelCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 250BCFE1311E2D9BE7A04213 /* SBUOpenChannelCell.swift */; }; + 41EAD635DE57129819915EE4 /* SBUStackView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C980753B0473CBA5589BDC33 /* SBUStackView.swift */; }; + 422AD604091AD8BFC16196A3 /* SBUOpenChannelMessageWebView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E6D1118FBFF4CF371D5DB3D /* SBUOpenChannelMessageWebView.swift */; }; + 427508383F978402DAEFE135 /* SBUMentionLimitGuideCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FDB9886C45210D6BFAAC6EF /* SBUMentionLimitGuideCell.swift */; }; + 428719898660609223F660C3 /* SBUOpenChannelSettingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F65BF99B9367ECA69450FED /* SBUOpenChannelSettingsViewController.swift */; }; + 4292DC5939331E49F844FD6C /* SBUCreateChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0A7E7C2E185AB83BBC815D34 /* SBUCreateChannelViewModel.swift */; }; + 43575876F63303BB164836DD /* SBUChatNotificationChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8688ED07F8728C7E0D8A21A /* SBUChatNotificationChannelViewModel.swift */; }; + 43EFB78F7552C38894B2491E /* Formatter+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDFDC1AC992B8D533DD68169 /* Formatter+SBUIKit.swift */; }; + 45CA1E0435FB208CFCD04321 /* SBUBaseChannelModule.Input.swift in Sources */ = {isa = PBXBuildFile; fileRef = 650A2685B3FAF47445209B53 /* SBUBaseChannelModule.Input.swift */; }; + 45CDA2C72A079B66461742A4 /* SBUViewControllerSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 789FDC72879DBD8EEC452D43 /* SBUViewControllerSet.swift */; }; + 45DA9E0E5FBEE27475F1B135 /* SBUModerationsModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB621AEC109762ED1031855F /* SBUModerationsModule.List.swift */; }; + 4687053936AB1A78E41FD07F /* SBUFormView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6852691ED05ABADE42F1E2B /* SBUFormView.swift */; }; + 46BDA21BCD554C3D18051DA4 /* SBUOpenChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66C0F38EFA2A8FF69D5D09AF /* SBUOpenChannelModule.swift */; }; + 46DE805202BC4BD93B363959 /* SBUBaseChannelListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37F506AC8E475DC5E04D7ED4 /* SBUBaseChannelListViewController.swift */; }; + 46F9394B7ABB314C56B54AA3 /* SBUMessageDateView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A63C19DFE13797A08E427A76 /* SBUMessageDateView.swift */; }; + 471532FB80922CF773BC7398 /* SBUNotificationChannelManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09C4DEFBEE7AFE8D7C3AC3EC /* SBUNotificationChannelManager.swift */; }; + 48B5B57E9538B6BFB92FFF58 /* SBUCreateChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF4713EDDA8BE762ACB732FC /* SBUCreateChannelModule.swift */; }; + 48BBA86A491D509F22584471 /* SBUBaseChannelSettingsModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 38DB88E7A046ACEC2DEBBAAF /* SBUBaseChannelSettingsModule.List.swift */; }; + 48E229E923C106C77448499D /* SBUMessageInputMode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3B4A038A283F59CA7364B64 /* SBUMessageInputMode.swift */; }; 499261732A9D89BE00B07828 /* ConnectView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4992616E2A9D89BE00B07828 /* ConnectView.swift */; }; 499261742A9D89BE00B07828 /* ConnectView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4992616F2A9D89BE00B07828 /* ConnectView.xib */; }; 499261752A9D89BE00B07828 /* MainView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 499261702A9D89BE00B07828 /* MainView.xib */; }; @@ -109,124 +150,97 @@ 499261772A9D89BE00B07828 /* MainView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 499261722A9D89BE00B07828 /* MainView.swift */; }; 4992617A2A9D8A4A00B07828 /* MainItemView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 499261782A9D8A4900B07828 /* MainItemView.swift */; }; 4992617B2A9D8A4A00B07828 /* MainItemView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 499261792A9D8A4900B07828 /* MainItemView.xib */; }; - 49AC7F34FA52F4DEF4482C21 /* SBUCreateOpenChannelModule.ProfileInput.swift in Sources */ = {isa = PBXBuildFile; fileRef = D1D7C88CD407E1BE360FC0D6 /* SBUCreateOpenChannelModule.ProfileInput.swift */; }; - 4B3D2B6D40F377CC5B0EA5FC /* SBUBaseChannelModule.Input.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6F60DC8DE41420100032550 /* SBUBaseChannelModule.Input.swift */; }; - 4C8D3548C672258602060B7A /* SBUCommonContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B11F0294C06D1D458E0AD16 /* SBUCommonContentView.swift */; }; - 4CEB71721FF6F4C8AD1ED082 /* SBUMessageSearchResultCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 41E5AF0572EC94815A5D01E1 /* SBUMessageSearchResultCell.swift */; }; - 4DA50174D44ADD5A71EB0DEF /* UIViewController+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7CEB555D9E8C324C1B1EAD1 /* UIViewController+SBUIKit.swift */; }; - 4DC2A00859C06EFA2AC934D0 /* SBUModerationsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9E3686281F7277481FE81D91 /* SBUModerationsViewController.swift */; }; - 4F1EA47F37CBDCEA4984C2C0 /* URL+SBUKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 748911BF68F971D3EBC4DEFA /* URL+SBUKit.swift */; }; - 4FB49AC3F9486A60B243A37C /* SBUOpenChannelSettingsModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B146BEF233DE437C22083BC /* SBUOpenChannelSettingsModule.Header.swift */; }; - 50F4CA804D63488760625020 /* SBUCacheManager.Template.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71E4850469664F763AD51465 /* SBUCacheManager.Template.swift */; }; - 51750291ABA08DCF3966BDC5 /* SBUTableViewCell.Unavailable.swift in Sources */ = {isa = PBXBuildFile; fileRef = D67D31745EC3598BC64D1E60 /* SBUTableViewCell.Unavailable.swift */; }; - 520842D0AB22D3A33061420F /* SBUFormFieldView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44FA36B574BB43E1B8D2BFDC /* SBUFormFieldView.swift */; }; - 53A4F77A17604D256ADA9B6B /* SBUDateFormatSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1E9D376E6E66698973D0FA3 /* SBUDateFormatSet.swift */; }; - 5420CB6E19F9640E8AE9C199 /* SBUSuggestedMentionList.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE24BBF7D14DA2EA22339353 /* SBUSuggestedMentionList.swift */; }; - 55165A05F3D9976FFA1AE288 /* SBUImageContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC88D341AE4A046C78CF58AA /* SBUImageContentView.swift */; }; - 552BF9DD6392E5F410646CB5 /* NSLayoutConstraint+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0206B05C52A01BB8E7D69320 /* NSLayoutConstraint+SBUIKit.swift */; }; - 557AC1BD60F649D589E1636D /* SBUVoiceMessageConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9943954ED330D311C5474102 /* SBUVoiceMessageConfiguration.swift */; }; - 558EA6EFF69965182807E08A /* CommonProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = A75E24DB12CABF915A7EC4AF /* CommonProtocols.swift */; }; - 56DD83C918D51C6FBEB16DA4 /* SBUUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 58A4FAC461AA835648FE9F66 /* SBUUtils.swift */; }; - 57387FA8ED8266C7923BEE76 /* SBUStringSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA8C5E650A758B2E3513028D /* SBUStringSet.swift */; }; - 57ACA513482EAC1FA792D64A /* SBUCreateChannelModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 56FEF419539E3D0DF193B2AB /* SBUCreateChannelModule.List.swift */; }; - 58205EEF0F7F488D9A9F1470 /* SBUOpenChannelListViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50321396A14B856815C79764 /* SBUOpenChannelListViewModel.swift */; }; - 5842E68872B46F05250632E0 /* SBUGroupChannelPushSettingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BDA027046D4C802363584B5 /* SBUGroupChannelPushSettingsViewController.swift */; }; - 586938D7D0DB56895F4F7A83 /* Data+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71D2BA7030799CFE0E9E4635 /* Data+SBUIKit.swift */; }; - 588995CD68D246F8034A939A /* SBUMessageCellConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 942B8097147C93A2E442B8B9 /* SBUMessageCellConfiguration.swift */; }; - 59150488322135F672FDC96F /* SBUQuotedBaseMessageViewParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = A560C431BBA9C41F34F9EE58 /* SBUQuotedBaseMessageViewParams.swift */; }; - 5AD7D560E7F97D2DEF3FCC9A /* SBUFileViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06B49E4A9520F322D6BE8758 /* SBUFileViewController.swift */; }; - 5B4049E5FF9C286ACC0A1681 /* SBUNotificationCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1505C3F14C296BAF6D545A21 /* SBUNotificationCell.swift */; }; - 5B86E459AABD409788D531F1 /* SBUPendingMessageManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DE1B79AC7F602567401517E /* SBUPendingMessageManager.swift */; }; - 5C3661FFAB694BF8DB16B933 /* SBUOpenChannelListModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = E719EFFE37E59841486B30A7 /* SBUOpenChannelListModule.swift */; }; - 5C7B885BE5A62DE604C16F55 /* SBUMessageSearchModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EE43A6018C716F35B9E7023 /* SBUMessageSearchModule.List.swift */; }; - 5D254FFF3509F0B775C5FED3 /* SBUBaseSelectUserModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28CB89FA7DD816BED6821E6F /* SBUBaseSelectUserModule.List.swift */; }; - 5F458E5E006791B967CB065A /* UINavigationController+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = D83719466EF350BE145528F9 /* UINavigationController+SBUIKit.swift */; }; - 6079098968E3A13FCD7CB40F /* SBUModuleSet.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = F58D72E0600096FEF0F045E2 /* SBUModuleSet.Deprecated.swift */; }; - 61284CB22CB1D3F26BA1A106 /* SBUConfig.OpenChannel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3857D1482996751B2677E50D /* SBUConfig.OpenChannel.swift */; }; - 628D0E2AB22BD19318055E3E /* CGSize+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E700CF5A42253A9D0B9C3A9 /* CGSize+SBUIKit.swift */; }; - 63555A32656D7B1E0B967648 /* SBUBarButtonItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C6EF0C95E8472F91B13DE1B /* SBUBarButtonItem.swift */; }; - 63C6B24C6525B5FB8E8497F4 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 0DB0082FA5B3FBFAD02844AD /* Assets.xcassets */; }; - 64679FB47191772AB9023709 /* SBUChannelSettingsChannelInfoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09919E8A8041D179266308B5 /* SBUChannelSettingsChannelInfoView.swift */; }; - 6487DFA9518FBAE69C8879BA /* SBUDebouncer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ECD32E1694D81E0245A77C2 /* SBUDebouncer.swift */; }; - 660F1458567259F5D9D7CB12 /* SBUFeedNotificationChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0999DE7B0662BAC39EF6AD45 /* SBUFeedNotificationChannelModule.swift */; }; - 6629DF0F58BA20D8AA370FC5 /* SBUOpenChannelCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 81F37315E2C2DC15E0F300AE /* SBUOpenChannelCell.swift */; }; - 664EC41D322AFD8F5C7183DB /* SBUMultipleFilesMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEEE0BEC92ECBF84AB96BA13 /* SBUMultipleFilesMessageCell.swift */; }; - 665BEC4CF9823579F7AAC91C /* MessageTemplateRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA6B6828F36090C61A8898F3 /* MessageTemplateRenderer.swift */; }; - 67A41441799BE1CFFF91A122 /* SBUChannelInfoHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CA2C69D5DB36578E686EE62 /* SBUChannelInfoHeaderView.swift */; }; - 67CAB36D29CEB576DDE03271 /* SBUTheme.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB87F5B3A54B200570C4CA77 /* SBUTheme.Deprecated.swift */; }; - 688CA30FBDFF1DA24BE82A45 /* SBUOpenChannelUserMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B637D27DA9EDA71E8EBC0A9 /* SBUOpenChannelUserMessageCell.swift */; }; - 69EF97D4478580705099F3F5 /* SBUUserListModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEA2626CAF5D299D2F2B30AA /* SBUUserListModule.List.swift */; }; - 6A42DEC2D0CC55B617CEDCA8 /* Release.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 3DF7928E904E2DC8895282B1 /* Release.xcconfig */; }; - 6A8EE710C00EED877E6011BE /* SBUGlobals.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E0DE5831E8E1AA64BD96517 /* SBUGlobals.Deprecated.swift */; }; - 6BB4CD411C27F8D2274E1D93 /* SBUChatNotificationCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21026E3743ED39F89C105D5E /* SBUChatNotificationCell.swift */; }; - 6C4D3FB63EC39FFD947FD0AB /* SBUChatNotificationChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABBF7BEBCB4E4F5040067661 /* SBUChatNotificationChannelViewController.swift */; }; - 6D1FA82B7BD3DDE132669C4C /* SBUViewControllerSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C0AA733D29D1BB7267185BE /* SBUViewControllerSet.swift */; }; - 6D2EB25E744C3C91A9CFC37C /* SBUGroupChannelSettingsModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 325BF2C6FB366447C7008FB6 /* SBUGroupChannelSettingsModule.List.swift */; }; - 6D34DEBF62201CCEA10CB597 /* SBUCreateChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCB905C952E4C6FA79E64FDB /* SBUCreateChannelViewController.swift */; }; - 6D72842A87189C04E069596E /* SBUCreateChannelTypeSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43525699298A604A075CA7B9 /* SBUCreateChannelTypeSelector.swift */; }; - 6D79AEDFEFD1B0F30FD55D82 /* SBUQuotedFileMessageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F33D54197920D4AC9FDCCA95 /* SBUQuotedFileMessageView.swift */; }; - 6D8B4433F92FD99F1AF214DE /* SBUBaseChannelSettingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68B00ACF25C34E0022C90260 /* SBUBaseChannelSettingsViewController.swift */; }; - 6E45C6DFA6882072DBB0D90A /* SBUMessageProfileView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0ECAE734480BCB8D28E0EFB0 /* SBUMessageProfileView.swift */; }; - 6E4F5A02569AEF20FD0E6F58 /* SBUConstant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AFD44975BE7AA6282BAAA88 /* SBUConstant.swift */; }; - 6F13601FE9DD56BCD28F377B /* UIView+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = D6B7A1D49538F05AE83A9DCA /* UIView+SBUIKit.swift */; }; - 702A9D56C67A4CF2F7005FBE /* SBUMarginView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2F0C0C71FDA86DB16C7DEF2 /* SBUMarginView.swift */; }; - 70C286CA49CC97BA483CC6C7 /* SBUGroupChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F7DFA4B49D225AFE90087E3 /* SBUGroupChannelViewModel.swift */; }; - 7191FD9C78168C882BC55B4E /* SBUModerationsModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB44E0C51BCE310966C9CD8A /* SBUModerationsModule.List.swift */; }; - 721E34058E8CC075D70F023D /* SBUColorSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70FF0A9963D7ABE768497D04 /* SBUColorSet.swift */; }; - 73E8843269DC1DEC746432E7 /* SBUCreateOpenChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 751080FDFD1390A4D53A5151 /* SBUCreateOpenChannelModule.swift */; }; - 7757B4E91C37EDB2DC883095 /* SBUGroupChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3DADF6EEDBE000661C340E19 /* SBUGroupChannelViewController.swift */; }; - 7758E7AB829F06C5A9192FCD /* SBUVoiceRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D684515D3AA15B3801F9EE4 /* SBUVoiceRecorder.swift */; }; - 78210830DBB777C04F173E3F /* SBUCommonViewControllerSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23102F5BB173EA9ADB0C7124 /* SBUCommonViewControllerSet.swift */; }; - 78D0CA943C500B8586358A35 /* SBUGroupChannelSettingsModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3E9D7D63846EF293F7A425E0 /* SBUGroupChannelSettingsModule.Header.swift */; }; - 79042716676C96948FAABDB2 /* Date+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8741B0FB6E9BDCB86E69ECA /* Date+SBUIKit.swift */; }; - 793B39CCF61631DA20B57733 /* SBUFormViewParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDA05A98F57A4890B630A9FE /* SBUFormViewParams.swift */; }; - 79CAB89EE621AF7FC446F702 /* UIButton+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = E473E5D0A72CC5793BF3135E /* UIButton+SBUIKit.swift */; }; - 7A1A01CCD959089EE4962B4D /* SBUMessageInputView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4ADFD866186A7A15FA48BAE1 /* SBUMessageInputView.swift */; }; - 7A5040DE89E5F993ACA04276 /* SBUBaseChannelSettingCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0AB8E024A4FD1346F72CC738 /* SBUBaseChannelSettingCell.swift */; }; - 7A688377C5A61AA7B1887F70 /* SBUGroupChannelViewController.Unavailable.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7D16635805485B905F7C58B /* SBUGroupChannelViewController.Unavailable.swift */; }; - 7AAFEB605317B61A12E928A5 /* SBUEnums.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36212F00EFCD6363DC91915F /* SBUEnums.Deprecated.swift */; }; - 7AB83BDABC76011F982D841B /* SBUOpenChannelSettingCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = BEE6C39FFD25CC94BDF299D8 /* SBUOpenChannelSettingCell.swift */; }; - 7ABBE8B19E3F2D21363A99D9 /* SBUBaseChannelListModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = F956BD0F76DBBC54FCA3140E /* SBUBaseChannelListModule.List.swift */; }; - 7AFB73765C1756B543C29BE3 /* SBUNotificationTimelineView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39E3142B541D6F9099977D42 /* SBUNotificationTimelineView.swift */; }; - 7E1C80A115E5E7EB9365A43A /* String+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC5D26633C4FB27008F0D84F /* String+SBUIKit.swift */; }; - 7E300E140DB490E177137183 /* SBULogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = B546179439A8035E57219067 /* SBULogger.swift */; }; - 7E55C7D0D04109973718EF47 /* SBUMenuView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B78FB93379BAC5649B82649 /* SBUMenuView.swift */; }; - 7F9FC61E12D4F12B743AB65C /* SBUCacheManager.Config.swift in Sources */ = {isa = PBXBuildFile; fileRef = 537F9C5EF70A6ECD6FFB0A31 /* SBUCacheManager.Config.swift */; }; - 7FD01ABA21A4FE426DB2051E /* SBUOpenChannelListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B5FAE795A92DCD1D99CEDD0 /* SBUOpenChannelListViewController.swift */; }; - 8001936C5E488386C3E4F709 /* SBUSuggestedReplyOptionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD8AB6E81F89F81EE8FC2290 /* SBUSuggestedReplyOptionView.swift */; }; - 80714D490E290AE3CA38A056 /* SBUAdminMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 272E52332721EC6B5744F3B0 /* SBUAdminMessageCellParams.swift */; }; - 814EA10ED179AB7A4E9B2C3A /* SBUPhotoAccess.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E71B94DFAB446765A56A781 /* SBUPhotoAccess.swift */; }; - 82201A59965587E0276BDB08 /* SBUMessageSearchModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D8CC815B247DBFBDF9BEFF7 /* SBUMessageSearchModule.Header.swift */; }; - 82BF00C45ABDDF67F625EB6B /* SBUOpenChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65532EB6BB53229A540A2AF6 /* SBUOpenChannelViewModel.swift */; }; - 83B4A3C04842B93236A90B07 /* SBUParentMessageInfoReactionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0517E1A3C7C86C3A29C0D9A8 /* SBUParentMessageInfoReactionView.swift */; }; - 83BEE4B0BCBD46D5DE6073AD /* SBUTypingIndicatorBubbleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3784B7DE0FBC0E8F7415B2B4 /* SBUTypingIndicatorBubbleView.swift */; }; - 850819ADC10700BFAE4CC9C8 /* SBUSuggestedReplyViewParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6B99AC0F1FB2B1F928AA0A4 /* SBUSuggestedReplyViewParams.swift */; }; - 855D10830FDE61E17611A8CC /* Debug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = BF6673DEC6FC0632883AC9C6 /* Debug.xcconfig */; }; - 86693F4968F55FF9A1422606 /* SBUChannelSettingItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD1AED084A3843547A85704B /* SBUChannelSettingItem.swift */; }; - 86F96939BF7FB584C090C1CE /* SBUBaseSelectUserViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C3071F5D45B84D2E236CB88 /* SBUBaseSelectUserViewController.Deprecated.swift */; }; - 8985AB8BB608D7E14F81DE8C /* SBUStringSet.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6C074FF0C88AC9DDE2BCEAA7 /* SBUStringSet.Deprecated.swift */; }; - 89998194EB4186A223ADA26A /* SBUBaseSelectUserViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67A185A60EE99EBE801E94C3 /* SBUBaseSelectUserViewModel.swift */; }; - 8BB8E337226C2E025FEA56C5 /* SBUAvailable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E32CAE02B6C387C3E2A1799 /* SBUAvailable.swift */; }; - 8DD839333E5563660296875D /* SBULinkClickableTextView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14EE035B8A9F6EA7171910A5 /* SBULinkClickableTextView.swift */; }; - 8E117794E10E892418943AFF /* SBUModerationsModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE5A804C68039BDBA038DAC4 /* SBUModerationsModule.Header.swift */; }; - 8E4045A9ACE5076A9CF4C8A8 /* SBUCacheManager.NotificationSetting.swift in Sources */ = {isa = PBXBuildFile; fileRef = D056A68EFB362E4FB9660E08 /* SBUCacheManager.NotificationSetting.swift */; }; - 8E767591EB5897DAD7BF0AB3 /* SendbirdUI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BBC0B1C7098106FF1350683 /* SendbirdUI.swift */; }; - 8F1B9E9B839A1DA222B60C79 /* SBUTemplateLabel.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB532737198197F81925D25C /* SBUTemplateLabel.swift */; }; - 8F5D2B1CF096D2534E47F18D /* SBUQuoteMessageInputViewProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54B2F380E6A7FCB840E15AC4 /* SBUQuoteMessageInputViewProtocol.swift */; }; - 905893D0C4ED86934AF7C892 /* SBUMessageThreadViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD288BCB6C816DA6830D7C71 /* SBUMessageThreadViewModel.swift */; }; - 908D39582CCA0BD873CCE0F5 /* SBUGroupChannelCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD833016A213C33A02C3E76 /* SBUGroupChannelCell.swift */; }; - 91265440B5945A9CA8F8E896 /* SBUQuotedBaseMessageViewParams.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D099ABA2392DCFD3F331D9B /* SBUQuotedBaseMessageViewParams.Deprecated.swift */; }; - 93DFA480797F6C649C5E7491 /* SBUMessageCellProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1487DC3028CA956C8CB8900B /* SBUMessageCellProtocol.swift */; }; - 9583E1850230519E28DAA3B4 /* SBUInviteUserModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B61EFD561C0134F1FCD49CA /* SBUInviteUserModule.List.swift */; }; - 95F45926B388268447515C27 /* SBUDownloadManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6373BFAAC93A06FE46E6C176 /* SBUDownloadManager.swift */; }; - 96232E04940DD92C50EA0730 /* SBUBottomSheetController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 459A35B6749E1DA6F1E76E81 /* SBUBottomSheetController.swift */; }; - 96DBEAF39A4A4C77120910F6 /* SBUCacheManager.Version.swift in Sources */ = {isa = PBXBuildFile; fileRef = 547388CF310AB7037EC60556 /* SBUCacheManager.Version.swift */; }; - 96E4C88C845F27ABA1735EC5 /* SBUView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BAF66B0299CA7578DBA1F24 /* SBUView.swift */; }; - 98828A0B3A256029F51C8918 /* SBUConfig.GroupChannel.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB2D688355DD2B50C12552D6 /* SBUConfig.GroupChannel.swift */; }; - 99D293C7437D40E7DBB19976 /* SBUGroupChannelModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47C14932CEF8B219FC2CDF14 /* SBUGroupChannelModule.List.swift */; }; - 9A086D7E6E46EC6956E255CA /* SBUChatNotificationChannelModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1390303A63A17BE693C5C2CC /* SBUChatNotificationChannelModule.List.swift */; }; - 9AC8D0B19580BCF3F21461C5 /* SBUMentionLimitGuideCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39AA21A9EAC614BBBC13197F /* SBUMentionLimitGuideCell.swift */; }; - 9BFC16B3A9157033CD1833C9 /* SBUCacheManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC0985381EA130D3E02F4703 /* SBUCacheManager.swift */; }; + 4A7C6734C94AD1542BAAC0A2 /* SBUOpenChannelCommonContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9018A7FF3D55A1153126128 /* SBUOpenChannelCommonContentView.swift */; }; + 4B24D06B527BC87BEA7757B6 /* SBUParentMessageInfoReactionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BF9C43480BB8634422D328F /* SBUParentMessageInfoReactionView.swift */; }; + 4D4352A5E361C993F83DFB72 /* SBUMessageWebView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7CC62AD1BFC56809B2A8540C /* SBUMessageWebView.swift */; }; + 4DAADCF9DCA668F2D6203509 /* SBUColorSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0599B06D5528F46BE1A401E8 /* SBUColorSet.swift */; }; + 4EF3B2FE2BB2CBAC9F84C10E /* SBUScrollOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = E91901B580726CCC24F5672B /* SBUScrollOptions.swift */; }; + 4F295B1F0EAA08025EEC89EE /* SBUEmojiManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9418D60F4915AC641F2148C7 /* SBUEmojiManager.swift */; }; + 4FFA56A286BE753DB800D5C0 /* SBUExtendedMessagePayloadCustomViewFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C610F7D7AEB52CC0C6CA3FD /* SBUExtendedMessagePayloadCustomViewFactory.swift */; }; + 502F474BAA1649358C3E0854 /* SBUDebouncer.swift in Sources */ = {isa = PBXBuildFile; fileRef = F981416BB0803F46A7C86A72 /* SBUDebouncer.swift */; }; + 5053760AACCB2237286F0A0D /* SBUContentBaseMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = B928FBA764E60FD888DB9262 /* SBUContentBaseMessageCell.swift */; }; + 543F6083BF97D0430E10DCA5 /* SBUCreateOpenChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7D8B5FF9C4444A8AE810EEDC /* SBUCreateOpenChannelViewModel.swift */; }; + 54401B90205E8480F5F9C8E7 /* SBUChatNotificationChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4799119654406D46C918D6C7 /* SBUChatNotificationChannelViewController.swift */; }; + 5455820F2448D9C290508C06 /* SBUBaseSelectUserModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57AFF029AB67E9E3DAD47ED2 /* SBUBaseSelectUserModule.List.swift */; }; + 55B483F179C71E6B8EECE1A6 /* MessageTemplateTestViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDA582D88923629AE504246E /* MessageTemplateTestViewController.swift */; }; + 5777D384610017FAE384F4F4 /* SBUTypingIndicatorBubbleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBF01D975582E3BE514B4A61 /* SBUTypingIndicatorBubbleView.swift */; }; + 5990129DD401D5270042A9FF /* SBUModerationsModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6C2CAF5D8DDD07ADB0F5972D /* SBUModerationsModule.Header.swift */; }; + 5D63E492F884BB72A867E354 /* SBUTableViewCell.Unavailable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F0D89DF2E7E5310B7303336A /* SBUTableViewCell.Unavailable.swift */; }; + 5DDAAC07DA68011694610E7C /* SBUQuotedUserMessageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A6C2CCD8C5345DE571B7E0C /* SBUQuotedUserMessageView.swift */; }; + 5FA1D3C9C1F1F4D94A31A19F /* SBURegisterOperatorModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AEC878BE3DB4FD78022AD5F /* SBURegisterOperatorModule.swift */; }; + 614F2CF8FA26AB83A0EEC983 /* SBUTheme+Type.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35212187D2E5368720261B3F /* SBUTheme+Type.swift */; }; + 616254F50366AF5C0AB589CC /* UIApplication+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7B584800DBE4554AF6C8FDA /* UIApplication+SBUIKit.swift */; }; + 620B0D472413587E9D658DEB /* SBUModerationsViewModel.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 11EE754A973762A84AEC87D0 /* SBUModerationsViewModel.Deprecated.swift */; }; + 62194DA20182B3F25FABCE51 /* SBURegisterOperatorModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BA0C57DFA099936261E3D65 /* SBURegisterOperatorModule.List.swift */; }; + 6230A3F1A5E602B28C0C93D3 /* SBUIconSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C6B55A5F36AB450C77383D4 /* SBUIconSet.swift */; }; + 63C568470DE7C0029CCE3CAA /* SBUOpenChannelSettingsModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = B03F86CCC9C0FF9109AC4A30 /* SBUOpenChannelSettingsModule.Header.swift */; }; + 641C2CEF19A65975D3012926 /* SBUFontSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = F24E7B0EE6F9F2AC1EE56D3B /* SBUFontSet.swift */; }; + 6467D989331B604188CD693B /* SBUCreateChannelViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF14B193A9E6539527CD9218 /* SBUCreateChannelViewController.Deprecated.swift */; }; + 64789B1FB9D51D71A47609B0 /* SBUMessageSearchViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5873B2E97F3C6B5744AF079 /* SBUMessageSearchViewModel.swift */; }; + 65DBF09EDC64D99F3E4BE018 /* Release.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 8BB5C40529776A0939AF5375 /* Release.xcconfig */; }; + 682769305BA916C2D0AC3B68 /* SBUParentMessageInfoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E63A8D6A6A1940E8AABC3A06 /* SBUParentMessageInfoView.swift */; }; + 68ED6BA519C5B7E44604C3A3 /* SBUAlertView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66149F4E70539DC44B7BD4B1 /* SBUAlertView.swift */; }; + 69FDDC0A7D245E07D42851DA /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F2DEEC8974EEDCCFF623DEEF /* Assets.xcassets */; }; + 6A5AA8FF67B45FD95E3DB58C /* SBUOpenChannelFileMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = C75BF25A47392C7A51D4735F /* SBUOpenChannelFileMessageCell.swift */; }; + 6B4972D897508F0805EC64F0 /* UIImageView+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = C90909661ED3AECAEF743954 /* UIImageView+SBUIKit.swift */; }; + 6BF03D544009C655C13C6114 /* SBUBaseViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6AE9EE27E2144A25B58B718 /* SBUBaseViewController.swift */; }; + 6C267B16901E669BD6A06612 /* SBUFileMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87FA488885FB02557D293F7A /* SBUFileMessageCellParams.swift */; }; + 6CA9F4E75739185180AFF6A1 /* SBUHighlightMessageInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = ADB3196EA9B8F941C8803F49 /* SBUHighlightMessageInfo.swift */; }; + 6D4F646FA3D409E2B4280B06 /* SBUMenuCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9CF39537E2D18D0A6A1B2D49 /* SBUMenuCell.xib */; }; + 6F928DF6307EB2C6C47801BB /* UIStackView.SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = E486DCAF8F72570FF6C21797 /* UIStackView.SBUIKit.swift */; }; + 6FD1B70EB1CCBE051CAF8FA6 /* Sequence+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02C1A7BF20352FA6BB90C899 /* Sequence+SBUIKit.swift */; }; + 7059B572261ACE27CB4A9DCC /* SBUModuleSet.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5934998683DBE48B7BB9D608 /* SBUModuleSet.Deprecated.swift */; }; + 7285FCBE1055AC51231B13C9 /* MessageTemplateRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = F898620E6D4EBDD8319613E9 /* MessageTemplateRenderer.swift */; }; + 73845EBBD39BC08843ED3DFF /* SBUTypingIndicatorMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 91D6CE35075BE41D91676260 /* SBUTypingIndicatorMessageCell.swift */; }; + 74D9137B47CC6A3716D54D1F /* SBUGroupChannelSettingsModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 889046C45305F5C0EEC67027 /* SBUGroupChannelSettingsModule.Header.swift */; }; + 7552FA9E27ED43D8A228CB48 /* SBUCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95C72AC687A23B405838CEA8 /* SBUCollectionViewCell.swift */; }; + 759DE0218BA0C165D4A49EB0 /* SendbirdUI.swift in Sources */ = {isa = PBXBuildFile; fileRef = DCC9BC13A1B66B0C9FD6C6E9 /* SendbirdUI.swift */; }; + 795A5150141436704A847DD7 /* SBUBaseSelectUserModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0A5443BCA9A05F902695485 /* SBUBaseSelectUserModule.Header.swift */; }; + 79C9A6741D9BFBBAD2C1AEEF /* SBUFeedNotificationChannelModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9536BA4C46447C8CDF22BFCB /* SBUFeedNotificationChannelModule.List.swift */; }; + 79E79456A6A19E72AB4F5012 /* SBUBarButtonItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = F615FB6E4174CA06CC953A46 /* SBUBarButtonItem.swift */; }; + 7AC12FA7CF0F2E98F2D7D0D8 /* SBUCategoryFilterCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5DD9B2DC9A15CE23FE8B92E /* SBUCategoryFilterCell.swift */; }; + 7AD43509173F965648C07930 /* SBUBaseChannelListModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F9972F1D6B42985FC584593 /* SBUBaseChannelListModule.swift */; }; + 7B92563DD17A4C7BED3CAED1 /* SBUCreateChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59BDE14B26EDC055E1BF2A4E /* SBUCreateChannelViewController.swift */; }; + 7F13C5B3656F8B65E199898E /* SBUBaseViewController.Unavailable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B09CF0D84533DCE84A1A008 /* SBUBaseViewController.Unavailable.swift */; }; + 7FBFB9E7397B25A4DB0F4FF3 /* SBUUnderLineTextField.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE3C47906960BD725E57D9DE /* SBUUnderLineTextField.swift */; }; + 80CB325ED9DEC0D6BD665F43 /* SBUOpenChannelListModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 475077F9EC52D0CB5F4AF1E4 /* SBUOpenChannelListModule.swift */; }; + 80FBEBF4D1B458C96039AEAA /* SBUViewLifeCycle.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF8932D10ABB762CAEF6B35D /* SBUViewLifeCycle.swift */; }; + 81F83A7C6BD9F88E27B1B0C6 /* SBUOpenChannelSettingsModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22FA0D5B94E7C4F5EC5E6620 /* SBUOpenChannelSettingsModule.List.swift */; }; + 8295CD2EF50CA0BB77C4EACB /* SBULayoutableButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0B277F24192630467F0D857 /* SBULayoutableButton.swift */; }; + 835DA48E5D66B47869DA767B /* Date+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A4A196367C558B41306B331 /* Date+SBUIKit.swift */; }; + 83FFA238F0281F77FA929BD3 /* SBUChannelTitleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8ACFABF8A5AA0281DCF7F87 /* SBUChannelTitleView.swift */; }; + 85BFF3BE5ADD078254584655 /* SBUImageContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03BB047BF6AE2CDB4CE2A910 /* SBUImageContentView.swift */; }; + 85CD86DF834F34EB0F4DE65F /* SBUAnimation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B1BBBC01EB2A86A282D1D32 /* SBUAnimation.swift */; }; + 85FF85F571CAC0BFFB2CFBD9 /* SBUGroupChannelListViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C9CE7AFD281D815DD24921E /* SBUGroupChannelListViewModel.swift */; }; + 86DE6F30BB635BE6088359DE /* SBUGroupChannelPushSettingsModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 509781E9E3CC0989512E5F66 /* SBUGroupChannelPushSettingsModule.swift */; }; + 86E543B40C5D11A6FD72F6C7 /* SBUReactionCollectionViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 22C7192CA8C004461FB36689 /* SBUReactionCollectionViewCell.xib */; }; + 87CAEBE02DEF4FB43A49C808 /* SBUOpenChannelSettingsModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C317F18296BFC864AFF40AA /* SBUOpenChannelSettingsModule.swift */; }; + 8868E4AEDE2237C6BF00C44D /* SBUVoiceMessageInputView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4AC5B88DC64125D423D6DDC4 /* SBUVoiceMessageInputView.swift */; }; + 886AE755ED1E1F4DCA2353BB /* SBUDateFormatSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C1EC1A3BA52F6D65EACECD5 /* SBUDateFormatSet.swift */; }; + 88F4331192910EB576F15B86 /* SBUMessageWebViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 11516613022A7CB0B04A9124 /* SBUMessageWebViewModel.swift */; }; + 89E8B7186695563BE767EA5D /* SBUFeedNotificationCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7923DE70363AB4A9441D1461 /* SBUFeedNotificationCell.swift */; }; + 8D073F09996C6000E67063B7 /* SBUOpenChannelListModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98F8FF2B47A3BA6F86568134 /* SBUOpenChannelListModule.List.swift */; }; + 8D2C13FE2CBCA19A6C3419FF /* SBUEmojiListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE93B488DD755528B8BC11AD /* SBUEmojiListViewController.swift */; }; + 8E4C758DC457A1AF3D013F3E /* SBUOpenChannelModule.Media.swift in Sources */ = {isa = PBXBuildFile; fileRef = 589C45ABE10B55119CFAD24E /* SBUOpenChannelModule.Media.swift */; }; + 8E6F2632A85E64371E3D501D /* CommonProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13BB5AED66BB2664B4AC6289 /* CommonProtocols.swift */; }; + 8EDAAFF8837FD7BCFC7DFA9B /* SBUConfig.Base.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8EF18B112FE9655F63E03613 /* SBUConfig.Base.swift */; }; + 8EFA37E01C032C946E0CA30C /* SBUCacheManager.Image.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B889893CBF2930B84D76BF6 /* SBUCacheManager.Image.swift */; }; + 8F6884055A9CD29D7913E8CF /* SBUChatNotificationChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CA358756BFBE63246999CFC /* SBUChatNotificationChannelModule.swift */; }; + 901B46E3123C9723D5773DDD /* SBUCreateOpenChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = E137D05DFBE1EA7BBBBA8842 /* SBUCreateOpenChannelModule.Header.swift */; }; + 905A5593FAD01CC0DFCB2E9D /* SBUGroupChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FA6711B7E60902B3EE009D3 /* SBUGroupChannelViewController.swift */; }; + 906252373543A5AF6030EBC1 /* SBUFileViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF22DE70616E9D64E27947F3 /* SBUFileViewController.swift */; }; + 9081D224F047E489DB3123DE /* SBUView.Unavaliable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B0FBE1676A32250B496F95D /* SBUView.Unavaliable.swift */; }; + 92CB27A8FA61B9D518217A66 /* Base.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = D676E5A38A17D3C64639E029 /* Base.xcconfig */; }; + 947FC08C5CB41A13126307CF /* SBUQuoteMessageInputView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A25EC53445992C5F407736B /* SBUQuoteMessageInputView.swift */; }; + 9509FFEFBE2B7BC8B5569507 /* SBUOpenChannelListViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2106D0256B2B35F304280972 /* SBUOpenChannelListViewModel.swift */; }; + 95170530F5B9AAB20CDC4EC1 /* SBUMessageThreadModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = FFF1D8E9142C0E072DDDF8CD /* SBUMessageThreadModule.List.swift */; }; + 967A5E6C5F810FD88FCB46DE /* SBUExtendedMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = F464994CC5350FB3EE23747E /* SBUExtendedMessage.swift */; }; + 9693C93528124919ACA0AC76 /* MessageTemplateRenderer.Image.swift in Sources */ = {isa = PBXBuildFile; fileRef = E749BDF3B825E7BD18178872 /* MessageTemplateRenderer.Image.swift */; }; + 9842830CF1DE5835B0001D5F /* SBUConfigManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD7513D642162B23471727C4 /* SBUConfigManager.swift */; }; + 99138EC5EEE828E3DA0CF127 /* SBUBaseChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90463FD5A7830689C13AF5F5 /* SBUBaseChannelModule.swift */; }; + 99429B19775A8CCBF295D285 /* SBUTheme.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7D1E8E82F632DF4D683BE3B /* SBUTheme.swift */; }; + 9B84FEA897330285D652BE81 /* SBUBaseSelectUserViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 392FE63782CD89490E08BC71 /* SBUBaseSelectUserViewController.Deprecated.swift */; }; + 9BF93618B5CF55C981FB9A16 /* NSLayoutConstraint+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DA4DBD924DDD2375AE39D45 /* NSLayoutConstraint+SBUIKit.swift */; }; 9C037E2E280432DB00059696 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C037DD4280432DB00059696 /* ViewController.swift */; }; 9C037E2F280432DB00059696 /* UILabel+Ext.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C037DD7280432DB00059696 /* UILabel+Ext.swift */; }; 9C037E30280432DB00059696 /* UIImageView+Ext.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C037DD8280432DB00059696 /* UIImageView+Ext.swift */; }; @@ -251,33 +265,24 @@ 9C037E44280432DC00059696 /* LiveStreamChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C037DF6280432DB00059696 /* LiveStreamChannelViewController.swift */; }; 9C037E45280432DC00059696 /* CommunityChannelListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C037DF8280432DB00059696 /* CommunityChannelListViewController.swift */; }; 9C037E47280432DC00059696 /* CreateCommunityChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C037DFA280432DB00059696 /* CreateCommunityChannelViewController.swift */; }; + 9C0A6090583C3AFEE1569181 /* SBUBaseChannelSettingsModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F8E7C50851BBC81E4BD45B7 /* SBUBaseChannelSettingsModule.swift */; }; 9C2A3C5B28863A9E0052F71D /* SendbirdChatSDK in Frameworks */ = {isa = PBXBuildFile; productRef = 9C2A3C5A28863A9E0052F71D /* SendbirdChatSDK */; }; 9C3EBE2328091D2A00B5366B /* NotificationService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C3EBE2228091D2A00B5366B /* NotificationService.swift */; }; 9C3EBE2728091D2A00B5366B /* NotificationService.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 9C3EBE2028091D2A00B5366B /* NotificationService.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; 9C5DCD49242AFA7C00C41106 /* UserNotifications.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9C5DCD48242AFA7C00C41106 /* UserNotifications.framework */; }; - 9C86574CC6F0CEE770C20D3A /* SBUMention.swift in Sources */ = {isa = PBXBuildFile; fileRef = A87B57B5B09DB04D0836F71E /* SBUMention.swift */; }; - 9CAB0E774A24C1CDFB9DC167 /* SBUFeedNotificationChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDB09C5ED906D823288029BA /* SBUFeedNotificationChannelViewModel.swift */; }; - 9D57417AC9EDF0631BDD62A2 /* SBUTypingMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3046652E8A8AF7F4EE65FDFA /* SBUTypingMessageCellParams.swift */; }; - 9DC6B1E7812553DF2C033653 /* SBUMessageCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06FB854674AD775E414E4BB0 /* SBUMessageCache.swift */; }; - 9E140E46E93506356F414007 /* SBUVoicePlayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2217E6814D97628BD2AE52A /* SBUVoicePlayer.swift */; }; - A03E598ADF71F87548DB9BF5 /* SBUCoverImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 81CEED10E643BC0A28223A5E /* SBUCoverImageView.swift */; }; - A0D2E22548834B0296CF84CC /* SBUOpenChannelSettingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B15F7D2037D4C936984793AE /* SBUOpenChannelSettingsViewController.swift */; }; - A11B452F0CF02986295CE466 /* SBUSelectablePhotoViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7D897BF5159A76D3B9A72A1A /* SBUSelectablePhotoViewController.swift */; }; - A15E243152B8A8E85D821D12 /* SBUCreateOpenChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A6047FD9F8CBBF465C4A3F8 /* SBUCreateOpenChannelModule.Header.swift */; }; - A2889E7D006F7ADD12E19691 /* SBUBaseChannelListModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = C850028D0EC6F258428EB112 /* SBUBaseChannelListModule.swift */; }; - A30EDA84A5E2EA3E38F4FE83 /* SBULayoutableButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDE63FFD74A1842A26157784 /* SBULayoutableButton.swift */; }; - A330FA9A66BA00D23D30F866 /* SBUChatNotificationChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 421C3A4567D0E73AA1EE7F37 /* SBUChatNotificationChannelModule.Header.swift */; }; - A492EB8D4A5042C27F8F5551 /* SBUMentionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BB19E97A247250979B66E08 /* SBUMentionManager.swift */; }; - A4BF9EC0A887CA800CFC357B /* MultipleFilesMessage+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2833BAB9311DF91AF2AD6EA4 /* MultipleFilesMessage+SBUIKit.swift */; }; - A5A40D4CC8D835BC419C79CB /* SBUUserMessageTextViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8AE109826CB70D9DA5A49EB7 /* SBUUserMessageTextViewModel.swift */; }; - A63D7BD9E1882F75004689D3 /* SBUChannelPushSettingCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 211D12FFC9AEE6FD321FB373 /* SBUChannelPushSettingCell.swift */; }; - A6981DC19212D3C8800374E3 /* SBUBaseSelectUserModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = DFB3E01DE722F0F9EB33509B /* SBUBaseSelectUserModule.Header.swift */; }; - A704AB807949CBFE1C692D14 /* SBUUnknownMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = E479DC0012A236E32FD17343 /* SBUUnknownMessageCell.swift */; }; - A7A27504BCB810C77A8E5221 /* SBUPhotoCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 425187AA61F2486F98B1B407 /* SBUPhotoCollectionViewCell.swift */; }; - A848EF8289613FE1E99D048A /* SBUUser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52F22329ADED4C86ADB592D8 /* SBUUser.swift */; }; - A859F8525BAE1E99BC7016D0 /* SBUBaseChannelSettingsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2E9E1626F54D7A6A917545A /* SBUBaseChannelSettingsViewModel.swift */; }; - A85F11E322101F00D2A8E5D5 /* SBUReactionsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B392303476483A559471DC6 /* SBUReactionsViewController.swift */; }; - A8E11429D8B0B601F6711140 /* SBUUserMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9D5FA4BE98A1A152A4B9DDC /* SBUUserMessageCellParams.swift */; }; + 9DE7E5B666B2B7C99142FB2D /* SBUBaseSelectUserViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B29C3D09D40D31B83D41C3FB /* SBUBaseSelectUserViewController.swift */; }; + A013D3C00ED28C21CF259248 /* SBUModerationsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 869AC45675B3736CDECAD5F3 /* SBUModerationsViewModel.swift */; }; + A0C5E85177CB42F291D21F31 /* SBUMessageThreadViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1844C9968B7331F1538C7366 /* SBUMessageThreadViewModel.swift */; }; + A1B4EFE9E49F0D398356D6D8 /* SBUBaseChannelSettingsModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F2E7256AF48965AECA7C6DD /* SBUBaseChannelSettingsModule.Header.swift */; }; + A326E5FE4C722959BD4A57C7 /* SBUChatNotificationChannelModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0EDC9D06C1E899E6E18D313C /* SBUChatNotificationChannelModule.List.swift */; }; + A34565D42410367FDC2DE838 /* SBUMessageSearchModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = E860A695667E0075D5E06DEE /* SBUMessageSearchModule.Header.swift */; }; + A3660D748B76048AE2099134 /* SBUNotificationTimelineView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F5852402071EC8E5A72F3A6 /* SBUNotificationTimelineView.swift */; }; + A496E63CF04C088C802C0FB2 /* SBUTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = E56F934051B6BA95713778AF /* SBUTableViewCell.swift */; }; + A5723F1B3F5208F31F591D1E /* SBUGlobals.swift in Sources */ = {isa = PBXBuildFile; fileRef = 654610CEC554DB27ACBC43B1 /* SBUGlobals.swift */; }; + A6BE6CBBAA465CF19DB2D606 /* SBUSuggestedReplyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB23FD13C147EFC1327F05AC /* SBUSuggestedReplyView.swift */; }; + A779EBB072D89CC70132B3AA /* SBUOpenChannelUserMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E266F21A4EF0F1106EE68D9 /* SBUOpenChannelUserMessageCell.swift */; }; + A7A25D6F1C98D53D809C103F /* SBUQuotedBaseMessageViewParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51E14C16E6A4139AACEF788F /* SBUQuotedBaseMessageViewParams.swift */; }; + A807BB7DD206BBA6B5F72D48 /* SBUUnknownMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 761B839CB8A4FE1560765B78 /* SBUUnknownMessageCell.swift */; }; A93AE87B2A383CAA00AFFF9C /* CustomBaseViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = A93AE84F2A383CAA00AFFF9C /* CustomBaseViewController.swift */; }; A93AE87C2A383CAA00AFFF9C /* ChannelListCustomManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = A93AE8522A383CAA00AFFF9C /* ChannelListCustomManager.swift */; }; A93AE87D2A383CAA00AFFF9C /* InviteUserCustomManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = A93AE8532A383CAA00AFFF9C /* InviteUserCustomManager.swift */; }; @@ -311,137 +316,139 @@ A93AE8992A383CAA00AFFF9C /* CreateChannelVC_UserList.swift in Sources */ = {isa = PBXBuildFile; fileRef = A93AE87A2A383CAA00AFFF9C /* CreateChannelVC_UserList.swift */; }; A93AE89B2A38479400AFFF9C /* ChannelListVC_CustomHeader.swift in Sources */ = {isa = PBXBuildFile; fileRef = A93AE89A2A38479400AFFF9C /* ChannelListVC_CustomHeader.swift */; }; A93AE89D2A3847B600AFFF9C /* ChannelListVC_CustomList.swift in Sources */ = {isa = PBXBuildFile; fileRef = A93AE89C2A3847B600AFFF9C /* ChannelListVC_CustomList.swift */; }; + A94FDE92010E30BBE8FF5B25 /* SBUAdminMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7AFE4777A6D8332A62D03BF /* SBUAdminMessageCell.swift */; }; A968B36A28C86B5700271C60 /* LiveStreamChannelListViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A968B36928C86B5700271C60 /* LiveStreamChannelListViewModel.swift */; }; A968B36C28C86B8600271C60 /* LiveStreamChannelListModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = A968B36B28C86B8600271C60 /* LiveStreamChannelListModule.List.swift */; }; A968B36E28C9AB7F00271C60 /* LiveStreamChannelModule.Media.swift in Sources */ = {isa = PBXBuildFile; fileRef = A968B36D28C9AB7F00271C60 /* LiveStreamChannelModule.Media.swift */; }; - AC2CD36CEB7DD0F5BB33BF6D /* SBUConfig.Base.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F961B1410AF1C3374486D6D /* SBUConfig.Base.swift */; }; - AC3F8B2A1ADF4466753600B7 /* SBUCreateChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88348D4BFE62ECF2CBEDB0B3 /* SBUCreateChannelModule.swift */; }; - AE46E3EA166D20BE004FD5F0 /* SBURegisterOperatorModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 182DA36A224261871782117B /* SBURegisterOperatorModule.Header.swift */; }; - B0F15E2BE45E6675E0C576A9 /* SBUMessageStateView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E80BE50A6F796529DC6936FC /* SBUMessageStateView.swift */; }; - B0FAF203FC8AAC5C4DF4992B /* SBUVoiceFileInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01A5C331CDAC1A831A8805ED /* SBUVoiceFileInfo.swift */; }; - B1038197A552192A4314C5F4 /* MessageTemplateParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5385C04B9A349FCFDFFA4B92 /* MessageTemplateParser.swift */; }; - B18FE95D77DC43A429FF6547 /* SBUViewLifeCycle.swift in Sources */ = {isa = PBXBuildFile; fileRef = E20A65CA76F9373F01A52E37 /* SBUViewLifeCycle.swift */; }; - B1B7A7B0B5B39A82FD7DFB4C /* SBUGroupChannelListModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C70CC4B80861153433E489C /* SBUGroupChannelListModule.Header.swift */; }; - B2FE64CDC7FE3ADF6A725E29 /* VoiceMessageStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = B66CED1D394F7389991A15C4 /* VoiceMessageStatus.swift */; }; - B300119E483DC8BAC32953D1 /* SBUFeedNotificationChannelModule.CategoryFilter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5665BD2A6C12035F12E8CD4B /* SBUFeedNotificationChannelModule.CategoryFilter.swift */; }; - B32D962BE03879E4FBC62991 /* SBUCollectionViewFlowLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D233E38D437CFFE1E989D72 /* SBUCollectionViewFlowLayout.swift */; }; - B339FDAB937FE1A8D3EE78D8 /* SBUTypingIndicatorMessageManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F8583A32451CC1F0C8D520D /* SBUTypingIndicatorMessageManager.swift */; }; - B397017166585F8E03884391 /* MessageTemplateRenderer.Image.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3FAAF41FF3804EA099F3951C /* MessageTemplateRenderer.Image.swift */; }; - B3C9D546D377F37B364282F3 /* SBUCommonDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2E70FA2C1F6CE3D53387477 /* SBUCommonDelegate.swift */; }; - B4D2524CCD4953F455C52FE8 /* UITextField+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = B00D6064711D2270A05F74CC /* UITextField+SBUIKit.swift */; }; - B4EB388F5B279E3F11423E60 /* SBUCoverImageView.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD7E76AE4730DDB54C71AA80 /* SBUCoverImageView.Deprecated.swift */; }; - B519637CDA53EDD301DEE688 /* QuotedFileImageContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F53986E9E026E908F57BA6C8 /* QuotedFileImageContentView.swift */; }; - B5A42D78D6B25317E5DB889E /* SBUTheme.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3ACF8E3D5876A76519D0C51E /* SBUTheme.swift */; }; - B661AB38624AB56F9D68177D /* SBUInviteUserViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59C43CF4036FEB33894ABEDC /* SBUInviteUserViewController.swift */; }; - B96F73E9CF37D7EB99E78F58 /* SBUModerationsViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 978A249AA68269C332C17F5B /* SBUModerationsViewController.Deprecated.swift */; }; - B9825DB0E8667C284F567E09 /* SBUGroupChannelSettingsModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 408AE24EF85B26FF075E8DAF /* SBUGroupChannelSettingsModule.swift */; }; - B9EC638311852B130BE6990F /* SBUOpenChannelSettingsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6338164168EC12A315AF6626 /* SBUOpenChannelSettingsViewModel.swift */; }; - BAF9B1915CB6DB6729FFC9BE /* SBUExtendedMessagePayloadCustomViewFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04BAC88EA0E4ECE0BDE98D94 /* SBUExtendedMessagePayloadCustomViewFactory.swift */; }; - BAFB4C7AD0B77C2395DAA03C /* Array+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B2634BB224050571525F902 /* Array+SBUIKit.swift */; }; - BCD638DBECB39E64D6C90A2F /* SBUConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1470FEF539F6ACCCCB505D0A /* SBUConfig.swift */; }; - BD73AE04257F44F43F55D29E /* SBUBaseChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 41E3EBDCF83ECBA10EEFCEB0 /* SBUBaseChannelViewController.swift */; }; - BE12A5C2D645067BAA85641B /* SBUMessageThreadModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC7677D9FE4E44E5ECA9F659 /* SBUMessageThreadModule.List.swift */; }; - BE192873B462B1467640E992 /* SBUOpenChannelViewController.Unavailable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27E19CAAB3B7E3EF9BD7CEEF /* SBUOpenChannelViewController.Unavailable.swift */; }; - BF0AD5A04520C4A83A8A4227 /* SBUAdminMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A6F791585859414AB3F0CCC /* SBUAdminMessageCell.swift */; }; - BF118DF2B5525745A2F9F30D /* SBUOpenChannelFileMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB3687F2C225811959FCA4D4 /* SBUOpenChannelFileMessageCell.swift */; }; - C018AFA27E1E4AFB80E471F5 /* SBUBaseChannelListViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = D299D6F26F16672BA56E66C9 /* SBUBaseChannelListViewModel.swift */; }; - C01F3B7CF0BE22914B1A572B /* SBUMultipleFilesMessageCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 837C9913D01794A37AA8C0BD /* SBUMultipleFilesMessageCollectionViewCell.swift */; }; - C19750CC96B7A2E74FABCEA2 /* SBUBaseChannelSettingsModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9E6F6C2715901796252A4C60 /* SBUBaseChannelSettingsModule.Header.swift */; }; - C2829D2D5FEEB135FD323FEC /* SBUFileMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = B792165B3E9F3E8893600CF2 /* SBUFileMessageCellParams.swift */; }; - C2D4FA9CB61AE3E0A1E7FA4F /* Sequence+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 200E69F6E0B5591D74145CE2 /* Sequence+SBUIKit.swift */; }; - C3421B6F80FD56C48DFE9579 /* SBUGroupChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = C51F6EDDC7A47F552B2797F1 /* SBUGroupChannelModule.swift */; }; - C43DE45C674D0D0960B2D57F /* SBUUserListViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CF9AD6B81ECCBD0135E9BE5 /* SBUUserListViewModel.swift */; }; - C461F44F002FA60BE710BB28 /* SBUBaseChannelListModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDFDBA1A59DF10DF329445EA /* SBUBaseChannelListModule.Header.swift */; }; - C49A795F915EB25BFE32FA61 /* SBUOpenChannelModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = C80758E57406DB6930296FE1 /* SBUOpenChannelModule.List.swift */; }; - C4ABEA941EAA782957918250 /* SBUCreateOpenChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = FFFA2BF925F033F4362E7F4F /* SBUCreateOpenChannelViewModel.swift */; }; - C53C063EAB9F6E7E3BE79E29 /* SBUOpenChannelListModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5BE6AE27650773872B0E94 /* SBUOpenChannelListModule.List.swift */; }; - C563496A9CE0A244D224964F /* SBUQuotedMessageViewProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4C18DAAF1B58DEB2FA62BD7 /* SBUQuotedMessageViewProtocol.swift */; }; - C61B5E8403DA9375827E347D /* SBUMemberListViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1A7466B9D04A2607EC2FB1 /* SBUMemberListViewController.Deprecated.swift */; }; - C8D571D43E4F4FBF0B2BB5A9 /* SBUBaseSelectUserModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 58645AFAF1F6197B4F769819 /* SBUBaseSelectUserModule.swift */; }; - CC8A6E87DE6C0D4001C05304 /* StringProtocol+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87C6BD82C91BDB00548EA385 /* StringProtocol+SBUIKit.swift */; }; - CC8ADA338627002C918CA800 /* SBUBaseViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA9B657E14AD5B66C781D32 /* SBUBaseViewController.swift */; }; - CCAEAC16F5F5EBC0728E52C3 /* SBUUserMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5DA1A955B249D3E59488A2F3 /* SBUUserMessageCell.swift */; }; - CD03D1D0957E4D4FB3142CA6 /* SBUGroupChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 56AF15637C550EC6AEEFF0EA /* SBUGroupChannelModule.Header.swift */; }; - CD27BB8E74CE744AB0E345A2 /* SBUOpenChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 495BA3046AD6A1CC99ED2A8D /* SBUOpenChannelModule.Header.swift */; }; - CEA1C189C37D01EB0CB63B64 /* SBUUserMentionConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 86CEBE8FD03BC8B730E6CC9C /* SBUUserMentionConfiguration.swift */; }; - CEB96786831783EE4A1FF55A /* SBUUserProfileView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09AE53DAD099C0DF1A7D0A46 /* SBUUserProfileView.swift */; }; - CF50B1DCF6A6280C5E981465 /* SBUMessageWebView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65D15636F74327D001C2F9B4 /* SBUMessageWebView.swift */; }; - D1252E222B12E2A9301DB1D3 /* SBUOpenChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0388CE6D43AEE7C3433C6FCF /* SBUOpenChannelViewController.swift */; }; - D14B888C57F480BE233DE88F /* SBURegisterOperatorModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7393553FC42515C251EA370D /* SBURegisterOperatorModule.swift */; }; - D1897325CD5C65752391A26C /* SBUMessageDateView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 567A7DA6F378DFB20F32A01A /* SBUMessageDateView.swift */; }; - D1B1E639DA68B63AB24D5C32 /* SBUBaseViewController.Unavailable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33A8F37825C101F42BE3C6E6 /* SBUBaseViewController.Unavailable.swift */; }; - D1FD3F22F28359F6E9B7FEF5 /* SBUPropertyWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = D948A237BA090BF109577924 /* SBUPropertyWrapper.swift */; }; - D265A075986A4FC7BFA756F1 /* SBUMenuSheetViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5675662CAE0E3EC0E4A0392F /* SBUMenuSheetViewController.swift */; }; - D28323701294B6608FBE0D7D /* SBUModerationsViewModel.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = E75F5859707FA796BE994065 /* SBUModerationsViewModel.Deprecated.swift */; }; - D3CE433601D9F20E0181C9A8 /* SBUConfig.CodingKeys.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C3BC711769BD333499739CE /* SBUConfig.CodingKeys.swift */; }; - D3EB8A90EEA0783BECB717E2 /* SBUGroupChannelModule.Input.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59F6653A6A770517CFA01730 /* SBUGroupChannelModule.Input.swift */; }; - D447922ABC2400AED168D7FF /* SBUTypingIndicatorMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7443F3634A2061C177745E2 /* SBUTypingIndicatorMessageCell.swift */; }; - D46DDAEB09D018C8F3D6DA16 /* SBUMessageThreadModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1607CCD3E3572A93C471009D /* SBUMessageThreadModule.swift */; }; - D5DEAB148F660AF204DB5EAA /* SBUInviteUserModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8B3D8C76B5E6AC87F41C832 /* SBUInviteUserModule.Header.swift */; }; - D5F692533E568D088A5C4D81 /* SBURegisterOperatorViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D99A1DCBE2F0D2458B752E5D /* SBURegisterOperatorViewController.swift */; }; - D64FAECBDE563D493CF47407 /* SBUNotificationChannelManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F28088DDCC952AAAD58ED11 /* SBUNotificationChannelManager.swift */; }; - D6653A2DA6826FF0A17225E5 /* SBUMessageSearchModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FCE2A23E4ABAB4C8CEE6515 /* SBUMessageSearchModule.swift */; }; - D7CB54195380451592F15DC2 /* SBUOpenChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B011BD74F2B528EC8981379 /* SBUOpenChannelModule.swift */; }; - D7DB532D41A7780912CB7EB9 /* SBURegisterOperatorViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 338AEF6DF95C9D03E2AEC56F /* SBURegisterOperatorViewModel.swift */; }; - D93C2BBED0C9C9BC85536E12 /* SBUGroupChannelPushSettingsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3399972117CA473E3F650FD2 /* SBUGroupChannelPushSettingsViewModel.swift */; }; - D9766F0290AFFA47F6BBC5A1 /* SBUBaseFileContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD3DBAD22A6750CDEBF4AB6C /* SBUBaseFileContentView.swift */; }; - D97717B619658828A72E3DFD /* SBUGlobals.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CA240761E41522704593600 /* SBUGlobals.swift */; }; - DBA9FFB7EC228EB5799607A6 /* QuotedFileCommonContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4288A53729AAD8A47E463BD /* QuotedFileCommonContentView.swift */; }; - DBCB614FF5146494B9BB0997 /* SBUInviteUserModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C15F5F88779D445378B3711 /* SBUInviteUserModule.swift */; }; - DC35DBB56568E3A6D228D427 /* UIImage+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 352A2680D588180C55FB591F /* UIImage+SBUIKit.swift */; }; - DD58C7FF6E467068F81F8319 /* SBUFontSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD31F27F086749A93ADB820C /* SBUFontSet.swift */; }; - DDB66AA7CDF0735EB9DFFD31 /* SBUEmojiManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = C275B15AD520830E149AC8BA /* SBUEmojiManager.swift */; }; - DE48408CA5280A97A09929DD /* SBUBaseChannelModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 190BE37B8F3521A8D643887B /* SBUBaseChannelModule.List.swift */; }; - DEF440D632C0EF964BCA75EA /* SBUStackView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 807DCAED2F0633FB78DAE04A /* SBUStackView.swift */; }; - DF4F895BD5337CA0D15D0900 /* SBUNewNotificationInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57CF85F68D2CF31882400B19 /* SBUNewNotificationInfo.swift */; }; - DF7CF0AE2912017233C2525C /* SBUBaseSelectUserViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C3F26F59A69BE3551DEF811 /* SBUBaseSelectUserViewController.swift */; }; - E05A98A1377DCBFAA4AFBAC7 /* SBUGroupChannelListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF15ACE03A81767F4A871C53 /* SBUGroupChannelListViewController.swift */; }; - E05C1E2426358E9C4DC5FE63 /* BaseMessage+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = E6272D852F84F6AC1A867BFF /* BaseMessage+SBUIKit.swift */; }; - E0A2FC6A3039FC90E879EB42 /* SBUMessageThreadViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0776AA990B7D660891195A66 /* SBUMessageThreadViewController.swift */; }; - E0BF8074971661C52DA00FF8 /* SBUTypingIndicatorMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA411367206ECF77B7FDC163 /* SBUTypingIndicatorMessage.swift */; }; - E1C38CE490C6B2630BEB21ED /* SBUForms.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEACB70B14FF0C1CB5C10576 /* SBUForms.swift */; }; - E23E71133C0965A95BA15907 /* SBUCacheManager.Image.swift in Sources */ = {isa = PBXBuildFile; fileRef = F0ADCDCA8A5D03883919A5D3 /* SBUCacheManager.Image.swift */; }; - E2E19B516B7E56B6CDBEC963 /* SBUPermissionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43C4B9D558CC9F310B82FDBF /* SBUPermissionManager.swift */; }; - E3BCEDA93245DEB33FDEF01C /* SBUBaseChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85EBFE79349E4201CF6D3E9C /* SBUBaseChannelModule.Header.swift */; }; - E3F00AD8A78E0B6C0CB79306 /* SBUUserListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D6437A8F95512DBAA1EFDECE /* SBUUserListViewController.swift */; }; - E5CC7EFEA4DB37D73A3FE88C /* SBUCreateChannelViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDBBC7D265D2328A3124473A /* SBUCreateChannelViewController.Deprecated.swift */; }; - E60A2D11B1A5962BA38596B9 /* SBUOpenChannelAdminMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = E30AD3FF06247E600FB5F5BC /* SBUOpenChannelAdminMessageCell.swift */; }; - E61CF8ABBF12DE61A7FC6453 /* SBUMentionConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = EFF5C0905479887F6D56B40F /* SBUMentionConfiguration.swift */; }; - E7608600949FFE0127366829 /* SBUReactionCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = F67B0CEFB11FA640BFD027CA /* SBUReactionCollectionViewCell.swift */; }; - E7994014FEBFEC6C9430C113 /* SBUSelectableStackView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA436EA7617A1A24B5BC1271 /* SBUSelectableStackView.swift */; }; - E81A54FFAC3C516BDEB4AB5D /* SBUGroupChannelPushSettingsModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B114AA4F085C5DF0BEBC21D /* SBUGroupChannelPushSettingsModule.swift */; }; - E8587C7BC0087D51FEB2E3EA /* SBUTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DEA999989E876EFEF948A59 /* SBUTableViewCell.swift */; }; - E8B87C98A0DFA3D7CF95A0E0 /* SBULoading.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4BEC04F80E8C9E365C25305 /* SBULoading.swift */; }; - E8E0FD775B72996AD5A6D901 /* SBUVoiceMessageInputView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE6B771CBCF2F3B045ACA90E /* SBUVoiceMessageInputView.swift */; }; - E9CA15509C62029ED4A8C489 /* SBUReactionCollectionViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = D5A85B7971D6B30DF8C3A0F5 /* SBUReactionCollectionViewCell.xib */; }; - E9E6BAF747AFB0EA8F8B6391 /* SBUBaseChannelViewController.Keyboard.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8ED807FBE8B96DE6C538BC86 /* SBUBaseChannelViewController.Keyboard.swift */; }; - EA2236128D9100F25C680FF4 /* SBUConfig.Common.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3509DD8A401350938E78702 /* SBUConfig.Common.swift */; }; - EAA0B56435A932E17D43A915 /* SBUUserNameView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F904F929E38FF5EE8AB6B72C /* SBUUserNameView.swift */; }; - EB19D9FD838D0A8760B58E5D /* SBUFileMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 400D8B296264143272C72EFB /* SBUFileMessageCell.swift */; }; - EBDA023941D6416341745318 /* SBUUserListModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42760D674305CAD0204A1E0E /* SBUUserListModule.Header.swift */; }; - EC2F53A5CC8909F5FCCADB7D /* SBUBaseChannelSettingsViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D311D2B4516671A61E4EF32 /* SBUBaseChannelSettingsViewController.Deprecated.swift */; }; - EDCB09D551FE312E339108A1 /* SBUNavigationTitleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 355E5E7AE98778B7789C5A02 /* SBUNavigationTitleView.swift */; }; - EFC83EC5AA3456B7999A4C6D /* SBUMultipleFilesMessageCollectionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48E297FD2EC1BA53C6F8138C /* SBUMultipleFilesMessageCollectionView.swift */; }; - EFCE2670187BFA2405A06A6D /* NSObject+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8EAF5B6803F11DF8D50E382 /* NSObject+SBUIKit.swift */; }; - EFCFAF3C81192C31DA2684A3 /* SBUOpenChannelModule.Media.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2BFEDFB4C4993C8A19D161B /* SBUOpenChannelModule.Media.swift */; }; - F07EFDE7D844C353E4224761 /* SBUChatNotificationChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA4DFA3C669C94E458F05B8A /* SBUChatNotificationChannelViewModel.swift */; }; - F163CF1830181409AB529FA0 /* SBUMessageReactionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D403DBAFC5CBA2896AA3451B /* SBUMessageReactionView.swift */; }; - F1B205137AFDF5875AD3E625 /* SBUChannelTitleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A85D6EF71647578C05F32B2A /* SBUChannelTitleView.swift */; }; - F1DC74DB1189EB12A85BCE63 /* SBUOpenChannelImageContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 08D59E1AFCFE79141DBC9E2D /* SBUOpenChannelImageContentView.swift */; }; - F395759140B66F435FBA2ED3 /* SBUOpenChannelContentBaseMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7113C590736C8643127DBFB8 /* SBUOpenChannelContentBaseMessageCell.swift */; }; - F3A2E2AAA2BBAA7C156349C2 /* SBUQuoteMessageInputViewParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7205B2C79984A402A4B8A14F /* SBUQuoteMessageInputViewParams.swift */; }; - F58DACDD1B167CDADC480A61 /* SBUTypingIndicatorInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 684C109F9C01AC58C3E241F4 /* SBUTypingIndicatorInfo.swift */; }; - F71F614AA61C9CF143089C30 /* SBUQuotedUserMessageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34AB83535E811854BE84295B /* SBUQuotedUserMessageView.swift */; }; - F71F7B9D996296684434B789 /* SBUViewModelDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = ADFECD11BC76ED18F3EAADCC /* SBUViewModelDelegate.swift */; }; - F754E1AC8E91410C53933D82 /* SBUFeedNotificationChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D535229000405CDA915CF9C4 /* SBUFeedNotificationChannelViewController.swift */; }; - F900B3D98B36BAE96A07AB99 /* SBUGroupChannelPushSettingsModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = CAE3736F2A969A12624E31A5 /* SBUGroupChannelPushSettingsModule.Header.swift */; }; - F9C60AB85DD13D850FA36B13 /* UIImageView+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = F083E0017E354443F6462653 /* UIImageView+SBUIKit.swift */; }; - FA22DE8D831D929ED8D6D408 /* SBUChannelListViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A89B4C79EA612DF21BAA96A /* SBUChannelListViewController.Deprecated.swift */; }; - FA339AF001321A0100611467 /* Base.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 77A9891B766214282D3C8F26 /* Base.xcconfig */; }; - FA72881B180F1A865C11AE6A /* SBUBaseChannelViewController.Unavailable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EF0D174B9D028B3B34BFC8 /* SBUBaseChannelViewController.Unavailable.swift */; }; - FBEF982D129CD1C94841F2C1 /* SBUInviteUserViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DE0A8CA0D97DF250076ACB7 /* SBUInviteUserViewModel.swift */; }; - FCA217ABD13D6FB77B74F4E7 /* SBUOpenChannelListModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = CFC946F2F09B3D400D646658 /* SBUOpenChannelListModule.Header.swift */; }; - FD43D0344653B92382629C61 /* SBUDashboardConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 32041E00DCBAD2EE6083A5CC /* SBUDashboardConfig.swift */; }; + AA3C1F83759C05B5D4DBFA55 /* SBUGroupChannelViewController.Unavailable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DB3EB75C40975BDD6B8689F /* SBUGroupChannelViewController.Unavailable.swift */; }; + AB06CF832C9920BAAEA097C1 /* SBUBaseChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 621D95B8A24F0A72DA537320 /* SBUBaseChannelModule.Header.swift */; }; + ABAF9BB3265FB89BFFD26140 /* SBUCreateChannelModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5587FC3DDAE895326A94B2E5 /* SBUCreateChannelModule.List.swift */; }; + AC40613E6D89F1C3D412EE58 /* SBUMessageSearchResultCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 800D22C5CBEAAE32EBC78893 /* SBUMessageSearchResultCell.swift */; }; + AE503824007CDFA709DF0B45 /* SBUGroupChannelPushSettingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EB89DB52E05196105C9B987 /* SBUGroupChannelPushSettingsViewController.swift */; }; + AFEF5833780936DC0A0C53C0 /* SBULoading.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEA4105EDA6B17E6E2EF22BD /* SBULoading.swift */; }; + AFFF0E22B6CB25BBEB787DB9 /* String+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EFF4C9950DF91E793A2EBF2 /* String+SBUIKit.swift */; }; + B155C5F7A444220E40014D43 /* SBUTypingIndicatorInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 038753485A269AC82E1A4CC4 /* SBUTypingIndicatorInfo.swift */; }; + B22AF8AD271AC4BA49A32252 /* SBUNewNotificationInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 86B0C475D10053B32349412F /* SBUNewNotificationInfo.swift */; }; + B240990D2355966D259BB295 /* SBUUnknownMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07963B220121399FF06E8203 /* SBUUnknownMessageCellParams.swift */; }; + B274F666E3564BE81D1C9C65 /* SBUBaseChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 162485D22D77990BE248C176 /* SBUBaseChannelViewController.swift */; }; + B297E22A41176BFDDB5CD488 /* SBUSuggestedMentionList.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8CA54667C6DB2614A2675C4 /* SBUSuggestedMentionList.swift */; }; + B29A74B396AD17DFACCAFEC7 /* SBUDashboardConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D0D250340415B07B43CD346 /* SBUDashboardConfig.swift */; }; + B2C6AB09AFCF708338D631BE /* SBUMessageSearchViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BE53A43E86A8F2169999B8B /* SBUMessageSearchViewController.Deprecated.swift */; }; + B3089C737EA4BD3B7A537305 /* SBUGroupChannelListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D574B456A43BF48219E3903E /* SBUGroupChannelListViewController.swift */; }; + B6156EFA13A92F1AE06CA05C /* SBUGroupChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = BECDA6D139DD0061D92E43E0 /* SBUGroupChannelModule.Header.swift */; }; + B654B30D186FC1BBE772B637 /* SBUModerationCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 170F961739EF0AB2DBC7B65D /* SBUModerationCell.swift */; }; + B75B76D4F552EF0E5C98C9DE /* SBUMultipleFilesMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 388412229BC579FF1452E57D /* SBUMultipleFilesMessageCellParams.swift */; }; + B7635FDD17CE825C3DB724ED /* CGSize+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = FCBE846A3431A5D716B4EFFA /* CGSize+SBUIKit.swift */; }; + B7A4AEC413875E300830C7B7 /* SBUUser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E228BBEA4820BD54A37A00C /* SBUUser.swift */; }; + B7CDFB2103A8635D8BC7AB4C /* SBUUserListModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = B39663B81820E40B46F708D7 /* SBUUserListModule.Header.swift */; }; + B884EFC36EBA92D1FF55454B /* SBUCacheManager.Version.swift in Sources */ = {isa = PBXBuildFile; fileRef = B0529AD252057145862198AC /* SBUCacheManager.Version.swift */; }; + B8F13CB361E0382D81E54510 /* SBUGroupChannelSettingsModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB621AB5BD391B3A8B0F4A62 /* SBUGroupChannelSettingsModule.List.swift */; }; + B93A2F652F489AE2770B8BCF /* SBUGroupChannelListModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = F0D04CDF954BED49034B1916 /* SBUGroupChannelListModule.List.swift */; }; + BC0278521AEA96C20FF5EEE2 /* URL+SBUKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = C84079BAC7750BC633639357 /* URL+SBUKit.swift */; }; + BD34CD19B138D30D61847462 /* SBUChannelListViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9000CB6FB2D20D2D386925B7 /* SBUChannelListViewController.Deprecated.swift */; }; + BD41DB1E47D07C92403C304C /* SBUFormViewParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A860C2449C175A5719F0C35 /* SBUFormViewParams.swift */; }; + BD845BBE8C02B4C10C6212E2 /* SBUGroupChannelListModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6DCD12ED664B7652FCFABED5 /* SBUGroupChannelListModule.swift */; }; + BD9DCDFC84F9DBE561E900D6 /* SBUUserListModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 677C4EF67F982A44CE23E60A /* SBUUserListModule.swift */; }; + BF13F9DA4B49616612B9B72D /* SBUForms.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AB199C2ABA57A6BDBB487D3 /* SBUForms.swift */; }; + BF1C02567349C2DE23E01287 /* SBUOpenChannelUnknownMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC6A2C261DAE207080F8196E /* SBUOpenChannelUnknownMessageCell.swift */; }; + BF7557046884512585D4B111 /* SBUNavigationTitleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EB5D1E1F1C11D1FC6AFEA578 /* SBUNavigationTitleView.swift */; }; + C0099ECAA04DA881A4A36254 /* SBUBaseChannelSettingsViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BE04F45B0E0D15BE83FDCBE /* SBUBaseChannelSettingsViewController.Deprecated.swift */; }; + C00AB912C1CFBF27C0BA01D7 /* SBUUserMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = C16BB5072333A8834550EBEF /* SBUUserMessageCellParams.swift */; }; + C044A4A853CB3E5664287B6C /* SBUGroupChannelModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = B95E69478AB9F0BC6838E6B0 /* SBUGroupChannelModule.List.swift */; }; + C1A0777FAE72ED0293E1C52A /* SBUReactionsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C19FBC5EAA77D503F990F1AC /* SBUReactionsViewController.swift */; }; + C43D4E025F3F4ECD8F1C830C /* SBUChatNotificationCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 11E76E9549A061E3F7126682 /* SBUChatNotificationCell.swift */; }; + C5109CB250282522BBC1E27C /* SBUGroupChannelListModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3733DFC08939B62E153C7F51 /* SBUGroupChannelListModule.Header.swift */; }; + C65ED1F8484CE9BE055F8A5E /* SBUPropertyWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FE327CC068C2054ACD4671D /* SBUPropertyWrapper.swift */; }; + C6F06074D47CF97582E250DB /* SBUInviteUserModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 284A5F5660109A316E7B6429 /* SBUInviteUserModule.List.swift */; }; + C733F70F30C2ABE52B7F2535 /* SBUVoiceMessageConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27D92765F41BFEF1B8CCA3C3 /* SBUVoiceMessageConfiguration.swift */; }; + C817A1EE7B0A6E67F033DE60 /* SBUBaseMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8454D32C99368255D2B235F7 /* SBUBaseMessageCellParams.swift */; }; + C8833B6B3EBC200AF8E291DF /* SBUFeedNotificationChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD0C06828B96853B672C6823 /* SBUFeedNotificationChannelViewModel.swift */; }; + C916B8239AFC3821C6341D56 /* SBUSelectableStackView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4AED0DB2ED6DF2061E0357C3 /* SBUSelectableStackView.swift */; }; + CA99FCFF22E3B12D0652A540 /* SBUToastManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 655D4DB6D742F3C3FE956E42 /* SBUToastManager.swift */; }; + CACEC38BEB7FB3A80BE23308 /* SBUMessageCellProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2084466BCD32E752280FDF5C /* SBUMessageCellProtocol.swift */; }; + CB5F268CE84DBF00F1505DF7 /* SBUModerationsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CF81684F6B7E32BA25962C8 /* SBUModerationsViewController.swift */; }; + CBCCDD0F9A4C049E009A98A0 /* SBUCollectionViewFlowLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = F71B4039836F4FF4ABBC871E /* SBUCollectionViewFlowLayout.swift */; }; + CCC15856E982AC130874F42C /* VoiceMessageStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40954B3FE10F9676923DB401 /* VoiceMessageStatus.swift */; }; + CCDE392ED59DA36635F73C59 /* SBUGroupChannelModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2FAADF0A5257BD72DC8608F /* SBUGroupChannelModule.swift */; }; + CCDE4E63201F72501CAB0FBC /* SBUMessageSearchModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75768457ACC9A7F40ABDC652 /* SBUMessageSearchModule.List.swift */; }; + CDE9898F58577C42EE3CCEC0 /* SBUBaseChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A529554987ADAC8814D3340 /* SBUBaseChannelViewModel.swift */; }; + CE0CD3F6B0E62BD2635842AF /* SBUVoiceRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = E22AA2DB24F14F0F87B90584 /* SBUVoiceRecorder.swift */; }; + CECB34F183AD758C355FE7AA /* SBUVoiceFileInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6969B20EB381CEB10FEF0655 /* SBUVoiceFileInfo.swift */; }; + D18659B3CDE3F027727201B1 /* SBUGroupChannelSettingsModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7F080FA1D6894C3ECEEDE3D /* SBUGroupChannelSettingsModule.swift */; }; + D2716DA130ADDC213C5198F4 /* SBUCacheManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7B7211E25D2F4792FF9C8DD /* SBUCacheManager.swift */; }; + D35CAD4B9BEBEEE4B44E23D5 /* SBUBaseChannelListModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 276B939905BDAB221113B534 /* SBUBaseChannelListModule.List.swift */; }; + D3C6454AFBCCB93C11076428 /* SBUVoicePlayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F0C80C4D6DF85FE405EF779 /* SBUVoicePlayer.swift */; }; + D476A41897C0FEC489FDD332 /* SBUConstant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 998F262CCFF77AEEF5F4FFD1 /* SBUConstant.swift */; }; + D4F47BC719078C977ADEDE03 /* SBUMessageThreadTitleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF4E6F90D3E9427074963335 /* SBUMessageThreadTitleView.swift */; }; + D549BC44AB5BD1E350B51E81 /* SBUBaseChannelSettingCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 58027FDAFC467BA293633EB9 /* SBUBaseChannelSettingCell.swift */; }; + D80032E47DB45A5C5576B7C2 /* SBUTypingIndicatorMessageManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 927FA69D319761980E9AC2DB /* SBUTypingIndicatorMessageManager.swift */; }; + D8DAD08FE32AD25FD59D4CF0 /* SBUMultipleFilesMessageCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B34CE6FA66EDF70BF0EC532 /* SBUMultipleFilesMessageCollectionViewCell.swift */; }; + D922A4C97FE3039FB3BA7AB5 /* SBUConfig.CodingKeys.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD6F852FC5BEC2211D4A91FE /* SBUConfig.CodingKeys.swift */; }; + D9430A5D3C246C88173BC5C1 /* SBUQuotedMessageViewProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDA28EF678F3AE97C70AC3E4 /* SBUQuotedMessageViewProtocol.swift */; }; + D9AA6BCA6EDD3BC5AD8ADA34 /* SBUOpenChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0083EDC286AA7C79546C2D3C /* SBUOpenChannelModule.Header.swift */; }; + DA06C72AB1DE8EF39B05A5F5 /* SBUCommonViewControllerSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBA50179E871D04A1B3E2AFB /* SBUCommonViewControllerSet.swift */; }; + DA5EF95041F639ECAF0EB015 /* SBUEmptyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E1DAF8A9552C95C996C3670 /* SBUEmptyView.swift */; }; + DAC6759825D8657D7B2FD408 /* SBUBaseChannelListModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 029D5877E78FA683761B3BAD /* SBUBaseChannelListModule.Header.swift */; }; + DC70F7896AEC23C6EA8A2ACE /* SBUMessageThreadModule.Input.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B01CE19204BDDC6A3AFD674 /* SBUMessageThreadModule.Input.swift */; }; + DC7E396E9734AAA3B352E65F /* SBUStringSet.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 603AA8F948B9ECD1074C73C9 /* SBUStringSet.Deprecated.swift */; }; + DD13DCBA0FCE5FCB5E239653 /* SBUBaseFileContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A8EFA0D58CB3D1E29F0047D /* SBUBaseFileContentView.swift */; }; + DD1810D79197F69B9EEB0860 /* SBUMultipleFilesMessageCollectionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDBAC4E00105841BB6A808B2 /* SBUMultipleFilesMessageCollectionView.swift */; }; + DDB48771363341D3EBF67097 /* SBUPermissionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = A939B0B4E013154B92435C78 /* SBUPermissionManager.swift */; }; + DE5FD7562A17B76F585FA20B /* SBUThreadInfoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B75783C323EBE530C20F7877 /* SBUThreadInfoView.swift */; }; + DF55240CD2C8A8ED24925B7A /* SBUMessageCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5E5D3C8FD93A7395607E4AD /* SBUMessageCache.swift */; }; + E0A792AD4728B909E14CAFE6 /* SBUUserMentionConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC2202162266378ED262444D /* SBUUserMentionConfiguration.swift */; }; + E1574019CAE27C824E797780 /* SBUUserMessageTextViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 525CD5F127B1B471D6A06CF1 /* SBUUserMessageTextViewModel.swift */; }; + E17C3272B14F3E8DF6DE2AC1 /* SBUAvailable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03A854BAC05E2C36CD28A50E /* SBUAvailable.swift */; }; + E22C9C1CAC224DFB7383EB1E /* NSObject+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B4835F84976905F77DB34D9 /* NSObject+SBUIKit.swift */; }; + E345107886178720F51FDBD5 /* SBUGroupChannelModule.Input.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AF8919A674D2307E9A1DA0D /* SBUGroupChannelModule.Input.swift */; }; + E35B6349877F176BEB8A9C84 /* SBUContentBaseMessageCell.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 566FE9273D1C22154E4D2504 /* SBUContentBaseMessageCell.Deprecated.swift */; }; + E361147FDB1B044F81FD4C45 /* SBUGroupChannelPushSettingsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 814ED80EB9A6368CFE4A81BA /* SBUGroupChannelPushSettingsViewModel.swift */; }; + E3AC428E5A2AC0DDE39120DE /* SBUNotificationEmptyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C48A1CDC18F40E062DDECAB /* SBUNotificationEmptyView.swift */; }; + E3D3F03366733EC2346059D6 /* SBUQuoteMessageInputViewParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3A00732F65C3DEB3B6E0EF1 /* SBUQuoteMessageInputViewParams.swift */; }; + E494BEB01BF31AC8B5CCA3F1 /* SBUCacheManager.File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CD2421993B35D6EEB28932 /* SBUCacheManager.File.swift */; }; + E54FF7C07301421176CA2BEB /* SBUChatNotificationChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9898E9A1DEA31F29CBC37E80 /* SBUChatNotificationChannelModule.Header.swift */; }; + E5FA92CCB71E9EF5C9937361 /* SBUGroupChannelPushSettingsModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = A106B25318117741FE01FB2A /* SBUGroupChannelPushSettingsModule.Header.swift */; }; + E73C2455DDF465A6D7067DD6 /* SBUQuotedFileMessageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C652D2652A54A2AD3EC7A28B /* SBUQuotedFileMessageView.swift */; }; + E87220089500ACECFBE23D3B /* SBUOpenChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4D9F434D5CEA29FADCCB692 /* SBUOpenChannelViewModel.swift */; }; + E8CAF9B73AE94B955777E7B5 /* SBUChannelInfoHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA00BBBBF4E5C6F6F7EA3461 /* SBUChannelInfoHeaderView.swift */; }; + EA9742E6860A604F79BC2813 /* SBUBaseChannelSettingsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = F80A51A88680A4C09A540DE8 /* SBUBaseChannelSettingsViewModel.swift */; }; + EAA7FFF16BB4A38EAC25456A /* SBUCoverImageView.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEAEA76AAF2B82E66B685055 /* SBUCoverImageView.Deprecated.swift */; }; + EAAC6B5C5E8A6849ECCEBBBB /* MessageTemplateParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2C592BE8F09301470F55DF5 /* MessageTemplateParser.swift */; }; + EC007C44202E79B264BEF205 /* UIView+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8890847DD4961E793CFB92AA /* UIView+SBUIKit.swift */; }; + EC1900E50063B75085C09187 /* SBUInviteUserModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = C60BCDEA3D7F4CA714EF3FAA /* SBUInviteUserModule.Header.swift */; }; + EC25555D13F9AC74D033E205 /* SBURegisterOperatorModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84AB53AE7E88752E586BF311 /* SBURegisterOperatorModule.Header.swift */; }; + EC9D82B34FF4AFBD9EA80A22 /* SBUGroupChannelViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6901F2A73F6DCA81C8FC15C9 /* SBUGroupChannelViewModel.swift */; }; + ED2AE8B1CA974F7947768C6F /* SBUOpenChannelModule.List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FD04EE69C06332791D32A34 /* SBUOpenChannelModule.List.swift */; }; + ED57DF28C4D2209726D06E15 /* SBUCoverImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7298991AB0756516527A6707 /* SBUCoverImageView.swift */; }; + EDDE6E7DB172A63BF5E4CC1A /* SBUPendingMessageManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAC38A5593C61283DF24EDD9 /* SBUPendingMessageManager.swift */; }; + EE5433043584DDBBF38732AA /* SBUMessageSearchViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7728597536E0E3841BF766F0 /* SBUMessageSearchViewController.swift */; }; + EE89BE45A78EF3E2F7FE80A3 /* SBUOpenChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D3CE8E5748C88E0CEE6969C /* SBUOpenChannelViewController.swift */; }; + EEEB07E787BC48E9C6F1E141 /* SBUMention.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6BF77280E66C4E3E350010FD /* SBUMention.swift */; }; + EF297464FAF3299EB4F48A1C /* SBUPhotoAccess.swift in Sources */ = {isa = PBXBuildFile; fileRef = A32BCF06C051973A5020E966 /* SBUPhotoAccess.swift */; }; + EF2CBAC26F1B0D602D8AC7E3 /* SBUCreateChannelTypeSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC076A17211811E87F2F1DE4 /* SBUCreateChannelTypeSelector.swift */; }; + EF7F870C459E43C91B3429C3 /* SBUCacheManager.Template.swift in Sources */ = {isa = PBXBuildFile; fileRef = C580E5BA186605215E32F300 /* SBUCacheManager.Template.swift */; }; + EF9E45ED168DEE2864942E80 /* SBUBaseSelectUserViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5470569FC46064C0CC2447A0 /* SBUBaseSelectUserViewModel.swift */; }; + EFDD69252581653F84F01611 /* SBUDownloadManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = B58A465C2D592258DAFFD7CF /* SBUDownloadManager.swift */; }; + EFF0C13F7B37CAC0401E4245 /* SBUSuggestedReplyViewParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4A59CF9B4CC83B24A11E5C6 /* SBUSuggestedReplyViewParams.swift */; }; + F0DFA2A23FFBA087F4577BDA /* SBUModerationsModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5DE08D0894A12FE3F1772063 /* SBUModerationsModule.swift */; }; + F0E5B24C1B8C1479B9FB1E8A /* QuotedFileImageContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76ACEC75E210CB87784CAFEB /* QuotedFileImageContentView.swift */; }; + F1F74B874C67BF506FDC4690 /* SBUMemberListViewController.Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 917D355593C6B2659412E556 /* SBUMemberListViewController.Deprecated.swift */; }; + F2DC6D227EAF86E6B90F9045 /* Debug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 85A154C31D8FF89BC65557A4 /* Debug.xcconfig */; }; + F3409951E84069B5062C9551 /* SBUAdminMessageCellParams.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CE04C0908F4016401315EDF /* SBUAdminMessageCellParams.swift */; }; + F4333ABE47CC9687BCB641B4 /* SBUMultipleFilesMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5FAF9073B09CCF096734FB0 /* SBUMultipleFilesMessageCell.swift */; }; + F47C1362A4CFE20333B5C200 /* SBUCommonDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 163F0425D60F794816F53A60 /* SBUCommonDelegate.swift */; }; + F483F0CF8689175E8643C066 /* SBURegisterOperatorViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7312EA10DED5DAB57697AC64 /* SBURegisterOperatorViewController.swift */; }; + F4EA486A31CE04119DC26A8A /* SBUOpenChannelViewController.Unavailable.swift in Sources */ = {isa = PBXBuildFile; fileRef = D6C6AF085EBDD4BABD0EA656 /* SBUOpenChannelViewController.Unavailable.swift */; }; + F51CA29CB17C22A2286D6B9A /* Data+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF8F57128157A767AFA6E322 /* Data+SBUIKit.swift */; }; + F784BA771500AD55352620F4 /* SBUBaseChannelListViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F241535BD1A7F066E906872 /* SBUBaseChannelListViewModel.swift */; }; + FC0CFE16CBD41E13AD42C220 /* UIImage+SBUIKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C31F4A9CE1F7741E458FC26 /* UIImage+SBUIKit.swift */; }; + FC31D6693D2D1B2ABE264F43 /* SBUBottomSheetController.swift in Sources */ = {isa = PBXBuildFile; fileRef = A764614CBE0D25AD44CA6F1D /* SBUBottomSheetController.swift */; }; + FC96990D0E890265EF8D20F0 /* SBUFeedNotificationChannelViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FB1899C3CA265203961E7E8 /* SBUFeedNotificationChannelViewController.swift */; }; + FCB3C1572795E536AA7CD451 /* SBUOpenChannelContentBaseMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6A8B6FD6A03AF2AEB93537D6 /* SBUOpenChannelContentBaseMessageCell.swift */; }; + FCBC359F3CA8BF94FC1259E4 /* SBUOpenChannelBaseMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0E71F6D29899DEAE27E3D78E /* SBUOpenChannelBaseMessageCell.swift */; }; + FD4AA8A51B7D4BCFAD4C9DAA /* SBUFeedNotificationChannelModule.Header.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4295B2BC3B60855D14B68E7 /* SBUFeedNotificationChannelModule.Header.swift */; }; + FE7D6E479BA0C265D1860D25 /* SBUMentionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8C7FBB8295E11563D4EF66A /* SBUMentionManager.swift */; }; + FE8F91E04CB762FA898B9098 /* SBUMessageProfileView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F3F5D7CCC6CB4F2269FA7491 /* SBUMessageProfileView.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -469,110 +476,95 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ - 01A5C331CDAC1A831A8805ED /* SBUVoiceFileInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUVoiceFileInfo.swift; path = ../Sources/Model/SBUVoiceFileInfo.swift; sourceTree = ""; }; - 0206B05C52A01BB8E7D69320 /* NSLayoutConstraint+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSLayoutConstraint+SBUIKit.swift"; path = "../Sources/Extension/NSLayoutConstraint+SBUIKit.swift"; sourceTree = ""; }; - 023681DE8880079B4C932080 /* SBUGroupChannelPushSettingsModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelPushSettingsModule.List.swift; path = ../Sources/Module/NotificationSettings/SBUGroupChannelPushSettingsModule.List.swift; sourceTree = ""; }; - 0388CE6D43AEE7C3433C6FCF /* SBUOpenChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelViewController.swift; path = ../Sources/View/Channel/SBUOpenChannelViewController.swift; sourceTree = ""; }; - 04BAC88EA0E4ECE0BDE98D94 /* SBUExtendedMessagePayloadCustomViewFactory.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUExtendedMessagePayloadCustomViewFactory.swift; path = ../Sources/View/Channel/MessageCell/CustomView/SBUExtendedMessagePayloadCustomViewFactory.swift; sourceTree = ""; }; - 0517E1A3C7C86C3A29C0D9A8 /* SBUParentMessageInfoReactionView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUParentMessageInfoReactionView.swift; path = ../Sources/View/Channel/Reaction/SBUParentMessageInfoReactionView.swift; sourceTree = ""; }; - 06B49E4A9520F322D6BE8758 /* SBUFileViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFileViewController.swift; path = ../Sources/View/Channel/FileViewer/SBUFileViewController.swift; sourceTree = ""; }; - 06FB854674AD775E414E4BB0 /* SBUMessageCache.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageCache.swift; path = ../Sources/Model/SBUMessageCache.swift; sourceTree = ""; }; - 0776AA990B7D660891195A66 /* SBUMessageThreadViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadViewController.swift; path = ../Sources/View/MessageThread/SBUMessageThreadViewController.swift; sourceTree = ""; }; - 08D59E1AFCFE79141DBC9E2D /* SBUOpenChannelImageContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelImageContentView.swift; path = ../Sources/View/Channel/MessageCell/FileMessageContentView/SBUOpenChannelImageContentView.swift; sourceTree = ""; }; - 09919E8A8041D179266308B5 /* SBUChannelSettingsChannelInfoView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChannelSettingsChannelInfoView.swift; path = ../Sources/View/ChannelSettings/View/SBUChannelSettingsChannelInfoView.swift; sourceTree = ""; }; - 0999DE7B0662BAC39EF6AD45 /* SBUFeedNotificationChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationChannelModule.swift; path = ../Sources/Module/Channel/NotificationChannel/Feed/SBUFeedNotificationChannelModule.swift; sourceTree = ""; }; - 09AE53DAD099C0DF1A7D0A46 /* SBUUserProfileView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserProfileView.swift; path = ../Sources/View/Common/User/SBUUserProfileView.swift; sourceTree = ""; }; - 0AB8E024A4FD1346F72CC738 /* SBUBaseChannelSettingCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingCell.swift; path = ../Sources/View/ChannelSettings/Cell/SBUBaseChannelSettingCell.swift; sourceTree = ""; }; - 0B5FAE795A92DCD1D99CEDD0 /* SBUOpenChannelListViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelListViewController.swift; path = ../Sources/View/ChannelList/SBUOpenChannelListViewController.swift; sourceTree = ""; }; - 0B61EFD561C0134F1FCD49CA /* SBUInviteUserModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUInviteUserModule.List.swift; path = ../Sources/Module/SelectUser/InviteUser/SBUInviteUserModule.List.swift; sourceTree = ""; }; - 0BB19E97A247250979B66E08 /* SBUMentionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMentionManager.swift; path = ../Sources/Util/SBUMentionManager.swift; sourceTree = ""; }; - 0BD9F5A50AB5ED4D3C3D1EF8 /* SBUConfigManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfigManager.swift; path = ../Sources/Configuration/SBUConfigManager.swift; sourceTree = ""; }; - 0C0AA733D29D1BB7267185BE /* SBUViewControllerSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUViewControllerSet.swift; path = ../Sources/View/SBUViewControllerSet.swift; sourceTree = ""; }; - 0CA240761E41522704593600 /* SBUGlobals.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGlobals.swift; path = ../Sources/SBUGlobals.swift; sourceTree = ""; }; - 0DB0082FA5B3FBFAD02844AD /* Assets.xcassets */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = ../Sources/Resource/Assets.xcassets; sourceTree = ""; }; - 0ECAE734480BCB8D28E0EFB0 /* SBUMessageProfileView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageProfileView.swift; path = ../Sources/View/Channel/CellView/SBUMessageProfileView.swift; sourceTree = ""; }; - 0FCE2A23E4ABAB4C8CEE6515 /* SBUMessageSearchModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchModule.swift; path = ../Sources/Module/MessageSearch/SBUMessageSearchModule.swift; sourceTree = ""; }; - 120F917F075AA125F1D8F296 /* SBUBaseChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelViewModel.swift; path = ../Sources/ViewModel/Channel/SBUBaseChannelViewModel.swift; sourceTree = ""; }; - 1390303A63A17BE693C5C2CC /* SBUChatNotificationChannelModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChatNotificationChannelModule.List.swift; path = ../Sources/Module/Channel/NotificationChannel/Chat/SBUChatNotificationChannelModule.List.swift; sourceTree = ""; }; - 1470FEF539F6ACCCCB505D0A /* SBUConfig.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfig.swift; path = ../Sources/Configuration/SBUConfig.swift; sourceTree = ""; }; - 1487DC3028CA956C8CB8900B /* SBUMessageCellProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageCellProtocol.swift; path = "../Sources/View/Life cycles/SBUMessageCellProtocol.swift"; sourceTree = ""; }; - 14D6F9DFA7C12E0C6A805175 /* SBUGroupChannelListModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelListModule.swift; path = ../Sources/Module/ChannelList/GroupChannel/SBUGroupChannelListModule.swift; sourceTree = ""; }; - 14EE035B8A9F6EA7171910A5 /* SBULinkClickableTextView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBULinkClickableTextView.swift; path = ../Sources/View/Channel/CellView/SBULinkClickableTextView.swift; sourceTree = ""; }; - 1505C3F14C296BAF6D545A21 /* SBUNotificationCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNotificationCell.swift; path = ../Sources/View/Channel/MessageCell/NotificationChannel/SBUNotificationCell.swift; sourceTree = ""; }; - 15A1BF567A75F9C0A0BF6A27 /* SBUOpenChannelCommonContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelCommonContentView.swift; path = ../Sources/View/Channel/MessageCell/FileMessageContentView/SBUOpenChannelCommonContentView.swift; sourceTree = ""; }; - 1607CCD3E3572A93C471009D /* SBUMessageThreadModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadModule.swift; path = ../Sources/Module/MessageThread/SBUMessageThreadModule.swift; sourceTree = ""; }; - 177474FE6BB9754AF9C7311D /* Float+SBUKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Float+SBUKit.swift"; path = "../Sources/Extension/Float+SBUKit.swift"; sourceTree = ""; }; - 182DA36A224261871782117B /* SBURegisterOperatorModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBURegisterOperatorModule.Header.swift; path = ../Sources/Module/SelectUser/RegisterOperator/SBURegisterOperatorModule.Header.swift; sourceTree = ""; }; - 18AAE5721F34A45127DB10F3 /* SBUGroupChannelListViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelListViewModel.swift; path = ../Sources/ViewModel/ChannelList/SBUGroupChannelListViewModel.swift; sourceTree = ""; }; - 18C97B8C2E383122135420FF /* SBUFeedNotificationChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationChannelModule.Header.swift; path = ../Sources/Module/Channel/NotificationChannel/Feed/SBUFeedNotificationChannelModule.Header.swift; sourceTree = ""; }; - 190BE37B8F3521A8D643887B /* SBUBaseChannelModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelModule.List.swift; path = ../Sources/Module/Channel/SBUBaseChannelModule.List.swift; sourceTree = ""; }; - 19146BE18864C0A1F6BDD85D /* SBUModuleSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModuleSet.swift; path = ../Sources/Module/SBUModuleSet.swift; sourceTree = ""; }; - 1B146BEF233DE437C22083BC /* SBUOpenChannelSettingsModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelSettingsModule.Header.swift; path = ../Sources/Module/ChannelSettings/OpenChannel/SBUOpenChannelSettingsModule.Header.swift; sourceTree = ""; }; - 1C3F26F59A69BE3551DEF811 /* SBUBaseSelectUserViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseSelectUserViewController.swift; path = ../Sources/View/SelectUser/SBUBaseSelectUserViewController.swift; sourceTree = ""; }; - 1DEA999989E876EFEF948A59 /* SBUTableViewCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTableViewCell.swift; path = "../Sources/View/Life cycles/SBUTableViewCell.swift"; sourceTree = ""; }; - 200E69F6E0B5591D74145CE2 /* Sequence+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Sequence+SBUIKit.swift"; path = "../Sources/Extension/Sequence+SBUIKit.swift"; sourceTree = ""; }; - 21026E3743ED39F89C105D5E /* SBUChatNotificationCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChatNotificationCell.swift; path = ../Sources/View/Channel/MessageCell/NotificationChannel/SBUChatNotificationCell.swift; sourceTree = ""; }; - 211D12FFC9AEE6FD321FB373 /* SBUChannelPushSettingCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChannelPushSettingCell.swift; path = ../Sources/View/NotificationSettings/Cell/SBUChannelPushSettingCell.swift; sourceTree = ""; }; - 23102F5BB173EA9ADB0C7124 /* SBUCommonViewControllerSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCommonViewControllerSet.swift; path = ../Sources/View/Common/SBUCommonViewControllerSet.swift; sourceTree = ""; }; - 24EC75ECA405DFE879C36A34 /* SBUMessageThreadModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadModule.Header.swift; path = ../Sources/Module/MessageThread/SBUMessageThreadModule.Header.swift; sourceTree = ""; }; - 272E52332721EC6B5744F3B0 /* SBUAdminMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUAdminMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUAdminMessageCellParams.swift; sourceTree = ""; }; - 27E19CAAB3B7E3EF9BD7CEEF /* SBUOpenChannelViewController.Unavailable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelViewController.Unavailable.swift; path = ../Sources/Deprecated/Channel/SBUOpenChannelViewController.Unavailable.swift; sourceTree = ""; }; - 2833BAB9311DF91AF2AD6EA4 /* MultipleFilesMessage+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MultipleFilesMessage+SBUIKit.swift"; path = "../Sources/Extension/ChatSDK/MultipleFilesMessage+SBUIKit.swift"; sourceTree = ""; }; - 28CB89FA7DD816BED6821E6F /* SBUBaseSelectUserModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseSelectUserModule.List.swift; path = ../Sources/Module/SelectUser/SBUBaseSelectUserModule.List.swift; sourceTree = ""; }; - 29EF0D174B9D028B3B34BFC8 /* SBUBaseChannelViewController.Unavailable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelViewController.Unavailable.swift; path = ../Sources/Deprecated/Channel/SBUBaseChannelViewController.Unavailable.swift; sourceTree = ""; }; - 2BDA027046D4C802363584B5 /* SBUGroupChannelPushSettingsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelPushSettingsViewController.swift; path = ../Sources/View/NotificationSettings/SBUGroupChannelPushSettingsViewController.swift; sourceTree = ""; }; - 2C3071F5D45B84D2E236CB88 /* SBUBaseSelectUserViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseSelectUserViewController.Deprecated.swift; path = ../Sources/Deprecated/UserList/SBUBaseSelectUserViewController.Deprecated.swift; sourceTree = ""; }; - 2D048F31B64D36BFE7445172 /* SBUModerationsModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsModule.swift; path = ../Sources/Module/Moderations/SBUModerationsModule.swift; sourceTree = ""; }; - 2DD9DAEDDD5610833F128949 /* SBUContentBaseMessageCell.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUContentBaseMessageCell.Deprecated.swift; path = ../Sources/Deprecated/Channel/MessageCell/SBUContentBaseMessageCell.Deprecated.swift; sourceTree = ""; }; - 2DE0A8CA0D97DF250076ACB7 /* SBUInviteUserViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUInviteUserViewModel.swift; path = ../Sources/ViewModel/SelectUser/SBUInviteUserViewModel.swift; sourceTree = ""; }; - 2DE1B79AC7F602567401517E /* SBUPendingMessageManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUPendingMessageManager.swift; path = ../Sources/Manager/SBUPendingMessageManager.swift; sourceTree = ""; }; - 3046652E8A8AF7F4EE65FDFA /* SBUTypingMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTypingMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUTypingMessageCellParams.swift; sourceTree = ""; }; - 30CA852116CE976496836A3C /* SBUIconSetType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUIconSetType.swift; path = ../Sources/Enums/SBUIconSetType.swift; sourceTree = ""; }; - 32041E00DCBAD2EE6083A5CC /* SBUDashboardConfig.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUDashboardConfig.swift; path = ../Sources/Configuration/SBUDashboardConfig.swift; sourceTree = ""; }; - 325BF2C6FB366447C7008FB6 /* SBUGroupChannelSettingsModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelSettingsModule.List.swift; path = ../Sources/Module/ChannelSettings/GroupChannel/SBUGroupChannelSettingsModule.List.swift; sourceTree = ""; }; - 338AEF6DF95C9D03E2AEC56F /* SBURegisterOperatorViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBURegisterOperatorViewModel.swift; path = ../Sources/ViewModel/SelectUser/SBURegisterOperatorViewModel.swift; sourceTree = ""; }; - 3399972117CA473E3F650FD2 /* SBUGroupChannelPushSettingsViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelPushSettingsViewModel.swift; path = ../Sources/ViewModel/NotificationSettings/SBUGroupChannelPushSettingsViewModel.swift; sourceTree = ""; }; - 33A8F37825C101F42BE3C6E6 /* SBUBaseViewController.Unavailable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseViewController.Unavailable.swift; path = ../Sources/Deprecated/SBUBaseViewController.Unavailable.swift; sourceTree = ""; }; - 34AB83535E811854BE84295B /* SBUQuotedUserMessageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuotedUserMessageView.swift; path = ../Sources/View/Channel/MessageCell/Replies/MessageView/SBUQuotedUserMessageView.swift; sourceTree = ""; }; - 352A2680D588180C55FB591F /* UIImage+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImage+SBUIKit.swift"; path = "../Sources/Extension/UIImage+SBUIKit.swift"; sourceTree = ""; }; - 355E5E7AE98778B7789C5A02 /* SBUNavigationTitleView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNavigationTitleView.swift; path = ../Sources/View/Common/SBUNavigationTitleView.swift; sourceTree = ""; }; - 361858E6AF6714A5C7D5652D /* SBUGroupChannelViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelViewController.Deprecated.swift; path = ../Sources/Deprecated/Channel/SBUGroupChannelViewController.Deprecated.swift; sourceTree = ""; }; - 36212F00EFCD6363DC91915F /* SBUEnums.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUEnums.Deprecated.swift; path = ../Sources/Deprecated/SBUEnums.Deprecated.swift; sourceTree = ""; }; - 3784B7DE0FBC0E8F7415B2B4 /* SBUTypingIndicatorBubbleView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTypingIndicatorBubbleView.swift; path = ../Sources/View/Common/SBUTypingIndicatorBubbleView.swift; sourceTree = ""; }; - 3857D1482996751B2677E50D /* SBUConfig.OpenChannel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfig.OpenChannel.swift; path = ../Sources/Configuration/SBUConfig.OpenChannel.swift; sourceTree = ""; }; - 39AA21A9EAC614BBBC13197F /* SBUMentionLimitGuideCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMentionLimitGuideCell.swift; path = ../Sources/View/Channel/MessageInput/SBUMentionLimitGuideCell.swift; sourceTree = ""; }; - 39E3142B541D6F9099977D42 /* SBUNotificationTimelineView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNotificationTimelineView.swift; path = ../Sources/View/Channel/CellView/SBUNotificationTimelineView.swift; sourceTree = ""; }; - 3ACF8E3D5876A76519D0C51E /* SBUTheme.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTheme.swift; path = ../Sources/Theme/SBUTheme.swift; sourceTree = ""; }; - 3AD833016A213C33A02C3E76 /* SBUGroupChannelCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelCell.swift; path = ../Sources/View/ChannelList/ChannelCell/SBUGroupChannelCell.swift; sourceTree = ""; }; - 3B114AA4F085C5DF0BEBC21D /* SBUGroupChannelPushSettingsModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelPushSettingsModule.swift; path = ../Sources/Module/NotificationSettings/SBUGroupChannelPushSettingsModule.swift; sourceTree = ""; }; - 3B16D089622F63F650A75B47 /* SBUMessageSearchViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchViewController.Deprecated.swift; path = ../Sources/Deprecated/MessageSearch/SBUMessageSearchViewController.Deprecated.swift; sourceTree = ""; }; - 3DADF6EEDBE000661C340E19 /* SBUGroupChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelViewController.swift; path = ../Sources/View/Channel/SBUGroupChannelViewController.swift; sourceTree = ""; }; - 3DF7928E904E2DC8895282B1 /* Release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = ../Sources/Configurations/Release.xcconfig; sourceTree = ""; }; - 3E9D7D63846EF293F7A425E0 /* SBUGroupChannelSettingsModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelSettingsModule.Header.swift; path = ../Sources/Module/ChannelSettings/GroupChannel/SBUGroupChannelSettingsModule.Header.swift; sourceTree = ""; }; - 3EB21D7E23556A522FD774A0 /* SBUCommonItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCommonItem.swift; path = ../Sources/View/Common/SBUCommonItem.swift; sourceTree = ""; }; - 3EE43A6018C716F35B9E7023 /* SBUMessageSearchModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchModule.List.swift; path = ../Sources/Module/MessageSearch/SBUMessageSearchModule.List.swift; sourceTree = ""; }; - 3EF1D7CA370CC6582649260E /* SBUCacheManager.File.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.File.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.File.swift; sourceTree = ""; }; - 3F02FECB5DD3547EB858B0DE /* SBUOpenChannelBaseMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelBaseMessageCell.swift; path = ../Sources/View/Channel/MessageCell/OpenChannel/SBUOpenChannelBaseMessageCell.swift; sourceTree = ""; }; - 3F8583A32451CC1F0C8D520D /* SBUTypingIndicatorMessageManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTypingIndicatorMessageManager.swift; path = ../Sources/Manager/SBUTypingIndicatorMessageManager.swift; sourceTree = ""; }; - 3FAAF41FF3804EA099F3951C /* MessageTemplateRenderer.Image.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MessageTemplateRenderer.Image.swift; path = ../Sources/CustomSyntaxTest/MessageTemplateRenderer.Image.swift; sourceTree = ""; }; - 400D8B296264143272C72EFB /* SBUFileMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFileMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUFileMessageCell.swift; sourceTree = ""; }; - 408AE24EF85B26FF075E8DAF /* SBUGroupChannelSettingsModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelSettingsModule.swift; path = ../Sources/Module/ChannelSettings/GroupChannel/SBUGroupChannelSettingsModule.swift; sourceTree = ""; }; - 41E3EBDCF83ECBA10EEFCEB0 /* SBUBaseChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelViewController.swift; path = ../Sources/View/Channel/SBUBaseChannelViewController.swift; sourceTree = ""; }; - 41E5AF0572EC94815A5D01E1 /* SBUMessageSearchResultCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchResultCell.swift; path = ../Sources/View/MessageSearch/Cell/SBUMessageSearchResultCell.swift; sourceTree = ""; }; - 41ED8B8595477035024F4F83 /* SBUHighlightMessageInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUHighlightMessageInfo.swift; path = ../Sources/Model/SBUHighlightMessageInfo.swift; sourceTree = ""; }; - 421C3A4567D0E73AA1EE7F37 /* SBUChatNotificationChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChatNotificationChannelModule.Header.swift; path = ../Sources/Module/Channel/NotificationChannel/Chat/SBUChatNotificationChannelModule.Header.swift; sourceTree = ""; }; - 425187AA61F2486F98B1B407 /* SBUPhotoCollectionViewCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUPhotoCollectionViewCell.swift; path = ../Sources/View/Common/PhotoLibrary/SBUPhotoCollectionViewCell.swift; sourceTree = ""; }; - 42760D674305CAD0204A1E0E /* SBUUserListModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserListModule.Header.swift; path = ../Sources/Module/UserList/SBUUserListModule.Header.swift; sourceTree = ""; }; - 43525699298A604A075CA7B9 /* SBUCreateChannelTypeSelector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelTypeSelector.swift; path = ../Sources/View/SelectUser/CreateChannel/View/SBUCreateChannelTypeSelector.swift; sourceTree = ""; }; - 43C4B9D558CC9F310B82FDBF /* SBUPermissionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUPermissionManager.swift; path = ../Sources/Manager/SBUPermissionManager.swift; sourceTree = ""; }; - 44D0E55FD21850FA17AFD504 /* SBUAnimation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUAnimation.swift; path = ../Sources/View/Common/SBUAnimation.swift; sourceTree = ""; }; - 44FA36B574BB43E1B8D2BFDC /* SBUFormFieldView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFormFieldView.swift; path = ../Sources/View/Channel/MessageCell/Forms/Views/SBUFormFieldView.swift; sourceTree = ""; }; - 451B29849E7603F4F21C2319 /* SBUMessageSearchViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchViewController.swift; path = ../Sources/View/MessageSearch/SBUMessageSearchViewController.swift; sourceTree = ""; }; - 459A35B6749E1DA6F1E76E81 /* SBUBottomSheetController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBottomSheetController.swift; path = ../Sources/View/Common/Menu/SBUBottomSheetController.swift; sourceTree = ""; }; - 47C14932CEF8B219FC2CDF14 /* SBUGroupChannelModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelModule.List.swift; path = ../Sources/Module/Channel/GroupChannel/SBUGroupChannelModule.List.swift; sourceTree = ""; }; - 48B6765D972BAE0935C977B5 /* SBUUserMessageTextView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserMessageTextView.swift; path = ../Sources/View/Channel/CellView/SBUUserMessageTextView.swift; sourceTree = ""; }; - 48E297FD2EC1BA53C6F8138C /* SBUMultipleFilesMessageCollectionView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMultipleFilesMessageCollectionView.swift; path = ../Sources/View/Channel/MessageCell/MultipleFilesMessage/SBUMultipleFilesMessageCollectionView.swift; sourceTree = ""; }; - 495BA3046AD6A1CC99ED2A8D /* SBUOpenChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelModule.Header.swift; path = ../Sources/Module/Channel/OpenChannel/SBUOpenChannelModule.Header.swift; sourceTree = ""; }; + 0083EDC286AA7C79546C2D3C /* SBUOpenChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelModule.Header.swift; path = ../Sources/Module/Channel/OpenChannel/SBUOpenChannelModule.Header.swift; sourceTree = ""; }; + 00F8536AA7C6BD346478CC70 /* SBUMessageThreadModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadModule.swift; path = ../Sources/Module/MessageThread/SBUMessageThreadModule.swift; sourceTree = ""; }; + 029D5877E78FA683761B3BAD /* SBUBaseChannelListModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelListModule.Header.swift; path = ../Sources/Module/ChannelList/SBUBaseChannelListModule.Header.swift; sourceTree = ""; }; + 02C1A7BF20352FA6BB90C899 /* Sequence+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Sequence+SBUIKit.swift"; path = "../Sources/Extension/Sequence+SBUIKit.swift"; sourceTree = ""; }; + 038753485A269AC82E1A4CC4 /* SBUTypingIndicatorInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTypingIndicatorInfo.swift; path = ../Sources/Model/SBUTypingIndicatorInfo.swift; sourceTree = ""; }; + 03A854BAC05E2C36CD28A50E /* SBUAvailable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUAvailable.swift; path = ../Sources/SBUAvailable.swift; sourceTree = ""; }; + 03BB047BF6AE2CDB4CE2A910 /* SBUImageContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUImageContentView.swift; path = ../Sources/View/Channel/MessageCell/FileMessageContentView/SBUImageContentView.swift; sourceTree = ""; }; + 03F45E76F3A34B1E17A7F19A /* SBUOpenChannelModule.Input.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelModule.Input.swift; path = ../Sources/Module/Channel/OpenChannel/SBUOpenChannelModule.Input.swift; sourceTree = ""; }; + 03FA91D49CCDDACD36563AC9 /* SBUTypingIndicatorMessage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTypingIndicatorMessage.swift; path = ../Sources/Model/SBUTypingIndicatorMessage.swift; sourceTree = ""; }; + 05124D9926BFAA1E594B90E7 /* SBUMessageReactionView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageReactionView.swift; path = ../Sources/View/Channel/Reaction/SBUMessageReactionView.swift; sourceTree = ""; }; + 0599B06D5528F46BE1A401E8 /* SBUColorSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUColorSet.swift; path = ../Sources/Theme/SBUColorSet.swift; sourceTree = ""; }; + 070F74328384AAC18B2F655F /* SBUCreateOpenChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateOpenChannelViewController.swift; path = ../Sources/View/SelectUser/CreateChannel/SBUCreateOpenChannelViewController.swift; sourceTree = ""; }; + 0727BF56798D054B69AE7664 /* SBUViewModelDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUViewModelDelegate.swift; path = ../Sources/ViewModel/SBUViewModelDelegate.swift; sourceTree = ""; }; + 07963B220121399FF06E8203 /* SBUUnknownMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUnknownMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUUnknownMessageCellParams.swift; sourceTree = ""; }; + 09C4DEFBEE7AFE8D7C3AC3EC /* SBUNotificationChannelManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNotificationChannelManager.swift; path = ../Sources/Manager/SBUNotificationChannelManager.swift; sourceTree = ""; }; + 0A4829E72995CBA2D86464CA /* SBUFeedNotificationCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUFeedNotificationCellParams.swift; sourceTree = ""; }; + 0A7E7C2E185AB83BBC815D34 /* SBUCreateChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelViewModel.swift; path = ../Sources/ViewModel/SelectUser/CreateChannel/SBUCreateChannelViewModel.swift; sourceTree = ""; }; + 0B01CE19204BDDC6A3AFD674 /* SBUMessageThreadModule.Input.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadModule.Input.swift; path = ../Sources/Module/MessageThread/SBUMessageThreadModule.Input.swift; sourceTree = ""; }; + 0BA0C57DFA099936261E3D65 /* SBURegisterOperatorModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBURegisterOperatorModule.List.swift; path = ../Sources/Module/SelectUser/RegisterOperator/SBURegisterOperatorModule.List.swift; sourceTree = ""; }; + 0C48A1CDC18F40E062DDECAB /* SBUNotificationEmptyView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNotificationEmptyView.swift; path = ../Sources/View/Common/SBUNotificationEmptyView.swift; sourceTree = ""; }; + 0D8B5F801AB9DD43400729E4 /* SBUBaseChannelViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelViewController.Deprecated.swift; path = ../Sources/Deprecated/Channel/SBUBaseChannelViewController.Deprecated.swift; sourceTree = ""; }; + 0E71F6D29899DEAE27E3D78E /* SBUOpenChannelBaseMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelBaseMessageCell.swift; path = ../Sources/View/Channel/MessageCell/OpenChannel/SBUOpenChannelBaseMessageCell.swift; sourceTree = ""; }; + 0EDC9D06C1E899E6E18D313C /* SBUChatNotificationChannelModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChatNotificationChannelModule.List.swift; path = ../Sources/Module/Channel/NotificationChannel/Chat/SBUChatNotificationChannelModule.List.swift; sourceTree = ""; }; + 0F55AE7C708C4CC5B6545241 /* SBUTypingMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTypingMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUTypingMessageCellParams.swift; sourceTree = ""; }; + 0FA6711B7E60902B3EE009D3 /* SBUGroupChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelViewController.swift; path = ../Sources/View/Channel/SBUGroupChannelViewController.swift; sourceTree = ""; }; + 1098A4787B2E2A6A75CCA323 /* SBUFormFieldView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFormFieldView.swift; path = ../Sources/View/Channel/MessageCell/Forms/Views/SBUFormFieldView.swift; sourceTree = ""; }; + 11516613022A7CB0B04A9124 /* SBUMessageWebViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageWebViewModel.swift; path = ../Sources/View/Channel/ViewModel/SBUMessageWebViewModel.swift; sourceTree = ""; }; + 11E76E9549A061E3F7126682 /* SBUChatNotificationCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChatNotificationCell.swift; path = ../Sources/View/Channel/MessageCell/NotificationChannel/SBUChatNotificationCell.swift; sourceTree = ""; }; + 11EE754A973762A84AEC87D0 /* SBUModerationsViewModel.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsViewModel.Deprecated.swift; path = ../Sources/Deprecated/Moderations/SBUModerationsViewModel.Deprecated.swift; sourceTree = ""; }; + 13BB5AED66BB2664B4AC6289 /* CommonProtocols.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CommonProtocols.swift; path = ../Sources/Protocol/CommonProtocols.swift; sourceTree = ""; }; + 153D526660CB939E23444CDA /* SBUReactionCollectionViewCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUReactionCollectionViewCell.swift; path = ../Sources/View/Channel/Reaction/SBUReactionCollectionViewCell.swift; sourceTree = ""; }; + 162485D22D77990BE248C176 /* SBUBaseChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelViewController.swift; path = ../Sources/View/Channel/SBUBaseChannelViewController.swift; sourceTree = ""; }; + 163F0425D60F794816F53A60 /* SBUCommonDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCommonDelegate.swift; path = ../Sources/ViewModel/Common/SBUCommonDelegate.swift; sourceTree = ""; }; + 170F961739EF0AB2DBC7B65D /* SBUModerationCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationCell.swift; path = ../Sources/View/ChannelSettings/Cell/SBUModerationCell.swift; sourceTree = ""; }; + 1844C9968B7331F1538C7366 /* SBUMessageThreadViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadViewModel.swift; path = ../Sources/ViewModel/MessageThread/SBUMessageThreadViewModel.swift; sourceTree = ""; }; + 19856622611F351F18CB458E /* SBUPaddingLabel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUPaddingLabel.swift; path = ../Sources/View/Common/SBUPaddingLabel.swift; sourceTree = ""; }; + 1BD535F43388F6276BE09736 /* BlockingOperation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BlockingOperation.swift; path = ../Sources/Util/BlockingOperation.swift; sourceTree = ""; }; + 1C610F7D7AEB52CC0C6CA3FD /* SBUExtendedMessagePayloadCustomViewFactory.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUExtendedMessagePayloadCustomViewFactory.swift; path = ../Sources/View/Channel/MessageCell/CustomView/SBUExtendedMessagePayloadCustomViewFactory.swift; sourceTree = ""; }; + 1DA4DBD924DDD2375AE39D45 /* NSLayoutConstraint+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSLayoutConstraint+SBUIKit.swift"; path = "../Sources/Extension/NSLayoutConstraint+SBUIKit.swift"; sourceTree = ""; }; + 1FDB9886C45210D6BFAAC6EF /* SBUMentionLimitGuideCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMentionLimitGuideCell.swift; path = ../Sources/View/Channel/MessageInput/SBUMentionLimitGuideCell.swift; sourceTree = ""; }; + 2084466BCD32E752280FDF5C /* SBUMessageCellProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageCellProtocol.swift; path = "../Sources/View/Life cycles/SBUMessageCellProtocol.swift"; sourceTree = ""; }; + 2106D0256B2B35F304280972 /* SBUOpenChannelListViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelListViewModel.swift; path = ../Sources/ViewModel/ChannelList/SBUOpenChannelListViewModel.swift; sourceTree = ""; }; + 219797BDAF59463A06A3DEB4 /* SBUUserNameView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserNameView.swift; path = ../Sources/View/Channel/CellView/SBUUserNameView.swift; sourceTree = ""; }; + 21F5625DC1D293F998AA82AA /* SBUCreateOpenChannelModule.ProfileInput.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateOpenChannelModule.ProfileInput.swift; path = ../Sources/Module/SelectUser/CreateChannel/SBUCreateOpenChannelModule.ProfileInput.swift; sourceTree = ""; }; + 22C7192CA8C004461FB36689 /* SBUReactionCollectionViewCell.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = SBUReactionCollectionViewCell.xib; path = ../Sources/View/Channel/Reaction/SBUReactionCollectionViewCell.xib; sourceTree = ""; }; + 22FA0D5B94E7C4F5EC5E6620 /* SBUOpenChannelSettingsModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelSettingsModule.List.swift; path = ../Sources/Module/ChannelSettings/OpenChannel/SBUOpenChannelSettingsModule.List.swift; sourceTree = ""; }; + 250BCFE1311E2D9BE7A04213 /* SBUOpenChannelCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelCell.swift; path = ../Sources/View/ChannelList/ChannelCell/SBUOpenChannelCell.swift; sourceTree = ""; }; + 25470C7458E4CEFF63B37375 /* SBUGroupChannelPushSettingsModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelPushSettingsModule.List.swift; path = ../Sources/Module/NotificationSettings/SBUGroupChannelPushSettingsModule.List.swift; sourceTree = ""; }; + 276B939905BDAB221113B534 /* SBUBaseChannelListModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelListModule.List.swift; path = ../Sources/Module/ChannelList/SBUBaseChannelListModule.List.swift; sourceTree = ""; }; + 27D92765F41BFEF1B8CCA3C3 /* SBUVoiceMessageConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUVoiceMessageConfiguration.swift; path = ../Sources/Configuration/VoiceMessage/SBUVoiceMessageConfiguration.swift; sourceTree = ""; }; + 284A5F5660109A316E7B6429 /* SBUInviteUserModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUInviteUserModule.List.swift; path = ../Sources/Module/SelectUser/InviteUser/SBUInviteUserModule.List.swift; sourceTree = ""; }; + 2A6F3C3CA56F8CF9B1AE0116 /* SBUModuleSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModuleSet.swift; path = ../Sources/Module/SBUModuleSet.swift; sourceTree = ""; }; + 2A8EFA0D58CB3D1E29F0047D /* SBUBaseFileContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseFileContentView.swift; path = ../Sources/View/Channel/MessageCell/FileMessageContentView/SBUBaseFileContentView.swift; sourceTree = ""; }; + 2B0FBE1676A32250B496F95D /* SBUView.Unavaliable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUView.Unavaliable.swift; path = ../Sources/Deprecated/SBUView.Unavaliable.swift; sourceTree = ""; }; + 2BE04F45B0E0D15BE83FDCBE /* SBUBaseChannelSettingsViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingsViewController.Deprecated.swift; path = ../Sources/Deprecated/ChannelSettings/SBUBaseChannelSettingsViewController.Deprecated.swift; sourceTree = ""; }; + 2C9CE7AFD281D815DD24921E /* SBUGroupChannelListViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelListViewModel.swift; path = ../Sources/ViewModel/ChannelList/SBUGroupChannelListViewModel.swift; sourceTree = ""; }; + 2D3CE8E5748C88E0CEE6969C /* SBUOpenChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelViewController.swift; path = ../Sources/View/Channel/SBUOpenChannelViewController.swift; sourceTree = ""; }; + 2E228BBEA4820BD54A37A00C /* SBUUser.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUser.swift; path = ../Sources/Model/SBUUser.swift; sourceTree = ""; }; + 2E9850E02B1EEB8600EA4F39 /* AdditionalFeaturesManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AdditionalFeaturesManager.swift; sourceTree = ""; }; + 2E9850E22B1EEBA900EA4F39 /* ChannelVC_AdditionalFeatures.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChannelVC_AdditionalFeatures.swift; sourceTree = ""; }; + 2E9850E62B1EEC0B00EA4F39 /* GroupChannelViewModel_AdditionalFeatures.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GroupChannelViewModel_AdditionalFeatures.swift; sourceTree = ""; }; + 2E9850E92B1EEC3000EA4F39 /* MetadataViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MetadataViewController.swift; sourceTree = ""; }; + 2E9850EB2B1EEC4B00EA4F39 /* PaddedLabel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PaddedLabel.swift; sourceTree = ""; }; + 2F7F1F9BF57F2A409F6E68A9 /* SBUGroupChannelSettingsViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelSettingsViewModel.swift; path = ../Sources/ViewModel/ChannelSettings/SBUGroupChannelSettingsViewModel.swift; sourceTree = ""; }; + 2F8E7C50851BBC81E4BD45B7 /* SBUBaseChannelSettingsModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingsModule.swift; path = ../Sources/Module/ChannelSettings/SBUBaseChannelSettingsModule.swift; sourceTree = ""; }; + 301A75B128C9F918A62AFD14 /* SBUMessageStateView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageStateView.swift; path = ../Sources/View/Channel/CellView/SBUMessageStateView.swift; sourceTree = ""; }; + 348DD072851F8C686F265851 /* SBUOpenChannelViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelViewController.Deprecated.swift; path = ../Sources/Deprecated/Channel/SBUOpenChannelViewController.Deprecated.swift; sourceTree = ""; }; + 35212187D2E5368720261B3F /* SBUTheme+Type.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SBUTheme+Type.swift"; path = "../Sources/Theme/SBUTheme+Type.swift"; sourceTree = ""; }; + 3733DFC08939B62E153C7F51 /* SBUGroupChannelListModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelListModule.Header.swift; path = ../Sources/Module/ChannelList/GroupChannel/SBUGroupChannelListModule.Header.swift; sourceTree = ""; }; + 37F506AC8E475DC5E04D7ED4 /* SBUBaseChannelListViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelListViewController.swift; path = ../Sources/View/ChannelList/SBUBaseChannelListViewController.swift; sourceTree = ""; }; + 38067DB0F430F19FB4CB6829 /* SBUFileMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFileMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUFileMessageCell.swift; sourceTree = ""; }; + 388412229BC579FF1452E57D /* SBUMultipleFilesMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMultipleFilesMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUMultipleFilesMessageCellParams.swift; sourceTree = ""; }; + 38DB88E7A046ACEC2DEBBAAF /* SBUBaseChannelSettingsModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingsModule.List.swift; path = ../Sources/Module/ChannelSettings/SBUBaseChannelSettingsModule.List.swift; sourceTree = ""; }; + 392FE63782CD89490E08BC71 /* SBUBaseSelectUserViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseSelectUserViewController.Deprecated.swift; path = ../Sources/Deprecated/UserList/SBUBaseSelectUserViewController.Deprecated.swift; sourceTree = ""; }; + 3AA1BCEB4A4A2491E09161CD /* SBUNotificationNavigationTitleView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNotificationNavigationTitleView.swift; path = ../Sources/View/Common/SBUNotificationNavigationTitleView.swift; sourceTree = ""; }; + 3AE928F64E99D76A18B17FD9 /* SBUCreateChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelModule.Header.swift; path = ../Sources/Module/SelectUser/CreateChannel/SBUCreateChannelModule.Header.swift; sourceTree = ""; }; + 3B4835F84976905F77DB34D9 /* NSObject+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+SBUIKit.swift"; path = "../Sources/Extension/NSObject+SBUIKit.swift"; sourceTree = ""; }; + 3C31F4A9CE1F7741E458FC26 /* UIImage+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImage+SBUIKit.swift"; path = "../Sources/Extension/UIImage+SBUIKit.swift"; sourceTree = ""; }; + 3D0D250340415B07B43CD346 /* SBUDashboardConfig.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUDashboardConfig.swift; path = ../Sources/Configuration/SBUDashboardConfig.swift; sourceTree = ""; }; + 3F367C0A57424DBCC5D34FD1 /* SBUChannelPushSettingCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChannelPushSettingCell.swift; path = ../Sources/View/NotificationSettings/Cell/SBUChannelPushSettingCell.swift; sourceTree = ""; }; + 40954B3FE10F9676923DB401 /* VoiceMessageStatus.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VoiceMessageStatus.swift; path = ../Sources/Enums/VoiceMessageStatus.swift; sourceTree = ""; }; + 4240C69BF382E9736D6736A2 /* SBUScrollPostionConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUScrollPostionConfiguration.swift; path = ../Sources/Configuration/ScrollPostion/SBUScrollPostionConfiguration.swift; sourceTree = ""; }; + 44F9C7790EE178F36A6DAA7E /* SBUView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUView.swift; path = "../Sources/View/Life cycles/SBUView.swift"; sourceTree = ""; }; + 45485BDF50AC4FBB142760FE /* SBUBaseChannelSettingsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingsViewController.swift; path = ../Sources/View/ChannelSettings/SBUBaseChannelSettingsViewController.swift; sourceTree = ""; }; + 470469C36899D1C5E483FCF8 /* SBUMessageThreadModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadModule.Header.swift; path = ../Sources/Module/MessageThread/SBUMessageThreadModule.Header.swift; sourceTree = ""; }; + 473F29F366CD515D71133272 /* SBUActionSheet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUActionSheet.swift; path = ../Sources/View/Common/SBUActionSheet.swift; sourceTree = ""; }; + 475077F9EC52D0CB5F4AF1E4 /* SBUOpenChannelListModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelListModule.swift; path = ../Sources/Module/ChannelList/OpenChannel/SBUOpenChannelListModule.swift; sourceTree = ""; }; + 4799119654406D46C918D6C7 /* SBUChatNotificationChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChatNotificationChannelViewController.swift; path = ../Sources/View/Channel/SBUChatNotificationChannelViewController.swift; sourceTree = ""; }; + 48CD2421993B35D6EEB28932 /* SBUCacheManager.File.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.File.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.File.swift; sourceTree = ""; }; 4992616E2A9D89BE00B07828 /* ConnectView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ConnectView.swift; sourceTree = ""; }; 4992616F2A9D89BE00B07828 /* ConnectView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = ConnectView.xib; sourceTree = ""; }; 499261702A9D89BE00B07828 /* MainView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MainView.xib; sourceTree = ""; }; @@ -580,113 +572,127 @@ 499261722A9D89BE00B07828 /* MainView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MainView.swift; sourceTree = ""; }; 499261782A9D8A4900B07828 /* MainItemView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MainItemView.swift; sourceTree = ""; }; 499261792A9D8A4900B07828 /* MainItemView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MainItemView.xib; sourceTree = ""; }; - 4ADFD866186A7A15FA48BAE1 /* SBUMessageInputView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageInputView.swift; path = ../Sources/View/Channel/MessageInput/SBUMessageInputView.swift; sourceTree = ""; }; - 4BAF66B0299CA7578DBA1F24 /* SBUView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUView.swift; path = "../Sources/View/Life cycles/SBUView.swift"; sourceTree = ""; }; - 4C350D231FEA2A3E7E57694D /* SBUNewMessageInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNewMessageInfo.swift; path = ../Sources/View/Channel/NewMessageInfo/SBUNewMessageInfo.swift; sourceTree = ""; }; - 4C3BC711769BD333499739CE /* SBUConfig.CodingKeys.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfig.CodingKeys.swift; path = ../Sources/Configuration/SBUConfig.CodingKeys.swift; sourceTree = ""; }; - 4CF9AD6B81ECCBD0135E9BE5 /* SBUUserListViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserListViewModel.swift; path = ../Sources/ViewModel/UserList/SBUUserListViewModel.swift; sourceTree = ""; }; - 4D057BA6DE20320A25A70FB2 /* SBUToastManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUToastManager.swift; path = ../Sources/Manager/SBUToastManager.swift; sourceTree = ""; }; - 4D233E38D437CFFE1E989D72 /* SBUCollectionViewFlowLayout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCollectionViewFlowLayout.swift; path = ../Sources/View/Common/SBUCollectionViewFlowLayout.swift; sourceTree = ""; }; - 4D311D2B4516671A61E4EF32 /* SBUBaseChannelSettingsViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingsViewController.Deprecated.swift; path = ../Sources/Deprecated/ChannelSettings/SBUBaseChannelSettingsViewController.Deprecated.swift; sourceTree = ""; }; - 4D693BE951DE318F82F66966 /* SBUFeedNotificationCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationCell.swift; path = ../Sources/View/Channel/MessageCell/NotificationChannel/SBUFeedNotificationCell.swift; sourceTree = ""; }; - 4D8CC815B247DBFBDF9BEFF7 /* SBUMessageSearchModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchModule.Header.swift; path = ../Sources/Module/MessageSearch/SBUMessageSearchModule.Header.swift; sourceTree = ""; }; - 50321396A14B856815C79764 /* SBUOpenChannelListViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelListViewModel.swift; path = ../Sources/ViewModel/ChannelList/SBUOpenChannelListViewModel.swift; sourceTree = ""; }; - 50F6D11A6B4CBA1DFD1102DB /* SBUMessageSearchViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchViewModel.swift; path = ../Sources/ViewModel/MessageSearch/SBUMessageSearchViewModel.swift; sourceTree = ""; }; - 51709567943DAB8C50D3264C /* SBUCollectionViewCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCollectionViewCell.swift; path = "../Sources/View/Life cycles/SBUCollectionViewCell.swift"; sourceTree = ""; }; - 523C6F510E763850528BF1E7 /* SBUQuoteMessageInputView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuoteMessageInputView.swift; path = ../Sources/View/Channel/MessageInput/SBUQuoteMessageInputView.swift; sourceTree = ""; }; - 52F22329ADED4C86ADB592D8 /* SBUUser.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUser.swift; path = ../Sources/Model/SBUUser.swift; sourceTree = ""; }; - 537F9C5EF70A6ECD6FFB0A31 /* SBUCacheManager.Config.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.Config.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.Config.swift; sourceTree = ""; }; - 5385C04B9A349FCFDFFA4B92 /* MessageTemplateParser.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MessageTemplateParser.swift; path = ../Sources/CustomSyntaxTest/MessageTemplateParser.swift; sourceTree = ""; }; - 547388CF310AB7037EC60556 /* SBUCacheManager.Version.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.Version.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.Version.swift; sourceTree = ""; }; - 54B2F380E6A7FCB840E15AC4 /* SBUQuoteMessageInputViewProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuoteMessageInputViewProtocol.swift; path = "../Sources/View/Life cycles/SBUQuoteMessageInputViewProtocol.swift"; sourceTree = ""; }; - 5665BD2A6C12035F12E8CD4B /* SBUFeedNotificationChannelModule.CategoryFilter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationChannelModule.CategoryFilter.swift; path = ../Sources/Module/Channel/NotificationChannel/Feed/SBUFeedNotificationChannelModule.CategoryFilter.swift; sourceTree = ""; }; - 5675662CAE0E3EC0E4A0392F /* SBUMenuSheetViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMenuSheetViewController.swift; path = ../Sources/View/Common/Menu/SBUMenuSheetViewController.swift; sourceTree = ""; }; - 567A7DA6F378DFB20F32A01A /* SBUMessageDateView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageDateView.swift; path = ../Sources/View/Channel/CellView/SBUMessageDateView.swift; sourceTree = ""; }; - 56AF15637C550EC6AEEFF0EA /* SBUGroupChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelModule.Header.swift; path = ../Sources/Module/Channel/GroupChannel/SBUGroupChannelModule.Header.swift; sourceTree = ""; }; - 56FEF419539E3D0DF193B2AB /* SBUCreateChannelModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelModule.List.swift; path = ../Sources/Module/SelectUser/CreateChannel/SBUCreateChannelModule.List.swift; sourceTree = ""; }; - 57265A2B441BB2B3FAF2596C /* SBUParentMessageInfoView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUParentMessageInfoView.swift; path = ../Sources/View/MessageThread/SBUParentMessageInfoView.swift; sourceTree = ""; }; - 57CF85F68D2CF31882400B19 /* SBUNewNotificationInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNewNotificationInfo.swift; path = ../Sources/View/Channel/NewMessageInfo/SBUNewNotificationInfo.swift; sourceTree = ""; }; - 58027EC0A8743F4A606CA608 /* SBUBaseChannelSettingsModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingsModule.swift; path = ../Sources/Module/ChannelSettings/SBUBaseChannelSettingsModule.swift; sourceTree = ""; }; - 5812E468BF5387897D079CAD /* SBUAlertView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUAlertView.swift; path = ../Sources/View/Common/SBUAlertView.swift; sourceTree = ""; }; - 58645AFAF1F6197B4F769819 /* SBUBaseSelectUserModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseSelectUserModule.swift; path = ../Sources/Module/SelectUser/SBUBaseSelectUserModule.swift; sourceTree = ""; }; - 58A4FAC461AA835648FE9F66 /* SBUUtils.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUtils.swift; path = ../Sources/Util/SBUUtils.swift; sourceTree = ""; }; - 59A3FA994CE9A95016CA3FBF /* SBUSuggestedReplyView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUSuggestedReplyView.swift; path = ../Sources/View/Channel/MessageCell/SuggestedReply/Views/SBUSuggestedReplyView.swift; sourceTree = ""; }; - 59C43CF4036FEB33894ABEDC /* SBUInviteUserViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUInviteUserViewController.swift; path = ../Sources/View/SelectUser/SBUInviteUserViewController.swift; sourceTree = ""; }; - 59F6653A6A770517CFA01730 /* SBUGroupChannelModule.Input.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelModule.Input.swift; path = ../Sources/Module/Channel/GroupChannel/SBUGroupChannelModule.Input.swift; sourceTree = ""; }; - 5A6F791585859414AB3F0CCC /* SBUAdminMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUAdminMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUAdminMessageCell.swift; sourceTree = ""; }; - 5AFD44975BE7AA6282BAAA88 /* SBUConstant.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConstant.swift; path = ../Sources/Constant/SBUConstant.swift; sourceTree = ""; }; - 5BBC0B1C7098106FF1350683 /* SendbirdUI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SendbirdUI.swift; path = ../Sources/SendbirdUI.swift; sourceTree = ""; }; - 5C15F5F88779D445378B3711 /* SBUInviteUserModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUInviteUserModule.swift; path = ../Sources/Module/SelectUser/InviteUser/SBUInviteUserModule.swift; sourceTree = ""; }; - 5D099ABA2392DCFD3F331D9B /* SBUQuotedBaseMessageViewParams.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuotedBaseMessageViewParams.Deprecated.swift; path = ../Sources/Deprecated/Channel/MessageCell/Replies/SBUQuotedBaseMessageViewParams.Deprecated.swift; sourceTree = ""; }; - 5DA1A955B249D3E59488A2F3 /* SBUUserMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUUserMessageCell.swift; sourceTree = ""; }; - 5E12C5CC90BAE642EF4A3839 /* SBUOpenChannelModule.Input.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelModule.Input.swift; path = ../Sources/Module/Channel/OpenChannel/SBUOpenChannelModule.Input.swift; sourceTree = ""; }; - 5EA1B0589A0E5C19D00CAF27 /* SBUMenuCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMenuCell.swift; path = ../Sources/View/Common/Menu/SBUMenuCell.swift; sourceTree = ""; }; - 5ECD32E1694D81E0245A77C2 /* SBUDebouncer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUDebouncer.swift; path = ../Sources/Util/SBUDebouncer.swift; sourceTree = ""; }; - 5ED22441EFFFDCB1F4FBBFE6 /* SBUUnknownMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUnknownMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUUnknownMessageCellParams.swift; sourceTree = ""; }; - 6104680EDBA19D05B19A3E15 /* SBUGroupChannelSettingCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelSettingCell.swift; path = ../Sources/View/ChannelSettings/Cell/SBUGroupChannelSettingCell.swift; sourceTree = ""; }; - 61A461C5FB81AA384E1F35D7 /* SBUCreateOpenChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateOpenChannelViewController.swift; path = ../Sources/View/SelectUser/CreateChannel/SBUCreateOpenChannelViewController.swift; sourceTree = ""; }; - 6338164168EC12A315AF6626 /* SBUOpenChannelSettingsViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelSettingsViewModel.swift; path = ../Sources/ViewModel/ChannelSettings/SBUOpenChannelSettingsViewModel.swift; sourceTree = ""; }; - 6373BFAAC93A06FE46E6C176 /* SBUDownloadManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUDownloadManager.swift; path = ../Sources/Manager/SBUDownloadManager.swift; sourceTree = ""; }; - 64EC32C82C5FF837F4A3D6AC /* SBUNotificationNavigationTitleView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNotificationNavigationTitleView.swift; path = ../Sources/View/Common/SBUNotificationNavigationTitleView.swift; sourceTree = ""; }; - 65532EB6BB53229A540A2AF6 /* SBUOpenChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelViewModel.swift; path = ../Sources/ViewModel/Channel/SBUOpenChannelViewModel.swift; sourceTree = ""; }; - 65D15636F74327D001C2F9B4 /* SBUMessageWebView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageWebView.swift; path = ../Sources/View/Channel/CellView/SBUMessageWebView.swift; sourceTree = ""; }; - 670C989FDB28B344823A7B70 /* SBUOpenChannelViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelViewController.Deprecated.swift; path = ../Sources/Deprecated/Channel/SBUOpenChannelViewController.Deprecated.swift; sourceTree = ""; }; - 67A185A60EE99EBE801E94C3 /* SBUBaseSelectUserViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseSelectUserViewModel.swift; path = ../Sources/ViewModel/SelectUser/SBUBaseSelectUserViewModel.swift; sourceTree = ""; }; - 684C109F9C01AC58C3E241F4 /* SBUTypingIndicatorInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTypingIndicatorInfo.swift; path = ../Sources/Model/SBUTypingIndicatorInfo.swift; sourceTree = ""; }; - 68B00ACF25C34E0022C90260 /* SBUBaseChannelSettingsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingsViewController.swift; path = ../Sources/View/ChannelSettings/SBUBaseChannelSettingsViewController.swift; sourceTree = ""; }; - 6B2634BB224050571525F902 /* Array+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Array+SBUIKit.swift"; path = "../Sources/Extension/Array+SBUIKit.swift"; sourceTree = ""; }; - 6B78FB93379BAC5649B82649 /* SBUMenuView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMenuView.swift; path = ../Sources/View/Common/Menu/SBUMenuView.swift; sourceTree = ""; }; - 6C074FF0C88AC9DDE2BCEAA7 /* SBUStringSet.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUStringSet.Deprecated.swift; path = ../Sources/Constant/SBUStringSet.Deprecated.swift; sourceTree = ""; }; - 6DA7CE8764EF08BEC1F407DC /* SBUCategoryFilterCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCategoryFilterCell.swift; path = ../Sources/View/Channel/CategoryFilterCell/SBUCategoryFilterCell.swift; sourceTree = ""; }; - 6E0DE5831E8E1AA64BD96517 /* SBUGlobals.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGlobals.Deprecated.swift; path = ../Sources/Deprecated/SBUGlobals.Deprecated.swift; sourceTree = ""; }; - 6F28088DDCC952AAAD58ED11 /* SBUNotificationChannelManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNotificationChannelManager.swift; path = ../Sources/Manager/SBUNotificationChannelManager.swift; sourceTree = ""; }; - 6FEC6560FCA5AC43400EAE68 /* SBUMessageThreadModule.Input.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadModule.Input.swift; path = ../Sources/Module/MessageThread/SBUMessageThreadModule.Input.swift; sourceTree = ""; }; - 708F5AC6588D7574B38BF62D /* SBUMenuCell.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = SBUMenuCell.xib; path = ../Sources/View/Common/Menu/SBUMenuCell.xib; sourceTree = ""; }; - 70FF0A9963D7ABE768497D04 /* SBUColorSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUColorSet.swift; path = ../Sources/Theme/SBUColorSet.swift; sourceTree = ""; }; - 7113C590736C8643127DBFB8 /* SBUOpenChannelContentBaseMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelContentBaseMessageCell.swift; path = ../Sources/View/Channel/MessageCell/OpenChannel/SBUOpenChannelContentBaseMessageCell.swift; sourceTree = ""; }; - 7171FBEE26A1D269D2FCFEF3 /* SBUOpenChannelMessageWebView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelMessageWebView.swift; path = ../Sources/View/Channel/CellView/SBUOpenChannelMessageWebView.swift; sourceTree = ""; }; - 71D2BA7030799CFE0E9E4635 /* Data+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Data+SBUIKit.swift"; path = "../Sources/Extension/Data+SBUIKit.swift"; sourceTree = ""; }; - 71E4850469664F763AD51465 /* SBUCacheManager.Template.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.Template.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.Template.swift; sourceTree = ""; }; - 7205B2C79984A402A4B8A14F /* SBUQuoteMessageInputViewParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuoteMessageInputViewParams.swift; path = ../Sources/View/Channel/MessageInput/ViewParams/SBUQuoteMessageInputViewParams.swift; sourceTree = ""; }; - 7393553FC42515C251EA370D /* SBURegisterOperatorModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBURegisterOperatorModule.swift; path = ../Sources/Module/SelectUser/RegisterOperator/SBURegisterOperatorModule.swift; sourceTree = ""; }; - 748911BF68F971D3EBC4DEFA /* URL+SBUKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "URL+SBUKit.swift"; path = "../Sources/Extension/URL+SBUKit.swift"; sourceTree = ""; }; - 751080FDFD1390A4D53A5151 /* SBUCreateOpenChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateOpenChannelModule.swift; path = ../Sources/Module/SelectUser/CreateChannel/SBUCreateOpenChannelModule.swift; sourceTree = ""; }; - 77A9891B766214282D3C8F26 /* Base.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Base.xcconfig; path = ../Sources/Configurations/Base.xcconfig; sourceTree = ""; }; - 78681C8D5C6D98166A705445 /* SBUBaseChannelViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelViewController.Deprecated.swift; path = ../Sources/Deprecated/Channel/SBUBaseChannelViewController.Deprecated.swift; sourceTree = ""; }; - 7B011BD74F2B528EC8981379 /* SBUOpenChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelModule.swift; path = ../Sources/Module/Channel/OpenChannel/SBUOpenChannelModule.swift; sourceTree = ""; }; - 7B11F0294C06D1D458E0AD16 /* SBUCommonContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCommonContentView.swift; path = ../Sources/View/Channel/MessageCell/FileMessageContentView/SBUCommonContentView.swift; sourceTree = ""; }; - 7B392303476483A559471DC6 /* SBUReactionsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUReactionsViewController.swift; path = ../Sources/View/Channel/Reaction/SBUReactionsViewController.swift; sourceTree = ""; }; - 7B637D27DA9EDA71E8EBC0A9 /* SBUOpenChannelUserMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelUserMessageCell.swift; path = ../Sources/View/Channel/MessageCell/OpenChannel/SBUOpenChannelUserMessageCell.swift; sourceTree = ""; }; - 7BB111DED5C17F8AA0475D82 /* SBUMessageThreadTitleView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadTitleView.swift; path = ../Sources/View/MessageThread/SBUMessageThreadTitleView.swift; sourceTree = ""; }; - 7D897BF5159A76D3B9A72A1A /* SBUSelectablePhotoViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUSelectablePhotoViewController.swift; path = ../Sources/View/Common/PhotoLibrary/SBUSelectablePhotoViewController.swift; sourceTree = ""; }; - 7E32CAE02B6C387C3E2A1799 /* SBUAvailable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUAvailable.swift; path = ../Sources/SBUAvailable.swift; sourceTree = ""; }; - 7FD1BED5D2B1F6D5DAD0240C /* SBUBaseMessageCellParams.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseMessageCellParams.Deprecated.swift; path = ../Sources/Deprecated/Channel/MessageCell/MessageCellParams/SBUBaseMessageCellParams.Deprecated.swift; sourceTree = ""; }; - 807DCAED2F0633FB78DAE04A /* SBUStackView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUStackView.swift; path = ../Sources/View/Common/SBUStackView.swift; sourceTree = ""; }; - 81CEED10E643BC0A28223A5E /* SBUCoverImageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCoverImageView.swift; path = ../Sources/View/Common/SBUCoverImageView.swift; sourceTree = ""; }; - 81F37315E2C2DC15E0F300AE /* SBUOpenChannelCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelCell.swift; path = ../Sources/View/ChannelList/ChannelCell/SBUOpenChannelCell.swift; sourceTree = ""; }; - 837C9913D01794A37AA8C0BD /* SBUMultipleFilesMessageCollectionViewCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMultipleFilesMessageCollectionViewCell.swift; path = ../Sources/View/Channel/MessageCell/MultipleFilesMessage/SBUMultipleFilesMessageCollectionViewCell.swift; sourceTree = ""; }; - 85EBFE79349E4201CF6D3E9C /* SBUBaseChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelModule.Header.swift; path = ../Sources/Module/Channel/SBUBaseChannelModule.Header.swift; sourceTree = ""; }; - 86CEBE8FD03BC8B730E6CC9C /* SBUUserMentionConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserMentionConfiguration.swift; path = ../Sources/Configuration/Mention/SBUUserMentionConfiguration.swift; sourceTree = ""; }; - 87982BEE5F42C384DE2E37D1 /* UIStackView.SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UIStackView.SBUIKit.swift; path = ../Sources/Extension/UIStackView.SBUIKit.swift; sourceTree = ""; }; - 87C6BD82C91BDB00548EA385 /* StringProtocol+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "StringProtocol+SBUIKit.swift"; path = "../Sources/Extension/StringProtocol+SBUIKit.swift"; sourceTree = ""; }; - 88348D4BFE62ECF2CBEDB0B3 /* SBUCreateChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelModule.swift; path = ../Sources/Module/SelectUser/CreateChannel/SBUCreateChannelModule.swift; sourceTree = ""; }; - 8AE109826CB70D9DA5A49EB7 /* SBUUserMessageTextViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserMessageTextViewModel.swift; path = ../Sources/View/Channel/ViewModel/SBUUserMessageTextViewModel.swift; sourceTree = ""; }; - 8C6EF0C95E8472F91B13DE1B /* SBUBarButtonItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBarButtonItem.swift; path = ../Sources/View/Common/SBUBarButtonItem.swift; sourceTree = ""; }; - 8CA2C69D5DB36578E686EE62 /* SBUChannelInfoHeaderView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChannelInfoHeaderView.swift; path = ../Sources/View/Channel/Header/SBUChannelInfoHeaderView.swift; sourceTree = ""; }; - 8D684515D3AA15B3801F9EE4 /* SBUVoiceRecorder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUVoiceRecorder.swift; path = ../Sources/Manager/SBUVoiceRecorder.swift; sourceTree = ""; }; - 8E700CF5A42253A9D0B9C3A9 /* CGSize+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CGSize+SBUIKit.swift"; path = "../Sources/Extension/CGSize+SBUIKit.swift"; sourceTree = ""; }; - 8E71B94DFAB446765A56A781 /* SBUPhotoAccess.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUPhotoAccess.swift; path = ../Sources/View/Common/PhotoLibrary/SBUPhotoAccess.swift; sourceTree = ""; }; - 8ED807FBE8B96DE6C538BC86 /* SBUBaseChannelViewController.Keyboard.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelViewController.Keyboard.swift; path = ../Sources/View/Channel/SBUBaseChannelViewController.Keyboard.swift; sourceTree = ""; }; - 8EDE5C8C193B7FADF990872B /* BlockingOperation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BlockingOperation.swift; path = ../Sources/Util/BlockingOperation.swift; sourceTree = ""; }; - 92FBB65724E212D676EAE9C9 /* SBUEmptyView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUEmptyView.swift; path = ../Sources/View/Common/SBUEmptyView.swift; sourceTree = ""; }; - 93FC7EB3725A6694B5FA8A3F /* SBUMessageWebViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageWebViewModel.swift; path = ../Sources/View/Channel/ViewModel/SBUMessageWebViewModel.swift; sourceTree = ""; }; - 942B8097147C93A2E442B8B9 /* SBUMessageCellConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageCellConfiguration.swift; path = ../Sources/Configuration/MessageCell/SBUMessageCellConfiguration.swift; sourceTree = ""; }; - 97715C40BF9A25445E4A43E0 /* SBUCreateChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelModule.Header.swift; path = ../Sources/Module/SelectUser/CreateChannel/SBUCreateChannelModule.Header.swift; sourceTree = ""; }; - 978A249AA68269C332C17F5B /* SBUModerationsViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsViewController.Deprecated.swift; path = ../Sources/Deprecated/Moderations/SBUModerationsViewController.Deprecated.swift; sourceTree = ""; }; - 9943954ED330D311C5474102 /* SBUVoiceMessageConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUVoiceMessageConfiguration.swift; path = ../Sources/Configuration/VoiceMessage/SBUVoiceMessageConfiguration.swift; sourceTree = ""; }; - 999B98F96140924676C25BF9 /* SBUNotificationEmptyView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNotificationEmptyView.swift; path = ../Sources/View/Common/SBUNotificationEmptyView.swift; sourceTree = ""; }; - 9A6047FD9F8CBBF465C4A3F8 /* SBUCreateOpenChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateOpenChannelModule.Header.swift; path = ../Sources/Module/SelectUser/CreateChannel/SBUCreateOpenChannelModule.Header.swift; sourceTree = ""; }; - 9A89B4C79EA612DF21BAA96A /* SBUChannelListViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChannelListViewController.Deprecated.swift; path = ../Sources/Deprecated/ChannelList/SBUChannelListViewController.Deprecated.swift; sourceTree = ""; }; + 4A860C2449C175A5719F0C35 /* SBUFormViewParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFormViewParams.swift; path = ../Sources/View/Channel/MessageCell/Forms/ViewParams/SBUFormViewParams.swift; sourceTree = ""; }; + 4AC5B88DC64125D423D6DDC4 /* SBUVoiceMessageInputView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUVoiceMessageInputView.swift; path = ../Sources/View/VoiceNote/SBUVoiceMessageInputView.swift; sourceTree = ""; }; + 4AED0DB2ED6DF2061E0357C3 /* SBUSelectableStackView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUSelectableStackView.swift; path = ../Sources/View/Channel/CellView/SBUSelectableStackView.swift; sourceTree = ""; }; + 4E436F823E54872F236D3B43 /* SBUTheme.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTheme.Deprecated.swift; path = ../Sources/Deprecated/SBUTheme.Deprecated.swift; sourceTree = ""; }; + 4EB89DB52E05196105C9B987 /* SBUGroupChannelPushSettingsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelPushSettingsViewController.swift; path = ../Sources/View/NotificationSettings/SBUGroupChannelPushSettingsViewController.swift; sourceTree = ""; }; + 4FB1899C3CA265203961E7E8 /* SBUFeedNotificationChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationChannelViewController.swift; path = ../Sources/View/Channel/SBUFeedNotificationChannelViewController.swift; sourceTree = ""; }; + 4FD04EE69C06332791D32A34 /* SBUOpenChannelModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelModule.List.swift; path = ../Sources/Module/Channel/OpenChannel/SBUOpenChannelModule.List.swift; sourceTree = ""; }; + 509781E9E3CC0989512E5F66 /* SBUGroupChannelPushSettingsModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelPushSettingsModule.swift; path = ../Sources/Module/NotificationSettings/SBUGroupChannelPushSettingsModule.swift; sourceTree = ""; }; + 51E14C16E6A4139AACEF788F /* SBUQuotedBaseMessageViewParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuotedBaseMessageViewParams.swift; path = ../Sources/View/Channel/MessageCell/Replies/ViewParams/SBUQuotedBaseMessageViewParams.swift; sourceTree = ""; }; + 525CD5F127B1B471D6A06CF1 /* SBUUserMessageTextViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserMessageTextViewModel.swift; path = ../Sources/View/Channel/ViewModel/SBUUserMessageTextViewModel.swift; sourceTree = ""; }; + 53BFCBF1186A94B1ED22AAEE /* SBUConfig.Common.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfig.Common.swift; path = ../Sources/Configuration/SBUConfig.Common.swift; sourceTree = ""; }; + 5470569FC46064C0CC2447A0 /* SBUBaseSelectUserViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseSelectUserViewModel.swift; path = ../Sources/ViewModel/SelectUser/SBUBaseSelectUserViewModel.swift; sourceTree = ""; }; + 5587FC3DDAE895326A94B2E5 /* SBUCreateChannelModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelModule.List.swift; path = ../Sources/Module/SelectUser/CreateChannel/SBUCreateChannelModule.List.swift; sourceTree = ""; }; + 5653454C4E7042EF849C077C /* Array+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Array+SBUIKit.swift"; path = "../Sources/Extension/Array+SBUIKit.swift"; sourceTree = ""; }; + 566FE9273D1C22154E4D2504 /* SBUContentBaseMessageCell.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUContentBaseMessageCell.Deprecated.swift; path = ../Sources/Deprecated/Channel/MessageCell/SBUContentBaseMessageCell.Deprecated.swift; sourceTree = ""; }; + 57AFF029AB67E9E3DAD47ED2 /* SBUBaseSelectUserModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseSelectUserModule.List.swift; path = ../Sources/Module/SelectUser/SBUBaseSelectUserModule.List.swift; sourceTree = ""; }; + 58027FDAFC467BA293633EB9 /* SBUBaseChannelSettingCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingCell.swift; path = ../Sources/View/ChannelSettings/Cell/SBUBaseChannelSettingCell.swift; sourceTree = ""; }; + 589C45ABE10B55119CFAD24E /* SBUOpenChannelModule.Media.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelModule.Media.swift; path = ../Sources/Module/Channel/OpenChannel/SBUOpenChannelModule.Media.swift; sourceTree = ""; }; + 5934998683DBE48B7BB9D608 /* SBUModuleSet.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModuleSet.Deprecated.swift; path = ../Sources/Deprecated/SBUModuleSet.Deprecated.swift; sourceTree = ""; }; + 59BDE14B26EDC055E1BF2A4E /* SBUCreateChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelViewController.swift; path = ../Sources/View/SelectUser/CreateChannel/SBUCreateChannelViewController.swift; sourceTree = ""; }; + 5A25EC53445992C5F407736B /* SBUQuoteMessageInputView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuoteMessageInputView.swift; path = ../Sources/View/Channel/MessageInput/SBUQuoteMessageInputView.swift; sourceTree = ""; }; + 5A6C2CCD8C5345DE571B7E0C /* SBUQuotedUserMessageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuotedUserMessageView.swift; path = ../Sources/View/Channel/MessageCell/Replies/MessageView/SBUQuotedUserMessageView.swift; sourceTree = ""; }; + 5A73EBCFD8FF5402C497035C /* SBUEnums.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUEnums.swift; path = ../Sources/Enums/SBUEnums.swift; sourceTree = ""; }; + 5B09CF0D84533DCE84A1A008 /* SBUBaseViewController.Unavailable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseViewController.Unavailable.swift; path = ../Sources/Deprecated/SBUBaseViewController.Unavailable.swift; sourceTree = ""; }; + 5C1EC1A3BA52F6D65EACECD5 /* SBUDateFormatSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUDateFormatSet.swift; path = ../Sources/Constant/SBUDateFormatSet.swift; sourceTree = ""; }; + 5C317F18296BFC864AFF40AA /* SBUOpenChannelSettingsModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelSettingsModule.swift; path = ../Sources/Module/ChannelSettings/OpenChannel/SBUOpenChannelSettingsModule.swift; sourceTree = ""; }; + 5CA358756BFBE63246999CFC /* SBUChatNotificationChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChatNotificationChannelModule.swift; path = ../Sources/Module/Channel/NotificationChannel/Chat/SBUChatNotificationChannelModule.swift; sourceTree = ""; }; + 5DE08D0894A12FE3F1772063 /* SBUModerationsModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsModule.swift; path = ../Sources/Module/Moderations/SBUModerationsModule.swift; sourceTree = ""; }; + 5E1DAF8A9552C95C996C3670 /* SBUEmptyView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUEmptyView.swift; path = ../Sources/View/Common/SBUEmptyView.swift; sourceTree = ""; }; + 5E6D1118FBFF4CF371D5DB3D /* SBUOpenChannelMessageWebView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelMessageWebView.swift; path = ../Sources/View/Channel/CellView/SBUOpenChannelMessageWebView.swift; sourceTree = ""; }; + 5F5BC5ECF81747D1122595F0 /* SBUUserCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserCell.swift; path = ../Sources/View/Common/UserCell/SBUUserCell.swift; sourceTree = ""; }; + 603AA8F948B9ECD1074C73C9 /* SBUStringSet.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUStringSet.Deprecated.swift; path = ../Sources/Constant/SBUStringSet.Deprecated.swift; sourceTree = ""; }; + 621D95B8A24F0A72DA537320 /* SBUBaseChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelModule.Header.swift; path = ../Sources/Module/Channel/SBUBaseChannelModule.Header.swift; sourceTree = ""; }; + 639A71ECE540841BCCFC456F /* SendbirdUIKit.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SendbirdUIKit.h; path = ../Sources/SendbirdUIKit.h; sourceTree = ""; }; + 650A2685B3FAF47445209B53 /* SBUBaseChannelModule.Input.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelModule.Input.swift; path = ../Sources/Module/Channel/SBUBaseChannelModule.Input.swift; sourceTree = ""; }; + 654610CEC554DB27ACBC43B1 /* SBUGlobals.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGlobals.swift; path = ../Sources/SBUGlobals.swift; sourceTree = ""; }; + 655D4DB6D742F3C3FE956E42 /* SBUToastManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUToastManager.swift; path = ../Sources/Manager/SBUToastManager.swift; sourceTree = ""; }; + 65E152807A84A65A93E961DD /* UINavigationController+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UINavigationController+SBUIKit.swift"; path = "../Sources/Extension/UINavigationController+SBUIKit.swift"; sourceTree = ""; }; + 66149F4E70539DC44B7BD4B1 /* SBUAlertView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUAlertView.swift; path = ../Sources/View/Common/SBUAlertView.swift; sourceTree = ""; }; + 665624EE08CC9A6036D0CB01 /* SBUFeedNotificationChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationChannelModule.swift; path = ../Sources/Module/Channel/NotificationChannel/Feed/SBUFeedNotificationChannelModule.swift; sourceTree = ""; }; + 66C0F38EFA2A8FF69D5D09AF /* SBUOpenChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelModule.swift; path = ../Sources/Module/Channel/OpenChannel/SBUOpenChannelModule.swift; sourceTree = ""; }; + 677C4EF67F982A44CE23E60A /* SBUUserListModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserListModule.swift; path = ../Sources/Module/UserList/SBUUserListModule.swift; sourceTree = ""; }; + 6901F2A73F6DCA81C8FC15C9 /* SBUGroupChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelViewModel.swift; path = ../Sources/ViewModel/Channel/SBUGroupChannelViewModel.swift; sourceTree = ""; }; + 6969B20EB381CEB10FEF0655 /* SBUVoiceFileInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUVoiceFileInfo.swift; path = ../Sources/Model/SBUVoiceFileInfo.swift; sourceTree = ""; }; + 6A8B6FD6A03AF2AEB93537D6 /* SBUOpenChannelContentBaseMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelContentBaseMessageCell.swift; path = ../Sources/View/Channel/MessageCell/OpenChannel/SBUOpenChannelContentBaseMessageCell.swift; sourceTree = ""; }; + 6B1BBBC01EB2A86A282D1D32 /* SBUAnimation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUAnimation.swift; path = ../Sources/View/Common/SBUAnimation.swift; sourceTree = ""; }; + 6B34CE6FA66EDF70BF0EC532 /* SBUMultipleFilesMessageCollectionViewCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMultipleFilesMessageCollectionViewCell.swift; path = ../Sources/View/Channel/MessageCell/MultipleFilesMessage/SBUMultipleFilesMessageCollectionViewCell.swift; sourceTree = ""; }; + 6BF77280E66C4E3E350010FD /* SBUMention.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMention.swift; path = ../Sources/Model/SBUMention.swift; sourceTree = ""; }; + 6C2CAF5D8DDD07ADB0F5972D /* SBUModerationsModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsModule.Header.swift; path = ../Sources/Module/Moderations/SBUModerationsModule.Header.swift; sourceTree = ""; }; + 6DCD12ED664B7652FCFABED5 /* SBUGroupChannelListModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelListModule.swift; path = ../Sources/Module/ChannelList/GroupChannel/SBUGroupChannelListModule.swift; sourceTree = ""; }; + 6EFF4C9950DF91E793A2EBF2 /* String+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+SBUIKit.swift"; path = "../Sources/Extension/String+SBUIKit.swift"; sourceTree = ""; }; + 6F0C80C4D6DF85FE405EF779 /* SBUVoicePlayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUVoicePlayer.swift; path = ../Sources/Manager/SBUVoicePlayer.swift; sourceTree = ""; }; + 6F241535BD1A7F066E906872 /* SBUBaseChannelListViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelListViewModel.swift; path = ../Sources/ViewModel/ChannelList/SBUBaseChannelListViewModel.swift; sourceTree = ""; }; + 6F32BF4819FA37E319296D33 /* SBUGlobalCustomParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGlobalCustomParams.swift; path = ../Sources/SBUGlobalCustomParams.swift; sourceTree = ""; }; + 7298991AB0756516527A6707 /* SBUCoverImageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCoverImageView.swift; path = ../Sources/View/Common/SBUCoverImageView.swift; sourceTree = ""; }; + 7312EA10DED5DAB57697AC64 /* SBURegisterOperatorViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBURegisterOperatorViewController.swift; path = ../Sources/View/SelectUser/SBURegisterOperatorViewController.swift; sourceTree = ""; }; + 75768457ACC9A7F40ABDC652 /* SBUMessageSearchModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchModule.List.swift; path = ../Sources/Module/MessageSearch/SBUMessageSearchModule.List.swift; sourceTree = ""; }; + 761B839CB8A4FE1560765B78 /* SBUUnknownMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUnknownMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUUnknownMessageCell.swift; sourceTree = ""; }; + 76ACEC75E210CB87784CAFEB /* QuotedFileImageContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = QuotedFileImageContentView.swift; path = ../Sources/View/Channel/MessageCell/Replies/MessageView/QuotedFileImageContentView.swift; sourceTree = ""; }; + 7728597536E0E3841BF766F0 /* SBUMessageSearchViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchViewController.swift; path = ../Sources/View/MessageSearch/SBUMessageSearchViewController.swift; sourceTree = ""; }; + 7883481FDE9ABF715E4E25C1 /* SBUUserListViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserListViewController.swift; path = ../Sources/View/UserList/SBUUserListViewController.swift; sourceTree = ""; }; + 789FDC72879DBD8EEC452D43 /* SBUViewControllerSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUViewControllerSet.swift; path = ../Sources/View/SBUViewControllerSet.swift; sourceTree = ""; }; + 7923DE70363AB4A9441D1461 /* SBUFeedNotificationCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationCell.swift; path = ../Sources/View/Channel/MessageCell/NotificationChannel/SBUFeedNotificationCell.swift; sourceTree = ""; }; + 7A529554987ADAC8814D3340 /* SBUBaseChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelViewModel.swift; path = ../Sources/ViewModel/Channel/SBUBaseChannelViewModel.swift; sourceTree = ""; }; + 7AB199C2ABA57A6BDBB487D3 /* SBUForms.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUForms.swift; path = ../Sources/Model/SBUForms.swift; sourceTree = ""; }; + 7B889893CBF2930B84D76BF6 /* SBUCacheManager.Image.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.Image.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.Image.swift; sourceTree = ""; }; + 7CC62AD1BFC56809B2A8540C /* SBUMessageWebView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageWebView.swift; path = ../Sources/View/Channel/CellView/SBUMessageWebView.swift; sourceTree = ""; }; + 7D8B5FF9C4444A8AE810EEDC /* SBUCreateOpenChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateOpenChannelViewModel.swift; path = ../Sources/ViewModel/SelectUser/CreateChannel/SBUCreateOpenChannelViewModel.swift; sourceTree = ""; }; + 7F797391BF7579094802CC02 /* SBUOpenChannelListModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelListModule.Header.swift; path = ../Sources/Module/ChannelList/OpenChannel/SBUOpenChannelListModule.Header.swift; sourceTree = ""; }; + 800D22C5CBEAAE32EBC78893 /* SBUMessageSearchResultCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchResultCell.swift; path = ../Sources/View/MessageSearch/Cell/SBUMessageSearchResultCell.swift; sourceTree = ""; }; + 814ED80EB9A6368CFE4A81BA /* SBUGroupChannelPushSettingsViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelPushSettingsViewModel.swift; path = ../Sources/ViewModel/NotificationSettings/SBUGroupChannelPushSettingsViewModel.swift; sourceTree = ""; }; + 81FD78B595B3F3718CE84774 /* SBUBaseSelectUserModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseSelectUserModule.swift; path = ../Sources/Module/SelectUser/SBUBaseSelectUserModule.swift; sourceTree = ""; }; + 83F4BF5C4CDAAD25155E22C7 /* SBUOpenChannelSettingsViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelSettingsViewModel.swift; path = ../Sources/ViewModel/ChannelSettings/SBUOpenChannelSettingsViewModel.swift; sourceTree = ""; }; + 8417232FBF8002EB65572308 /* SBUGroupChannelSettingCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelSettingCell.swift; path = ../Sources/View/ChannelSettings/Cell/SBUGroupChannelSettingCell.swift; sourceTree = ""; }; + 8454D32C99368255D2B235F7 /* SBUBaseMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUBaseMessageCellParams.swift; sourceTree = ""; }; + 84A1EDA5AB7BA03BAFAD6313 /* SBUMessageCellConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageCellConfiguration.swift; path = ../Sources/Configuration/MessageCell/SBUMessageCellConfiguration.swift; sourceTree = ""; }; + 84AB53AE7E88752E586BF311 /* SBURegisterOperatorModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBURegisterOperatorModule.Header.swift; path = ../Sources/Module/SelectUser/RegisterOperator/SBURegisterOperatorModule.Header.swift; sourceTree = ""; }; + 85A154C31D8FF89BC65557A4 /* Debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = ../Sources/Configurations/Debug.xcconfig; sourceTree = ""; }; + 86170B209644D6F0F269CAAA /* SBUChannelSettingItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChannelSettingItem.swift; path = ../Sources/Module/ChannelSettings/ChannelSettingItem/SBUChannelSettingItem.swift; sourceTree = ""; }; + 869AC45675B3736CDECAD5F3 /* SBUModerationsViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsViewModel.swift; path = ../Sources/ViewModel/ChannelSettings/SBUModerationsViewModel.swift; sourceTree = ""; }; + 86B0C475D10053B32349412F /* SBUNewNotificationInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNewNotificationInfo.swift; path = ../Sources/View/Channel/NewMessageInfo/SBUNewNotificationInfo.swift; sourceTree = ""; }; + 87FA488885FB02557D293F7A /* SBUFileMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFileMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUFileMessageCellParams.swift; sourceTree = ""; }; + 885D613FEDCF9E4AE9124492 /* SBUReplyConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUReplyConfiguration.swift; path = ../Sources/Configuration/Replies/SBUReplyConfiguration.swift; sourceTree = ""; }; + 889046C45305F5C0EEC67027 /* SBUGroupChannelSettingsModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelSettingsModule.Header.swift; path = ../Sources/Module/ChannelSettings/GroupChannel/SBUGroupChannelSettingsModule.Header.swift; sourceTree = ""; }; + 8890847DD4961E793CFB92AA /* UIView+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIView+SBUIKit.swift"; path = "../Sources/Extension/UIView+SBUIKit.swift"; sourceTree = ""; }; + 8BB5C40529776A0939AF5375 /* Release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = ../Sources/Configurations/Release.xcconfig; sourceTree = ""; }; + 8C21555DDCF993FD577EACD4 /* SBUUserMessageTextView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserMessageTextView.swift; path = ../Sources/View/Channel/CellView/SBUUserMessageTextView.swift; sourceTree = ""; }; + 8CDADAA49466BDA35BD973EE /* SBUChannelSettingsChannelInfoView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChannelSettingsChannelInfoView.swift; path = ../Sources/View/ChannelSettings/View/SBUChannelSettingsChannelInfoView.swift; sourceTree = ""; }; + 8CE04C0908F4016401315EDF /* SBUAdminMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUAdminMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUAdminMessageCellParams.swift; sourceTree = ""; }; + 8DB3EB75C40975BDD6B8689F /* SBUGroupChannelViewController.Unavailable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelViewController.Unavailable.swift; path = ../Sources/Deprecated/Channel/SBUGroupChannelViewController.Unavailable.swift; sourceTree = ""; }; + 8E266F21A4EF0F1106EE68D9 /* SBUOpenChannelUserMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelUserMessageCell.swift; path = ../Sources/View/Channel/MessageCell/OpenChannel/SBUOpenChannelUserMessageCell.swift; sourceTree = ""; }; + 8EF18B112FE9655F63E03613 /* SBUConfig.Base.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfig.Base.swift; path = ../Sources/Configuration/SBUConfig.Base.swift; sourceTree = ""; }; + 8F9972F1D6B42985FC584593 /* SBUBaseChannelListModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelListModule.swift; path = ../Sources/Module/ChannelList/SBUBaseChannelListModule.swift; sourceTree = ""; }; + 8FE327CC068C2054ACD4671D /* SBUPropertyWrapper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUPropertyWrapper.swift; path = ../Sources/Util/SBUPropertyWrapper.swift; sourceTree = ""; }; + 8FE87DC7C154FA915C08D735 /* SBUCommonContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCommonContentView.swift; path = ../Sources/View/Channel/MessageCell/FileMessageContentView/SBUCommonContentView.swift; sourceTree = ""; }; + 9000CB6FB2D20D2D386925B7 /* SBUChannelListViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChannelListViewController.Deprecated.swift; path = ../Sources/Deprecated/ChannelList/SBUChannelListViewController.Deprecated.swift; sourceTree = ""; }; + 901D841790009294F3C1F383 /* SBUMessageInputView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageInputView.swift; path = ../Sources/View/Channel/MessageInput/SBUMessageInputView.swift; sourceTree = ""; }; + 90463FD5A7830689C13AF5F5 /* SBUBaseChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelModule.swift; path = ../Sources/Module/Channel/SBUBaseChannelModule.swift; sourceTree = ""; }; + 90EA277BB22C9E37797C98B3 /* SBUBaseChannelViewController.Unavailable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelViewController.Unavailable.swift; path = ../Sources/Deprecated/Channel/SBUBaseChannelViewController.Unavailable.swift; sourceTree = ""; }; + 917D355593C6B2659412E556 /* SBUMemberListViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMemberListViewController.Deprecated.swift; path = ../Sources/Deprecated/MemberList/SBUMemberListViewController.Deprecated.swift; sourceTree = ""; }; + 91D6CE35075BE41D91676260 /* SBUTypingIndicatorMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTypingIndicatorMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUTypingIndicatorMessageCell.swift; sourceTree = ""; }; + 927FA69D319761980E9AC2DB /* SBUTypingIndicatorMessageManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTypingIndicatorMessageManager.swift; path = ../Sources/Manager/SBUTypingIndicatorMessageManager.swift; sourceTree = ""; }; + 938DD9A1CD35661207613834 /* SBUCommonItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCommonItem.swift; path = ../Sources/View/Common/SBUCommonItem.swift; sourceTree = ""; }; + 93B3279889AB5E3FB27C1C85 /* SBUPhotoCollectionViewCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUPhotoCollectionViewCell.swift; path = ../Sources/View/Common/PhotoLibrary/SBUPhotoCollectionViewCell.swift; sourceTree = ""; }; + 93EECBF11BEB9B318358EC4E /* SBUBaseChannelViewController.Keyboard.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelViewController.Keyboard.swift; path = ../Sources/View/Channel/SBUBaseChannelViewController.Keyboard.swift; sourceTree = ""; }; + 9418D60F4915AC641F2148C7 /* SBUEmojiManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUEmojiManager.swift; path = ../Sources/Manager/SBUEmojiManager.swift; sourceTree = ""; }; + 94A59A4397AA5EC62CD0E9AB /* SBUQuotedBaseMessageViewParams.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuotedBaseMessageViewParams.Deprecated.swift; path = ../Sources/Deprecated/Channel/MessageCell/Replies/SBUQuotedBaseMessageViewParams.Deprecated.swift; sourceTree = ""; }; + 9536BA4C46447C8CDF22BFCB /* SBUFeedNotificationChannelModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationChannelModule.List.swift; path = ../Sources/Module/Channel/NotificationChannel/Feed/SBUFeedNotificationChannelModule.List.swift; sourceTree = ""; }; + 95C72AC687A23B405838CEA8 /* SBUCollectionViewCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCollectionViewCell.swift; path = "../Sources/View/Life cycles/SBUCollectionViewCell.swift"; sourceTree = ""; }; + 969CC8582C2EFD870EB3BAAA /* SBUOpenChannelAdminMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelAdminMessageCell.swift; path = ../Sources/View/Channel/MessageCell/OpenChannel/SBUOpenChannelAdminMessageCell.swift; sourceTree = ""; }; + 974A8D57B1D361C2033AC176 /* UITextField+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITextField+SBUIKit.swift"; path = "../Sources/Extension/UITextField+SBUIKit.swift"; sourceTree = ""; }; + 9898E9A1DEA31F29CBC37E80 /* SBUChatNotificationChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChatNotificationChannelModule.Header.swift; path = ../Sources/Module/Channel/NotificationChannel/Chat/SBUChatNotificationChannelModule.Header.swift; sourceTree = ""; }; + 98F8FF2B47A3BA6F86568134 /* SBUOpenChannelListModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelListModule.List.swift; path = ../Sources/Module/ChannelList/OpenChannel/SBUOpenChannelListModule.List.swift; sourceTree = ""; }; + 998F262CCFF77AEEF5F4FFD1 /* SBUConstant.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConstant.swift; path = ../Sources/Constant/SBUConstant.swift; sourceTree = ""; }; + 99EB3F800A89AF02D774D584 /* SBUSelectablePhotoViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUSelectablePhotoViewController.swift; path = ../Sources/View/Common/PhotoLibrary/SBUSelectablePhotoViewController.swift; sourceTree = ""; }; + 9A4A196367C558B41306B331 /* Date+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Date+SBUIKit.swift"; path = "../Sources/Extension/Date+SBUIKit.swift"; sourceTree = ""; }; + 9AEC878BE3DB4FD78022AD5F /* SBURegisterOperatorModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBURegisterOperatorModule.swift; path = ../Sources/Module/SelectUser/RegisterOperator/SBURegisterOperatorModule.swift; sourceTree = ""; }; + 9AF8919A674D2307E9A1DA0D /* SBUGroupChannelModule.Input.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelModule.Input.swift; path = ../Sources/Module/Channel/GroupChannel/SBUGroupChannelModule.Input.swift; sourceTree = ""; }; + 9BBA7D26B15B96DE79CCD255 /* SBUNotificationCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNotificationCell.swift; path = ../Sources/View/Channel/MessageCell/NotificationChannel/SBUNotificationCell.swift; sourceTree = ""; }; + 9BE53A43E86A8F2169999B8B /* SBUMessageSearchViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchViewController.Deprecated.swift; path = ../Sources/Deprecated/MessageSearch/SBUMessageSearchViewController.Deprecated.swift; sourceTree = ""; }; + 9BF9C43480BB8634422D328F /* SBUParentMessageInfoReactionView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUParentMessageInfoReactionView.swift; path = ../Sources/View/Channel/Reaction/SBUParentMessageInfoReactionView.swift; sourceTree = ""; }; 9C037DD4280432DB00059696 /* ViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; 9C037DD5280432DB00059696 /* QuickStart.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = QuickStart.entitlements; sourceTree = ""; }; 9C037DD7280432DB00059696 /* UILabel+Ext.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UILabel+Ext.swift"; sourceTree = ""; }; @@ -718,26 +724,27 @@ 9C3EBE2C28091D4200B5366B /* NotificationService.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = NotificationService.entitlements; sourceTree = ""; }; 9C5DCD48242AFA7C00C41106 /* UserNotifications.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UserNotifications.framework; path = System/Library/Frameworks/UserNotifications.framework; sourceTree = SDKROOT; }; 9C5DCD4D242B0C7E00C41106 /* libicucore.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libicucore.tbd; path = usr/lib/libicucore.tbd; sourceTree = SDKROOT; }; - 9C70CC4B80861153433E489C /* SBUGroupChannelListModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelListModule.Header.swift; path = ../Sources/Module/ChannelList/GroupChannel/SBUGroupChannelListModule.Header.swift; sourceTree = ""; }; + 9C6B55A5F36AB450C77383D4 /* SBUIconSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUIconSet.swift; path = ../Sources/Theme/SBUIconSet.swift; sourceTree = ""; }; 9C777D57241B9022006FFE25 /* QuickStart.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = QuickStart.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 9E3686281F7277481FE81D91 /* SBUModerationsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsViewController.swift; path = ../Sources/View/Moderations/SBUModerationsViewController.swift; sourceTree = ""; }; - 9E6F6C2715901796252A4C60 /* SBUBaseChannelSettingsModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingsModule.Header.swift; path = ../Sources/Module/ChannelSettings/SBUBaseChannelSettingsModule.Header.swift; sourceTree = ""; }; - 9F7DFA4B49D225AFE90087E3 /* SBUGroupChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelViewModel.swift; path = ../Sources/ViewModel/Channel/SBUGroupChannelViewModel.swift; sourceTree = ""; }; - 9F961B1410AF1C3374486D6D /* SBUConfig.Base.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfig.Base.swift; path = ../Sources/Configuration/SBUConfig.Base.swift; sourceTree = ""; }; - A09B750C2DB2602C8AB8A7C2 /* SBUMessageInputMode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageInputMode.swift; path = ../Sources/View/Channel/MessageInput/SBUMessageInputMode.swift; sourceTree = ""; }; - A0D8383300A0ECFAC83488FA /* SBUFeedNotificationCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUFeedNotificationCellParams.swift; sourceTree = ""; }; - A2E70FA2C1F6CE3D53387477 /* SBUCommonDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCommonDelegate.swift; path = ../Sources/ViewModel/Common/SBUCommonDelegate.swift; sourceTree = ""; }; - A3509DD8A401350938E78702 /* SBUConfig.Common.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfig.Common.swift; path = ../Sources/Configuration/SBUConfig.Common.swift; sourceTree = ""; }; - A4F9723828456EF4586C5E1F /* SBUGroupChannelSettingsViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelSettingsViewModel.swift; path = ../Sources/ViewModel/ChannelSettings/SBUGroupChannelSettingsViewModel.swift; sourceTree = ""; }; - A560C431BBA9C41F34F9EE58 /* SBUQuotedBaseMessageViewParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuotedBaseMessageViewParams.swift; path = ../Sources/View/Channel/MessageCell/Replies/ViewParams/SBUQuotedBaseMessageViewParams.swift; sourceTree = ""; }; - A64F7A1E3A39A65A300C1D73 /* SBURegisterOperatorModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBURegisterOperatorModule.List.swift; path = ../Sources/Module/SelectUser/RegisterOperator/SBURegisterOperatorModule.List.swift; sourceTree = ""; }; - A6B99AC0F1FB2B1F928AA0A4 /* SBUSuggestedReplyViewParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUSuggestedReplyViewParams.swift; path = ../Sources/View/Channel/MessageCell/SuggestedReply/ViewParams/SBUSuggestedReplyViewParams.swift; sourceTree = ""; }; - A6C2ABA2F639506278D9B647 /* SBUBaseChannelCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelCell.swift; path = ../Sources/View/ChannelList/ChannelCell/SBUBaseChannelCell.swift; sourceTree = ""; }; - A6EC6F9EB11ADDDB3546DAE8 /* SBUGroupChannelListModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelListModule.List.swift; path = ../Sources/Module/ChannelList/GroupChannel/SBUGroupChannelListModule.List.swift; sourceTree = ""; }; - A75E24DB12CABF915A7EC4AF /* CommonProtocols.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CommonProtocols.swift; path = ../Sources/Protocol/CommonProtocols.swift; sourceTree = ""; }; - A7C9B6CF517F736AF92B4748 /* UIColor+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIColor+SBUIKit.swift"; path = "../Sources/Extension/UIColor+SBUIKit.swift"; sourceTree = ""; }; - A85D6EF71647578C05F32B2A /* SBUChannelTitleView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChannelTitleView.swift; path = ../Sources/View/Channel/Header/SBUChannelTitleView.swift; sourceTree = ""; }; - A87B57B5B09DB04D0836F71E /* SBUMention.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMention.swift; path = ../Sources/Model/SBUMention.swift; sourceTree = ""; }; + 9CF39537E2D18D0A6A1B2D49 /* SBUMenuCell.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = SBUMenuCell.xib; path = ../Sources/View/Common/Menu/SBUMenuCell.xib; sourceTree = ""; }; + 9CF81684F6B7E32BA25962C8 /* SBUModerationsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsViewController.swift; path = ../Sources/View/Moderations/SBUModerationsViewController.swift; sourceTree = ""; }; + 9DC1E67F57F827A1633A2467 /* SBUBaseChannelCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelCell.swift; path = ../Sources/View/ChannelList/ChannelCell/SBUBaseChannelCell.swift; sourceTree = ""; }; + 9F2E7256AF48965AECA7C6DD /* SBUBaseChannelSettingsModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingsModule.Header.swift; path = ../Sources/Module/ChannelSettings/SBUBaseChannelSettingsModule.Header.swift; sourceTree = ""; }; + 9F5852402071EC8E5A72F3A6 /* SBUNotificationTimelineView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNotificationTimelineView.swift; path = ../Sources/View/Channel/CellView/SBUNotificationTimelineView.swift; sourceTree = ""; }; + 9F5A1D92C78BC5B3135C66DB /* SBUConfig.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfig.swift; path = ../Sources/Configuration/SBUConfig.swift; sourceTree = ""; }; + 9F65BF99B9367ECA69450FED /* SBUOpenChannelSettingsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelSettingsViewController.swift; path = ../Sources/View/ChannelSettings/SBUOpenChannelSettingsViewController.swift; sourceTree = ""; }; + A0015634D994EE7F2B3E6C06 /* SBUBaseMessageCellParams.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseMessageCellParams.Deprecated.swift; path = ../Sources/Deprecated/Channel/MessageCell/MessageCellParams/SBUBaseMessageCellParams.Deprecated.swift; sourceTree = ""; }; + A058EA64703DD199986BDE45 /* Float+SBUKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Float+SBUKit.swift"; path = "../Sources/Extension/Float+SBUKit.swift"; sourceTree = ""; }; + A106B25318117741FE01FB2A /* SBUGroupChannelPushSettingsModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelPushSettingsModule.Header.swift; path = ../Sources/Module/NotificationSettings/SBUGroupChannelPushSettingsModule.Header.swift; sourceTree = ""; }; + A32BCF06C051973A5020E966 /* SBUPhotoAccess.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUPhotoAccess.swift; path = ../Sources/View/Common/PhotoLibrary/SBUPhotoAccess.swift; sourceTree = ""; }; + A4D9F434D5CEA29FADCCB692 /* SBUOpenChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelViewModel.swift; path = ../Sources/ViewModel/Channel/SBUOpenChannelViewModel.swift; sourceTree = ""; }; + A63C19DFE13797A08E427A76 /* SBUMessageDateView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageDateView.swift; path = ../Sources/View/Channel/CellView/SBUMessageDateView.swift; sourceTree = ""; }; + A6A157AB2D7099FE9C9B171D /* SBUGlobals.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGlobals.Deprecated.swift; path = ../Sources/Deprecated/SBUGlobals.Deprecated.swift; sourceTree = ""; }; + A6AE9EE27E2144A25B58B718 /* SBUBaseViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseViewController.swift; path = ../Sources/View/SBUBaseViewController.swift; sourceTree = ""; }; + A764614CBE0D25AD44CA6F1D /* SBUBottomSheetController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBottomSheetController.swift; path = ../Sources/View/Common/Menu/SBUBottomSheetController.swift; sourceTree = ""; }; + A79FDF21A1D449CA027CA28B /* SBUUtils.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUtils.swift; path = ../Sources/Util/SBUUtils.swift; sourceTree = ""; }; + A7F080FA1D6894C3ECEEDE3D /* SBUGroupChannelSettingsModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelSettingsModule.swift; path = ../Sources/Module/ChannelSettings/GroupChannel/SBUGroupChannelSettingsModule.swift; sourceTree = ""; }; + A939B0B4E013154B92435C78 /* SBUPermissionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUPermissionManager.swift; path = ../Sources/Manager/SBUPermissionManager.swift; sourceTree = ""; }; A93AE84F2A383CAA00AFFF9C /* CustomBaseViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CustomBaseViewController.swift; sourceTree = ""; }; A93AE8522A383CAA00AFFF9C /* ChannelListCustomManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChannelListCustomManager.swift; sourceTree = ""; }; A93AE8532A383CAA00AFFF9C /* InviteUserCustomManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = InviteUserCustomManager.swift; sourceTree = ""; }; @@ -771,144 +778,151 @@ A93AE87A2A383CAA00AFFF9C /* CreateChannelVC_UserList.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CreateChannelVC_UserList.swift; sourceTree = ""; }; A93AE89A2A38479400AFFF9C /* ChannelListVC_CustomHeader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChannelListVC_CustomHeader.swift; sourceTree = ""; }; A93AE89C2A3847B600AFFF9C /* ChannelListVC_CustomList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChannelListVC_CustomList.swift; sourceTree = ""; }; + A952A4E3AF10E4E3173E5562 /* SBUInviteUserViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUInviteUserViewModel.swift; path = ../Sources/ViewModel/SelectUser/SBUInviteUserViewModel.swift; sourceTree = ""; }; A968B36928C86B5700271C60 /* LiveStreamChannelListViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LiveStreamChannelListViewModel.swift; sourceTree = ""; }; A968B36B28C86B8600271C60 /* LiveStreamChannelListModule.List.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LiveStreamChannelListModule.List.swift; sourceTree = ""; }; A968B36D28C9AB7F00271C60 /* LiveStreamChannelModule.Media.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LiveStreamChannelModule.Media.swift; sourceTree = ""; }; - AB2D688355DD2B50C12552D6 /* SBUConfig.GroupChannel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfig.GroupChannel.swift; path = ../Sources/Configuration/SBUConfig.GroupChannel.swift; sourceTree = ""; }; - AB44E0C51BCE310966C9CD8A /* SBUModerationsModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsModule.List.swift; path = ../Sources/Module/Moderations/SBUModerationsModule.List.swift; sourceTree = ""; }; - AB532737198197F81925D25C /* SBUTemplateLabel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTemplateLabel.swift; path = ../Sources/View/Common/SBUTemplateLabel.swift; sourceTree = ""; }; - AB87F5B3A54B200570C4CA77 /* SBUTheme.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTheme.Deprecated.swift; path = ../Sources/Deprecated/SBUTheme.Deprecated.swift; sourceTree = ""; }; - ABBF7BEBCB4E4F5040067661 /* SBUChatNotificationChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChatNotificationChannelViewController.swift; path = ../Sources/View/Channel/SBUChatNotificationChannelViewController.swift; sourceTree = ""; }; - AD3DBAD22A6750CDEBF4AB6C /* SBUBaseFileContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseFileContentView.swift; path = ../Sources/View/Channel/MessageCell/FileMessageContentView/SBUBaseFileContentView.swift; sourceTree = ""; }; - AD7E76AE4730DDB54C71AA80 /* SBUCoverImageView.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCoverImageView.Deprecated.swift; path = ../Sources/Deprecated/SBUCoverImageView.Deprecated.swift; sourceTree = ""; }; - ADFECD11BC76ED18F3EAADCC /* SBUViewModelDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUViewModelDelegate.swift; path = ../Sources/ViewModel/SBUViewModelDelegate.swift; sourceTree = ""; }; - AFA07F52850027CB7EC7E924 /* UIApplication+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIApplication+SBUIKit.swift"; path = "../Sources/Extension/UIApplication+SBUIKit.swift"; sourceTree = ""; }; - B00D6064711D2270A05F74CC /* UITextField+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITextField+SBUIKit.swift"; path = "../Sources/Extension/UITextField+SBUIKit.swift"; sourceTree = ""; }; - B15F7D2037D4C936984793AE /* SBUOpenChannelSettingsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelSettingsViewController.swift; path = ../Sources/View/ChannelSettings/SBUOpenChannelSettingsViewController.swift; sourceTree = ""; }; - B18231524A58DC92E01DACDF /* SBUOpenChannelSettingsModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelSettingsModule.List.swift; path = ../Sources/Module/ChannelSettings/OpenChannel/SBUOpenChannelSettingsModule.List.swift; sourceTree = ""; }; - B1E9D376E6E66698973D0FA3 /* SBUDateFormatSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUDateFormatSet.swift; path = ../Sources/Constant/SBUDateFormatSet.swift; sourceTree = ""; }; - B2E9E1626F54D7A6A917545A /* SBUBaseChannelSettingsViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingsViewModel.swift; path = ../Sources/ViewModel/ChannelSettings/SBUBaseChannelSettingsViewModel.swift; sourceTree = ""; }; - B3D3E56CEB7C0D902C57E610 /* SendbirdUIKit.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SendbirdUIKit.h; path = ../Sources/SendbirdUIKit.h; sourceTree = ""; }; - B4BEC04F80E8C9E365C25305 /* SBULoading.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBULoading.swift; path = ../Sources/View/Common/SBULoading.swift; sourceTree = ""; }; - B546179439A8035E57219067 /* SBULogger.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBULogger.swift; path = ../Sources/Util/SBULogger.swift; sourceTree = ""; }; - B5866547E6F669831E320738 /* SBUCreateChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelViewModel.swift; path = ../Sources/ViewModel/SelectUser/CreateChannel/SBUCreateChannelViewModel.swift; sourceTree = ""; }; - B66CED1D394F7389991A15C4 /* VoiceMessageStatus.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VoiceMessageStatus.swift; path = ../Sources/Enums/VoiceMessageStatus.swift; sourceTree = ""; }; - B792165B3E9F3E8893600CF2 /* SBUFileMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFileMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUFileMessageCellParams.swift; sourceTree = ""; }; - B7CEB555D9E8C324C1B1EAD1 /* UIViewController+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIViewController+SBUIKit.swift"; path = "../Sources/Extension/UIViewController+SBUIKit.swift"; sourceTree = ""; }; - B8B3D8C76B5E6AC87F41C832 /* SBUInviteUserModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUInviteUserModule.Header.swift; path = ../Sources/Module/SelectUser/InviteUser/SBUInviteUserModule.Header.swift; sourceTree = ""; }; - B91378B69877698735D7E6EF /* SBUIconSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUIconSet.swift; path = ../Sources/Theme/SBUIconSet.swift; sourceTree = ""; }; - B9AD3FB44A0730562C0F753B /* SBUBaseMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUBaseMessageCell.swift; sourceTree = ""; }; - BBF47B26CDFC022EF6B8911E /* MessageTemplateTestViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MessageTemplateTestViewController.swift; path = ../Sources/CustomSyntaxTest/MessageTemplateTestViewController.swift; sourceTree = ""; }; - BC7677D9FE4E44E5ECA9F659 /* SBUMessageThreadModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadModule.List.swift; path = ../Sources/Module/MessageThread/SBUMessageThreadModule.List.swift; sourceTree = ""; }; - BCB905C952E4C6FA79E64FDB /* SBUCreateChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelViewController.swift; path = ../Sources/View/SelectUser/CreateChannel/SBUCreateChannelViewController.swift; sourceTree = ""; }; - BD288BCB6C816DA6830D7C71 /* SBUMessageThreadViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadViewModel.swift; path = ../Sources/ViewModel/MessageThread/SBUMessageThreadViewModel.swift; sourceTree = ""; }; - BDE63FFD74A1842A26157784 /* SBULayoutableButton.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBULayoutableButton.swift; path = ../Sources/View/Common/SBULayoutableButton.swift; sourceTree = ""; }; - BE5A804C68039BDBA038DAC4 /* SBUModerationsModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsModule.Header.swift; path = ../Sources/Module/Moderations/SBUModerationsModule.Header.swift; sourceTree = ""; }; - BEE6C39FFD25CC94BDF299D8 /* SBUOpenChannelSettingCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelSettingCell.swift; path = ../Sources/View/ChannelSettings/Cell/SBUOpenChannelSettingCell.swift; sourceTree = ""; }; - BF6673DEC6FC0632883AC9C6 /* Debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = ../Sources/Configurations/Debug.xcconfig; sourceTree = ""; }; - C1A8BFF1E5950193EBFF3429 /* SBUContentBaseMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUContentBaseMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUContentBaseMessageCell.swift; sourceTree = ""; }; - C275B15AD520830E149AC8BA /* SBUEmojiManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUEmojiManager.swift; path = ../Sources/Manager/SBUEmojiManager.swift; sourceTree = ""; }; - C4178C75282723C0CC9B98E9 /* SBUGroupChannelSettingsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelSettingsViewController.swift; path = ../Sources/View/ChannelSettings/SBUGroupChannelSettingsViewController.swift; sourceTree = ""; }; - C45567BF7012DB8362B74153 /* SBUFeedNotificationChannelModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationChannelModule.List.swift; path = ../Sources/Module/Channel/NotificationChannel/Feed/SBUFeedNotificationChannelModule.List.swift; sourceTree = ""; }; - C4B3AA80DA43D9234ACEF6CC /* SBUView.Unavaliable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUView.Unavaliable.swift; path = ../Sources/Deprecated/SBUView.Unavaliable.swift; sourceTree = ""; }; - C51F6EDDC7A47F552B2797F1 /* SBUGroupChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelModule.swift; path = ../Sources/Module/Channel/GroupChannel/SBUGroupChannelModule.swift; sourceTree = ""; }; - C6F60DC8DE41420100032550 /* SBUBaseChannelModule.Input.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelModule.Input.swift; path = ../Sources/Module/Channel/SBUBaseChannelModule.Input.swift; sourceTree = ""; }; - C7443F3634A2061C177745E2 /* SBUTypingIndicatorMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTypingIndicatorMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUTypingIndicatorMessageCell.swift; sourceTree = ""; }; - C79BFD010A2187F68AC71D1C /* SBUModerationCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationCell.swift; path = ../Sources/View/ChannelSettings/Cell/SBUModerationCell.swift; sourceTree = ""; }; - C80758E57406DB6930296FE1 /* SBUOpenChannelModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelModule.List.swift; path = ../Sources/Module/Channel/OpenChannel/SBUOpenChannelModule.List.swift; sourceTree = ""; }; - C850028D0EC6F258428EB112 /* SBUBaseChannelListModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelListModule.swift; path = ../Sources/Module/ChannelList/SBUBaseChannelListModule.swift; sourceTree = ""; }; - C8741B0FB6E9BDCB86E69ECA /* Date+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Date+SBUIKit.swift"; path = "../Sources/Extension/Date+SBUIKit.swift"; sourceTree = ""; }; - C8817BD5A99D66B4974A7DBB /* SBUGlobalCustomParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGlobalCustomParams.swift; path = ../Sources/SBUGlobalCustomParams.swift; sourceTree = ""; }; - C8EAF5B6803F11DF8D50E382 /* NSObject+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+SBUIKit.swift"; path = "../Sources/Extension/NSObject+SBUIKit.swift"; sourceTree = ""; }; - CA411367206ECF77B7FDC163 /* SBUTypingIndicatorMessage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTypingIndicatorMessage.swift; path = ../Sources/Model/SBUTypingIndicatorMessage.swift; sourceTree = ""; }; - CA436EA7617A1A24B5BC1271 /* SBUSelectableStackView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUSelectableStackView.swift; path = ../Sources/View/Channel/CellView/SBUSelectableStackView.swift; sourceTree = ""; }; - CAE3736F2A969A12624E31A5 /* SBUGroupChannelPushSettingsModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelPushSettingsModule.Header.swift; path = ../Sources/Module/NotificationSettings/SBUGroupChannelPushSettingsModule.Header.swift; sourceTree = ""; }; - CDFDBA1A59DF10DF329445EA /* SBUBaseChannelListModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelListModule.Header.swift; path = ../Sources/Module/ChannelList/SBUBaseChannelListModule.Header.swift; sourceTree = ""; }; - CE6B771CBCF2F3B045ACA90E /* SBUVoiceMessageInputView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUVoiceMessageInputView.swift; path = ../Sources/View/VoiceNote/SBUVoiceMessageInputView.swift; sourceTree = ""; }; - CEA2626CAF5D299D2F2B30AA /* SBUUserListModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserListModule.List.swift; path = ../Sources/Module/UserList/SBUUserListModule.List.swift; sourceTree = ""; }; - CEEE0BEC92ECBF84AB96BA13 /* SBUMultipleFilesMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMultipleFilesMessageCell.swift; path = ../Sources/View/Channel/MessageCell/MultipleFilesMessage/SBUMultipleFilesMessageCell.swift; sourceTree = ""; }; - CFC946F2F09B3D400D646658 /* SBUOpenChannelListModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelListModule.Header.swift; path = ../Sources/Module/ChannelList/OpenChannel/SBUOpenChannelListModule.Header.swift; sourceTree = ""; }; - D0248A62B121D5C8BB779C45 /* SBUQuotedBaseMessageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuotedBaseMessageView.swift; path = ../Sources/View/Channel/MessageCell/Replies/MessageView/SBUQuotedBaseMessageView.swift; sourceTree = ""; }; - D056A68EFB362E4FB9660E08 /* SBUCacheManager.NotificationSetting.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.NotificationSetting.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.NotificationSetting.swift; sourceTree = ""; }; - D1D7C88CD407E1BE360FC0D6 /* SBUCreateOpenChannelModule.ProfileInput.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateOpenChannelModule.ProfileInput.swift; path = ../Sources/Module/SelectUser/CreateChannel/SBUCreateOpenChannelModule.ProfileInput.swift; sourceTree = ""; }; - D2217E6814D97628BD2AE52A /* SBUVoicePlayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUVoicePlayer.swift; path = ../Sources/Manager/SBUVoicePlayer.swift; sourceTree = ""; }; - D299D6F26F16672BA56E66C9 /* SBUBaseChannelListViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelListViewModel.swift; path = ../Sources/ViewModel/ChannelList/SBUBaseChannelListViewModel.swift; sourceTree = ""; }; - D403DBAFC5CBA2896AA3451B /* SBUMessageReactionView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageReactionView.swift; path = ../Sources/View/Channel/Reaction/SBUMessageReactionView.swift; sourceTree = ""; }; - D4288A53729AAD8A47E463BD /* QuotedFileCommonContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = QuotedFileCommonContentView.swift; path = ../Sources/View/Channel/MessageCell/Replies/MessageView/QuotedFileCommonContentView.swift; sourceTree = ""; }; - D434EAE8595B3F2004D0EEE8 /* SBUVoiceContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUVoiceContentView.swift; path = ../Sources/View/Channel/MessageCell/FileMessageContentView/SBUVoiceContentView.swift; sourceTree = ""; }; - D435EF09822E6A48A0629318 /* Formatter+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Formatter+SBUIKit.swift"; path = "../Sources/Extension/Formatter+SBUIKit.swift"; sourceTree = ""; }; - D4C18DAAF1B58DEB2FA62BD7 /* SBUQuotedMessageViewProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuotedMessageViewProtocol.swift; path = "../Sources/View/Life cycles/SBUQuotedMessageViewProtocol.swift"; sourceTree = ""; }; - D535229000405CDA915CF9C4 /* SBUFeedNotificationChannelViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationChannelViewController.swift; path = ../Sources/View/Channel/SBUFeedNotificationChannelViewController.swift; sourceTree = ""; }; - D5A85B7971D6B30DF8C3A0F5 /* SBUReactionCollectionViewCell.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = SBUReactionCollectionViewCell.xib; path = ../Sources/View/Channel/Reaction/SBUReactionCollectionViewCell.xib; sourceTree = ""; }; - D6437A8F95512DBAA1EFDECE /* SBUUserListViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserListViewController.swift; path = ../Sources/View/UserList/SBUUserListViewController.swift; sourceTree = ""; }; - D67D31745EC3598BC64D1E60 /* SBUTableViewCell.Unavailable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTableViewCell.Unavailable.swift; path = ../Sources/Deprecated/SBUTableViewCell.Unavailable.swift; sourceTree = ""; }; - D6B7A1D49538F05AE83A9DCA /* UIView+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIView+SBUIKit.swift"; path = "../Sources/Extension/UIView+SBUIKit.swift"; sourceTree = ""; }; - D83719466EF350BE145528F9 /* UINavigationController+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UINavigationController+SBUIKit.swift"; path = "../Sources/Extension/UINavigationController+SBUIKit.swift"; sourceTree = ""; }; - D948A237BA090BF109577924 /* SBUPropertyWrapper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUPropertyWrapper.swift; path = ../Sources/Util/SBUPropertyWrapper.swift; sourceTree = ""; }; - D99A1DCBE2F0D2458B752E5D /* SBURegisterOperatorViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBURegisterOperatorViewController.swift; path = ../Sources/View/SelectUser/SBURegisterOperatorViewController.swift; sourceTree = ""; }; - D9D5FA4BE98A1A152A4B9DDC /* SBUUserMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUUserMessageCellParams.swift; sourceTree = ""; }; - DB5BE6AE27650773872B0E94 /* SBUOpenChannelListModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelListModule.List.swift; path = ../Sources/Module/ChannelList/OpenChannel/SBUOpenChannelListModule.List.swift; sourceTree = ""; }; - DBA9B657E14AD5B66C781D32 /* SBUBaseViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseViewController.swift; path = ../Sources/View/SBUBaseViewController.swift; sourceTree = ""; }; - DBB372FD4425E4003ED702D1 /* SBUBaseMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUBaseMessageCellParams.swift; sourceTree = ""; }; - DBC95A834BD5D53718533C5C /* SBUOpenChannelUnknownMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelUnknownMessageCell.swift; path = ../Sources/View/Channel/MessageCell/OpenChannel/SBUOpenChannelUnknownMessageCell.swift; sourceTree = ""; }; - DC5D26633C4FB27008F0D84F /* String+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+SBUIKit.swift"; path = "../Sources/Extension/String+SBUIKit.swift"; sourceTree = ""; }; - DD1AED084A3843547A85704B /* SBUChannelSettingItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChannelSettingItem.swift; path = ../Sources/Module/ChannelSettings/ChannelSettingItem/SBUChannelSettingItem.swift; sourceTree = ""; }; - DD31F27F086749A93ADB820C /* SBUFontSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFontSet.swift; path = ../Sources/Theme/SBUFontSet.swift; sourceTree = ""; }; - DD8AB6E81F89F81EE8FC2290 /* SBUSuggestedReplyOptionView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUSuggestedReplyOptionView.swift; path = ../Sources/View/Channel/MessageCell/SuggestedReply/Views/SBUSuggestedReplyOptionView.swift; sourceTree = ""; }; - DDA05A98F57A4890B630A9FE /* SBUFormViewParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFormViewParams.swift; path = ../Sources/View/Channel/MessageCell/Forms/ViewParams/SBUFormViewParams.swift; sourceTree = ""; }; - DDB09C5ED906D823288029BA /* SBUFeedNotificationChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationChannelViewModel.swift; path = ../Sources/ViewModel/Channel/SBUFeedNotificationChannelViewModel.swift; sourceTree = ""; }; - DDBBC7D265D2328A3124473A /* SBUCreateChannelViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelViewController.Deprecated.swift; path = ../Sources/Deprecated/CreateChannel/SBUCreateChannelViewController.Deprecated.swift; sourceTree = ""; }; - DE1A7466B9D04A2607EC2FB1 /* SBUMemberListViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMemberListViewController.Deprecated.swift; path = ../Sources/Deprecated/MemberList/SBUMemberListViewController.Deprecated.swift; sourceTree = ""; }; - DE27762C63CCA4E0B765A0AD /* SBUEnums.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUEnums.swift; path = ../Sources/Enums/SBUEnums.swift; sourceTree = ""; }; - DE6A4367B48D7CCC83A95627 /* SBUBaseChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelModule.swift; path = ../Sources/Module/Channel/SBUBaseChannelModule.swift; sourceTree = ""; }; - DEA63156B965D436054BB286 /* SBUFormView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFormView.swift; path = ../Sources/View/Channel/MessageCell/Forms/Views/SBUFormView.swift; sourceTree = ""; }; - DF15ACE03A81767F4A871C53 /* SBUGroupChannelListViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelListViewController.swift; path = ../Sources/View/ChannelList/SBUGroupChannelListViewController.swift; sourceTree = ""; }; - DFB3E01DE722F0F9EB33509B /* SBUBaseSelectUserModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseSelectUserModule.Header.swift; path = ../Sources/Module/SelectUser/SBUBaseSelectUserModule.Header.swift; sourceTree = ""; }; - DFFA9C0C18E0D11BFF088E33 /* SBUPaddingLabel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUPaddingLabel.swift; path = ../Sources/View/Common/SBUPaddingLabel.swift; sourceTree = ""; }; - E20A65CA76F9373F01A52E37 /* SBUViewLifeCycle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUViewLifeCycle.swift; path = "../Sources/View/Life cycles/SBUViewLifeCycle.swift"; sourceTree = ""; }; - E2A2565DC446FCC255BB3C57 /* SBUBaseChannelSettingsModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingsModule.List.swift; path = ../Sources/Module/ChannelSettings/SBUBaseChannelSettingsModule.List.swift; sourceTree = ""; }; - E2F0C0C71FDA86DB16C7DEF2 /* SBUMarginView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMarginView.swift; path = ../Sources/View/Common/SBUMarginView.swift; sourceTree = ""; }; - E30AD3FF06247E600FB5F5BC /* SBUOpenChannelAdminMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelAdminMessageCell.swift; path = ../Sources/View/Channel/MessageCell/OpenChannel/SBUOpenChannelAdminMessageCell.swift; sourceTree = ""; }; - E473E5D0A72CC5793BF3135E /* UIButton+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIButton+SBUIKit.swift"; path = "../Sources/Extension/UIButton+SBUIKit.swift"; sourceTree = ""; }; - E479DC0012A236E32FD17343 /* SBUUnknownMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUnknownMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUUnknownMessageCell.swift; sourceTree = ""; }; - E47F0637CABD3B2832E657C6 /* SBUUserCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserCell.swift; path = ../Sources/View/Common/UserCell/SBUUserCell.swift; sourceTree = ""; }; - E6272D852F84F6AC1A867BFF /* BaseMessage+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "BaseMessage+SBUIKit.swift"; path = "../Sources/Extension/ChatSDK/BaseMessage+SBUIKit.swift"; sourceTree = ""; }; - E719EFFE37E59841486B30A7 /* SBUOpenChannelListModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelListModule.swift; path = ../Sources/Module/ChannelList/OpenChannel/SBUOpenChannelListModule.swift; sourceTree = ""; }; - E75F5859707FA796BE994065 /* SBUModerationsViewModel.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsViewModel.Deprecated.swift; path = ../Sources/Deprecated/Moderations/SBUModerationsViewModel.Deprecated.swift; sourceTree = ""; }; - E7D16635805485B905F7C58B /* SBUGroupChannelViewController.Unavailable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelViewController.Unavailable.swift; path = ../Sources/Deprecated/Channel/SBUGroupChannelViewController.Unavailable.swift; sourceTree = ""; }; - E80BE50A6F796529DC6936FC /* SBUMessageStateView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageStateView.swift; path = ../Sources/View/Channel/CellView/SBUMessageStateView.swift; sourceTree = ""; }; - EA26745EFD07034A5B770365 /* SBUExtendedMessage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUExtendedMessage.swift; path = ../Sources/Model/SBUExtendedMessage.swift; sourceTree = ""; }; - EA8C5E650A758B2E3513028D /* SBUStringSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUStringSet.swift; path = ../Sources/Constant/SBUStringSet.swift; sourceTree = ""; }; - EB141E7614FFAE4105A5556B /* SBUUserListModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserListModule.swift; path = ../Sources/Module/UserList/SBUUserListModule.swift; sourceTree = ""; }; - EBCBEDB37CED382793736705 /* SBUReplyConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUReplyConfiguration.swift; path = ../Sources/Configuration/Replies/SBUReplyConfiguration.swift; sourceTree = ""; }; - EC0985381EA130D3E02F4703 /* SBUCacheManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.swift; sourceTree = ""; }; - EC88D341AE4A046C78CF58AA /* SBUImageContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUImageContentView.swift; path = ../Sources/View/Channel/MessageCell/FileMessageContentView/SBUImageContentView.swift; sourceTree = ""; }; - EDECD971E137033BAAB0C3D9 /* SBUEmojiListViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUEmojiListViewController.swift; path = ../Sources/View/Channel/Reaction/SBUEmojiListViewController.swift; sourceTree = ""; }; - EF903E4A4E1F698BF871B285 /* SBUBaseChannelListViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelListViewController.swift; path = ../Sources/View/ChannelList/SBUBaseChannelListViewController.swift; sourceTree = ""; }; - EFF5C0905479887F6D56B40F /* SBUMentionConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMentionConfiguration.swift; path = ../Sources/Configuration/Mention/SBUMentionConfiguration.swift; sourceTree = ""; }; - F083E0017E354443F6462653 /* UIImageView+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImageView+SBUIKit.swift"; path = "../Sources/Extension/UIImageView+SBUIKit.swift"; sourceTree = ""; }; - F0ADCDCA8A5D03883919A5D3 /* SBUCacheManager.Image.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.Image.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.Image.swift; sourceTree = ""; }; - F0FAEE6EB611CC9C820982EA /* SBUThreadInfoView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUThreadInfoView.swift; path = ../Sources/View/Channel/MessageCell/Replies/MessageView/SBUThreadInfoView.swift; sourceTree = ""; }; - F2BFEDFB4C4993C8A19D161B /* SBUOpenChannelModule.Media.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelModule.Media.swift; path = ../Sources/Module/Channel/OpenChannel/SBUOpenChannelModule.Media.swift; sourceTree = ""; }; - F33D54197920D4AC9FDCCA95 /* SBUQuotedFileMessageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuotedFileMessageView.swift; path = ../Sources/View/Channel/MessageCell/Replies/MessageView/SBUQuotedFileMessageView.swift; sourceTree = ""; }; - F41A61AB3CB6C94843EABCA7 /* SBUTheme+Type.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SBUTheme+Type.swift"; path = "../Sources/Theme/SBUTheme+Type.swift"; sourceTree = ""; }; - F45107805C04C0A825F9120C /* SBUActionSheet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUActionSheet.swift; path = ../Sources/View/Common/SBUActionSheet.swift; sourceTree = ""; }; - F53986E9E026E908F57BA6C8 /* QuotedFileImageContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = QuotedFileImageContentView.swift; path = ../Sources/View/Channel/MessageCell/Replies/MessageView/QuotedFileImageContentView.swift; sourceTree = ""; }; - F58D72E0600096FEF0F045E2 /* SBUModuleSet.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModuleSet.Deprecated.swift; path = ../Sources/Deprecated/SBUModuleSet.Deprecated.swift; sourceTree = ""; }; - F67B0CEFB11FA640BFD027CA /* SBUReactionCollectionViewCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUReactionCollectionViewCell.swift; path = ../Sources/View/Channel/Reaction/SBUReactionCollectionViewCell.swift; sourceTree = ""; }; - F8CB848D66D4117A6BFFFD5E /* SBUMultipleFilesMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMultipleFilesMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUMultipleFilesMessageCellParams.swift; sourceTree = ""; }; - F904F929E38FF5EE8AB6B72C /* SBUUserNameView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserNameView.swift; path = ../Sources/View/Channel/CellView/SBUUserNameView.swift; sourceTree = ""; }; - F956BD0F76DBBC54FCA3140E /* SBUBaseChannelListModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelListModule.List.swift; path = ../Sources/Module/ChannelList/SBUBaseChannelListModule.List.swift; sourceTree = ""; }; - F9E292B4148A2541F6A4E7B1 /* SBUUnderLineTextField.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUnderLineTextField.swift; path = ../Sources/View/Common/SBUUnderLineTextField.swift; sourceTree = ""; }; - FA4DFA3C669C94E458F05B8A /* SBUChatNotificationChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChatNotificationChannelViewModel.swift; path = ../Sources/ViewModel/Channel/SBUChatNotificationChannelViewModel.swift; sourceTree = ""; }; - FA6B6828F36090C61A8898F3 /* MessageTemplateRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MessageTemplateRenderer.swift; path = ../Sources/CustomSyntaxTest/MessageTemplateRenderer.swift; sourceTree = ""; }; - FB3687F2C225811959FCA4D4 /* SBUOpenChannelFileMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelFileMessageCell.swift; path = ../Sources/View/Channel/MessageCell/OpenChannel/SBUOpenChannelFileMessageCell.swift; sourceTree = ""; }; - FB5D71D53BEDE638B94809E7 /* SBUOpenChannelSettingsModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelSettingsModule.swift; path = ../Sources/Module/ChannelSettings/OpenChannel/SBUOpenChannelSettingsModule.swift; sourceTree = ""; }; - FC1E8BEE4CF8796421B2BBA6 /* SBUChatNotificationChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChatNotificationChannelModule.swift; path = ../Sources/Module/Channel/NotificationChannel/Chat/SBUChatNotificationChannelModule.swift; sourceTree = ""; }; - FD0B7546CD8231BFB3BC59B0 /* SBUModerationsViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsViewModel.swift; path = ../Sources/ViewModel/ChannelSettings/SBUModerationsViewModel.swift; sourceTree = ""; }; - FE24BBF7D14DA2EA22339353 /* SBUSuggestedMentionList.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUSuggestedMentionList.swift; path = ../Sources/View/Channel/MessageInput/SBUSuggestedMentionList.swift; sourceTree = ""; }; - FEACB70B14FF0C1CB5C10576 /* SBUForms.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUForms.swift; path = ../Sources/Model/SBUForms.swift; sourceTree = ""; }; - FFFA2BF925F033F4362E7F4F /* SBUCreateOpenChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateOpenChannelViewModel.swift; path = ../Sources/ViewModel/SelectUser/CreateChannel/SBUCreateOpenChannelViewModel.swift; sourceTree = ""; }; + ABB24CF7362F81585989AC25 /* QuotedFileCommonContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = QuotedFileCommonContentView.swift; path = ../Sources/View/Channel/MessageCell/Replies/MessageView/QuotedFileCommonContentView.swift; sourceTree = ""; }; + ACC1F8C6414F503CDB7F6174 /* SBUConfig.OpenChannel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfig.OpenChannel.swift; path = ../Sources/Configuration/SBUConfig.OpenChannel.swift; sourceTree = ""; }; + AD6F852FC5BEC2211D4A91FE /* SBUConfig.CodingKeys.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfig.CodingKeys.swift; path = ../Sources/Configuration/SBUConfig.CodingKeys.swift; sourceTree = ""; }; + AD7513D642162B23471727C4 /* SBUConfigManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfigManager.swift; path = ../Sources/Configuration/SBUConfigManager.swift; sourceTree = ""; }; + ADB3196EA9B8F941C8803F49 /* SBUHighlightMessageInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUHighlightMessageInfo.swift; path = ../Sources/Model/SBUHighlightMessageInfo.swift; sourceTree = ""; }; + AF22DE70616E9D64E27947F3 /* SBUFileViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFileViewController.swift; path = ../Sources/View/Channel/FileViewer/SBUFileViewController.swift; sourceTree = ""; }; + AF4713EDDA8BE762ACB732FC /* SBUCreateChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelModule.swift; path = ../Sources/Module/SelectUser/CreateChannel/SBUCreateChannelModule.swift; sourceTree = ""; }; + B034C5EA6838C021CEDF3510 /* SBUUserListViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserListViewModel.swift; path = ../Sources/ViewModel/UserList/SBUUserListViewModel.swift; sourceTree = ""; }; + B03F86CCC9C0FF9109AC4A30 /* SBUOpenChannelSettingsModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelSettingsModule.Header.swift; path = ../Sources/Module/ChannelSettings/OpenChannel/SBUOpenChannelSettingsModule.Header.swift; sourceTree = ""; }; + B0529AD252057145862198AC /* SBUCacheManager.Version.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.Version.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.Version.swift; sourceTree = ""; }; + B07C348322ACB048E9EAFBA3 /* BaseMessage+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "BaseMessage+SBUIKit.swift"; path = "../Sources/Extension/ChatSDK/BaseMessage+SBUIKit.swift"; sourceTree = ""; }; + B264A99CBCD2D6A4F4101B93 /* SBUFeedNotificationChannelModule.CategoryFilter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationChannelModule.CategoryFilter.swift; path = ../Sources/Module/Channel/NotificationChannel/Feed/SBUFeedNotificationChannelModule.CategoryFilter.swift; sourceTree = ""; }; + B29C3D09D40D31B83D41C3FB /* SBUBaseSelectUserViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseSelectUserViewController.swift; path = ../Sources/View/SelectUser/SBUBaseSelectUserViewController.swift; sourceTree = ""; }; + B39663B81820E40B46F708D7 /* SBUUserListModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserListModule.Header.swift; path = ../Sources/Module/UserList/SBUUserListModule.Header.swift; sourceTree = ""; }; + B485D885781EECFF17EF2A3E /* SBUMentionConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMentionConfiguration.swift; path = ../Sources/Configuration/Mention/SBUMentionConfiguration.swift; sourceTree = ""; }; + B4A59CF9B4CC83B24A11E5C6 /* SBUSuggestedReplyViewParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUSuggestedReplyViewParams.swift; path = ../Sources/View/Channel/MessageCell/SuggestedReply/ViewParams/SBUSuggestedReplyViewParams.swift; sourceTree = ""; }; + B5873B2E97F3C6B5744AF079 /* SBUMessageSearchViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchViewModel.swift; path = ../Sources/ViewModel/MessageSearch/SBUMessageSearchViewModel.swift; sourceTree = ""; }; + B58A465C2D592258DAFFD7CF /* SBUDownloadManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUDownloadManager.swift; path = ../Sources/Manager/SBUDownloadManager.swift; sourceTree = ""; }; + B5DD9B2DC9A15CE23FE8B92E /* SBUCategoryFilterCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCategoryFilterCell.swift; path = ../Sources/View/Channel/CategoryFilterCell/SBUCategoryFilterCell.swift; sourceTree = ""; }; + B75783C323EBE530C20F7877 /* SBUThreadInfoView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUThreadInfoView.swift; path = ../Sources/View/Channel/MessageCell/Replies/MessageView/SBUThreadInfoView.swift; sourceTree = ""; }; + B7AFE4777A6D8332A62D03BF /* SBUAdminMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUAdminMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUAdminMessageCell.swift; sourceTree = ""; }; + B7B584800DBE4554AF6C8FDA /* UIApplication+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIApplication+SBUIKit.swift"; path = "../Sources/Extension/UIApplication+SBUIKit.swift"; sourceTree = ""; }; + B8CA54667C6DB2614A2675C4 /* SBUSuggestedMentionList.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUSuggestedMentionList.swift; path = ../Sources/View/Channel/MessageInput/SBUSuggestedMentionList.swift; sourceTree = ""; }; + B928FBA764E60FD888DB9262 /* SBUContentBaseMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUContentBaseMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUContentBaseMessageCell.swift; sourceTree = ""; }; + B95E69478AB9F0BC6838E6B0 /* SBUGroupChannelModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelModule.List.swift; path = ../Sources/Module/Channel/GroupChannel/SBUGroupChannelModule.List.swift; sourceTree = ""; }; + BB621AB5BD391B3A8B0F4A62 /* SBUGroupChannelSettingsModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelSettingsModule.List.swift; path = ../Sources/Module/ChannelSettings/GroupChannel/SBUGroupChannelSettingsModule.List.swift; sourceTree = ""; }; + BBA50179E871D04A1B3E2AFB /* SBUCommonViewControllerSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCommonViewControllerSet.swift; path = ../Sources/View/Common/SBUCommonViewControllerSet.swift; sourceTree = ""; }; + BC2202162266378ED262444D /* SBUUserMentionConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserMentionConfiguration.swift; path = ../Sources/Configuration/Mention/SBUUserMentionConfiguration.swift; sourceTree = ""; }; + BC4DB181EA553D91008580CD /* SBULinkClickableTextView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBULinkClickableTextView.swift; path = ../Sources/View/Channel/CellView/SBULinkClickableTextView.swift; sourceTree = ""; }; + BC6A2C261DAE207080F8196E /* SBUOpenChannelUnknownMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelUnknownMessageCell.swift; path = ../Sources/View/Channel/MessageCell/OpenChannel/SBUOpenChannelUnknownMessageCell.swift; sourceTree = ""; }; + BD0C06828B96853B672C6823 /* SBUFeedNotificationChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationChannelViewModel.swift; path = ../Sources/ViewModel/Channel/SBUFeedNotificationChannelViewModel.swift; sourceTree = ""; }; + BDBAC4E00105841BB6A808B2 /* SBUMultipleFilesMessageCollectionView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMultipleFilesMessageCollectionView.swift; path = ../Sources/View/Channel/MessageCell/MultipleFilesMessage/SBUMultipleFilesMessageCollectionView.swift; sourceTree = ""; }; + BE0F61DD6E53F245C1BFBDC0 /* SBUQuotedBaseMessageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuotedBaseMessageView.swift; path = ../Sources/View/Channel/MessageCell/Replies/MessageView/SBUQuotedBaseMessageView.swift; sourceTree = ""; }; + BE93B488DD755528B8BC11AD /* SBUEmojiListViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUEmojiListViewController.swift; path = ../Sources/View/Channel/Reaction/SBUEmojiListViewController.swift; sourceTree = ""; }; + BECDA6D139DD0061D92E43E0 /* SBUGroupChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelModule.Header.swift; path = ../Sources/Module/Channel/GroupChannel/SBUGroupChannelModule.Header.swift; sourceTree = ""; }; + C0B277F24192630467F0D857 /* SBULayoutableButton.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBULayoutableButton.swift; path = ../Sources/View/Common/SBULayoutableButton.swift; sourceTree = ""; }; + C0F7A21B5553E98E1A4E8D36 /* SBUSuggestedReplyOptionView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUSuggestedReplyOptionView.swift; path = ../Sources/View/Channel/MessageCell/SuggestedReply/Views/SBUSuggestedReplyOptionView.swift; sourceTree = ""; }; + C16BB5072333A8834550EBEF /* SBUUserMessageCellParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserMessageCellParams.swift; path = ../Sources/View/Channel/MessageCell/MessageCellParams/SBUUserMessageCellParams.swift; sourceTree = ""; }; + C19FBC5EAA77D503F990F1AC /* SBUReactionsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUReactionsViewController.swift; path = ../Sources/View/Channel/Reaction/SBUReactionsViewController.swift; sourceTree = ""; }; + C1F89183FD2710F17F339E1C /* SBUMenuSheetViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMenuSheetViewController.swift; path = ../Sources/View/Common/Menu/SBUMenuSheetViewController.swift; sourceTree = ""; }; + C24555BDBB78BCA7652A6496 /* SBUCacheManager.Config.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.Config.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.Config.swift; sourceTree = ""; }; + C2C592BE8F09301470F55DF5 /* MessageTemplateParser.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MessageTemplateParser.swift; path = ../Sources/CustomSyntaxTest/MessageTemplateParser.swift; sourceTree = ""; }; + C3A00732F65C3DEB3B6E0EF1 /* SBUQuoteMessageInputViewParams.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuoteMessageInputViewParams.swift; path = ../Sources/View/Channel/MessageInput/ViewParams/SBUQuoteMessageInputViewParams.swift; sourceTree = ""; }; + C4295B2BC3B60855D14B68E7 /* SBUFeedNotificationChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFeedNotificationChannelModule.Header.swift; path = ../Sources/Module/Channel/NotificationChannel/Feed/SBUFeedNotificationChannelModule.Header.swift; sourceTree = ""; }; + C535093052F5B8F06BDFCA62 /* SBUTemplateLabel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTemplateLabel.swift; path = ../Sources/View/Common/SBUTemplateLabel.swift; sourceTree = ""; }; + C580E5BA186605215E32F300 /* SBUCacheManager.Template.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.Template.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.Template.swift; sourceTree = ""; }; + C60BCDEA3D7F4CA714EF3FAA /* SBUInviteUserModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUInviteUserModule.Header.swift; path = ../Sources/Module/SelectUser/InviteUser/SBUInviteUserModule.Header.swift; sourceTree = ""; }; + C652D2652A54A2AD3EC7A28B /* SBUQuotedFileMessageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuotedFileMessageView.swift; path = ../Sources/View/Channel/MessageCell/Replies/MessageView/SBUQuotedFileMessageView.swift; sourceTree = ""; }; + C6852691ED05ABADE42F1E2B /* SBUFormView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFormView.swift; path = ../Sources/View/Channel/MessageCell/Forms/Views/SBUFormView.swift; sourceTree = ""; }; + C75BF25A47392C7A51D4735F /* SBUOpenChannelFileMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelFileMessageCell.swift; path = ../Sources/View/Channel/MessageCell/OpenChannel/SBUOpenChannelFileMessageCell.swift; sourceTree = ""; }; + C781E108B22597D1B9A7F8F8 /* UIButton+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIButton+SBUIKit.swift"; path = "../Sources/Extension/UIButton+SBUIKit.swift"; sourceTree = ""; }; + C84079BAC7750BC633639357 /* URL+SBUKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "URL+SBUKit.swift"; path = "../Sources/Extension/URL+SBUKit.swift"; sourceTree = ""; }; + C90909661ED3AECAEF743954 /* UIImageView+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImageView+SBUIKit.swift"; path = "../Sources/Extension/UIImageView+SBUIKit.swift"; sourceTree = ""; }; + C9153E830EC5DB460E46090A /* SBUOpenChannelImageContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelImageContentView.swift; path = ../Sources/View/Channel/MessageCell/FileMessageContentView/SBUOpenChannelImageContentView.swift; sourceTree = ""; }; + C980753B0473CBA5589BDC33 /* SBUStackView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUStackView.swift; path = ../Sources/View/Common/SBUStackView.swift; sourceTree = ""; }; + CA00BBBBF4E5C6F6F7EA3461 /* SBUChannelInfoHeaderView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChannelInfoHeaderView.swift; path = ../Sources/View/Channel/Header/SBUChannelInfoHeaderView.swift; sourceTree = ""; }; + CB8B918C3C0874F6E5399623 /* SBUConfig.GroupChannel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUConfig.GroupChannel.swift; path = ../Sources/Configuration/SBUConfig.GroupChannel.swift; sourceTree = ""; }; + CC9302E58E72DE08D478C932 /* SBUCreateOpenChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateOpenChannelModule.swift; path = ../Sources/Module/SelectUser/CreateChannel/SBUCreateOpenChannelModule.swift; sourceTree = ""; }; + CD14F4B7AA8A8E530506803A /* SBURegisterOperatorViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBURegisterOperatorViewModel.swift; path = ../Sources/ViewModel/SelectUser/SBURegisterOperatorViewModel.swift; sourceTree = ""; }; + CD8DC66BE78A39DF9980D1D9 /* SBUBaseMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUBaseMessageCell.swift; sourceTree = ""; }; + CDA582D88923629AE504246E /* MessageTemplateTestViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MessageTemplateTestViewController.swift; path = ../Sources/CustomSyntaxTest/MessageTemplateTestViewController.swift; sourceTree = ""; }; + CEAEA76AAF2B82E66B685055 /* SBUCoverImageView.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCoverImageView.Deprecated.swift; path = ../Sources/Deprecated/SBUCoverImageView.Deprecated.swift; sourceTree = ""; }; + CF14B193A9E6539527CD9218 /* SBUCreateChannelViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelViewController.Deprecated.swift; path = ../Sources/Deprecated/CreateChannel/SBUCreateChannelViewController.Deprecated.swift; sourceTree = ""; }; + D02FB12CDD38B92A5AA12A04 /* SBUMarginView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMarginView.swift; path = ../Sources/View/Common/SBUMarginView.swift; sourceTree = ""; }; + D0A5443BCA9A05F902695485 /* SBUBaseSelectUserModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseSelectUserModule.Header.swift; path = ../Sources/Module/SelectUser/SBUBaseSelectUserModule.Header.swift; sourceTree = ""; }; + D3B4A038A283F59CA7364B64 /* SBUMessageInputMode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageInputMode.swift; path = ../Sources/View/Channel/MessageInput/SBUMessageInputMode.swift; sourceTree = ""; }; + D51CDE6D25EF8DE20CFD1F50 /* UIColor+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIColor+SBUIKit.swift"; path = "../Sources/Extension/UIColor+SBUIKit.swift"; sourceTree = ""; }; + D574B456A43BF48219E3903E /* SBUGroupChannelListViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelListViewController.swift; path = ../Sources/View/ChannelList/SBUGroupChannelListViewController.swift; sourceTree = ""; }; + D676E5A38A17D3C64639E029 /* Base.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Base.xcconfig; path = ../Sources/Configurations/Base.xcconfig; sourceTree = ""; }; + D6C6AF085EBDD4BABD0EA656 /* SBUOpenChannelViewController.Unavailable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelViewController.Unavailable.swift; path = ../Sources/Deprecated/Channel/SBUOpenChannelViewController.Unavailable.swift; sourceTree = ""; }; + D8406C61DAEE3827076C587B /* SBUMessageThreadViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadViewController.swift; path = ../Sources/View/MessageThread/SBUMessageThreadViewController.swift; sourceTree = ""; }; + D8C7FBB8295E11563D4EF66A /* SBUMentionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMentionManager.swift; path = ../Sources/Util/SBUMentionManager.swift; sourceTree = ""; }; + D9849D1106F01153493D75D9 /* SBUOpenChannelSettingCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelSettingCell.swift; path = ../Sources/View/ChannelSettings/Cell/SBUOpenChannelSettingCell.swift; sourceTree = ""; }; + DA4D97ABE2450DA4CF86B7B1 /* SBUUserListModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserListModule.List.swift; path = ../Sources/Module/UserList/SBUUserListModule.List.swift; sourceTree = ""; }; + DA88FB2FFC442EBBC6B03C0A /* SBUQuoteMessageInputViewProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuoteMessageInputViewProtocol.swift; path = "../Sources/View/Life cycles/SBUQuoteMessageInputViewProtocol.swift"; sourceTree = ""; }; + DB621AEC109762ED1031855F /* SBUModerationsModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsModule.List.swift; path = ../Sources/Module/Moderations/SBUModerationsModule.List.swift; sourceTree = ""; }; + DBF01D975582E3BE514B4A61 /* SBUTypingIndicatorBubbleView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTypingIndicatorBubbleView.swift; path = ../Sources/View/Common/SBUTypingIndicatorBubbleView.swift; sourceTree = ""; }; + DCC9BC13A1B66B0C9FD6C6E9 /* SendbirdUI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SendbirdUI.swift; path = ../Sources/SendbirdUI.swift; sourceTree = ""; }; + DD9A85738FFE75C7D458F944 /* SBUCacheManager.NotificationSetting.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.NotificationSetting.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.NotificationSetting.swift; sourceTree = ""; }; + DDA28EF678F3AE97C70AC3E4 /* SBUQuotedMessageViewProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUQuotedMessageViewProtocol.swift; path = "../Sources/View/Life cycles/SBUQuotedMessageViewProtocol.swift"; sourceTree = ""; }; + DDCBE48B02F60EDD81E05810 /* SBUBaseChannelModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelModule.List.swift; path = ../Sources/Module/Channel/SBUBaseChannelModule.List.swift; sourceTree = ""; }; + E0DAAB23F5C6FDEF7837EC9B /* SBUGroupChannelSettingsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelSettingsViewController.swift; path = ../Sources/View/ChannelSettings/SBUGroupChannelSettingsViewController.swift; sourceTree = ""; }; + E137D05DFBE1EA7BBBBA8842 /* SBUCreateOpenChannelModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateOpenChannelModule.Header.swift; path = ../Sources/Module/SelectUser/CreateChannel/SBUCreateOpenChannelModule.Header.swift; sourceTree = ""; }; + E22AA2DB24F14F0F87B90584 /* SBUVoiceRecorder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUVoiceRecorder.swift; path = ../Sources/Manager/SBUVoiceRecorder.swift; sourceTree = ""; }; + E31D08D9C7403E290D1B1D55 /* StringProtocol+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "StringProtocol+SBUIKit.swift"; path = "../Sources/Extension/StringProtocol+SBUIKit.swift"; sourceTree = ""; }; + E3D081C78F707505ABDF12F1 /* SBUInviteUserModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUInviteUserModule.swift; path = ../Sources/Module/SelectUser/InviteUser/SBUInviteUserModule.swift; sourceTree = ""; }; + E4045143A35DBDB6CC3EBBBD /* SBUInviteUserViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUInviteUserViewController.swift; path = ../Sources/View/SelectUser/SBUInviteUserViewController.swift; sourceTree = ""; }; + E486DCAF8F72570FF6C21797 /* UIStackView.SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UIStackView.SBUIKit.swift; path = ../Sources/Extension/UIStackView.SBUIKit.swift; sourceTree = ""; }; + E48CC4D7DB045DEE72C4C94F /* SBUUserProfileView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserProfileView.swift; path = ../Sources/View/Common/User/SBUUserProfileView.swift; sourceTree = ""; }; + E56F934051B6BA95713778AF /* SBUTableViewCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTableViewCell.swift; path = "../Sources/View/Life cycles/SBUTableViewCell.swift"; sourceTree = ""; }; + E5E5D3C8FD93A7395607E4AD /* SBUMessageCache.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageCache.swift; path = ../Sources/Model/SBUMessageCache.swift; sourceTree = ""; }; + E5FAF9073B09CCF096734FB0 /* SBUMultipleFilesMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMultipleFilesMessageCell.swift; path = ../Sources/View/Channel/MessageCell/MultipleFilesMessage/SBUMultipleFilesMessageCell.swift; sourceTree = ""; }; + E63A8D6A6A1940E8AABC3A06 /* SBUParentMessageInfoView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUParentMessageInfoView.swift; path = ../Sources/View/MessageThread/SBUParentMessageInfoView.swift; sourceTree = ""; }; + E749BDF3B825E7BD18178872 /* MessageTemplateRenderer.Image.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MessageTemplateRenderer.Image.swift; path = ../Sources/CustomSyntaxTest/MessageTemplateRenderer.Image.swift; sourceTree = ""; }; + E773FD2840237A93FA2EC097 /* SBUNewMessageInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNewMessageInfo.swift; path = ../Sources/View/Channel/NewMessageInfo/SBUNewMessageInfo.swift; sourceTree = ""; }; + E7D1E8E82F632DF4D683BE3B /* SBUTheme.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTheme.swift; path = ../Sources/Theme/SBUTheme.swift; sourceTree = ""; }; + E860A695667E0075D5E06DEE /* SBUMessageSearchModule.Header.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchModule.Header.swift; path = ../Sources/Module/MessageSearch/SBUMessageSearchModule.Header.swift; sourceTree = ""; }; + E8688ED07F8728C7E0D8A21A /* SBUChatNotificationChannelViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChatNotificationChannelViewModel.swift; path = ../Sources/ViewModel/Channel/SBUChatNotificationChannelViewModel.swift; sourceTree = ""; }; + E88E980588C29EFE8E975130 /* SBUIconSetType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUIconSetType.swift; path = ../Sources/Enums/SBUIconSetType.swift; sourceTree = ""; }; + E8B47CAEC62803515F9ECA08 /* SBUMenuView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMenuView.swift; path = ../Sources/View/Common/Menu/SBUMenuView.swift; sourceTree = ""; }; + E9018A7FF3D55A1153126128 /* SBUOpenChannelCommonContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelCommonContentView.swift; path = ../Sources/View/Channel/MessageCell/FileMessageContentView/SBUOpenChannelCommonContentView.swift; sourceTree = ""; }; + E91901B580726CCC24F5672B /* SBUScrollOptions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUScrollOptions.swift; path = ../Sources/Model/SBUScrollOptions.swift; sourceTree = ""; }; + EB5D1E1F1C11D1FC6AFEA578 /* SBUNavigationTitleView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUNavigationTitleView.swift; path = ../Sources/View/Common/SBUNavigationTitleView.swift; sourceTree = ""; }; + EC076A17211811E87F2F1DE4 /* SBUCreateChannelTypeSelector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCreateChannelTypeSelector.swift; path = ../Sources/View/SelectUser/CreateChannel/View/SBUCreateChannelTypeSelector.swift; sourceTree = ""; }; + EDFDC1AC992B8D533DD68169 /* Formatter+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Formatter+SBUIKit.swift"; path = "../Sources/Extension/Formatter+SBUIKit.swift"; sourceTree = ""; }; + EE3C47906960BD725E57D9DE /* SBUUnderLineTextField.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUnderLineTextField.swift; path = ../Sources/View/Common/SBUUnderLineTextField.swift; sourceTree = ""; }; + EF4E6F90D3E9427074963335 /* SBUMessageThreadTitleView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadTitleView.swift; path = ../Sources/View/MessageThread/SBUMessageThreadTitleView.swift; sourceTree = ""; }; + EF8F57128157A767AFA6E322 /* Data+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Data+SBUIKit.swift"; path = "../Sources/Extension/Data+SBUIKit.swift"; sourceTree = ""; }; + F0D04CDF954BED49034B1916 /* SBUGroupChannelListModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelListModule.List.swift; path = ../Sources/Module/ChannelList/GroupChannel/SBUGroupChannelListModule.List.swift; sourceTree = ""; }; + F0D89DF2E7E5310B7303336A /* SBUTableViewCell.Unavailable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUTableViewCell.Unavailable.swift; path = ../Sources/Deprecated/SBUTableViewCell.Unavailable.swift; sourceTree = ""; }; + F1688E36777593F08B812CA1 /* SBUGroupChannelCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelCell.swift; path = ../Sources/View/ChannelList/ChannelCell/SBUGroupChannelCell.swift; sourceTree = ""; }; + F24E7B0EE6F9F2AC1EE56D3B /* SBUFontSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUFontSet.swift; path = ../Sources/Theme/SBUFontSet.swift; sourceTree = ""; }; + F2CD0E3414CAEBB89FC2ABEE /* MultipleFilesMessage+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MultipleFilesMessage+SBUIKit.swift"; path = "../Sources/Extension/ChatSDK/MultipleFilesMessage+SBUIKit.swift"; sourceTree = ""; }; + F2DEEC8974EEDCCFF623DEEF /* Assets.xcassets */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = ../Sources/Resource/Assets.xcassets; sourceTree = ""; }; + F2FAADF0A5257BD72DC8608F /* SBUGroupChannelModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelModule.swift; path = ../Sources/Module/Channel/GroupChannel/SBUGroupChannelModule.swift; sourceTree = ""; }; + F3F5D7CCC6CB4F2269FA7491 /* SBUMessageProfileView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageProfileView.swift; path = ../Sources/View/Channel/CellView/SBUMessageProfileView.swift; sourceTree = ""; }; + F464994CC5350FB3EE23747E /* SBUExtendedMessage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUExtendedMessage.swift; path = ../Sources/Model/SBUExtendedMessage.swift; sourceTree = ""; }; + F4DE82857890FB3E573EB7E0 /* SBUModerationsViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUModerationsViewController.Deprecated.swift; path = ../Sources/Deprecated/Moderations/SBUModerationsViewController.Deprecated.swift; sourceTree = ""; }; + F55F9A300250DB49089A018A /* SBUMessageSearchModule.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageSearchModule.swift; path = ../Sources/Module/MessageSearch/SBUMessageSearchModule.swift; sourceTree = ""; }; + F615FB6E4174CA06CC953A46 /* SBUBarButtonItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBarButtonItem.swift; path = ../Sources/View/Common/SBUBarButtonItem.swift; sourceTree = ""; }; + F71B4039836F4FF4ABBC871E /* SBUCollectionViewFlowLayout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCollectionViewFlowLayout.swift; path = ../Sources/View/Common/SBUCollectionViewFlowLayout.swift; sourceTree = ""; }; + F7B7211E25D2F4792FF9C8DD /* SBUCacheManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUCacheManager.swift; path = ../Sources/Manager/CacheManager/SBUCacheManager.swift; sourceTree = ""; }; + F80A51A88680A4C09A540DE8 /* SBUBaseChannelSettingsViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUBaseChannelSettingsViewModel.swift; path = ../Sources/ViewModel/ChannelSettings/SBUBaseChannelSettingsViewModel.swift; sourceTree = ""; }; + F898620E6D4EBDD8319613E9 /* MessageTemplateRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MessageTemplateRenderer.swift; path = ../Sources/CustomSyntaxTest/MessageTemplateRenderer.swift; sourceTree = ""; }; + F8ACFABF8A5AA0281DCF7F87 /* SBUChannelTitleView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUChannelTitleView.swift; path = ../Sources/View/Channel/Header/SBUChannelTitleView.swift; sourceTree = ""; }; + F981416BB0803F46A7C86A72 /* SBUDebouncer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUDebouncer.swift; path = ../Sources/Util/SBUDebouncer.swift; sourceTree = ""; }; + F9CF1ED3054A51749E9EE435 /* UIViewController+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIViewController+SBUIKit.swift"; path = "../Sources/Extension/UIViewController+SBUIKit.swift"; sourceTree = ""; }; + FA8156E1D371ABA2ED207B47 /* SBUUserMessageCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUUserMessageCell.swift; path = ../Sources/View/Channel/MessageCell/SBUUserMessageCell.swift; sourceTree = ""; }; + FAC38A5593C61283DF24EDD9 /* SBUPendingMessageManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUPendingMessageManager.swift; path = ../Sources/Manager/SBUPendingMessageManager.swift; sourceTree = ""; }; + FB23FD13C147EFC1327F05AC /* SBUSuggestedReplyView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUSuggestedReplyView.swift; path = ../Sources/View/Channel/MessageCell/SuggestedReply/Views/SBUSuggestedReplyView.swift; sourceTree = ""; }; + FC81492A5041F5ECDB48B72C /* SBUVoiceContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUVoiceContentView.swift; path = ../Sources/View/Channel/MessageCell/FileMessageContentView/SBUVoiceContentView.swift; sourceTree = ""; }; + FC8F86D01729096DF7302562 /* SBULogger.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBULogger.swift; path = ../Sources/Util/SBULogger.swift; sourceTree = ""; }; + FCBE846A3431A5D716B4EFFA /* CGSize+SBUIKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CGSize+SBUIKit.swift"; path = "../Sources/Extension/CGSize+SBUIKit.swift"; sourceTree = ""; }; + FDAAA5C67531628867DFFD7A /* SBUStringSet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUStringSet.swift; path = ../Sources/Constant/SBUStringSet.swift; sourceTree = ""; }; + FDFC590A799C7174BCE2F22E /* SBUMenuCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMenuCell.swift; path = ../Sources/View/Common/Menu/SBUMenuCell.swift; sourceTree = ""; }; + FEA4105EDA6B17E6E2EF22BD /* SBULoading.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBULoading.swift; path = ../Sources/View/Common/SBULoading.swift; sourceTree = ""; }; + FEAA3B116BF4A427CE167D1D /* SBUGroupChannelViewController.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUGroupChannelViewController.Deprecated.swift; path = ../Sources/Deprecated/Channel/SBUGroupChannelViewController.Deprecated.swift; sourceTree = ""; }; + FEB8247FA9D45E8639A66668 /* SBUOpenChannelListViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUOpenChannelListViewController.swift; path = ../Sources/View/ChannelList/SBUOpenChannelListViewController.swift; sourceTree = ""; }; + FF8932D10ABB762CAEF6B35D /* SBUViewLifeCycle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUViewLifeCycle.swift; path = "../Sources/View/Life cycles/SBUViewLifeCycle.swift"; sourceTree = ""; }; + FFCBB242E40E79FCFE1A41EA /* SBUEnums.Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUEnums.Deprecated.swift; path = ../Sources/Deprecated/SBUEnums.Deprecated.swift; sourceTree = ""; }; + FFF1D8E9142C0E072DDDF8CD /* SBUMessageThreadModule.List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SBUMessageThreadModule.List.swift; path = ../Sources/Module/MessageThread/SBUMessageThreadModule.List.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -931,19 +945,37 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 00794D768EEFC2BB0F3995B4 /* SelectUser */ = { + isa = PBXGroup; + children = ( + DBECF04CC002B0C079F36C18 /* RegisterOperator */, + 83B72687BC1338EF38DB1D17 /* InviteUser */, + D0A5443BCA9A05F902695485 /* SBUBaseSelectUserModule.Header.swift */, + 81FD78B595B3F3718CE84774 /* SBUBaseSelectUserModule.swift */, + 5570FDB1231C035BCF07495B /* CreateChannel */, + 57AFF029AB67E9E3DAD47ED2 /* SBUBaseSelectUserModule.List.swift */, + ); + name = SelectUser; + sourceTree = ""; + }; 0089E01832EFD3D6954E7899 /* MessageCellParams */ = { isa = PBXGroup; children = ( - 7FD1BED5D2B1F6D5DAD0240C /* SBUBaseMessageCellParams.Deprecated.swift */, ); name = MessageCellParams; sourceTree = ""; }; + 00BD0AAE90AB361F6EBC4A52 /* Protocol */ = { + isa = PBXGroup; + children = ( + 13BB5AED66BB2664B4AC6289 /* CommonProtocols.swift */, + ); + name = Protocol; + sourceTree = ""; + }; 0135F4A84269A29BC0AC8B57 /* Views */ = { isa = PBXGroup; children = ( - 59A3FA994CE9A95016CA3FBF /* SBUSuggestedReplyView.swift */, - DD8AB6E81F89F81EE8FC2290 /* SBUSuggestedReplyOptionView.swift */, ); name = Views; sourceTree = ""; @@ -951,72 +983,85 @@ 0287B45DE0766BC9FDB3B49B /* Views */ = { isa = PBXGroup; children = ( - DEA63156B965D436054BB286 /* SBUFormView.swift */, - 44FA36B574BB43E1B8D2BFDC /* SBUFormFieldView.swift */, ); name = Views; sourceTree = ""; }; + 029CD5B643877E8D2B9F3607 /* CreateChannel */ = { + isa = PBXGroup; + children = ( + ADB9E0427E915B44AE7D8FE8 /* View */, + 59BDE14B26EDC055E1BF2A4E /* SBUCreateChannelViewController.swift */, + 070F74328384AAC18B2F655F /* SBUCreateOpenChannelViewController.swift */, + ); + name = CreateChannel; + sourceTree = ""; + }; + 0481BCF10FE5977191E3355A /* ViewModel */ = { + isa = PBXGroup; + children = ( + 0727BF56798D054B69AE7664 /* SBUViewModelDelegate.swift */, + 58594295B49AE1E557222134 /* ChannelList */, + 6ECEB86299CFBDC7B96E39AA /* NotificationSettings */, + F136E2FAEFD9B194DC5B9C45 /* Channel */, + E9E347DEDA0D533FEB6BE049 /* ChannelSettings */, + 3207AC531C346F5AD8AF1ED1 /* Common */, + 1A0AADBF542493DFC030038A /* UserList */, + 0EC90045CC8737D3104050FA /* MessageSearch */, + D70E4F0CDB57EB33A0A7A57D /* MessageThread */, + F8E587192877945308B00498 /* SelectUser */, + ); + name = ViewModel; + sourceTree = ""; + }; 081172AC404927A0CE591CA0 /* MessageCell */ = { isa = PBXGroup; children = ( - 942B8097147C93A2E442B8B9 /* SBUMessageCellConfiguration.swift */, ); name = MessageCell; sourceTree = ""; }; - 09932F4F69360284D69DFCE7 /* Channel */ = { + 088C6E680E12A69D8D344959 /* VoiceMessage */ = { isa = PBXGroup; children = ( - 377D96499782136428F2F4C8 /* GroupChannel */, - 50C355538ED78BE479455AEF /* NotificationChannel */, - 9FA26B2046EC8F3E51AA39EC /* OpenChannel */, + 27D92765F41BFEF1B8CCA3C3 /* SBUVoiceMessageConfiguration.swift */, ); - name = Channel; + name = VoiceMessage; sourceTree = ""; }; - 0BEF3388AA1CB672366D96DA /* Channel */ = { + 0B0D1209F337253695428973 /* GroupChannel */ = { isa = PBXGroup; children = ( - 83C2DC5EADB75BE6D8BCDCB3 /* GroupChannel */, - 9C879830AF5591AC8A86A94F /* NotificationChannel */, - C6F60DC8DE41420100032550 /* SBUBaseChannelModule.Input.swift */, - DE6A4367B48D7CCC83A95627 /* SBUBaseChannelModule.swift */, - 85EBFE79349E4201CF6D3E9C /* SBUBaseChannelModule.Header.swift */, - 1BE56A1BC470A56B4F023DED /* OpenChannel */, - 190BE37B8F3521A8D643887B /* SBUBaseChannelModule.List.swift */, + 9AF8919A674D2307E9A1DA0D /* SBUGroupChannelModule.Input.swift */, + B95E69478AB9F0BC6838E6B0 /* SBUGroupChannelModule.List.swift */, + BECDA6D139DD0061D92E43E0 /* SBUGroupChannelModule.Header.swift */, + F2FAADF0A5257BD72DC8608F /* SBUGroupChannelModule.swift */, ); - name = Channel; + name = GroupChannel; sourceTree = ""; }; - 0C15D6A43EC40183301A3E06 /* MessageCell */ = { + 0BEF3388AA1CB672366D96DA /* Channel */ = { isa = PBXGroup; children = ( - 79E3DFF801C6ADAF1403E417 /* MessageCellParams */, - 77A09F971E7DAD08C95ADF4A /* Replies */, + 83C2DC5EADB75BE6D8BCDCB3 /* GroupChannel */, + 9C879830AF5591AC8A86A94F /* NotificationChannel */, + 1BE56A1BC470A56B4F023DED /* OpenChannel */, ); - name = MessageCell; + name = Channel; sourceTree = ""; }; 0C561ECC86464700F6219D23 /* MessageCell */ = { isa = PBXGroup; children = ( C1FF60134E4DC02CBE703889 /* MessageCellParams */, - C7443F3634A2061C177745E2 /* SBUTypingIndicatorMessageCell.swift */, 2E64D0B7A6AB7112A72EE816 /* Forms */, 8344BDA6F7E4DC33DE76758B /* FileMessageContentView */, BC6315E4C643D8DFE9BB87F5 /* SuggestedReply */, A545AA2CCF6F26FC4516D1AC /* NotificationChannel */, B4C3CC210035D69549704F53 /* Replies */, 37E89B5BC4D4A08F3CAF1832 /* MultipleFilesMessage */, - B9AD3FB44A0730562C0F753B /* SBUBaseMessageCell.swift */, 99331DE990AD937B77EFDEDC /* OpenChannel */, 58DF19CC1AE8358A6762B8BC /* CustomView */, - 400D8B296264143272C72EFB /* SBUFileMessageCell.swift */, - 5A6F791585859414AB3F0CCC /* SBUAdminMessageCell.swift */, - C1A8BFF1E5950193EBFF3429 /* SBUContentBaseMessageCell.swift */, - E479DC0012A236E32FD17343 /* SBUUnknownMessageCell.swift */, - 5DA1A955B249D3E59488A2F3 /* SBUUserMessageCell.swift */, ); name = MessageCell; sourceTree = ""; @@ -1024,75 +1069,50 @@ 0C89AA7626B62E91191502C6 /* UserCell */ = { isa = PBXGroup; children = ( - E47F0637CABD3B2832E657C6 /* SBUUserCell.swift */, ); name = UserCell; sourceTree = ""; }; - 0F4BC03B4AF912FE472B6CA3 /* Manager */ = { - isa = PBXGroup; - children = ( - C275B15AD520830E149AC8BA /* SBUEmojiManager.swift */, - B197A6D67B3BB1949D124543 /* CacheManager */, - D2217E6814D97628BD2AE52A /* SBUVoicePlayer.swift */, - 6F28088DDCC952AAAD58ED11 /* SBUNotificationChannelManager.swift */, - 3F8583A32451CC1F0C8D520D /* SBUTypingIndicatorMessageManager.swift */, - 2DE1B79AC7F602567401517E /* SBUPendingMessageManager.swift */, - 6373BFAAC93A06FE46E6C176 /* SBUDownloadManager.swift */, - 8D684515D3AA15B3801F9EE4 /* SBUVoiceRecorder.swift */, - 43C4B9D558CC9F310B82FDBF /* SBUPermissionManager.swift */, - 4D057BA6DE20320A25A70FB2 /* SBUToastManager.swift */, - ); - name = Manager; - sourceTree = ""; - }; - 11466868536C0DF17287135C /* ViewParams */ = { - isa = PBXGroup; - children = ( - ); - name = ViewParams; - sourceTree = ""; - }; - 1243FC498072BD043E98FCDE /* MessageSearch */ = { + 0EC90045CC8737D3104050FA /* MessageSearch */ = { isa = PBXGroup; children = ( + B5873B2E97F3C6B5744AF079 /* SBUMessageSearchViewModel.swift */, ); name = MessageSearch; sourceTree = ""; }; - 1499EA2855C239C0B214AEA3 /* Cell */ = { - isa = PBXGroup; - children = ( - ); - name = Cell; - sourceTree = ""; - }; - 1504D9F966C26813AB1FDDEB /* MessageView */ = { + 132BAFE44619BD6B66202BF1 /* Theme */ = { isa = PBXGroup; children = ( + 9C6B55A5F36AB450C77383D4 /* SBUIconSet.swift */, + 0599B06D5528F46BE1A401E8 /* SBUColorSet.swift */, + 35212187D2E5368720261B3F /* SBUTheme+Type.swift */, + F24E7B0EE6F9F2AC1EE56D3B /* SBUFontSet.swift */, + E7D1E8E82F632DF4D683BE3B /* SBUTheme.swift */, ); - name = MessageView; + name = Theme; sourceTree = ""; }; - 17047EBBD7554A065E10A371 /* ChannelList */ = { + 13748E25D24A32398E759715 /* Replies */ = { isa = PBXGroup; children = ( + 5AB6FBFB35D99D857DAC109B /* MessageView */, + E7DAE0C27D639E96B1FEB449 /* ViewParams */, ); - name = ChannelList; + name = Replies; sourceTree = ""; }; - 17E898600497EE76F078AF5A /* Moderations */ = { + 1A0AADBF542493DFC030038A /* UserList */ = { isa = PBXGroup; children = ( + B034C5EA6838C021CEDF3510 /* SBUUserListViewModel.swift */, ); - name = Moderations; + name = UserList; sourceTree = ""; }; 1AB19051F393005BCB57C645 /* ChatSDK */ = { isa = PBXGroup; children = ( - E6272D852F84F6AC1A867BFF /* BaseMessage+SBUIKit.swift */, - 2833BAB9311DF91AF2AD6EA4 /* MultipleFilesMessage+SBUIKit.swift */, ); name = ChatSDK; sourceTree = ""; @@ -1100,9 +1120,6 @@ 1B1D6918521ACB5BC3DBA4D5 /* PhotoLibrary */ = { isa = PBXGroup; children = ( - 8E71B94DFAB446765A56A781 /* SBUPhotoAccess.swift */, - 425187AA61F2486F98B1B407 /* SBUPhotoCollectionViewCell.swift */, - 7D897BF5159A76D3B9A72A1A /* SBUSelectablePhotoViewController.swift */, ); name = PhotoLibrary; sourceTree = ""; @@ -1110,172 +1127,153 @@ 1BE56A1BC470A56B4F023DED /* OpenChannel */ = { isa = PBXGroup; children = ( - C80758E57406DB6930296FE1 /* SBUOpenChannelModule.List.swift */, - F2BFEDFB4C4993C8A19D161B /* SBUOpenChannelModule.Media.swift */, - 5E12C5CC90BAE642EF4A3839 /* SBUOpenChannelModule.Input.swift */, - 495BA3046AD6A1CC99ED2A8D /* SBUOpenChannelModule.Header.swift */, - 7B011BD74F2B528EC8981379 /* SBUOpenChannelModule.swift */, ); name = OpenChannel; sourceTree = ""; }; - 1BFFF27E9EC6AE66D007AC5E /* UserList */ = { - isa = PBXGroup; - children = ( - ); - name = UserList; - sourceTree = ""; - }; - 1CCC6FA90594FC01AD2F604A /* Reaction */ = { + 210858EA95416B26C5D3FC6F /* SelectUser */ = { isa = PBXGroup; children = ( + ADA93323E28E0708D7794C81 /* RegisterOperator */, + 8933E8773E47B0B2A44E4C15 /* InviteUser */, + 3568DEA521C41063E809D904 /* CreateChannel */, ); - name = Reaction; + name = SelectUser; sourceTree = ""; }; - 1D5DA471606B91A71777C3B1 /* ChannelList */ = { + 222DB673D0B62B01685A93B5 /* ChannelCell */ = { isa = PBXGroup; children = ( + 250BCFE1311E2D9BE7A04213 /* SBUOpenChannelCell.swift */, + F1688E36777593F08B812CA1 /* SBUGroupChannelCell.swift */, + 9DC1E67F57F827A1633A2467 /* SBUBaseChannelCell.swift */, ); - name = ChannelList; + name = ChannelCell; sourceTree = ""; }; - 1F972B20AB63DE3E479E7732 /* MessageSearch */ = { + 24036180361DF0CEA28F68FA /* CacheManager */ = { isa = PBXGroup; children = ( - F4E6FBA80594F3D11B550665 /* Cell */, + C24555BDBB78BCA7652A6496 /* SBUCacheManager.Config.swift */, + B0529AD252057145862198AC /* SBUCacheManager.Version.swift */, + 48CD2421993B35D6EEB28932 /* SBUCacheManager.File.swift */, + C580E5BA186605215E32F300 /* SBUCacheManager.Template.swift */, + 7B889893CBF2930B84D76BF6 /* SBUCacheManager.Image.swift */, + F7B7211E25D2F4792FF9C8DD /* SBUCacheManager.swift */, + DD9A85738FFE75C7D458F944 /* SBUCacheManager.NotificationSetting.swift */, ); - name = MessageSearch; + name = CacheManager; sourceTree = ""; }; - 1FBA3C666CCD915FF836B407 /* ViewModel */ = { + 245D85D9293375B1FD87DA4D /* Channel */ = { isa = PBXGroup; children = ( - ADFECD11BC76ED18F3EAADCC /* SBUViewModelDelegate.swift */, - 8C4C8C4555D9CCD45E5B7205 /* ChannelList */, - 5E8970C6E16CE1A2A0590507 /* NotificationSettings */, - EA1E9ECF03EC619D3C5D5119 /* Channel */, - 4D6C59F4051CE29871C48E21 /* ChannelSettings */, - 45CB97339E0828E83C9D7F7F /* Common */, - 66535FF1DF68A6B698AA2453 /* UserList */, - AC03D85DE11C69AB2B2B4A49 /* MessageSearch */, - 324D510BA9F207D83894F1F2 /* MessageThread */, - FAC116E699E93C7992B708CA /* SelectUser */, + 9D3F2183A2B76C913B01B0BD /* MessageCell */, + 0D8B5F801AB9DD43400729E4 /* SBUBaseChannelViewController.Deprecated.swift */, + 8DB3EB75C40975BDD6B8689F /* SBUGroupChannelViewController.Unavailable.swift */, + 348DD072851F8C686F265851 /* SBUOpenChannelViewController.Deprecated.swift */, + D6C6AF085EBDD4BABD0EA656 /* SBUOpenChannelViewController.Unavailable.swift */, + FEAA3B116BF4A427CE167D1D /* SBUGroupChannelViewController.Deprecated.swift */, + 90EA277BB22C9E37797C98B3 /* SBUBaseChannelViewController.Unavailable.swift */, ); - name = ViewModel; + name = Channel; sourceTree = ""; }; - 210858EA95416B26C5D3FC6F /* SelectUser */ = { + 265BA4D36D8A06D6B5E5F03F /* ChannelSettings */ = { isa = PBXGroup; children = ( - ADA93323E28E0708D7794C81 /* RegisterOperator */, - 8933E8773E47B0B2A44E4C15 /* InviteUser */, - DFB3E01DE722F0F9EB33509B /* SBUBaseSelectUserModule.Header.swift */, - 58645AFAF1F6197B4F769819 /* SBUBaseSelectUserModule.swift */, - 3568DEA521C41063E809D904 /* CreateChannel */, - 28CB89FA7DD816BED6821E6F /* SBUBaseSelectUserModule.List.swift */, ); - name = SelectUser; + name = ChannelSettings; sourceTree = ""; }; - 2338C56C1C6BEBDDFE8EF16F /* OpenChannel */ = { + 272E7823B9ADC110599737AB /* MessageView */ = { isa = PBXGroup; children = ( ); - name = OpenChannel; + name = MessageView; sourceTree = ""; }; - 23B0F4431BBE200D5F7DC926 /* Mention */ = { + 28D495DC4CDAB2966B0ED245 /* MessageCell */ = { isa = PBXGroup; children = ( + 84A1EDA5AB7BA03BAFAD6313 /* SBUMessageCellConfiguration.swift */, ); - name = Mention; + name = MessageCell; sourceTree = ""; }; - 265BA4D36D8A06D6B5E5F03F /* ChannelSettings */ = { + 2C37BBDE13B5DB41063E646B /* Resource */ = { isa = PBXGroup; children = ( - 4D311D2B4516671A61E4EF32 /* SBUBaseChannelSettingsViewController.Deprecated.swift */, + F2DEEC8974EEDCCFF623DEEF /* Assets.xcassets */, ); - name = ChannelSettings; + name = Resource; sourceTree = ""; }; - 26CD16CF921297727F336053 /* SelectUser */ = { + 2E64D0B7A6AB7112A72EE816 /* Forms */ = { isa = PBXGroup; children = ( - 312DA069C5360E217C551992 /* CreateChannel */, + 5B550F6D7DC90AE018354469 /* ViewParams */, + 0287B45DE0766BC9FDB3B49B /* Views */, ); - name = SelectUser; + name = Forms; sourceTree = ""; }; - 272E7823B9ADC110599737AB /* MessageView */ = { + 2E9850E52B1EEC0B00EA4F39 /* ViewModel */ = { isa = PBXGroup; children = ( - D4288A53729AAD8A47E463BD /* QuotedFileCommonContentView.swift */, - D0248A62B121D5C8BB779C45 /* SBUQuotedBaseMessageView.swift */, - F0FAEE6EB611CC9C820982EA /* SBUThreadInfoView.swift */, - F53986E9E026E908F57BA6C8 /* QuotedFileImageContentView.swift */, - F33D54197920D4AC9FDCCA95 /* SBUQuotedFileMessageView.swift */, - 34AB83535E811854BE84295B /* SBUQuotedUserMessageView.swift */, + 2E9850E62B1EEC0B00EA4F39 /* GroupChannelViewModel_AdditionalFeatures.swift */, ); - name = MessageView; + name = ViewModel; + path = Customize/ViewModel; sourceTree = ""; }; - 2E64D0B7A6AB7112A72EE816 /* Forms */ = { + 2E9850E82B1EEC3000EA4F39 /* Others */ = { isa = PBXGroup; children = ( - 5B550F6D7DC90AE018354469 /* ViewParams */, - 0287B45DE0766BC9FDB3B49B /* Views */, + 2E9850E92B1EEC3000EA4F39 /* MetadataViewController.swift */, ); - name = Forms; + path = Others; sourceTree = ""; }; - 2FEC6F3164B4114A21C55D7A /* View */ = { + 30F3312D0633F196D0046BA5 /* MessageInput */ = { isa = PBXGroup; children = ( + 1FDB9886C45210D6BFAAC6EF /* SBUMentionLimitGuideCell.swift */, + B8CA54667C6DB2614A2675C4 /* SBUSuggestedMentionList.swift */, + 5A25EC53445992C5F407736B /* SBUQuoteMessageInputView.swift */, + D3B4A038A283F59CA7364B64 /* SBUMessageInputMode.swift */, + AFF3889380A9DBC1DFE6EEE4 /* ViewParams */, + 901D841790009294F3C1F383 /* SBUMessageInputView.swift */, ); - name = View; + name = MessageInput; sourceTree = ""; }; - 312DA069C5360E217C551992 /* CreateChannel */ = { + 3207AC531C346F5AD8AF1ED1 /* Common */ = { isa = PBXGroup; children = ( + 163F0425D60F794816F53A60 /* SBUCommonDelegate.swift */, ); - name = CreateChannel; + name = Common; sourceTree = ""; }; 324D510BA9F207D83894F1F2 /* MessageThread */ = { isa = PBXGroup; children = ( - BD288BCB6C816DA6830D7C71 /* SBUMessageThreadViewModel.swift */, ); name = MessageThread; sourceTree = ""; }; - 33CF0DB352211306931447FF /* MemberList */ = { - isa = PBXGroup; - children = ( - ); - name = MemberList; - sourceTree = ""; - }; - 33D5A25F431A5A22DED0D97A /* Theme */ = { + 32ECE006C17CB0070796FB0A /* CustomView */ = { isa = PBXGroup; children = ( - B91378B69877698735D7E6EF /* SBUIconSet.swift */, - 70FF0A9963D7ABE768497D04 /* SBUColorSet.swift */, - F41A61AB3CB6C94843EABCA7 /* SBUTheme+Type.swift */, - DD31F27F086749A93ADB820C /* SBUFontSet.swift */, - 3ACF8E3D5876A76519D0C51E /* SBUTheme.swift */, + 1C610F7D7AEB52CC0C6CA3FD /* SBUExtendedMessagePayloadCustomViewFactory.swift */, ); - name = Theme; + name = CustomView; sourceTree = ""; }; 34D834CCADA1B775CF6BC69F /* Mention */ = { isa = PBXGroup; children = ( - EFF5C0905479887F6D56B40F /* SBUMentionConfiguration.swift */, - 86CEBE8FD03BC8B730E6CC9C /* SBUUserMentionConfiguration.swift */, ); name = Mention; sourceTree = ""; @@ -1283,51 +1281,46 @@ 34E6ABE79C3F38D9ABF9C330 /* CreateChannel */ = { isa = PBXGroup; children = ( - DDBBC7D265D2328A3124473A /* SBUCreateChannelViewController.Deprecated.swift */, ); name = CreateChannel; sourceTree = ""; }; - 35013811D25CB42B31F55757 /* NotificationChannel */ = { - isa = PBXGroup; - children = ( - ); - name = NotificationChannel; - sourceTree = ""; - }; 3568DEA521C41063E809D904 /* CreateChannel */ = { isa = PBXGroup; children = ( - D1D7C88CD407E1BE360FC0D6 /* SBUCreateOpenChannelModule.ProfileInput.swift */, - 88348D4BFE62ECF2CBEDB0B3 /* SBUCreateChannelModule.swift */, - 751080FDFD1390A4D53A5151 /* SBUCreateOpenChannelModule.swift */, - 9A6047FD9F8CBBF465C4A3F8 /* SBUCreateOpenChannelModule.Header.swift */, - 97715C40BF9A25445E4A43E0 /* SBUCreateChannelModule.Header.swift */, - 56FEF419539E3D0DF193B2AB /* SBUCreateChannelModule.List.swift */, ); name = CreateChannel; sourceTree = ""; }; - 36AED7AF77E5922694EA41B6 /* ChannelSettings */ = { + 35BD186FBD2701DC595B261A /* MessageSearch */ = { isa = PBXGroup; children = ( + 7728597536E0E3841BF766F0 /* SBUMessageSearchViewController.swift */, + EA73FC041626F59CAD3E3A8D /* Cell */, ); - name = ChannelSettings; + name = MessageSearch; sourceTree = ""; }; - 377D96499782136428F2F4C8 /* GroupChannel */ = { + 37AAF431D7AB119160A8BD4C /* Manager */ = { isa = PBXGroup; children = ( + 9418D60F4915AC641F2148C7 /* SBUEmojiManager.swift */, + 24036180361DF0CEA28F68FA /* CacheManager */, + 6F0C80C4D6DF85FE405EF779 /* SBUVoicePlayer.swift */, + 09C4DEFBEE7AFE8D7C3AC3EC /* SBUNotificationChannelManager.swift */, + 927FA69D319761980E9AC2DB /* SBUTypingIndicatorMessageManager.swift */, + FAC38A5593C61283DF24EDD9 /* SBUPendingMessageManager.swift */, + B58A465C2D592258DAFFD7CF /* SBUDownloadManager.swift */, + E22AA2DB24F14F0F87B90584 /* SBUVoiceRecorder.swift */, + A939B0B4E013154B92435C78 /* SBUPermissionManager.swift */, + 655D4DB6D742F3C3FE956E42 /* SBUToastManager.swift */, ); - name = GroupChannel; + name = Manager; sourceTree = ""; }; 37E89B5BC4D4A08F3CAF1832 /* MultipleFilesMessage */ = { isa = PBXGroup; children = ( - 837C9913D01794A37AA8C0BD /* SBUMultipleFilesMessageCollectionViewCell.swift */, - 48E297FD2EC1BA53C6F8138C /* SBUMultipleFilesMessageCollectionView.swift */, - CEEE0BEC92ECBF84AB96BA13 /* SBUMultipleFilesMessageCell.swift */, ); name = MultipleFilesMessage; sourceTree = ""; @@ -1335,85 +1328,126 @@ 38BE0E03F7148B10567ADD6E /* MessageInput */ = { isa = PBXGroup; children = ( - 39AA21A9EAC614BBBC13197F /* SBUMentionLimitGuideCell.swift */, - FE24BBF7D14DA2EA22339353 /* SBUSuggestedMentionList.swift */, - 523C6F510E763850528BF1E7 /* SBUQuoteMessageInputView.swift */, - A09B750C2DB2602C8AB8A7C2 /* SBUMessageInputMode.swift */, D24F693C2972702860ED6501 /* ViewParams */, - 4ADFD866186A7A15FA48BAE1 /* SBUMessageInputView.swift */, ); name = MessageInput; sourceTree = ""; }; - 38DBB89DCED86E63677CCBDA /* Life cycles */ = { + 3A9A22321FA8CFAB1D2934A5 /* CategoryFilterCell */ = { isa = PBXGroup; children = ( + B5DD9B2DC9A15CE23FE8B92E /* SBUCategoryFilterCell.swift */, ); - name = "Life cycles"; + name = CategoryFilterCell; sourceTree = ""; }; - 3AD7A95377756593C9FF4F49 /* GroupChannel */ = { + 3D83D5862BFAD0E70C35FBE6 /* SuggestedReply */ = { isa = PBXGroup; children = ( + B316B7C368CDA19112383CB7 /* ViewParams */, + DC4081CEDC9CF1A4BE1A78AA /* Views */, ); - name = GroupChannel; + name = SuggestedReply; + sourceTree = ""; + }; + 3DD5F2D89D26459C4E4EA27A /* Forms */ = { + isa = PBXGroup; + children = ( + B0D9D0DBE08894EEE3E5F91B /* ViewParams */, + BA7AE0BEB806B626E2A220A0 /* Views */, + ); + name = Forms; sourceTree = ""; }; 3DF6AA92F37F3C58867D83A9 /* Chat */ = { isa = PBXGroup; children = ( - FC1E8BEE4CF8796421B2BBA6 /* SBUChatNotificationChannelModule.swift */, - 1390303A63A17BE693C5C2CC /* SBUChatNotificationChannelModule.List.swift */, - 421C3A4567D0E73AA1EE7F37 /* SBUChatNotificationChannelModule.Header.swift */, ); name = Chat; sourceTree = ""; }; - 3EB344D925BDBAFCE94D1EF6 /* NewMessageInfo */ = { + 3FDC5615BA428A9074FB887F /* Chat */ = { isa = PBXGroup; children = ( + 5CA358756BFBE63246999CFC /* SBUChatNotificationChannelModule.swift */, + 0EDC9D06C1E899E6E18D313C /* SBUChatNotificationChannelModule.List.swift */, + 9898E9A1DEA31F29CBC37E80 /* SBUChatNotificationChannelModule.Header.swift */, ); - name = NewMessageInfo; + name = Chat; sourceTree = ""; }; - 41A6F5420DF02E0DDB41AB0A /* SelectUser */ = { + 4205B04D4C8524EFDF89E101 /* UserList */ = { isa = PBXGroup; children = ( - AD91005C439749E94CB142AE /* RegisterOperator */, - 58B315C9242101FF87E3A7B6 /* InviteUser */, - 6ED3F7BB8618D6A623FCE789 /* CreateChannel */, + 392FE63782CD89490E08BC71 /* SBUBaseSelectUserViewController.Deprecated.swift */, ); - name = SelectUser; + name = UserList; sourceTree = ""; }; - 4272FFE4570EFE92FCF5F621 /* UserList */ = { + 451073E58CCB698F5FB28A98 /* ChannelSettings */ = { isa = PBXGroup; children = ( + 9F2E7256AF48965AECA7C6DD /* SBUBaseChannelSettingsModule.Header.swift */, + 38DB88E7A046ACEC2DEBBAAF /* SBUBaseChannelSettingsModule.List.swift */, + 49463A87C4C937CE430C7376 /* ChannelSettingItem */, + AA923B3DE18BE2662B406248 /* GroupChannel */, + 2F8E7C50851BBC81E4BD45B7 /* SBUBaseChannelSettingsModule.swift */, + D41E9DF1EBC3D4C3E900C6CF /* OpenChannel */, ); - name = UserList; + name = ChannelSettings; sourceTree = ""; }; 45CB97339E0828E83C9D7F7F /* Common */ = { isa = PBXGroup; children = ( - A2E70FA2C1F6CE3D53387477 /* SBUCommonDelegate.swift */, ); name = Common; sourceTree = ""; }; + 460E0EE5F3406D56AF6E0A26 /* NotificationSettings */ = { + isa = PBXGroup; + children = ( + 86A1193C6F0E9413FA50BF93 /* Cell */, + 4EB89DB52E05196105C9B987 /* SBUGroupChannelPushSettingsViewController.swift */, + ); + name = NotificationSettings; + sourceTree = ""; + }; 461CECF99C39A4EE4E7145CB /* ViewParams */ = { isa = PBXGroup; children = ( - A560C431BBA9C41F34F9EE58 /* SBUQuotedBaseMessageViewParams.swift */, ); name = ViewParams; sourceTree = ""; }; - 46C8736CFED5407693FB8223 /* Feed */ = { + 486FB6235E7F4E46DA7B8852 /* SelectUser */ = { isa = PBXGroup; children = ( + 7312EA10DED5DAB57697AC64 /* SBURegisterOperatorViewController.swift */, + B29C3D09D40D31B83D41C3FB /* SBUBaseSelectUserViewController.swift */, + E4045143A35DBDB6CC3EBBBD /* SBUInviteUserViewController.swift */, + 029CD5B643877E8D2B9F3607 /* CreateChannel */, ); - name = Feed; + name = SelectUser; + sourceTree = ""; + }; + 48BF26EB90E6E34607921F32 /* Cell */ = { + isa = PBXGroup; + children = ( + D9849D1106F01153493D75D9 /* SBUOpenChannelSettingCell.swift */, + 58027FDAFC467BA293633EB9 /* SBUBaseChannelSettingCell.swift */, + 170F961739EF0AB2DBC7B65D /* SBUModerationCell.swift */, + 8417232FBF8002EB65572308 /* SBUGroupChannelSettingCell.swift */, + ); + name = Cell; + sourceTree = ""; + }; + 49463A87C4C937CE430C7376 /* ChannelSettingItem */ = { + isa = PBXGroup; + children = ( + 86170B209644D6F0F269CAAA /* SBUChannelSettingItem.swift */, + ); + name = ChannelSettingItem; sourceTree = ""; }; 4992616D2A9D89BE00B07828 /* MainViews */ = { @@ -1430,206 +1464,195 @@ path = MainViews; sourceTree = ""; }; - 4A831D5E429AAD621C47F557 /* SelectUser */ = { - isa = PBXGroup; - children = ( - ECC3D05C58AB6A4450A84FFB /* CreateChannel */, - ); - name = SelectUser; - sourceTree = ""; - }; - 4B5F4C5A24C1D83397F7BA02 /* Menu */ = { + 4BF377C42DD4B945484C7319 /* Feed */ = { isa = PBXGroup; children = ( + C4295B2BC3B60855D14B68E7 /* SBUFeedNotificationChannelModule.Header.swift */, + 9536BA4C46447C8CDF22BFCB /* SBUFeedNotificationChannelModule.List.swift */, + B264A99CBCD2D6A4F4101B93 /* SBUFeedNotificationChannelModule.CategoryFilter.swift */, + 665624EE08CC9A6036D0CB01 /* SBUFeedNotificationChannelModule.swift */, ); - name = Menu; + name = Feed; sourceTree = ""; }; 4C0CA0E328B0FA82E9BEEF36 /* Life cycles */ = { isa = PBXGroup; children = ( - 1DEA999989E876EFEF948A59 /* SBUTableViewCell.swift */, - 51709567943DAB8C50D3264C /* SBUCollectionViewCell.swift */, - 54B2F380E6A7FCB840E15AC4 /* SBUQuoteMessageInputViewProtocol.swift */, - 1487DC3028CA956C8CB8900B /* SBUMessageCellProtocol.swift */, - E20A65CA76F9373F01A52E37 /* SBUViewLifeCycle.swift */, - D4C18DAAF1B58DEB2FA62BD7 /* SBUQuotedMessageViewProtocol.swift */, - 4BAF66B0299CA7578DBA1F24 /* SBUView.swift */, ); name = "Life cycles"; sourceTree = ""; }; - 4CDA99FCEBF709F6E124A554 /* Constant */ = { + 4C5B88AE0487114ED5AEE347 /* Reaction */ = { isa = PBXGroup; children = ( - 6C074FF0C88AC9DDE2BCEAA7 /* SBUStringSet.Deprecated.swift */, - B1E9D376E6E66698973D0FA3 /* SBUDateFormatSet.swift */, - 5AFD44975BE7AA6282BAAA88 /* SBUConstant.swift */, - EA8C5E650A758B2E3513028D /* SBUStringSet.swift */, + 9BF9C43480BB8634422D328F /* SBUParentMessageInfoReactionView.swift */, + 153D526660CB939E23444CDA /* SBUReactionCollectionViewCell.swift */, + C19FBC5EAA77D503F990F1AC /* SBUReactionsViewController.swift */, + 05124D9926BFAA1E594B90E7 /* SBUMessageReactionView.swift */, + 22C7192CA8C004461FB36689 /* SBUReactionCollectionViewCell.xib */, + BE93B488DD755528B8BC11AD /* SBUEmojiListViewController.swift */, ); - name = Constant; + name = Reaction; sourceTree = ""; }; - 4D4EAE6C1AE4A832C76D9BF2 /* ChannelList */ = { + 4C9B3E6A8F8158E7F71FE9B0 /* FileMessageContentView */ = { isa = PBXGroup; children = ( - C4BA24C9350C2E7D565AAAB4 /* ChannelCell */, + 2A8EFA0D58CB3D1E29F0047D /* SBUBaseFileContentView.swift */, + E9018A7FF3D55A1153126128 /* SBUOpenChannelCommonContentView.swift */, + FC81492A5041F5ECDB48B72C /* SBUVoiceContentView.swift */, + 03BB047BF6AE2CDB4CE2A910 /* SBUImageContentView.swift */, + 8FE87DC7C154FA915C08D735 /* SBUCommonContentView.swift */, + C9153E830EC5DB460E46090A /* SBUOpenChannelImageContentView.swift */, ); - name = ChannelList; + name = FileMessageContentView; sourceTree = ""; }; 4D6C59F4051CE29871C48E21 /* ChannelSettings */ = { isa = PBXGroup; children = ( - B2E9E1626F54D7A6A917545A /* SBUBaseChannelSettingsViewModel.swift */, - FD0B7546CD8231BFB3BC59B0 /* SBUModerationsViewModel.swift */, - A4F9723828456EF4586C5E1F /* SBUGroupChannelSettingsViewModel.swift */, - 6338164168EC12A315AF6626 /* SBUOpenChannelSettingsViewModel.swift */, ); name = ChannelSettings; sourceTree = ""; }; - 4DB50159FC92B89E2080C51E /* OpenChannel */ = { + 4DC28972FE4F57EDD9AB19AA /* Channel */ = { isa = PBXGroup; children = ( + 0B0D1209F337253695428973 /* GroupChannel */, + 6E4FC522C38993B9782F1678 /* NotificationChannel */, + 650A2685B3FAF47445209B53 /* SBUBaseChannelModule.Input.swift */, + 90463FD5A7830689C13AF5F5 /* SBUBaseChannelModule.swift */, + 621D95B8A24F0A72DA537320 /* SBUBaseChannelModule.Header.swift */, + 90D09A910E73861DF97A6EDB /* OpenChannel */, + DDCBE48B02F60EDD81E05810 /* SBUBaseChannelModule.List.swift */, ); - name = OpenChannel; + name = Channel; sourceTree = ""; }; - 4FB8FF0BFCCA63AB96E8A57A /* CreateChannel */ = { + 4EE59DBD94E3CAF05C82CD61 /* Enums */ = { isa = PBXGroup; children = ( + 40954B3FE10F9676923DB401 /* VoiceMessageStatus.swift */, + E88E980588C29EFE8E975130 /* SBUIconSetType.swift */, + 5A73EBCFD8FF5402C497035C /* SBUEnums.swift */, ); - name = CreateChannel; + name = Enums; sourceTree = ""; }; - 5021617662CD2DB37BF1DFB9 /* MessageThread */ = { + 5250876801EBD7CA8FE3E237 /* NotificationSettings */ = { isa = PBXGroup; children = ( + B3982CD55B1BCE1C3A05CA6A /* Cell */, ); - name = MessageThread; + name = NotificationSettings; sourceTree = ""; }; - 50C355538ED78BE479455AEF /* NotificationChannel */ = { + 53B5E3FBD94BCE12A374B28D /* NotificationSettings */ = { isa = PBXGroup; children = ( - A2F72A79BFDB888C133FCE33 /* Chat */, - 46C8736CFED5407693FB8223 /* Feed */, ); - name = NotificationChannel; + name = NotificationSettings; sourceTree = ""; }; - 5127FC983545F3BDF72EFD4B /* Deprecated */ = { + 5570FDB1231C035BCF07495B /* CreateChannel */ = { isa = PBXGroup; children = ( - D67D31745EC3598BC64D1E60 /* SBUTableViewCell.Unavailable.swift */, - DB1224C4DF0F5BFED22226C6 /* ChannelList */, - 9EE9B0EDCDB1B41C9B61ABBF /* Channel */, - 265BA4D36D8A06D6B5E5F03F /* ChannelSettings */, - 33A8F37825C101F42BE3C6E6 /* SBUBaseViewController.Unavailable.swift */, - DC636D12C7DEE05F18A29038 /* MemberList */, - 599589EAE0B61BC8B8B96125 /* UserList */, - C2B2ED10CBA267CC6E6FC539 /* MessageSearch */, - C4B3AA80DA43D9234ACEF6CC /* SBUView.Unavaliable.swift */, - 6E0DE5831E8E1AA64BD96517 /* SBUGlobals.Deprecated.swift */, - AD7E76AE4730DDB54C71AA80 /* SBUCoverImageView.Deprecated.swift */, - 8B8E09764128743C7F20C886 /* Moderations */, - AB87F5B3A54B200570C4CA77 /* SBUTheme.Deprecated.swift */, - 34E6ABE79C3F38D9ABF9C330 /* CreateChannel */, - F58D72E0600096FEF0F045E2 /* SBUModuleSet.Deprecated.swift */, - 36212F00EFCD6363DC91915F /* SBUEnums.Deprecated.swift */, + 21F5625DC1D293F998AA82AA /* SBUCreateOpenChannelModule.ProfileInput.swift */, + AF4713EDDA8BE762ACB732FC /* SBUCreateChannelModule.swift */, + CC9302E58E72DE08D478C932 /* SBUCreateOpenChannelModule.swift */, + E137D05DFBE1EA7BBBBA8842 /* SBUCreateOpenChannelModule.Header.swift */, + 3AE928F64E99D76A18B17FD9 /* SBUCreateChannelModule.Header.swift */, + 5587FC3DDAE895326A94B2E5 /* SBUCreateChannelModule.List.swift */, ); - name = Deprecated; + name = CreateChannel; sourceTree = ""; }; - 5250876801EBD7CA8FE3E237 /* NotificationSettings */ = { + 574580EF4787DD53059FAAB3 /* ChannelList */ = { isa = PBXGroup; children = ( - B3982CD55B1BCE1C3A05CA6A /* Cell */, - 2BDA027046D4C802363584B5 /* SBUGroupChannelPushSettingsViewController.swift */, + 9000CB6FB2D20D2D386925B7 /* SBUChannelListViewController.Deprecated.swift */, ); - name = NotificationSettings; + name = ChannelList; sourceTree = ""; }; - 53B5E3FBD94BCE12A374B28D /* NotificationSettings */ = { + 58594295B49AE1E557222134 /* ChannelList */ = { isa = PBXGroup; children = ( - 023681DE8880079B4C932080 /* SBUGroupChannelPushSettingsModule.List.swift */, - 3B114AA4F085C5DF0BEBC21D /* SBUGroupChannelPushSettingsModule.swift */, - CAE3736F2A969A12624E31A5 /* SBUGroupChannelPushSettingsModule.Header.swift */, + 2C9CE7AFD281D815DD24921E /* SBUGroupChannelListViewModel.swift */, + 2106D0256B2B35F304280972 /* SBUOpenChannelListViewModel.swift */, + 6F241535BD1A7F066E906872 /* SBUBaseChannelListViewModel.swift */, ); - name = NotificationSettings; + name = ChannelList; sourceTree = ""; }; - 54BEABE6CCC74A5064D16D6D /* Util */ = { + 58DF19CC1AE8358A6762B8BC /* CustomView */ = { isa = PBXGroup; children = ( - D948A237BA090BF109577924 /* SBUPropertyWrapper.swift */, - 8EDE5C8C193B7FADF990872B /* BlockingOperation.swift */, - 58A4FAC461AA835648FE9F66 /* SBUUtils.swift */, - B546179439A8035E57219067 /* SBULogger.swift */, - 0BB19E97A247250979B66E08 /* SBUMentionManager.swift */, - 5ECD32E1694D81E0245A77C2 /* SBUDebouncer.swift */, ); - name = Util; + name = CustomView; sourceTree = ""; }; - 58B315C9242101FF87E3A7B6 /* InviteUser */ = { + 599589EAE0B61BC8B8B96125 /* UserList */ = { isa = PBXGroup; children = ( ); - name = InviteUser; + name = UserList; sourceTree = ""; }; - 58DF19CC1AE8358A6762B8BC /* CustomView */ = { + 5A2A75B82E001C4213E292B4 /* MessageSearch */ = { isa = PBXGroup; children = ( - 04BAC88EA0E4ECE0BDE98D94 /* SBUExtendedMessagePayloadCustomViewFactory.swift */, + 9BE53A43E86A8F2169999B8B /* SBUMessageSearchViewController.Deprecated.swift */, ); - name = CustomView; + name = MessageSearch; sourceTree = ""; }; - 599589EAE0B61BC8B8B96125 /* UserList */ = { + 5AB6FBFB35D99D857DAC109B /* MessageView */ = { isa = PBXGroup; children = ( - 2C3071F5D45B84D2E236CB88 /* SBUBaseSelectUserViewController.Deprecated.swift */, + ABB24CF7362F81585989AC25 /* QuotedFileCommonContentView.swift */, + BE0F61DD6E53F245C1BFBDC0 /* SBUQuotedBaseMessageView.swift */, + B75783C323EBE530C20F7877 /* SBUThreadInfoView.swift */, + 76ACEC75E210CB87784CAFEB /* QuotedFileImageContentView.swift */, + C652D2652A54A2AD3EC7A28B /* SBUQuotedFileMessageView.swift */, + 5A6C2CCD8C5345DE571B7E0C /* SBUQuotedUserMessageView.swift */, ); - name = UserList; + name = MessageView; sourceTree = ""; }; - 5A543BE3A146EC66A51A7EAB /* Module */ = { + 5B550F6D7DC90AE018354469 /* ViewParams */ = { isa = PBXGroup; children = ( - BF5D18C774088F920D49E4BC /* ChannelList */, - 53B5E3FBD94BCE12A374B28D /* NotificationSettings */, - 0BEF3388AA1CB672366D96DA /* Channel */, - 60EC59926615682AE375FDCF /* ChannelSettings */, - FE96D2C5D57DAB8E45F258D1 /* UserList */, - 19146BE18864C0A1F6BDD85D /* SBUModuleSet.swift */, - CD5E35EB035BF16A8AB036C6 /* MessageSearch */, - 63F24E71EFEC208A57B89577 /* MessageThread */, - 635CCDA19EB723C65B1C231E /* Moderations */, - 210858EA95416B26C5D3FC6F /* SelectUser */, ); - name = Module; + name = ViewParams; sourceTree = ""; }; - 5B550F6D7DC90AE018354469 /* ViewParams */ = { + 5BDC3F565D0B6799A3A3E5A9 /* View */ = { isa = PBXGroup; children = ( - DDA05A98F57A4890B630A9FE /* SBUFormViewParams.swift */, + A6AE9EE27E2144A25B58B718 /* SBUBaseViewController.swift */, + C1313DA05368C490082FEB1E /* ChannelList */, + 460E0EE5F3406D56AF6E0A26 /* NotificationSettings */, + 7F1068A751393641635C82BD /* Channel */, + F3311254DABAA7222FC2EFAB /* ChannelSettings */, + C2230F9CEF3753010460A865 /* VoiceNote */, + 71AA27DC304DE7F94D8BB9ED /* Common */, + 952563FFB2924AAF53276EA9 /* UserList */, + 789FDC72879DBD8EEC452D43 /* SBUViewControllerSet.swift */, + 35BD186FBD2701DC595B261A /* MessageSearch */, + D5F941A0EAB72E150F7977F5 /* Life cycles */, + 646FE9AC2561EB32E3DD286A /* MessageThread */, + F1B213373B679FECF873B4AA /* Moderations */, + 486FB6235E7F4E46DA7B8852 /* SelectUser */, ); - name = ViewParams; + name = View; sourceTree = ""; }; 5C1B40B87B9AAB0D7CD7AC2A /* ChannelSettings */ = { isa = PBXGroup; children = ( - 68B00ACF25C34E0022C90260 /* SBUBaseChannelSettingsViewController.swift */, - B15F7D2037D4C936984793AE /* SBUOpenChannelSettingsViewController.swift */, C0E0D3D38E8693FB0B51AA39 /* Cell */, 5C3C311EC79F89D1082B79DE /* View */, - C4178C75282723C0CC9B98E9 /* SBUGroupChannelSettingsViewController.swift */, ); name = ChannelSettings; sourceTree = ""; @@ -1637,22 +1660,32 @@ 5C3C311EC79F89D1082B79DE /* View */ = { isa = PBXGroup; children = ( - 09919E8A8041D179266308B5 /* SBUChannelSettingsChannelInfoView.swift */, ); name = View; sourceTree = ""; }; - 5DCA6E04DE3EF94B4952E9D2 /* NotificationSettings */ = { + 5C8ED647E9BB1AC832C33EF2 /* Constant */ = { isa = PBXGroup; children = ( + 603AA8F948B9ECD1074C73C9 /* SBUStringSet.Deprecated.swift */, + 5C1EC1A3BA52F6D65EACECD5 /* SBUDateFormatSet.swift */, + 998F262CCFF77AEEF5F4FFD1 /* SBUConstant.swift */, + FDAAA5C67531628867DFFD7A /* SBUStringSet.swift */, ); - name = NotificationSettings; + name = Constant; + sourceTree = ""; + }; + 5CD23F015296B611C267A313 /* ChannelSettings */ = { + isa = PBXGroup; + children = ( + 2BE04F45B0E0D15BE83FDCBE /* SBUBaseChannelSettingsViewController.Deprecated.swift */, + ); + name = ChannelSettings; sourceTree = ""; }; 5E8970C6E16CE1A2A0590507 /* NotificationSettings */ = { isa = PBXGroup; children = ( - 3399972117CA473E3F650FD2 /* SBUGroupChannelPushSettingsViewModel.swift */, ); name = NotificationSettings; sourceTree = ""; @@ -1660,21 +1693,26 @@ 60EC59926615682AE375FDCF /* ChannelSettings */ = { isa = PBXGroup; children = ( - 9E6F6C2715901796252A4C60 /* SBUBaseChannelSettingsModule.Header.swift */, - E2A2565DC446FCC255BB3C57 /* SBUBaseChannelSettingsModule.List.swift */, CA3AA8C8EDDFF0EF462EF857 /* ChannelSettingItem */, C5B006D4B6ACD1CEDC4A71F9 /* GroupChannel */, - 58027EC0A8743F4A606CA608 /* SBUBaseChannelSettingsModule.swift */, 7DFC7BF177EA83749024D5DC /* OpenChannel */, ); name = ChannelSettings; sourceTree = ""; }; + 61EEF2E2B64EBD1EE1A8BE7E /* OpenChannel */ = { + isa = PBXGroup; + children = ( + 475077F9EC52D0CB5F4AF1E4 /* SBUOpenChannelListModule.swift */, + 98F8FF2B47A3BA6F86568134 /* SBUOpenChannelListModule.List.swift */, + 7F797391BF7579094802CC02 /* SBUOpenChannelListModule.Header.swift */, + ); + name = OpenChannel; + sourceTree = ""; + }; 624B1EF0923C58223B1185A6 /* NewMessageInfo */ = { isa = PBXGroup; children = ( - 57CF85F68D2CF31882400B19 /* SBUNewNotificationInfo.swift */, - 4C350D231FEA2A3E7E57694D /* SBUNewMessageInfo.swift */, ); name = NewMessageInfo; sourceTree = ""; @@ -1682,7 +1720,6 @@ 624FA453CE5129463B6C2193 /* UserList */ = { isa = PBXGroup; children = ( - D6437A8F95512DBAA1EFDECE /* SBUUserListViewController.swift */, ); name = UserList; sourceTree = ""; @@ -1690,7 +1727,6 @@ 632CFE14D30A731968649708 /* Moderations */ = { isa = PBXGroup; children = ( - 9E3686281F7277481FE81D91 /* SBUModerationsViewController.swift */, ); name = Moderations; sourceTree = ""; @@ -1698,9 +1734,6 @@ 635CCDA19EB723C65B1C231E /* Moderations */ = { isa = PBXGroup; children = ( - AB44E0C51BCE310966C9CD8A /* SBUModerationsModule.List.swift */, - 2D048F31B64D36BFE7445172 /* SBUModerationsModule.swift */, - BE5A804C68039BDBA038DAC4 /* SBUModerationsModule.Header.swift */, ); name = Moderations; sourceTree = ""; @@ -1708,29 +1741,51 @@ 63F24E71EFEC208A57B89577 /* MessageThread */ = { isa = PBXGroup; children = ( - BC7677D9FE4E44E5ECA9F659 /* SBUMessageThreadModule.List.swift */, - 1607CCD3E3572A93C471009D /* SBUMessageThreadModule.swift */, - 6FEC6560FCA5AC43400EAE68 /* SBUMessageThreadModule.Input.swift */, - 24EC75ECA405DFE879C36A34 /* SBUMessageThreadModule.Header.swift */, ); name = MessageThread; sourceTree = ""; }; - 6517F430504112D220E84A28 /* Common */ = { + 646FE9AC2561EB32E3DD286A /* MessageThread */ = { isa = PBXGroup; children = ( - A773BA3BF7D1B14AD32DFE03 /* PhotoLibrary */, - B7E437F8F19FEB89C873EB54 /* User */, - 4B5F4C5A24C1D83397F7BA02 /* Menu */, - 88D65687147C4EE8547C60EA /* UserCell */, + D8406C61DAEE3827076C587B /* SBUMessageThreadViewController.swift */, + EF4E6F90D3E9427074963335 /* SBUMessageThreadTitleView.swift */, + E63A8D6A6A1940E8AABC3A06 /* SBUParentMessageInfoView.swift */, ); - name = Common; + name = MessageThread; + sourceTree = ""; + }; + 6615F09754124EC2AD0EC4D6 /* Sources */ = { + isa = PBXGroup; + children = ( + 7158CEC3DC5B0F8357DC5739 /* Configurations */, + 0481BCF10FE5977191E3355A /* ViewModel */, + BEF242B23A532EA43834D111 /* Configuration */, + BA3EE9B5D31DAFF7119565D5 /* Extension */, + 6BE6A5BFB3FAB1CC5C6B1DB1 /* Util */, + DCC9BC13A1B66B0C9FD6C6E9 /* SendbirdUI.swift */, + 03A854BAC05E2C36CD28A50E /* SBUAvailable.swift */, + D54DAFAE05FA8D77390C4FB1 /* Module */, + 4EE59DBD94E3CAF05C82CD61 /* Enums */, + BE2A90F0FB66BD54D35CD3A9 /* CustomSyntaxTest */, + 00BD0AAE90AB361F6EBC4A52 /* Protocol */, + 37AAF431D7AB119160A8BD4C /* Manager */, + 6F32BF4819FA37E319296D33 /* SBUGlobalCustomParams.swift */, + 5C8ED647E9BB1AC832C33EF2 /* Constant */, + 132BAFE44619BD6B66202BF1 /* Theme */, + 9031A9C33277F65353DA934F /* Model */, + 5BDC3F565D0B6799A3A3E5A9 /* View */, + 639A71ECE540841BCCFC456F /* SendbirdUIKit.h */, + 654610CEC554DB27ACBC43B1 /* SBUGlobals.swift */, + 2C37BBDE13B5DB41063E646B /* Resource */, + C352DDF3173EC025BA9E1202 /* Deprecated */, + ); + name = Sources; sourceTree = ""; }; 66535FF1DF68A6B698AA2453 /* UserList */ = { isa = PBXGroup; children = ( - 4CF9AD6B81ECCBD0135E9BE5 /* SBUUserListViewModel.swift */, ); name = UserList; sourceTree = ""; @@ -1738,7 +1793,6 @@ 6937BB21A8123538BC01ED46 /* VoiceMessage */ = { isa = PBXGroup; children = ( - 9943954ED330D311C5474102 /* SBUVoiceMessageConfiguration.swift */, ); name = VoiceMessage; sourceTree = ""; @@ -1746,345 +1800,370 @@ 6A990C9378BD2577B3B22E02 /* ChannelCell */ = { isa = PBXGroup; children = ( - 81F37315E2C2DC15E0F300AE /* SBUOpenChannelCell.swift */, - 3AD833016A213C33A02C3E76 /* SBUGroupChannelCell.swift */, - A6C2ABA2F639506278D9B647 /* SBUBaseChannelCell.swift */, ); name = ChannelCell; sourceTree = ""; }; - 6B0AE054B6C2EDCCFE12FAFB /* SuggestedReply */ = { - isa = PBXGroup; - children = ( - 86A0ADBBF7DA7E2CFC241BD4 /* ViewParams */, - EEE09B025BE19A1854DEF433 /* Views */, - ); - name = SuggestedReply; - sourceTree = ""; - }; - 6C7FCD8868781FF92429DAE0 /* MessageThread */ = { + 6BE6A5BFB3FAB1CC5C6B1DB1 /* Util */ = { isa = PBXGroup; children = ( + 8FE327CC068C2054ACD4671D /* SBUPropertyWrapper.swift */, + 1BD535F43388F6276BE09736 /* BlockingOperation.swift */, + A79FDF21A1D449CA027CA28B /* SBUUtils.swift */, + FC8F86D01729096DF7302562 /* SBULogger.swift */, + D8C7FBB8295E11563D4EF66A /* SBUMentionManager.swift */, + F981416BB0803F46A7C86A72 /* SBUDebouncer.swift */, ); - name = MessageThread; + name = Util; sourceTree = ""; }; 6E22760BFBE0EDEE54DB7156 /* CreateChannel */ = { isa = PBXGroup; children = ( C16926B4BCB19F587FC0EE45 /* View */, - BCB905C952E4C6FA79E64FDB /* SBUCreateChannelViewController.swift */, - 61A461C5FB81AA384E1F35D7 /* SBUCreateOpenChannelViewController.swift */, ); name = CreateChannel; sourceTree = ""; }; - 6E93D26FB400A7B92D097F49 /* Feed */ = { + 6E4FC522C38993B9782F1678 /* NotificationChannel */ = { isa = PBXGroup; children = ( - 18C97B8C2E383122135420FF /* SBUFeedNotificationChannelModule.Header.swift */, - C45567BF7012DB8362B74153 /* SBUFeedNotificationChannelModule.List.swift */, - 5665BD2A6C12035F12E8CD4B /* SBUFeedNotificationChannelModule.CategoryFilter.swift */, - 0999DE7B0662BAC39EF6AD45 /* SBUFeedNotificationChannelModule.swift */, + 3FDC5615BA428A9074FB887F /* Chat */, + 4BF377C42DD4B945484C7319 /* Feed */, ); - name = Feed; + name = NotificationChannel; sourceTree = ""; }; - 6ED3F7BB8618D6A623FCE789 /* CreateChannel */ = { + 6E93D26FB400A7B92D097F49 /* Feed */ = { isa = PBXGroup; children = ( ); - name = CreateChannel; + name = Feed; sourceTree = ""; }; - 6FCFEDC2C5B9C1B7EB43F025 /* NotificationSettings */ = { + 6ECEB86299CFBDC7B96E39AA /* NotificationSettings */ = { isa = PBXGroup; children = ( + 814ED80EB9A6368CFE4A81BA /* SBUGroupChannelPushSettingsViewModel.swift */, ); name = NotificationSettings; sourceTree = ""; }; - 70CDA4EF1BF981FC85114A82 /* Configurations */ = { + 7158CEC3DC5B0F8357DC5739 /* Configurations */ = { isa = PBXGroup; children = ( - BF6673DEC6FC0632883AC9C6 /* Debug.xcconfig */, - 3DF7928E904E2DC8895282B1 /* Release.xcconfig */, - 77A9891B766214282D3C8F26 /* Base.xcconfig */, + 85A154C31D8FF89BC65557A4 /* Debug.xcconfig */, + 8BB5C40529776A0939AF5375 /* Release.xcconfig */, + D676E5A38A17D3C64639E029 /* Base.xcconfig */, ); name = Configurations; sourceTree = ""; }; - 713FC5465B9B0E375933543A /* MessageSearch */ = { + 71A695378D189EB76429498A /* MemberList */ = { isa = PBXGroup; children = ( + 917D355593C6B2659412E556 /* SBUMemberListViewController.Deprecated.swift */, ); - name = MessageSearch; + name = MemberList; + sourceTree = ""; + }; + 71AA27DC304DE7F94D8BB9ED /* Common */ = { + isa = PBXGroup; + children = ( + C980753B0473CBA5589BDC33 /* SBUStackView.swift */, + 6B1BBBC01EB2A86A282D1D32 /* SBUAnimation.swift */, + 5E1DAF8A9552C95C996C3670 /* SBUEmptyView.swift */, + 7298991AB0756516527A6707 /* SBUCoverImageView.swift */, + 80C7585034A1D67728C11D3F /* PhotoLibrary */, + 19856622611F351F18CB458E /* SBUPaddingLabel.swift */, + 938DD9A1CD35661207613834 /* SBUCommonItem.swift */, + C0B277F24192630467F0D857 /* SBULayoutableButton.swift */, + DA2A307EBBA9173E70DB9123 /* User */, + EB5D1E1F1C11D1FC6AFEA578 /* SBUNavigationTitleView.swift */, + 3AA1BCEB4A4A2491E09161CD /* SBUNotificationNavigationTitleView.swift */, + F615FB6E4174CA06CC953A46 /* SBUBarButtonItem.swift */, + 473F29F366CD515D71133272 /* SBUActionSheet.swift */, + 0C48A1CDC18F40E062DDECAB /* SBUNotificationEmptyView.swift */, + 66149F4E70539DC44B7BD4B1 /* SBUAlertView.swift */, + BA7F524E1F8057CCB6AFF484 /* Menu */, + EE3C47906960BD725E57D9DE /* SBUUnderLineTextField.swift */, + F661575E17BB7DF743EFC378 /* UserCell */, + C535093052F5B8F06BDFCA62 /* SBUTemplateLabel.swift */, + D02FB12CDD38B92A5AA12A04 /* SBUMarginView.swift */, + DBF01D975582E3BE514B4A61 /* SBUTypingIndicatorBubbleView.swift */, + BBA50179E871D04A1B3E2AFB /* SBUCommonViewControllerSet.swift */, + FEA4105EDA6B17E6E2EF22BD /* SBULoading.swift */, + F71B4039836F4FF4ABBC871E /* SBUCollectionViewFlowLayout.swift */, + ); + name = Common; sourceTree = ""; }; - 729991B4DC4E2C76A16F2181 /* ChatSDK */ = { + 75661BCCD02007F9EF4A8362 /* CellView */ = { isa = PBXGroup; children = ( + 301A75B128C9F918A62AFD14 /* SBUMessageStateView.swift */, + F3F5D7CCC6CB4F2269FA7491 /* SBUMessageProfileView.swift */, + 8C21555DDCF993FD577EACD4 /* SBUUserMessageTextView.swift */, + 219797BDAF59463A06A3DEB4 /* SBUUserNameView.swift */, + 7CC62AD1BFC56809B2A8540C /* SBUMessageWebView.swift */, + A63C19DFE13797A08E427A76 /* SBUMessageDateView.swift */, + BC4DB181EA553D91008580CD /* SBULinkClickableTextView.swift */, + 5E6D1118FBFF4CF371D5DB3D /* SBUOpenChannelMessageWebView.swift */, + 4AED0DB2ED6DF2061E0357C3 /* SBUSelectableStackView.swift */, + 9F5852402071EC8E5A72F3A6 /* SBUNotificationTimelineView.swift */, ); - name = ChatSDK; + name = CellView; sourceTree = ""; }; - 7299F3652B7B64F09B52838B /* MessageCellParams */ = { + 799ADEF3727DA4553370A426 /* CreateChannel */ = { isa = PBXGroup; children = ( ); - name = MessageCellParams; + name = CreateChannel; sourceTree = ""; }; - 74811C3E1071953B7D7B4B86 /* Model */ = { + 7DFC7BF177EA83749024D5DC /* OpenChannel */ = { isa = PBXGroup; children = ( - EA26745EFD07034A5B770365 /* SBUExtendedMessage.swift */, - CA411367206ECF77B7FDC163 /* SBUTypingIndicatorMessage.swift */, - A87B57B5B09DB04D0836F71E /* SBUMention.swift */, - 06FB854674AD775E414E4BB0 /* SBUMessageCache.swift */, - 52F22329ADED4C86ADB592D8 /* SBUUser.swift */, - 01A5C331CDAC1A831A8805ED /* SBUVoiceFileInfo.swift */, - 684C109F9C01AC58C3E241F4 /* SBUTypingIndicatorInfo.swift */, - 41ED8B8595477035024F4F83 /* SBUHighlightMessageInfo.swift */, - FEACB70B14FF0C1CB5C10576 /* SBUForms.swift */, ); - name = Model; + name = OpenChannel; sourceTree = ""; }; - 77A09F971E7DAD08C95ADF4A /* Replies */ = { + 7F1068A751393641635C82BD /* Channel */ = { isa = PBXGroup; children = ( + F8269647E8F1D5D6CDA8BD95 /* ViewModel */, + 4C5B88AE0487114ED5AEE347 /* Reaction */, + 4FB1899C3CA265203961E7E8 /* SBUFeedNotificationChannelViewController.swift */, + 162485D22D77990BE248C176 /* SBUBaseChannelViewController.swift */, + BD1CDF49D1554FD8013246DC /* MessageCell */, + 0FA6711B7E60902B3EE009D3 /* SBUGroupChannelViewController.swift */, + 30F3312D0633F196D0046BA5 /* MessageInput */, + 3A9A22321FA8CFAB1D2934A5 /* CategoryFilterCell */, + 75661BCCD02007F9EF4A8362 /* CellView */, + F6A1B5C1A5A9ED4DC707CED4 /* FileViewer */, + 93EECBF11BEB9B318358EC4E /* SBUBaseChannelViewController.Keyboard.swift */, + 4799119654406D46C918D6C7 /* SBUChatNotificationChannelViewController.swift */, + 91D324A9754ACF16D40A366E /* NewMessageInfo */, + 2D3CE8E5748C88E0CEE6969C /* SBUOpenChannelViewController.swift */, + C817837F1C7EC92D2869BDC6 /* Header */, ); - name = Replies; + name = Channel; sourceTree = ""; }; - 789D31114FC1EC3C0981BA74 /* Replies */ = { + 80C7585034A1D67728C11D3F /* PhotoLibrary */ = { isa = PBXGroup; children = ( - 1504D9F966C26813AB1FDDEB /* MessageView */, - EB4FFDE17C4F86285E7E01F0 /* ViewParams */, + A32BCF06C051973A5020E966 /* SBUPhotoAccess.swift */, + 93B3279889AB5E3FB27C1C85 /* SBUPhotoCollectionViewCell.swift */, + 99EB3F800A89AF02D774D584 /* SBUSelectablePhotoViewController.swift */, ); - name = Replies; + name = PhotoLibrary; sourceTree = ""; }; - 799ADEF3727DA4553370A426 /* CreateChannel */ = { + 8344BDA6F7E4DC33DE76758B /* FileMessageContentView */ = { isa = PBXGroup; children = ( - B5866547E6F669831E320738 /* SBUCreateChannelViewModel.swift */, - FFFA2BF925F033F4362E7F4F /* SBUCreateOpenChannelViewModel.swift */, ); - name = CreateChannel; + name = FileMessageContentView; sourceTree = ""; }; - 79E3DFF801C6ADAF1403E417 /* MessageCellParams */ = { + 83B72687BC1338EF38DB1D17 /* InviteUser */ = { isa = PBXGroup; children = ( + 284A5F5660109A316E7B6429 /* SBUInviteUserModule.List.swift */, + E3D081C78F707505ABDF12F1 /* SBUInviteUserModule.swift */, + C60BCDEA3D7F4CA714EF3FAA /* SBUInviteUserModule.Header.swift */, ); - name = MessageCellParams; + name = InviteUser; sourceTree = ""; }; - 7B5B7719CF8C0BDEC47CAA2A /* Resource */ = { + 83C2DC5EADB75BE6D8BCDCB3 /* GroupChannel */ = { isa = PBXGroup; children = ( - 0DB0082FA5B3FBFAD02844AD /* Assets.xcassets */, ); - name = Resource; + name = GroupChannel; sourceTree = ""; }; - 7D3F7EDF0F2A60BA29A33A31 /* Channel */ = { + 841F80E8FB756BBB1DEDBAF3 /* ChannelList */ = { isa = PBXGroup; children = ( - D7CB9551B4F67723500A0B2A /* ViewModel */, - 1CCC6FA90594FC01AD2F604A /* Reaction */, - FB7946A349F451E248C2A9A7 /* MessageCell */, - A3D316D516EBD238924A0233 /* MessageInput */, - FBD012E63D93B3A5E053125E /* CategoryFilterCell */, - FA49F81717A899CE6A96D179 /* CellView */, - E0E7CDC7C99B3E8DBC1199E9 /* FileViewer */, - 3EB344D925BDBAFCE94D1EF6 /* NewMessageInfo */, - C29FD6D9BAE4301BF751A581 /* Header */, + 8F9972F1D6B42985FC584593 /* SBUBaseChannelListModule.swift */, + FF22B678032CE9EB9FF09986 /* GroupChannel */, + 029D5877E78FA683761B3BAD /* SBUBaseChannelListModule.Header.swift */, + 276B939905BDAB221113B534 /* SBUBaseChannelListModule.List.swift */, + 61EEF2E2B64EBD1EE1A8BE7E /* OpenChannel */, ); - name = Channel; + name = ChannelList; sourceTree = ""; }; - 7DFC7BF177EA83749024D5DC /* OpenChannel */ = { + 86A1193C6F0E9413FA50BF93 /* Cell */ = { isa = PBXGroup; children = ( - B18231524A58DC92E01DACDF /* SBUOpenChannelSettingsModule.List.swift */, - FB5D71D53BEDE638B94809E7 /* SBUOpenChannelSettingsModule.swift */, - 1B146BEF233DE437C22083BC /* SBUOpenChannelSettingsModule.Header.swift */, + 3F367C0A57424DBCC5D34FD1 /* SBUChannelPushSettingCell.swift */, ); - name = OpenChannel; + name = Cell; sourceTree = ""; }; - 815796D79C237C14AEA6AD62 /* ChannelSettings */ = { + 872478A1E06EE8015E93720D /* ChatSDK */ = { isa = PBXGroup; children = ( + B07C348322ACB048E9EAFBA3 /* BaseMessage+SBUIKit.swift */, + F2CD0E3414CAEBB89FC2ABEE /* MultipleFilesMessage+SBUIKit.swift */, ); - name = ChannelSettings; + name = ChatSDK; sourceTree = ""; }; - 8344BDA6F7E4DC33DE76758B /* FileMessageContentView */ = { + 88750C28B2E4DEE506773C83 /* NotificationChannel */ = { isa = PBXGroup; children = ( - AD3DBAD22A6750CDEBF4AB6C /* SBUBaseFileContentView.swift */, - 15A1BF567A75F9C0A0BF6A27 /* SBUOpenChannelCommonContentView.swift */, - D434EAE8595B3F2004D0EEE8 /* SBUVoiceContentView.swift */, - EC88D341AE4A046C78CF58AA /* SBUImageContentView.swift */, - 7B11F0294C06D1D458E0AD16 /* SBUCommonContentView.swift */, - 08D59E1AFCFE79141DBC9E2D /* SBUOpenChannelImageContentView.swift */, + 9BBA7D26B15B96DE79CCD255 /* SBUNotificationCell.swift */, + 7923DE70363AB4A9441D1461 /* SBUFeedNotificationCell.swift */, + 11E76E9549A061E3F7126682 /* SBUChatNotificationCell.swift */, ); - name = FileMessageContentView; + name = NotificationChannel; sourceTree = ""; }; - 83C2DC5EADB75BE6D8BCDCB3 /* GroupChannel */ = { + 88DE862506930523FEE941E4 /* Moderations */ = { isa = PBXGroup; children = ( - 59F6653A6A770517CFA01730 /* SBUGroupChannelModule.Input.swift */, - 47C14932CEF8B219FC2CDF14 /* SBUGroupChannelModule.List.swift */, - 56AF15637C550EC6AEEFF0EA /* SBUGroupChannelModule.Header.swift */, - C51F6EDDC7A47F552B2797F1 /* SBUGroupChannelModule.swift */, + DB621AEC109762ED1031855F /* SBUModerationsModule.List.swift */, + 5DE08D0894A12FE3F1772063 /* SBUModerationsModule.swift */, + 6C2CAF5D8DDD07ADB0F5972D /* SBUModerationsModule.Header.swift */, ); - name = GroupChannel; + name = Moderations; sourceTree = ""; }; - 8475E680A2B78DCE61DC641D /* MessageThread */ = { + 8933E8773E47B0B2A44E4C15 /* InviteUser */ = { isa = PBXGroup; children = ( ); - name = MessageThread; + name = InviteUser; sourceTree = ""; }; - 86A0ADBBF7DA7E2CFC241BD4 /* ViewParams */ = { + 89A9FAE46000A17EE821DC44 /* ViewModel */ = { isa = PBXGroup; children = ( ); - name = ViewParams; + name = ViewModel; sourceTree = ""; }; - 87DAC9E86B1F005A4E354A8E /* NotificationSettings */ = { + 89FA74368878AD5D9F3BF908 /* VoiceNote */ = { isa = PBXGroup; children = ( - D2C109A44FC520ED2685C3CF /* Cell */, ); - name = NotificationSettings; + name = VoiceNote; sourceTree = ""; }; - 88D65687147C4EE8547C60EA /* UserCell */ = { + 8A79F328E236302799724016 /* Moderations */ = { isa = PBXGroup; children = ( + 11EE754A973762A84AEC87D0 /* SBUModerationsViewModel.Deprecated.swift */, + F4DE82857890FB3E573EB7E0 /* SBUModerationsViewController.Deprecated.swift */, ); - name = UserCell; + name = Moderations; sourceTree = ""; }; - 8933E8773E47B0B2A44E4C15 /* InviteUser */ = { + 8B8E09764128743C7F20C886 /* Moderations */ = { isa = PBXGroup; children = ( - 0B61EFD561C0134F1FCD49CA /* SBUInviteUserModule.List.swift */, - 5C15F5F88779D445378B3711 /* SBUInviteUserModule.swift */, - B8B3D8C76B5E6AC87F41C832 /* SBUInviteUserModule.Header.swift */, ); - name = InviteUser; + name = Moderations; sourceTree = ""; }; - 89A9FAE46000A17EE821DC44 /* ViewModel */ = { + 8C4C8C4555D9CCD45E5B7205 /* ChannelList */ = { isa = PBXGroup; children = ( - 8AE109826CB70D9DA5A49EB7 /* SBUUserMessageTextViewModel.swift */, - 93FC7EB3725A6694B5FA8A3F /* SBUMessageWebViewModel.swift */, ); - name = ViewModel; + name = ChannelList; sourceTree = ""; }; - 89FA74368878AD5D9F3BF908 /* VoiceNote */ = { + 9031A9C33277F65353DA934F /* Model */ = { isa = PBXGroup; children = ( - CE6B771CBCF2F3B045ACA90E /* SBUVoiceMessageInputView.swift */, + F464994CC5350FB3EE23747E /* SBUExtendedMessage.swift */, + 03FA91D49CCDDACD36563AC9 /* SBUTypingIndicatorMessage.swift */, + 6BF77280E66C4E3E350010FD /* SBUMention.swift */, + E5E5D3C8FD93A7395607E4AD /* SBUMessageCache.swift */, + 2E228BBEA4820BD54A37A00C /* SBUUser.swift */, + 6969B20EB381CEB10FEF0655 /* SBUVoiceFileInfo.swift */, + 038753485A269AC82E1A4CC4 /* SBUTypingIndicatorInfo.swift */, + ADB3196EA9B8F941C8803F49 /* SBUHighlightMessageInfo.swift */, + 7AB199C2ABA57A6BDBB487D3 /* SBUForms.swift */, + E91901B580726CCC24F5672B /* SBUScrollOptions.swift */, ); - name = VoiceNote; + name = Model; sourceTree = ""; }; - 8B8E09764128743C7F20C886 /* Moderations */ = { + 90D09A910E73861DF97A6EDB /* OpenChannel */ = { isa = PBXGroup; children = ( - E75F5859707FA796BE994065 /* SBUModerationsViewModel.Deprecated.swift */, - 978A249AA68269C332C17F5B /* SBUModerationsViewController.Deprecated.swift */, + 4FD04EE69C06332791D32A34 /* SBUOpenChannelModule.List.swift */, + 589C45ABE10B55119CFAD24E /* SBUOpenChannelModule.Media.swift */, + 03F45E76F3A34B1E17A7F19A /* SBUOpenChannelModule.Input.swift */, + 0083EDC286AA7C79546C2D3C /* SBUOpenChannelModule.Header.swift */, + 66C0F38EFA2A8FF69D5D09AF /* SBUOpenChannelModule.swift */, ); - name = Moderations; + name = OpenChannel; sourceTree = ""; }; - 8C4C8C4555D9CCD45E5B7205 /* ChannelList */ = { + 91B71E7422DD4D4A1A3D9B51 /* MessageSearch */ = { isa = PBXGroup; children = ( - 18AAE5721F34A45127DB10F3 /* SBUGroupChannelListViewModel.swift */, - 50321396A14B856815C79764 /* SBUOpenChannelListViewModel.swift */, - D299D6F26F16672BA56E66C9 /* SBUBaseChannelListViewModel.swift */, + E860A695667E0075D5E06DEE /* SBUMessageSearchModule.Header.swift */, + 75768457ACC9A7F40ABDC652 /* SBUMessageSearchModule.List.swift */, + F55F9A300250DB49089A018A /* SBUMessageSearchModule.swift */, ); - name = ChannelList; + name = MessageSearch; sourceTree = ""; }; - 8C8961FFA839AB239AD0DDB9 /* Replies */ = { + 91D324A9754ACF16D40A366E /* NewMessageInfo */ = { isa = PBXGroup; children = ( + 86B0C475D10053B32349412F /* SBUNewNotificationInfo.swift */, + E773FD2840237A93FA2EC097 /* SBUNewMessageInfo.swift */, ); - name = Replies; + name = NewMessageInfo; sourceTree = ""; }; - 91CA4E3E4708ED8526129C81 /* Enums */ = { + 951AE42BB93583104959515D /* UserList */ = { isa = PBXGroup; children = ( - B66CED1D394F7389991A15C4 /* VoiceMessageStatus.swift */, - 30CA852116CE976496836A3C /* SBUIconSetType.swift */, - DE27762C63CCA4E0B765A0AD /* SBUEnums.swift */, + 677C4EF67F982A44CE23E60A /* SBUUserListModule.swift */, + DA4D97ABE2450DA4CF86B7B1 /* SBUUserListModule.List.swift */, + B39663B81820E40B46F708D7 /* SBUUserListModule.Header.swift */, ); - name = Enums; + name = UserList; sourceTree = ""; }; - 9338D9B0AEF0BEDA55FB6DD1 /* Configuration */ = { + 952563FFB2924AAF53276EA9 /* UserList */ = { isa = PBXGroup; children = ( - 081172AC404927A0CE591CA0 /* MessageCell */, - EA28932922AD1E56327AAC63 /* Replies */, - 0BD9F5A50AB5ED4D3C3D1EF8 /* SBUConfigManager.swift */, - 3857D1482996751B2677E50D /* SBUConfig.OpenChannel.swift */, - 1470FEF539F6ACCCCB505D0A /* SBUConfig.swift */, - 6937BB21A8123538BC01ED46 /* VoiceMessage */, - 9F961B1410AF1C3374486D6D /* SBUConfig.Base.swift */, - AB2D688355DD2B50C12552D6 /* SBUConfig.GroupChannel.swift */, - 34D834CCADA1B775CF6BC69F /* Mention */, - A3509DD8A401350938E78702 /* SBUConfig.Common.swift */, - 32041E00DCBAD2EE6083A5CC /* SBUDashboardConfig.swift */, - 4C3BC711769BD333499739CE /* SBUConfig.CodingKeys.swift */, + 7883481FDE9ABF715E4E25C1 /* SBUUserListViewController.swift */, ); - name = Configuration; + name = UserList; sourceTree = ""; }; 97E85D45940EF856E1BA0429 /* Cell */ = { isa = PBXGroup; children = ( - 41E5AF0572EC94815A5D01E1 /* SBUMessageSearchResultCell.swift */, ); name = Cell; sourceTree = ""; }; - 99331DE990AD937B77EFDEDC /* OpenChannel */ = { + 984C765D96F89BF20D8F1252 /* ScrollPostion */ = { isa = PBXGroup; children = ( - FB3687F2C225811959FCA4D4 /* SBUOpenChannelFileMessageCell.swift */, - E30AD3FF06247E600FB5F5BC /* SBUOpenChannelAdminMessageCell.swift */, - 7113C590736C8643127DBFB8 /* SBUOpenChannelContentBaseMessageCell.swift */, - 7B637D27DA9EDA71E8EBC0A9 /* SBUOpenChannelUserMessageCell.swift */, - DBC95A834BD5D53718533C5C /* SBUOpenChannelUnknownMessageCell.swift */, - 3F02FECB5DD3547EB858B0DE /* SBUOpenChannelBaseMessageCell.swift */, + 4240C69BF382E9736D6736A2 /* SBUScrollPostionConfiguration.swift */, ); - name = OpenChannel; + name = ScrollPostion; sourceTree = ""; }; - 9998582E6F814FFAED4B8777 /* MessageCell */ = { + 99331DE990AD937B77EFDEDC /* OpenChannel */ = { isa = PBXGroup; children = ( ); - name = MessageCell; + name = OpenChannel; sourceTree = ""; }; 9C037DD3280432DB00059696 /* QuickStart */ = { @@ -2099,6 +2178,7 @@ 9C037DE2280432DB00059696 /* AppDelegate.swift */, 4992616D2A9D89BE00B07828 /* MainViews */, A93AE84E2A383CAA00AFFF9C /* Customize */, + 2E9850E52B1EEC0B00EA4F39 /* ViewModel */, 9C037DE4280432DB00059696 /* Base */, ); path = QuickStart; @@ -2217,7 +2297,7 @@ 9C3EBE2128091D2A00B5366B /* NotificationService */, 9C777D58241B9022006FFE25 /* Products */, A3BC29C7BEE55436EBCAD26A /* Frameworks */, - 9D6CC0D1462B77F00AFAC399 /* Sources */, + 6615F09754124EC2AD0EC4D6 /* Sources */, ); sourceTree = ""; }; @@ -2239,193 +2319,85 @@ name = NotificationChannel; sourceTree = ""; }; - 9C8DFFA733184D4BA39F7AF3 /* GroupChannel */ = { - isa = PBXGroup; - children = ( - ); - name = GroupChannel; - sourceTree = ""; - }; - 9C9EB118A812BD199DA7EFD4 /* Channel */ = { - isa = PBXGroup; - children = ( - ); - name = Channel; - sourceTree = ""; - }; 9CEF226B11489584A80B282D /* FileViewer */ = { isa = PBXGroup; children = ( - 06B49E4A9520F322D6BE8758 /* SBUFileViewController.swift */, - ); - name = FileViewer; - sourceTree = ""; - }; - 9D6CC0D1462B77F00AFAC399 /* Sources */ = { - isa = PBXGroup; - children = ( - 70CDA4EF1BF981FC85114A82 /* Configurations */, - 1FBA3C666CCD915FF836B407 /* ViewModel */, - 9338D9B0AEF0BEDA55FB6DD1 /* Configuration */, - C0AA9EA8C6154AB8918546BA /* Extension */, - 54BEABE6CCC74A5064D16D6D /* Util */, - 5BBC0B1C7098106FF1350683 /* SendbirdUI.swift */, - 7E32CAE02B6C387C3E2A1799 /* SBUAvailable.swift */, - 5A543BE3A146EC66A51A7EAB /* Module */, - 91CA4E3E4708ED8526129C81 /* Enums */, - A8DE3C63C08E828C1AB009DA /* CustomSyntaxTest */, - A7AB625B00A0C6CE636DC93E /* Protocol */, - 0F4BC03B4AF912FE472B6CA3 /* Manager */, - C8817BD5A99D66B4974A7DBB /* SBUGlobalCustomParams.swift */, - 4CDA99FCEBF709F6E124A554 /* Constant */, - 33D5A25F431A5A22DED0D97A /* Theme */, - 74811C3E1071953B7D7B4B86 /* Model */, - C5C5ABB479B5813535C5E15F /* View */, - B3D3E56CEB7C0D902C57E610 /* SendbirdUIKit.h */, - 0CA240761E41522704593600 /* SBUGlobals.swift */, - 7B5B7719CF8C0BDEC47CAA2A /* Resource */, - 5127FC983545F3BDF72EFD4B /* Deprecated */, - ); - name = Sources; - sourceTree = ""; - }; - 9EE9B0EDCDB1B41C9B61ABBF /* Channel */ = { - isa = PBXGroup; - children = ( - EE6EACBD7273E495C377AE2E /* MessageCell */, - 78681C8D5C6D98166A705445 /* SBUBaseChannelViewController.Deprecated.swift */, - E7D16635805485B905F7C58B /* SBUGroupChannelViewController.Unavailable.swift */, - 670C989FDB28B344823A7B70 /* SBUOpenChannelViewController.Deprecated.swift */, - 27E19CAAB3B7E3EF9BD7CEEF /* SBUOpenChannelViewController.Unavailable.swift */, - 361858E6AF6714A5C7D5652D /* SBUGroupChannelViewController.Deprecated.swift */, - 29EF0D174B9D028B3B34BFC8 /* SBUBaseChannelViewController.Unavailable.swift */, - ); - name = Channel; - sourceTree = ""; - }; - 9FA26B2046EC8F3E51AA39EC /* OpenChannel */ = { - isa = PBXGroup; - children = ( - ); - name = OpenChannel; - sourceTree = ""; - }; - A287E64BEA2AB3A97ED64563 /* ChannelSettings */ = { - isa = PBXGroup; - children = ( - AF9A629F2AD384C3E17475A2 /* ChannelSettingItem */, - 9C8DFFA733184D4BA39F7AF3 /* GroupChannel */, - CD9530048797BAC5171FEB9B /* OpenChannel */, - ); - name = ChannelSettings; - sourceTree = ""; - }; - A2E9D1A14F2B4BF85E0A7B13 /* ChannelList */ = { - isa = PBXGroup; - children = ( - 6A990C9378BD2577B3B22E02 /* ChannelCell */, - EF903E4A4E1F698BF871B285 /* SBUBaseChannelListViewController.swift */, - DF15ACE03A81767F4A871C53 /* SBUGroupChannelListViewController.swift */, - 0B5FAE795A92DCD1D99CEDD0 /* SBUOpenChannelListViewController.swift */, - ); - name = ChannelList; - sourceTree = ""; - }; - A2F72A79BFDB888C133FCE33 /* Chat */ = { - isa = PBXGroup; - children = ( - ); - name = Chat; - sourceTree = ""; - }; - A3BC29C7BEE55436EBCAD26A /* Frameworks */ = { - isa = PBXGroup; - children = ( - 9C5DCD4D242B0C7E00C41106 /* libicucore.tbd */, - 9C5DCD48242AFA7C00C41106 /* UserNotifications.framework */, ); - name = Frameworks; + name = FileViewer; sourceTree = ""; }; - A3D316D516EBD238924A0233 /* MessageInput */ = { + 9D3F2183A2B76C913B01B0BD /* MessageCell */ = { isa = PBXGroup; children = ( - BD66DC32C934EE18C9E35436 /* ViewParams */, + DDDEFCF7B45AE1C0B39146DA /* MessageCellParams */, + DDBB242CAD58860A867454C6 /* Replies */, + 566FE9273D1C22154E4D2504 /* SBUContentBaseMessageCell.Deprecated.swift */, ); - name = MessageInput; + name = MessageCell; sourceTree = ""; }; - A4E37C6A29D50BC5F645F0FF /* MultipleFilesMessage */ = { + 9EE9B0EDCDB1B41C9B61ABBF /* Channel */ = { isa = PBXGroup; children = ( + EE6EACBD7273E495C377AE2E /* MessageCell */, ); - name = MultipleFilesMessage; + name = Channel; sourceTree = ""; }; - A545AA2CCF6F26FC4516D1AC /* NotificationChannel */ = { + 9F248F55472A2F0CAC122E23 /* CreateChannel */ = { isa = PBXGroup; children = ( - 1505C3F14C296BAF6D545A21 /* SBUNotificationCell.swift */, - 4D693BE951DE318F82F66966 /* SBUFeedNotificationCell.swift */, - 21026E3743ED39F89C105D5E /* SBUChatNotificationCell.swift */, + 0A7E7C2E185AB83BBC815D34 /* SBUCreateChannelViewModel.swift */, + 7D8B5FF9C4444A8AE810EEDC /* SBUCreateOpenChannelViewModel.swift */, ); - name = NotificationChannel; + name = CreateChannel; sourceTree = ""; }; - A602597E456F16A7026A871E /* OpenChannel */ = { + A2E9D1A14F2B4BF85E0A7B13 /* ChannelList */ = { isa = PBXGroup; children = ( - E719EFFE37E59841486B30A7 /* SBUOpenChannelListModule.swift */, - DB5BE6AE27650773872B0E94 /* SBUOpenChannelListModule.List.swift */, - CFC946F2F09B3D400D646658 /* SBUOpenChannelListModule.Header.swift */, + 6A990C9378BD2577B3B22E02 /* ChannelCell */, ); - name = OpenChannel; + name = ChannelList; sourceTree = ""; }; - A73CFA674ADD165B676E60CC /* Common */ = { + A3BC29C7BEE55436EBCAD26A /* Frameworks */ = { isa = PBXGroup; children = ( + 9C5DCD4D242B0C7E00C41106 /* libicucore.tbd */, + 9C5DCD48242AFA7C00C41106 /* UserNotifications.framework */, ); - name = Common; + name = Frameworks; sourceTree = ""; }; - A773BA3BF7D1B14AD32DFE03 /* PhotoLibrary */ = { + A42DA6E0F10D42FF8667C1D2 /* Mention */ = { isa = PBXGroup; children = ( + B485D885781EECFF17EF2A3E /* SBUMentionConfiguration.swift */, + BC2202162266378ED262444D /* SBUUserMentionConfiguration.swift */, ); - name = PhotoLibrary; + name = Mention; sourceTree = ""; }; - A7AB625B00A0C6CE636DC93E /* Protocol */ = { + A545AA2CCF6F26FC4516D1AC /* NotificationChannel */ = { isa = PBXGroup; children = ( - A75E24DB12CABF915A7EC4AF /* CommonProtocols.swift */, ); - name = Protocol; + name = NotificationChannel; sourceTree = ""; }; - A8760F52DE90AD1FCE16E783 /* Reaction */ = { + A602597E456F16A7026A871E /* OpenChannel */ = { isa = PBXGroup; children = ( - 0517E1A3C7C86C3A29C0D9A8 /* SBUParentMessageInfoReactionView.swift */, - F67B0CEFB11FA640BFD027CA /* SBUReactionCollectionViewCell.swift */, - 7B392303476483A559471DC6 /* SBUReactionsViewController.swift */, - D403DBAFC5CBA2896AA3451B /* SBUMessageReactionView.swift */, - D5A85B7971D6B30DF8C3A0F5 /* SBUReactionCollectionViewCell.xib */, - EDECD971E137033BAAB0C3D9 /* SBUEmojiListViewController.swift */, ); - name = Reaction; + name = OpenChannel; sourceTree = ""; }; - A8DE3C63C08E828C1AB009DA /* CustomSyntaxTest */ = { + A8760F52DE90AD1FCE16E783 /* Reaction */ = { isa = PBXGroup; children = ( - BBF47B26CDFC022EF6B8911E /* MessageTemplateTestViewController.swift */, - 3FAAF41FF3804EA099F3951C /* MessageTemplateRenderer.Image.swift */, - 5385C04B9A349FCFDFFA4B92 /* MessageTemplateParser.swift */, - FA6B6828F36090C61A8898F3 /* MessageTemplateRenderer.swift */, ); - name = CustomSyntaxTest; + name = Reaction; sourceTree = ""; }; A93AE84E2A383CAA00AFFF9C /* Customize */ = { @@ -2451,6 +2423,7 @@ A93AE8512A383CAA00AFFF9C /* Features */ = { isa = PBXGroup; children = ( + 2E9850E02B1EEB8600EA4F39 /* AdditionalFeaturesManager.swift */, A93AE8522A383CAA00AFFF9C /* ChannelListCustomManager.swift */, A93AE8532A383CAA00AFFF9C /* InviteUserCustomManager.swift */, A93AE8542A383CAA00AFFF9C /* MemberListCustomManager.swift */, @@ -2482,6 +2455,7 @@ A93AE8722A383CAA00AFFF9C /* Common */, A93AE8752A383CAA00AFFF9C /* MemberList */, A93AE8782A383CAA00AFFF9C /* CreateChannel */, + 2E9850E82B1EEC3000EA4F39 /* Others */, ); path = View; sourceTree = ""; @@ -2522,6 +2496,7 @@ A93AE86E2A383CAA00AFFF9C /* ChannelVC_CustomList.swift */, A93AE8682A383CAA00AFFF9C /* ChannelVC_CustomInput.swift */, A93AE86A2A383CAA00AFFF9C /* ChannelVC_Overriding.swift */, + 2E9850E22B1EEBA900EA4F39 /* ChannelVC_AdditionalFeatures.swift */, A93AE86B2A383CAA00AFFF9C /* SubView */, A93AE86F2A383CAA00AFFF9C /* ChannelVC_MessageParam.swift */, ); @@ -2550,6 +2525,7 @@ children = ( A93AE8732A383CAA00AFFF9C /* CustomUserCell.swift */, A93AE8742A383CAA00AFFF9C /* CustomEmptyView.swift */, + 2E9850EB2B1EEC4B00EA4F39 /* PaddedLabel.swift */, ); path = Common; sourceTree = ""; @@ -2608,87 +2584,107 @@ path = Channel; sourceTree = ""; }; - AC03D85DE11C69AB2B2B4A49 /* MessageSearch */ = { + A974D49F64431037CFA2611B /* MessageCellParams */ = { isa = PBXGroup; children = ( - 50F6D11A6B4CBA1DFD1102DB /* SBUMessageSearchViewModel.swift */, + 388412229BC579FF1452E57D /* SBUMultipleFilesMessageCellParams.swift */, + 0F55AE7C708C4CC5B6545241 /* SBUTypingMessageCellParams.swift */, + C16BB5072333A8834550EBEF /* SBUUserMessageCellParams.swift */, + 07963B220121399FF06E8203 /* SBUUnknownMessageCellParams.swift */, + 0A4829E72995CBA2D86464CA /* SBUFeedNotificationCellParams.swift */, + 8CE04C0908F4016401315EDF /* SBUAdminMessageCellParams.swift */, + 8454D32C99368255D2B235F7 /* SBUBaseMessageCellParams.swift */, + 87FA488885FB02557D293F7A /* SBUFileMessageCellParams.swift */, ); - name = MessageSearch; + name = MessageCellParams; sourceTree = ""; }; - AD91005C439749E94CB142AE /* RegisterOperator */ = { + AA923B3DE18BE2662B406248 /* GroupChannel */ = { isa = PBXGroup; children = ( + A7F080FA1D6894C3ECEEDE3D /* SBUGroupChannelSettingsModule.swift */, + 889046C45305F5C0EEC67027 /* SBUGroupChannelSettingsModule.Header.swift */, + BB621AB5BD391B3A8B0F4A62 /* SBUGroupChannelSettingsModule.List.swift */, ); - name = RegisterOperator; + name = GroupChannel; + sourceTree = ""; + }; + AC03D85DE11C69AB2B2B4A49 /* MessageSearch */ = { + isa = PBXGroup; + children = ( + ); + name = MessageSearch; sourceTree = ""; }; ADA93323E28E0708D7794C81 /* RegisterOperator */ = { isa = PBXGroup; children = ( - A64F7A1E3A39A65A300C1D73 /* SBURegisterOperatorModule.List.swift */, - 182DA36A224261871782117B /* SBURegisterOperatorModule.Header.swift */, - 7393553FC42515C251EA370D /* SBURegisterOperatorModule.swift */, ); name = RegisterOperator; sourceTree = ""; }; - AF789A09B6AA419B50E99220 /* Moderations */ = { + ADB9E0427E915B44AE7D8FE8 /* View */ = { isa = PBXGroup; children = ( + EC076A17211811E87F2F1DE4 /* SBUCreateChannelTypeSelector.swift */, ); - name = Moderations; + name = View; sourceTree = ""; }; - AF9A629F2AD384C3E17475A2 /* ChannelSettingItem */ = { + AE03AF272F0921F246AB57CE /* OpenChannel */ = { isa = PBXGroup; children = ( + C75BF25A47392C7A51D4735F /* SBUOpenChannelFileMessageCell.swift */, + 969CC8582C2EFD870EB3BAAA /* SBUOpenChannelAdminMessageCell.swift */, + 6A8B6FD6A03AF2AEB93537D6 /* SBUOpenChannelContentBaseMessageCell.swift */, + 8E266F21A4EF0F1106EE68D9 /* SBUOpenChannelUserMessageCell.swift */, + BC6A2C261DAE207080F8196E /* SBUOpenChannelUnknownMessageCell.swift */, + 0E71F6D29899DEAE27E3D78E /* SBUOpenChannelBaseMessageCell.swift */, ); - name = ChannelSettingItem; + name = OpenChannel; sourceTree = ""; }; AFA41F36BF444D2801DF2670 /* Header */ = { isa = PBXGroup; children = ( - 8CA2C69D5DB36578E686EE62 /* SBUChannelInfoHeaderView.swift */, - A85D6EF71647578C05F32B2A /* SBUChannelTitleView.swift */, ); name = Header; sourceTree = ""; }; - B136EA7D06BB9EDD23C0D9D7 /* FileMessageContentView */ = { + AFF3889380A9DBC1DFE6EEE4 /* ViewParams */ = { isa = PBXGroup; children = ( + C3A00732F65C3DEB3B6E0EF1 /* SBUQuoteMessageInputViewParams.swift */, ); - name = FileMessageContentView; + name = ViewParams; sourceTree = ""; }; - B16AB2441F73497A6E4E2895 /* Channel */ = { + B0D9D0DBE08894EEE3E5F91B /* ViewParams */ = { isa = PBXGroup; children = ( - 0C15D6A43EC40183301A3E06 /* MessageCell */, + 4A860C2449C175A5719F0C35 /* SBUFormViewParams.swift */, ); - name = Channel; + name = ViewParams; sourceTree = ""; }; B197A6D67B3BB1949D124543 /* CacheManager */ = { isa = PBXGroup; children = ( - 537F9C5EF70A6ECD6FFB0A31 /* SBUCacheManager.Config.swift */, - 547388CF310AB7037EC60556 /* SBUCacheManager.Version.swift */, - 3EF1D7CA370CC6582649260E /* SBUCacheManager.File.swift */, - 71E4850469664F763AD51465 /* SBUCacheManager.Template.swift */, - F0ADCDCA8A5D03883919A5D3 /* SBUCacheManager.Image.swift */, - EC0985381EA130D3E02F4703 /* SBUCacheManager.swift */, - D056A68EFB362E4FB9660E08 /* SBUCacheManager.NotificationSetting.swift */, ); name = CacheManager; sourceTree = ""; }; + B316B7C368CDA19112383CB7 /* ViewParams */ = { + isa = PBXGroup; + children = ( + B4A59CF9B4CC83B24A11E5C6 /* SBUSuggestedReplyViewParams.swift */, + ); + name = ViewParams; + sourceTree = ""; + }; B3982CD55B1BCE1C3A05CA6A /* Cell */ = { isa = PBXGroup; children = ( - 211D12FFC9AEE6FD321FB373 /* SBUChannelPushSettingCell.swift */, ); name = Cell; sourceTree = ""; @@ -2702,42 +2698,73 @@ name = Replies; sourceTree = ""; }; - B73244FFB79549DEAC059107 /* UserList */ = { - isa = PBXGroup; - children = ( - ); - name = UserList; - sourceTree = ""; - }; - B7E437F8F19FEB89C873EB54 /* User */ = { - isa = PBXGroup; - children = ( - ); - name = User; - sourceTree = ""; - }; B8EE4E81D8775BDBDA8BAB7B /* Channel */ = { isa = PBXGroup; children = ( 89A9FAE46000A17EE821DC44 /* ViewModel */, A8760F52DE90AD1FCE16E783 /* Reaction */, - D535229000405CDA915CF9C4 /* SBUFeedNotificationChannelViewController.swift */, - 41E3EBDCF83ECBA10EEFCEB0 /* SBUBaseChannelViewController.swift */, 0C561ECC86464700F6219D23 /* MessageCell */, - 3DADF6EEDBE000661C340E19 /* SBUGroupChannelViewController.swift */, 38BE0E03F7148B10567ADD6E /* MessageInput */, CA316B8E03D1598A9BD27C51 /* CategoryFilterCell */, F8211B1B01EA2C16D101612B /* CellView */, 9CEF226B11489584A80B282D /* FileViewer */, - 8ED807FBE8B96DE6C538BC86 /* SBUBaseChannelViewController.Keyboard.swift */, - ABBF7BEBCB4E4F5040067661 /* SBUChatNotificationChannelViewController.swift */, 624B1EF0923C58223B1185A6 /* NewMessageInfo */, - 0388CE6D43AEE7C3433C6FCF /* SBUOpenChannelViewController.swift */, AFA41F36BF444D2801DF2670 /* Header */, ); name = Channel; sourceTree = ""; }; + BA3EE9B5D31DAFF7119565D5 /* Extension */ = { + isa = PBXGroup; + children = ( + E486DCAF8F72570FF6C21797 /* UIStackView.SBUIKit.swift */, + C84079BAC7750BC633639357 /* URL+SBUKit.swift */, + 5653454C4E7042EF849C077C /* Array+SBUIKit.swift */, + D51CDE6D25EF8DE20CFD1F50 /* UIColor+SBUIKit.swift */, + EDFDC1AC992B8D533DD68169 /* Formatter+SBUIKit.swift */, + 3C31F4A9CE1F7741E458FC26 /* UIImage+SBUIKit.swift */, + 1DA4DBD924DDD2375AE39D45 /* NSLayoutConstraint+SBUIKit.swift */, + C781E108B22597D1B9A7F8F8 /* UIButton+SBUIKit.swift */, + 65E152807A84A65A93E961DD /* UINavigationController+SBUIKit.swift */, + 872478A1E06EE8015E93720D /* ChatSDK */, + 6EFF4C9950DF91E793A2EBF2 /* String+SBUIKit.swift */, + FCBE846A3431A5D716B4EFFA /* CGSize+SBUIKit.swift */, + A058EA64703DD199986BDE45 /* Float+SBUKit.swift */, + EF8F57128157A767AFA6E322 /* Data+SBUIKit.swift */, + F9CF1ED3054A51749E9EE435 /* UIViewController+SBUIKit.swift */, + 9A4A196367C558B41306B331 /* Date+SBUIKit.swift */, + E31D08D9C7403E290D1B1D55 /* StringProtocol+SBUIKit.swift */, + B7B584800DBE4554AF6C8FDA /* UIApplication+SBUIKit.swift */, + 8890847DD4961E793CFB92AA /* UIView+SBUIKit.swift */, + 02C1A7BF20352FA6BB90C899 /* Sequence+SBUIKit.swift */, + C90909661ED3AECAEF743954 /* UIImageView+SBUIKit.swift */, + 3B4835F84976905F77DB34D9 /* NSObject+SBUIKit.swift */, + 974A8D57B1D361C2033AC176 /* UITextField+SBUIKit.swift */, + ); + name = Extension; + sourceTree = ""; + }; + BA7AE0BEB806B626E2A220A0 /* Views */ = { + isa = PBXGroup; + children = ( + C6852691ED05ABADE42F1E2B /* SBUFormView.swift */, + 1098A4787B2E2A6A75CCA323 /* SBUFormFieldView.swift */, + ); + name = Views; + sourceTree = ""; + }; + BA7F524E1F8057CCB6AFF484 /* Menu */ = { + isa = PBXGroup; + children = ( + 9CF39537E2D18D0A6A1B2D49 /* SBUMenuCell.xib */, + C1F89183FD2710F17F339E1C /* SBUMenuSheetViewController.swift */, + FDFC590A799C7174BCE2F22E /* SBUMenuCell.swift */, + E8B47CAEC62803515F9ECA08 /* SBUMenuView.swift */, + A764614CBE0D25AD44CA6F1D /* SBUBottomSheetController.swift */, + ); + name = Menu; + sourceTree = ""; + }; BC6315E4C643D8DFE9BB87F5 /* SuggestedReply */ = { isa = PBXGroup; children = ( @@ -2747,19 +2774,73 @@ name = SuggestedReply; sourceTree = ""; }; - BD66DC32C934EE18C9E35436 /* ViewParams */ = { + BD1CDF49D1554FD8013246DC /* MessageCell */ = { isa = PBXGroup; children = ( + A974D49F64431037CFA2611B /* MessageCellParams */, + 91D6CE35075BE41D91676260 /* SBUTypingIndicatorMessageCell.swift */, + 3DD5F2D89D26459C4E4EA27A /* Forms */, + 4C9B3E6A8F8158E7F71FE9B0 /* FileMessageContentView */, + 3D83D5862BFAD0E70C35FBE6 /* SuggestedReply */, + 88750C28B2E4DEE506773C83 /* NotificationChannel */, + 13748E25D24A32398E759715 /* Replies */, + BED30D6FFF96B91F72F07D97 /* MultipleFilesMessage */, + CD8DC66BE78A39DF9980D1D9 /* SBUBaseMessageCell.swift */, + AE03AF272F0921F246AB57CE /* OpenChannel */, + 32ECE006C17CB0070796FB0A /* CustomView */, + 38067DB0F430F19FB4CB6829 /* SBUFileMessageCell.swift */, + B7AFE4777A6D8332A62D03BF /* SBUAdminMessageCell.swift */, + B928FBA764E60FD888DB9262 /* SBUContentBaseMessageCell.swift */, + 761B839CB8A4FE1560765B78 /* SBUUnknownMessageCell.swift */, + FA8156E1D371ABA2ED207B47 /* SBUUserMessageCell.swift */, ); - name = ViewParams; + name = MessageCell; + sourceTree = ""; + }; + BE2A90F0FB66BD54D35CD3A9 /* CustomSyntaxTest */ = { + isa = PBXGroup; + children = ( + CDA582D88923629AE504246E /* MessageTemplateTestViewController.swift */, + E749BDF3B825E7BD18178872 /* MessageTemplateRenderer.Image.swift */, + C2C592BE8F09301470F55DF5 /* MessageTemplateParser.swift */, + F898620E6D4EBDD8319613E9 /* MessageTemplateRenderer.swift */, + ); + name = CustomSyntaxTest; + sourceTree = ""; + }; + BED30D6FFF96B91F72F07D97 /* MultipleFilesMessage */ = { + isa = PBXGroup; + children = ( + 6B34CE6FA66EDF70BF0EC532 /* SBUMultipleFilesMessageCollectionViewCell.swift */, + BDBAC4E00105841BB6A808B2 /* SBUMultipleFilesMessageCollectionView.swift */, + E5FAF9073B09CCF096734FB0 /* SBUMultipleFilesMessageCell.swift */, + ); + name = MultipleFilesMessage; + sourceTree = ""; + }; + BEF242B23A532EA43834D111 /* Configuration */ = { + isa = PBXGroup; + children = ( + 984C765D96F89BF20D8F1252 /* ScrollPostion */, + 28D495DC4CDAB2966B0ED245 /* MessageCell */, + CD7E6D084DCC3EAABDA48B1E /* Replies */, + AD7513D642162B23471727C4 /* SBUConfigManager.swift */, + ACC1F8C6414F503CDB7F6174 /* SBUConfig.OpenChannel.swift */, + 9F5A1D92C78BC5B3135C66DB /* SBUConfig.swift */, + 088C6E680E12A69D8D344959 /* VoiceMessage */, + 8EF18B112FE9655F63E03613 /* SBUConfig.Base.swift */, + CB8B918C3C0874F6E5399623 /* SBUConfig.GroupChannel.swift */, + A42DA6E0F10D42FF8667C1D2 /* Mention */, + 53BFCBF1186A94B1ED22AAEE /* SBUConfig.Common.swift */, + 3D0D250340415B07B43CD346 /* SBUDashboardConfig.swift */, + AD6F852FC5BEC2211D4A91FE /* SBUConfig.CodingKeys.swift */, + ); + name = Configuration; sourceTree = ""; }; BF56E31B368CE0BCD2BAF1D9 /* MessageThread */ = { isa = PBXGroup; children = ( - 0776AA990B7D660891195A66 /* SBUMessageThreadViewController.swift */, - 7BB111DED5C17F8AA0475D82 /* SBUMessageThreadTitleView.swift */, - 57265A2B441BB2B3FAF2596C /* SBUParentMessageInfoView.swift */, ); name = MessageThread; sourceTree = ""; @@ -2767,67 +2848,33 @@ BF5D18C774088F920D49E4BC /* ChannelList */ = { isa = PBXGroup; children = ( - C850028D0EC6F258428EB112 /* SBUBaseChannelListModule.swift */, D92984F14F8239B7FA0B8B76 /* GroupChannel */, - CDFDBA1A59DF10DF329445EA /* SBUBaseChannelListModule.Header.swift */, - F956BD0F76DBBC54FCA3140E /* SBUBaseChannelListModule.List.swift */, A602597E456F16A7026A871E /* OpenChannel */, ); name = ChannelList; sourceTree = ""; }; - BFD346CCEA6719830AD514FD /* Moderations */ = { + C0E0D3D38E8693FB0B51AA39 /* Cell */ = { isa = PBXGroup; children = ( ); - name = Moderations; - sourceTree = ""; - }; - C0AA9EA8C6154AB8918546BA /* Extension */ = { - isa = PBXGroup; - children = ( - 87982BEE5F42C384DE2E37D1 /* UIStackView.SBUIKit.swift */, - 748911BF68F971D3EBC4DEFA /* URL+SBUKit.swift */, - 6B2634BB224050571525F902 /* Array+SBUIKit.swift */, - A7C9B6CF517F736AF92B4748 /* UIColor+SBUIKit.swift */, - D435EF09822E6A48A0629318 /* Formatter+SBUIKit.swift */, - 352A2680D588180C55FB591F /* UIImage+SBUIKit.swift */, - 0206B05C52A01BB8E7D69320 /* NSLayoutConstraint+SBUIKit.swift */, - E473E5D0A72CC5793BF3135E /* UIButton+SBUIKit.swift */, - D83719466EF350BE145528F9 /* UINavigationController+SBUIKit.swift */, - 1AB19051F393005BCB57C645 /* ChatSDK */, - DC5D26633C4FB27008F0D84F /* String+SBUIKit.swift */, - 8E700CF5A42253A9D0B9C3A9 /* CGSize+SBUIKit.swift */, - 177474FE6BB9754AF9C7311D /* Float+SBUKit.swift */, - 71D2BA7030799CFE0E9E4635 /* Data+SBUIKit.swift */, - B7CEB555D9E8C324C1B1EAD1 /* UIViewController+SBUIKit.swift */, - C8741B0FB6E9BDCB86E69ECA /* Date+SBUIKit.swift */, - 87C6BD82C91BDB00548EA385 /* StringProtocol+SBUIKit.swift */, - AFA07F52850027CB7EC7E924 /* UIApplication+SBUIKit.swift */, - D6B7A1D49538F05AE83A9DCA /* UIView+SBUIKit.swift */, - 200E69F6E0B5591D74145CE2 /* Sequence+SBUIKit.swift */, - F083E0017E354443F6462653 /* UIImageView+SBUIKit.swift */, - C8EAF5B6803F11DF8D50E382 /* NSObject+SBUIKit.swift */, - B00D6064711D2270A05F74CC /* UITextField+SBUIKit.swift */, - ); - name = Extension; + name = Cell; sourceTree = ""; }; - C0E0D3D38E8693FB0B51AA39 /* Cell */ = { + C1313DA05368C490082FEB1E /* ChannelList */ = { isa = PBXGroup; children = ( - BEE6C39FFD25CC94BDF299D8 /* SBUOpenChannelSettingCell.swift */, - 0AB8E024A4FD1346F72CC738 /* SBUBaseChannelSettingCell.swift */, - C79BFD010A2187F68AC71D1C /* SBUModerationCell.swift */, - 6104680EDBA19D05B19A3E15 /* SBUGroupChannelSettingCell.swift */, + 222DB673D0B62B01685A93B5 /* ChannelCell */, + 37F506AC8E475DC5E04D7ED4 /* SBUBaseChannelListViewController.swift */, + D574B456A43BF48219E3903E /* SBUGroupChannelListViewController.swift */, + FEB8247FA9D45E8639A66668 /* SBUOpenChannelListViewController.swift */, ); - name = Cell; + name = ChannelList; sourceTree = ""; }; C16926B4BCB19F587FC0EE45 /* View */ = { isa = PBXGroup; children = ( - 43525699298A604A075CA7B9 /* SBUCreateChannelTypeSelector.swift */, ); name = View; sourceTree = ""; @@ -2835,83 +2882,84 @@ C1FF60134E4DC02CBE703889 /* MessageCellParams */ = { isa = PBXGroup; children = ( - F8CB848D66D4117A6BFFFD5E /* SBUMultipleFilesMessageCellParams.swift */, - 3046652E8A8AF7F4EE65FDFA /* SBUTypingMessageCellParams.swift */, - D9D5FA4BE98A1A152A4B9DDC /* SBUUserMessageCellParams.swift */, - 5ED22441EFFFDCB1F4FBBFE6 /* SBUUnknownMessageCellParams.swift */, - A0D8383300A0ECFAC83488FA /* SBUFeedNotificationCellParams.swift */, - 272E52332721EC6B5744F3B0 /* SBUAdminMessageCellParams.swift */, - DBB372FD4425E4003ED702D1 /* SBUBaseMessageCellParams.swift */, - B792165B3E9F3E8893600CF2 /* SBUFileMessageCellParams.swift */, ); name = MessageCellParams; sourceTree = ""; }; - C29FD6D9BAE4301BF751A581 /* Header */ = { + C2230F9CEF3753010460A865 /* VoiceNote */ = { isa = PBXGroup; children = ( + 4AC5B88DC64125D423D6DDC4 /* SBUVoiceMessageInputView.swift */, ); - name = Header; + name = VoiceNote; sourceTree = ""; }; C2B2ED10CBA267CC6E6FC539 /* MessageSearch */ = { isa = PBXGroup; children = ( - 3B16D089622F63F650A75B47 /* SBUMessageSearchViewController.Deprecated.swift */, ); name = MessageSearch; sourceTree = ""; }; - C4BA24C9350C2E7D565AAAB4 /* ChannelCell */ = { + C352DDF3173EC025BA9E1202 /* Deprecated */ = { isa = PBXGroup; children = ( + F0D89DF2E7E5310B7303336A /* SBUTableViewCell.Unavailable.swift */, + 574580EF4787DD53059FAAB3 /* ChannelList */, + 245D85D9293375B1FD87DA4D /* Channel */, + 5CD23F015296B611C267A313 /* ChannelSettings */, + 5B09CF0D84533DCE84A1A008 /* SBUBaseViewController.Unavailable.swift */, + 71A695378D189EB76429498A /* MemberList */, + 4205B04D4C8524EFDF89E101 /* UserList */, + 5A2A75B82E001C4213E292B4 /* MessageSearch */, + 2B0FBE1676A32250B496F95D /* SBUView.Unavaliable.swift */, + A6A157AB2D7099FE9C9B171D /* SBUGlobals.Deprecated.swift */, + CEAEA76AAF2B82E66B685055 /* SBUCoverImageView.Deprecated.swift */, + 8A79F328E236302799724016 /* Moderations */, + 4E436F823E54872F236D3B43 /* SBUTheme.Deprecated.swift */, + E78B1B488EB2FF0329542DCC /* CreateChannel */, + 5934998683DBE48B7BB9D608 /* SBUModuleSet.Deprecated.swift */, + FFCBB242E40E79FCFE1A41EA /* SBUEnums.Deprecated.swift */, ); - name = ChannelCell; + name = Deprecated; sourceTree = ""; }; C5B006D4B6ACD1CEDC4A71F9 /* GroupChannel */ = { isa = PBXGroup; children = ( - 408AE24EF85B26FF075E8DAF /* SBUGroupChannelSettingsModule.swift */, - 3E9D7D63846EF293F7A425E0 /* SBUGroupChannelSettingsModule.Header.swift */, - 325BF2C6FB366447C7008FB6 /* SBUGroupChannelSettingsModule.List.swift */, ); name = GroupChannel; sourceTree = ""; }; - C5C5ABB479B5813535C5E15F /* View */ = { + C74ECC20D887B999E7EE0942 /* ViewParams */ = { isa = PBXGroup; children = ( - DBA9B657E14AD5B66C781D32 /* SBUBaseViewController.swift */, - A2E9D1A14F2B4BF85E0A7B13 /* ChannelList */, - 5250876801EBD7CA8FE3E237 /* NotificationSettings */, - B8EE4E81D8775BDBDA8BAB7B /* Channel */, - 5C1B40B87B9AAB0D7CD7AC2A /* ChannelSettings */, - 89FA74368878AD5D9F3BF908 /* VoiceNote */, - DFD91CEA1625DEE94B4EB5B1 /* Common */, - 624FA453CE5129463B6C2193 /* UserList */, - 0C0AA733D29D1BB7267185BE /* SBUViewControllerSet.swift */, - E17AC6CD007F1DFAF32E8993 /* MessageSearch */, - 4C0CA0E328B0FA82E9BEEF36 /* Life cycles */, - BF56E31B368CE0BCD2BAF1D9 /* MessageThread */, - 632CFE14D30A731968649708 /* Moderations */, - CCECB33F621EFBFEDC3070E6 /* SelectUser */, ); - name = View; + name = ViewParams; sourceTree = ""; }; - C74ECC20D887B999E7EE0942 /* ViewParams */ = { + C817837F1C7EC92D2869BDC6 /* Header */ = { isa = PBXGroup; children = ( - A6B99AC0F1FB2B1F928AA0A4 /* SBUSuggestedReplyViewParams.swift */, + CA00BBBBF4E5C6F6F7EA3461 /* SBUChannelInfoHeaderView.swift */, + F8ACFABF8A5AA0281DCF7F87 /* SBUChannelTitleView.swift */, ); - name = ViewParams; + name = Header; + sourceTree = ""; + }; + C89B4993367C8DE1C5D659F7 /* NotificationSettings */ = { + isa = PBXGroup; + children = ( + 25470C7458E4CEFF63B37375 /* SBUGroupChannelPushSettingsModule.List.swift */, + 509781E9E3CC0989512E5F66 /* SBUGroupChannelPushSettingsModule.swift */, + A106B25318117741FE01FB2A /* SBUGroupChannelPushSettingsModule.Header.swift */, + ); + name = NotificationSettings; sourceTree = ""; }; CA316B8E03D1598A9BD27C51 /* CategoryFilterCell */ = { isa = PBXGroup; children = ( - 6DA7CE8764EF08BEC1F407DC /* SBUCategoryFilterCell.swift */, ); name = CategoryFilterCell; sourceTree = ""; @@ -2919,7 +2967,6 @@ CA3AA8C8EDDFF0EF462EF857 /* ChannelSettingItem */ = { isa = PBXGroup; children = ( - DD1AED084A3843547A85704B /* SBUChannelSettingItem.swift */, ); name = ChannelSettingItem; sourceTree = ""; @@ -2927,9 +2974,6 @@ CCECB33F621EFBFEDC3070E6 /* SelectUser */ = { isa = PBXGroup; children = ( - D99A1DCBE2F0D2458B752E5D /* SBURegisterOperatorViewController.swift */, - 1C3F26F59A69BE3551DEF811 /* SBUBaseSelectUserViewController.swift */, - 59C43CF4036FEB33894ABEDC /* SBUInviteUserViewController.swift */, 6E22760BFBE0EDEE54DB7156 /* CreateChannel */, ); name = SelectUser; @@ -2938,48 +2982,88 @@ CD5E35EB035BF16A8AB036C6 /* MessageSearch */ = { isa = PBXGroup; children = ( - 4D8CC815B247DBFBDF9BEFF7 /* SBUMessageSearchModule.Header.swift */, - 3EE43A6018C716F35B9E7023 /* SBUMessageSearchModule.List.swift */, - 0FCE2A23E4ABAB4C8CEE6515 /* SBUMessageSearchModule.swift */, ); name = MessageSearch; sourceTree = ""; }; - CD9530048797BAC5171FEB9B /* OpenChannel */ = { + CD7E6D084DCC3EAABDA48B1E /* Replies */ = { isa = PBXGroup; children = ( + 885D613FEDCF9E4AE9124492 /* SBUReplyConfiguration.swift */, ); - name = OpenChannel; + name = Replies; sourceTree = ""; }; D24F693C2972702860ED6501 /* ViewParams */ = { isa = PBXGroup; children = ( - 7205B2C79984A402A4B8A14F /* SBUQuoteMessageInputViewParams.swift */, ); name = ViewParams; sourceTree = ""; }; - D2C109A44FC520ED2685C3CF /* Cell */ = { + D41E9DF1EBC3D4C3E900C6CF /* OpenChannel */ = { isa = PBXGroup; children = ( + 22FA0D5B94E7C4F5EC5E6620 /* SBUOpenChannelSettingsModule.List.swift */, + 5C317F18296BFC864AFF40AA /* SBUOpenChannelSettingsModule.swift */, + B03F86CCC9C0FF9109AC4A30 /* SBUOpenChannelSettingsModule.Header.swift */, ); - name = Cell; + name = OpenChannel; sourceTree = ""; }; - D7CB9551B4F67723500A0B2A /* ViewModel */ = { + D54DAFAE05FA8D77390C4FB1 /* Module */ = { isa = PBXGroup; children = ( + 841F80E8FB756BBB1DEDBAF3 /* ChannelList */, + C89B4993367C8DE1C5D659F7 /* NotificationSettings */, + 4DC28972FE4F57EDD9AB19AA /* Channel */, + 451073E58CCB698F5FB28A98 /* ChannelSettings */, + 951AE42BB93583104959515D /* UserList */, + 2A6F3C3CA56F8CF9B1AE0116 /* SBUModuleSet.swift */, + 91B71E7422DD4D4A1A3D9B51 /* MessageSearch */, + D712E5A50634D4407DBF8685 /* MessageThread */, + 88DE862506930523FEE941E4 /* Moderations */, + 00794D768EEFC2BB0F3995B4 /* SelectUser */, ); - name = ViewModel; + name = Module; + sourceTree = ""; + }; + D5F941A0EAB72E150F7977F5 /* Life cycles */ = { + isa = PBXGroup; + children = ( + E56F934051B6BA95713778AF /* SBUTableViewCell.swift */, + 95C72AC687A23B405838CEA8 /* SBUCollectionViewCell.swift */, + DA88FB2FFC442EBBC6B03C0A /* SBUQuoteMessageInputViewProtocol.swift */, + 2084466BCD32E752280FDF5C /* SBUMessageCellProtocol.swift */, + FF8932D10ABB762CAEF6B35D /* SBUViewLifeCycle.swift */, + DDA28EF678F3AE97C70AC3E4 /* SBUQuotedMessageViewProtocol.swift */, + 44F9C7790EE178F36A6DAA7E /* SBUView.swift */, + ); + name = "Life cycles"; + sourceTree = ""; + }; + D70E4F0CDB57EB33A0A7A57D /* MessageThread */ = { + isa = PBXGroup; + children = ( + 1844C9968B7331F1538C7366 /* SBUMessageThreadViewModel.swift */, + ); + name = MessageThread; + sourceTree = ""; + }; + D712E5A50634D4407DBF8685 /* MessageThread */ = { + isa = PBXGroup; + children = ( + FFF1D8E9142C0E072DDDF8CD /* SBUMessageThreadModule.List.swift */, + 00F8536AA7C6BD346478CC70 /* SBUMessageThreadModule.swift */, + 0B01CE19204BDDC6A3AFD674 /* SBUMessageThreadModule.Input.swift */, + 470469C36899D1C5E483FCF8 /* SBUMessageThreadModule.Header.swift */, + ); + name = MessageThread; sourceTree = ""; }; D92984F14F8239B7FA0B8B76 /* GroupChannel */ = { isa = PBXGroup; children = ( - A6EC6F9EB11ADDDB3546DAE8 /* SBUGroupChannelListModule.List.swift */, - 14D6F9DFA7C12E0C6A805175 /* SBUGroupChannelListModule.swift */, - 9C70CC4B80861153433E489C /* SBUGroupChannelListModule.Header.swift */, ); name = GroupChannel; sourceTree = ""; @@ -2987,182 +3071,155 @@ D9BEB01C979AE5AE117B5687 /* Menu */ = { isa = PBXGroup; children = ( - 708F5AC6588D7574B38BF62D /* SBUMenuCell.xib */, - 5675662CAE0E3EC0E4A0392F /* SBUMenuSheetViewController.swift */, - 5EA1B0589A0E5C19D00CAF27 /* SBUMenuCell.swift */, - 6B78FB93379BAC5649B82649 /* SBUMenuView.swift */, - 459A35B6749E1DA6F1E76E81 /* SBUBottomSheetController.swift */, ); name = Menu; sourceTree = ""; }; - DB1224C4DF0F5BFED22226C6 /* ChannelList */ = { + DA2A307EBBA9173E70DB9123 /* User */ = { isa = PBXGroup; children = ( - 9A89B4C79EA612DF21BAA96A /* SBUChannelListViewController.Deprecated.swift */, + E48CC4D7DB045DEE72C4C94F /* SBUUserProfileView.swift */, ); - name = ChannelList; + name = User; sourceTree = ""; }; - DC636D12C7DEE05F18A29038 /* MemberList */ = { + DA92D3E52C621929EA053020 /* View */ = { isa = PBXGroup; children = ( - DE1A7466B9D04A2607EC2FB1 /* SBUMemberListViewController.Deprecated.swift */, + 8CDADAA49466BDA35BD973EE /* SBUChannelSettingsChannelInfoView.swift */, ); - name = MemberList; + name = View; sourceTree = ""; }; - DFD91CEA1625DEE94B4EB5B1 /* Common */ = { + DB1224C4DF0F5BFED22226C6 /* ChannelList */ = { isa = PBXGroup; children = ( - 807DCAED2F0633FB78DAE04A /* SBUStackView.swift */, - 44D0E55FD21850FA17AFD504 /* SBUAnimation.swift */, - 92FBB65724E212D676EAE9C9 /* SBUEmptyView.swift */, - 81CEED10E643BC0A28223A5E /* SBUCoverImageView.swift */, - 1B1D6918521ACB5BC3DBA4D5 /* PhotoLibrary */, - DFFA9C0C18E0D11BFF088E33 /* SBUPaddingLabel.swift */, - 3EB21D7E23556A522FD774A0 /* SBUCommonItem.swift */, - BDE63FFD74A1842A26157784 /* SBULayoutableButton.swift */, - E62126896A258C07A669994F /* User */, - 355E5E7AE98778B7789C5A02 /* SBUNavigationTitleView.swift */, - 64EC32C82C5FF837F4A3D6AC /* SBUNotificationNavigationTitleView.swift */, - 8C6EF0C95E8472F91B13DE1B /* SBUBarButtonItem.swift */, - F45107805C04C0A825F9120C /* SBUActionSheet.swift */, - 999B98F96140924676C25BF9 /* SBUNotificationEmptyView.swift */, - 5812E468BF5387897D079CAD /* SBUAlertView.swift */, - D9BEB01C979AE5AE117B5687 /* Menu */, - F9E292B4148A2541F6A4E7B1 /* SBUUnderLineTextField.swift */, - 0C89AA7626B62E91191502C6 /* UserCell */, - AB532737198197F81925D25C /* SBUTemplateLabel.swift */, - E2F0C0C71FDA86DB16C7DEF2 /* SBUMarginView.swift */, - 3784B7DE0FBC0E8F7415B2B4 /* SBUTypingIndicatorBubbleView.swift */, - 23102F5BB173EA9ADB0C7124 /* SBUCommonViewControllerSet.swift */, - B4BEC04F80E8C9E365C25305 /* SBULoading.swift */, - 4D233E38D437CFFE1E989D72 /* SBUCollectionViewFlowLayout.swift */, ); - name = Common; + name = ChannelList; sourceTree = ""; }; - E0E7CDC7C99B3E8DBC1199E9 /* FileViewer */ = { + DBECF04CC002B0C079F36C18 /* RegisterOperator */ = { isa = PBXGroup; children = ( + 0BA0C57DFA099936261E3D65 /* SBURegisterOperatorModule.List.swift */, + 84AB53AE7E88752E586BF311 /* SBURegisterOperatorModule.Header.swift */, + 9AEC878BE3DB4FD78022AD5F /* SBURegisterOperatorModule.swift */, ); - name = FileViewer; + name = RegisterOperator; sourceTree = ""; }; - E17AC6CD007F1DFAF32E8993 /* MessageSearch */ = { + DC4081CEDC9CF1A4BE1A78AA /* Views */ = { isa = PBXGroup; children = ( - 451B29849E7603F4F21C2319 /* SBUMessageSearchViewController.swift */, - 97E85D45940EF856E1BA0429 /* Cell */, + FB23FD13C147EFC1327F05AC /* SBUSuggestedReplyView.swift */, + C0F7A21B5553E98E1A4E8D36 /* SBUSuggestedReplyOptionView.swift */, ); - name = MessageSearch; + name = Views; sourceTree = ""; }; - E1A178B87B68999C0FB8EEB9 /* View */ = { + DC636D12C7DEE05F18A29038 /* MemberList */ = { isa = PBXGroup; children = ( ); - name = View; + name = MemberList; sourceTree = ""; }; - E2A755C7018FA859492E9CC7 /* CustomView */ = { + DDBB242CAD58860A867454C6 /* Replies */ = { isa = PBXGroup; children = ( + 94A59A4397AA5EC62CD0E9AB /* SBUQuotedBaseMessageViewParams.Deprecated.swift */, ); - name = CustomView; + name = Replies; sourceTree = ""; }; - E57197F6E3B84E9B49284F56 /* VoiceMessage */ = { + DDDEFCF7B45AE1C0B39146DA /* MessageCellParams */ = { isa = PBXGroup; children = ( + A0015634D994EE7F2B3E6C06 /* SBUBaseMessageCellParams.Deprecated.swift */, ); - name = VoiceMessage; + name = MessageCellParams; sourceTree = ""; }; - E571C07B2ADF43CFADE9E0F6 /* Forms */ = { + DFD91CEA1625DEE94B4EB5B1 /* Common */ = { isa = PBXGroup; children = ( - 11466868536C0DF17287135C /* ViewParams */, - F02CC57C51F042EB83EC751C /* Views */, + 1B1D6918521ACB5BC3DBA4D5 /* PhotoLibrary */, + E62126896A258C07A669994F /* User */, + D9BEB01C979AE5AE117B5687 /* Menu */, + 0C89AA7626B62E91191502C6 /* UserCell */, ); - name = Forms; + name = Common; sourceTree = ""; }; - E62126896A258C07A669994F /* User */ = { + E17AC6CD007F1DFAF32E8993 /* MessageSearch */ = { isa = PBXGroup; children = ( - 09AE53DAD099C0DF1A7D0A46 /* SBUUserProfileView.swift */, + 97E85D45940EF856E1BA0429 /* Cell */, ); - name = User; + name = MessageSearch; sourceTree = ""; }; - E6A0DF7286F8D359D17972FC /* ChannelSettings */ = { + E62126896A258C07A669994F /* User */ = { isa = PBXGroup; children = ( - 1499EA2855C239C0B214AEA3 /* Cell */, - E1A178B87B68999C0FB8EEB9 /* View */, ); - name = ChannelSettings; + name = User; sourceTree = ""; }; - EA09A67A5E07979C2E4F3699 /* Replies */ = { + E78B1B488EB2FF0329542DCC /* CreateChannel */ = { isa = PBXGroup; children = ( - 5D099ABA2392DCFD3F331D9B /* SBUQuotedBaseMessageViewParams.Deprecated.swift */, + CF14B193A9E6539527CD9218 /* SBUCreateChannelViewController.Deprecated.swift */, ); - name = Replies; + name = CreateChannel; sourceTree = ""; }; - EA1E9ECF03EC619D3C5D5119 /* Channel */ = { + E7DAE0C27D639E96B1FEB449 /* ViewParams */ = { isa = PBXGroup; children = ( - DDB09C5ED906D823288029BA /* SBUFeedNotificationChannelViewModel.swift */, - 65532EB6BB53229A540A2AF6 /* SBUOpenChannelViewModel.swift */, - 120F917F075AA125F1D8F296 /* SBUBaseChannelViewModel.swift */, - FA4DFA3C669C94E458F05B8A /* SBUChatNotificationChannelViewModel.swift */, - 9F7DFA4B49D225AFE90087E3 /* SBUGroupChannelViewModel.swift */, + 51E14C16E6A4139AACEF788F /* SBUQuotedBaseMessageViewParams.swift */, ); - name = Channel; + name = ViewParams; sourceTree = ""; }; - EA28932922AD1E56327AAC63 /* Replies */ = { + E9E347DEDA0D533FEB6BE049 /* ChannelSettings */ = { isa = PBXGroup; children = ( - EBCBEDB37CED382793736705 /* SBUReplyConfiguration.swift */, + F80A51A88680A4C09A540DE8 /* SBUBaseChannelSettingsViewModel.swift */, + 869AC45675B3736CDECAD5F3 /* SBUModerationsViewModel.swift */, + 2F7F1F9BF57F2A409F6E68A9 /* SBUGroupChannelSettingsViewModel.swift */, + 83F4BF5C4CDAAD25155E22C7 /* SBUOpenChannelSettingsViewModel.swift */, ); - name = Replies; + name = ChannelSettings; sourceTree = ""; }; - EB4FFDE17C4F86285E7E01F0 /* ViewParams */ = { + EA09A67A5E07979C2E4F3699 /* Replies */ = { isa = PBXGroup; children = ( ); - name = ViewParams; + name = Replies; sourceTree = ""; }; - EBCF53B73E03BD1CDD55884F /* ChannelList */ = { + EA1E9ECF03EC619D3C5D5119 /* Channel */ = { isa = PBXGroup; children = ( - 3AD7A95377756593C9FF4F49 /* GroupChannel */, - 4DB50159FC92B89E2080C51E /* OpenChannel */, ); - name = ChannelList; + name = Channel; sourceTree = ""; }; - ECC3D05C58AB6A4450A84FFB /* CreateChannel */ = { + EA28932922AD1E56327AAC63 /* Replies */ = { isa = PBXGroup; children = ( - 2FEC6F3164B4114A21C55D7A /* View */, ); - name = CreateChannel; + name = Replies; sourceTree = ""; }; - EE4086936EE7DACEB0A1082A /* UserList */ = { + EA73FC041626F59CAD3E3A8D /* Cell */ = { isa = PBXGroup; children = ( + 800D22C5CBEAAE32EBC78893 /* SBUMessageSearchResultCell.swift */, ); - name = UserList; + name = Cell; sourceTree = ""; }; EE6EACBD7273E495C377AE2E /* MessageCell */ = { @@ -3170,119 +3227,108 @@ children = ( 0089E01832EFD3D6954E7899 /* MessageCellParams */, EA09A67A5E07979C2E4F3699 /* Replies */, - 2DD9DAEDDD5610833F128949 /* SBUContentBaseMessageCell.Deprecated.swift */, ); name = MessageCell; sourceTree = ""; }; - EEE09B025BE19A1854DEF433 /* Views */ = { + F136E2FAEFD9B194DC5B9C45 /* Channel */ = { isa = PBXGroup; children = ( + BD0C06828B96853B672C6823 /* SBUFeedNotificationChannelViewModel.swift */, + A4D9F434D5CEA29FADCCB692 /* SBUOpenChannelViewModel.swift */, + 7A529554987ADAC8814D3340 /* SBUBaseChannelViewModel.swift */, + E8688ED07F8728C7E0D8A21A /* SBUChatNotificationChannelViewModel.swift */, + 6901F2A73F6DCA81C8FC15C9 /* SBUGroupChannelViewModel.swift */, ); - name = Views; + name = Channel; sourceTree = ""; }; - F02CC57C51F042EB83EC751C /* Views */ = { + F1B213373B679FECF873B4AA /* Moderations */ = { isa = PBXGroup; children = ( + 9CF81684F6B7E32BA25962C8 /* SBUModerationsViewController.swift */, ); - name = Views; + name = Moderations; sourceTree = ""; }; - F26B4382D5C0A40CE0CAE9B7 /* CacheManager */ = { + F3311254DABAA7222FC2EFAB /* ChannelSettings */ = { isa = PBXGroup; children = ( + 45485BDF50AC4FBB142760FE /* SBUBaseChannelSettingsViewController.swift */, + 9F65BF99B9367ECA69450FED /* SBUOpenChannelSettingsViewController.swift */, + 48BF26EB90E6E34607921F32 /* Cell */, + DA92D3E52C621929EA053020 /* View */, + E0DAAB23F5C6FDEF7837EC9B /* SBUGroupChannelSettingsViewController.swift */, ); - name = CacheManager; + name = ChannelSettings; sourceTree = ""; }; - F29F39A87BB5548B2F7E4B57 /* MessageSearch */ = { + F661575E17BB7DF743EFC378 /* UserCell */ = { isa = PBXGroup; children = ( + 5F5BC5ECF81747D1122595F0 /* SBUUserCell.swift */, ); - name = MessageSearch; + name = UserCell; sourceTree = ""; }; - F4E6FBA80594F3D11B550665 /* Cell */ = { + F6A1B5C1A5A9ED4DC707CED4 /* FileViewer */ = { isa = PBXGroup; children = ( + AF22DE70616E9D64E27947F3 /* SBUFileViewController.swift */, ); - name = Cell; + name = FileViewer; sourceTree = ""; }; F8211B1B01EA2C16D101612B /* CellView */ = { isa = PBXGroup; children = ( - E80BE50A6F796529DC6936FC /* SBUMessageStateView.swift */, - 0ECAE734480BCB8D28E0EFB0 /* SBUMessageProfileView.swift */, - 48B6765D972BAE0935C977B5 /* SBUUserMessageTextView.swift */, - F904F929E38FF5EE8AB6B72C /* SBUUserNameView.swift */, - 65D15636F74327D001C2F9B4 /* SBUMessageWebView.swift */, - 567A7DA6F378DFB20F32A01A /* SBUMessageDateView.swift */, - 14EE035B8A9F6EA7171910A5 /* SBULinkClickableTextView.swift */, - 7171FBEE26A1D269D2FCFEF3 /* SBUOpenChannelMessageWebView.swift */, - CA436EA7617A1A24B5BC1271 /* SBUSelectableStackView.swift */, - 39E3142B541D6F9099977D42 /* SBUNotificationTimelineView.swift */, ); name = CellView; sourceTree = ""; }; - FA49F81717A899CE6A96D179 /* CellView */ = { + F8269647E8F1D5D6CDA8BD95 /* ViewModel */ = { isa = PBXGroup; children = ( + 525CD5F127B1B471D6A06CF1 /* SBUUserMessageTextViewModel.swift */, + 11516613022A7CB0B04A9124 /* SBUMessageWebViewModel.swift */, ); - name = CellView; + name = ViewModel; sourceTree = ""; }; - FAC116E699E93C7992B708CA /* SelectUser */ = { + F8E587192877945308B00498 /* SelectUser */ = { isa = PBXGroup; children = ( - 67A185A60EE99EBE801E94C3 /* SBUBaseSelectUserViewModel.swift */, - 338AEF6DF95C9D03E2AEC56F /* SBURegisterOperatorViewModel.swift */, - 799ADEF3727DA4553370A426 /* CreateChannel */, - 2DE0A8CA0D97DF250076ACB7 /* SBUInviteUserViewModel.swift */, + 5470569FC46064C0CC2447A0 /* SBUBaseSelectUserViewModel.swift */, + CD14F4B7AA8A8E530506803A /* SBURegisterOperatorViewModel.swift */, + 9F248F55472A2F0CAC122E23 /* CreateChannel */, + A952A4E3AF10E4E3173E5562 /* SBUInviteUserViewModel.swift */, ); name = SelectUser; sourceTree = ""; }; - FB7946A349F451E248C2A9A7 /* MessageCell */ = { - isa = PBXGroup; - children = ( - 7299F3652B7B64F09B52838B /* MessageCellParams */, - E571C07B2ADF43CFADE9E0F6 /* Forms */, - B136EA7D06BB9EDD23C0D9D7 /* FileMessageContentView */, - 6B0AE054B6C2EDCCFE12FAFB /* SuggestedReply */, - 35013811D25CB42B31F55757 /* NotificationChannel */, - 789D31114FC1EC3C0981BA74 /* Replies */, - A4E37C6A29D50BC5F645F0FF /* MultipleFilesMessage */, - 2338C56C1C6BEBDDFE8EF16F /* OpenChannel */, - E2A755C7018FA859492E9CC7 /* CustomView */, - ); - name = MessageCell; - sourceTree = ""; - }; - FBD012E63D93B3A5E053125E /* CategoryFilterCell */ = { + FAC116E699E93C7992B708CA /* SelectUser */ = { isa = PBXGroup; children = ( + 799ADEF3727DA4553370A426 /* CreateChannel */, ); - name = CategoryFilterCell; + name = SelectUser; sourceTree = ""; }; - FD69676D7D200FE0AAF56F28 /* VoiceNote */ = { + FE96D2C5D57DAB8E45F258D1 /* UserList */ = { isa = PBXGroup; children = ( ); - name = VoiceNote; + name = UserList; sourceTree = ""; }; - FE96D2C5D57DAB8E45F258D1 /* UserList */ = { + FF22B678032CE9EB9FF09986 /* GroupChannel */ = { isa = PBXGroup; children = ( - EB141E7614FFAE4105A5556B /* SBUUserListModule.swift */, - CEA2626CAF5D299D2F2B30AA /* SBUUserListModule.List.swift */, - 42760D674305CAD0204A1E0E /* SBUUserListModule.Header.swift */, + F0D04CDF954BED49034B1916 /* SBUGroupChannelListModule.List.swift */, + 6DCD12ED664B7652FCFABED5 /* SBUGroupChannelListModule.swift */, + 3733DFC08939B62E153C7F51 /* SBUGroupChannelListModule.Header.swift */, ); - name = UserList; + name = GroupChannel; sourceTree = ""; }; /* End PBXGroup section */ @@ -3386,12 +3432,12 @@ 4992617B2A9D8A4A00B07828 /* MainItemView.xib in Resources */, 499261742A9D89BE00B07828 /* ConnectView.xib in Resources */, 499261752A9D89BE00B07828 /* MainView.xib in Resources */, - 855D10830FDE61E17611A8CC /* Debug.xcconfig in Resources */, - 6A42DEC2D0CC55B617CEDCA8 /* Release.xcconfig in Resources */, - FA339AF001321A0100611467 /* Base.xcconfig in Resources */, - E9CA15509C62029ED4A8C489 /* SBUReactionCollectionViewCell.xib in Resources */, - 32DAA0D9BAAFDF99E7DD7B61 /* SBUMenuCell.xib in Resources */, - 63C6B24C6525B5FB8E8497F4 /* Assets.xcassets in Resources */, + F2DC6D227EAF86E6B90F9045 /* Debug.xcconfig in Resources */, + 65DBF09EDC64D99F3E4BE018 /* Release.xcconfig in Resources */, + 92CB27A8FA61B9D518217A66 /* Base.xcconfig in Resources */, + 86E543B40C5D11A6FD72F6C7 /* SBUReactionCollectionViewCell.xib in Resources */, + 6D4F646FA3D409E2B4280B06 /* SBUMenuCell.xib in Resources */, + 69FDDC0A7D245E07D42851DA /* Assets.xcassets in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3400,7 +3446,7 @@ /* Begin PBXShellScriptBuildPhase section */ 9C442672241CCE0A00FE9975 /* ShellScript */ = { isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; + buildActionMask = 12; files = ( ); inputFileListPaths = ( @@ -3413,7 +3459,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "APP_PATH=\"${TARGET_BUILD_DIR}/${WRAPPER_NAME}\"\n\n# This script loops through the frameworks embedded in the application and\n# removes unused architectures.\nfind \"$APP_PATH\" -name '*.framework' -type d | while read -r FRAMEWORK\ndo\n FRAMEWORK_EXECUTABLE_NAME=$(defaults read \"$FRAMEWORK/Info.plist\" CFBundleExecutable)\n FRAMEWORK_EXECUTABLE_PATH=\"$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME\"\n echo \"Executable is $FRAMEWORK_EXECUTABLE_PATH\"\n\n EXTRACTED_ARCHS=()\n\n for ARCH in $ARCHS\n do\n echo \"Extracting $ARCH from $FRAMEWORK_EXECUTABLE_NAME\"\n lipo -extract \"$ARCH\" \"$FRAMEWORK_EXECUTABLE_PATH\" -o \"$FRAMEWORK_EXECUTABLE_PATH-$ARCH\"\n EXTRACTED_ARCHS+=(\"$FRAMEWORK_EXECUTABLE_PATH-$ARCH\")\n done\n\n echo \"Merging extracted architectures: ${ARCHS}\"\n lipo -o \"$FRAMEWORK_EXECUTABLE_PATH-merged\" -create \"${EXTRACTED_ARCHS[@]}\"\n rm \"${EXTRACTED_ARCHS[@]}\"\n\n echo \"Replacing original executable with thinned version\"\n rm \"$FRAMEWORK_EXECUTABLE_PATH\"\n mv \"$FRAMEWORK_EXECUTABLE_PATH-merged\" \"$FRAMEWORK_EXECUTABLE_PATH\"\n\ndone\n"; + shellScript = "# APP_PATH=\"${TARGET_BUILD_DIR}/${WRAPPER_NAME}\"\n\n# This script loops through the frameworks embedded in the application and\n# removes unused architectures.\n# find \"$APP_PATH\" -name '*.framework' -type d | while read -r FRAMEWORK\n#do\n# FRAMEWORK_EXECUTABLE_NAME=$(defaults read \"$FRAMEWORK/Info.plist\" CFBundleExecutable)\n# FRAMEWORK_EXECUTABLE_PATH=\"$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME\"\n# echo \"Executable is $FRAMEWORK_EXECUTABLE_PATH\"\n\n# EXTRACTED_ARCHS=()\n\n# for ARCH in $ARCHS\n# do\n# echo \"Extracting $ARCH from $FRAMEWORK_EXECUTABLE_NAME\"\n# lipo -extract \"$ARCH\" \"$FRAMEWORK_EXECUTABLE_PATH\" -o \"$FRAMEWORK_EXECUTABLE_PATH-$ARCH\"\n# EXTRACTED_ARCHS+=(\"$FRAMEWORK_EXECUTABLE_PATH-$ARCH\")\n# done\n\n# echo \"Merging extracted architectures: ${ARCHS}\"\n# lipo -o \"$FRAMEWORK_EXECUTABLE_PATH-merged\" -create \"${EXTRACTED_ARCHS[@]}\"\n# rm \"${EXTRACTED_ARCHS[@]}\"\n\n# echo \"Replacing original executable with thinned version\"\n# rm \"$FRAMEWORK_EXECUTABLE_PATH\"\n# mv \"$FRAMEWORK_EXECUTABLE_PATH-merged\" \"$FRAMEWORK_EXECUTABLE_PATH\"\n\n#done\n"; }; /* End PBXShellScriptBuildPhase section */ @@ -3439,6 +3485,7 @@ 9C037E33280432DB00059696 /* UserDefaults+Ext.swift in Sources */, 9C037E47280432DC00059696 /* CreateCommunityChannelViewController.swift in Sources */, 9C037E38280432DB00059696 /* AppDelegate.swift in Sources */, + 2E9850E12B1EEB8600EA4F39 /* AdditionalFeaturesManager.swift in Sources */, 9C037E32280432DB00059696 /* OpenChannel+Ext.swift in Sources */, A93AE8822A383CAA00AFFF9C /* ChannelCustomManager.swift in Sources */, A93AE88F2A383CAA00AFFF9C /* CustomNewMessageInfo.swift in Sources */, @@ -3446,6 +3493,7 @@ 9C037E2E280432DB00059696 /* ViewController.swift in Sources */, 9C037E34280432DB00059696 /* UIView+Ext.swift in Sources */, 9C037E40280432DB00059696 /* MyOpenChannelSettingsViewController.swift in Sources */, + 2E9850EA2B1EEC3000EA4F39 /* MetadataViewController.swift in Sources */, A93AE87B2A383CAA00AFFF9C /* CustomBaseViewController.swift in Sources */, 9C037E30280432DB00059696 /* UIImageView+Ext.swift in Sources */, 9C037E43280432DC00059696 /* LiveStreamChannelCell.swift in Sources */, @@ -3491,364 +3539,369 @@ 499261762A9D89BE00B07828 /* NibCustomView.swift in Sources */, 499261732A9D89BE00B07828 /* ConnectView.swift in Sources */, 4992617A2A9D8A4A00B07828 /* MainItemView.swift in Sources */, - F71F7B9D996296684434B789 /* SBUViewModelDelegate.swift in Sources */, - 345D24548A70E6948DD8C414 /* SBUGroupChannelListViewModel.swift in Sources */, - 58205EEF0F7F488D9A9F1470 /* SBUOpenChannelListViewModel.swift in Sources */, - C018AFA27E1E4AFB80E471F5 /* SBUBaseChannelListViewModel.swift in Sources */, - D93C2BBED0C9C9BC85536E12 /* SBUGroupChannelPushSettingsViewModel.swift in Sources */, - 9CAB0E774A24C1CDFB9DC167 /* SBUFeedNotificationChannelViewModel.swift in Sources */, - 82BF00C45ABDDF67F625EB6B /* SBUOpenChannelViewModel.swift in Sources */, - 1804AF1363599AC6C8FBC73C /* SBUBaseChannelViewModel.swift in Sources */, - F07EFDE7D844C353E4224761 /* SBUChatNotificationChannelViewModel.swift in Sources */, - 70C286CA49CC97BA483CC6C7 /* SBUGroupChannelViewModel.swift in Sources */, - A859F8525BAE1E99BC7016D0 /* SBUBaseChannelSettingsViewModel.swift in Sources */, - 38207DCB49226FB8ED70E557 /* SBUModerationsViewModel.swift in Sources */, - 3322B5176B6EF9CB510596A5 /* SBUGroupChannelSettingsViewModel.swift in Sources */, - B9EC638311852B130BE6990F /* SBUOpenChannelSettingsViewModel.swift in Sources */, - B3C9D546D377F37B364282F3 /* SBUCommonDelegate.swift in Sources */, - C43DE45C674D0D0960B2D57F /* SBUUserListViewModel.swift in Sources */, - 158B9FDC474EEE0BCB0A51EA /* SBUMessageSearchViewModel.swift in Sources */, - 905893D0C4ED86934AF7C892 /* SBUMessageThreadViewModel.swift in Sources */, - 89998194EB4186A223ADA26A /* SBUBaseSelectUserViewModel.swift in Sources */, - D7DB532D41A7780912CB7EB9 /* SBURegisterOperatorViewModel.swift in Sources */, - 450EC34A7C4A80EC082D9F09 /* SBUCreateChannelViewModel.swift in Sources */, - C4ABEA941EAA782957918250 /* SBUCreateOpenChannelViewModel.swift in Sources */, - FBEF982D129CD1C94841F2C1 /* SBUInviteUserViewModel.swift in Sources */, - 588995CD68D246F8034A939A /* SBUMessageCellConfiguration.swift in Sources */, - 20C9125BFD19043BB77224A2 /* SBUReplyConfiguration.swift in Sources */, - 35E7295C0155116CA019395B /* SBUConfigManager.swift in Sources */, - 61284CB22CB1D3F26BA1A106 /* SBUConfig.OpenChannel.swift in Sources */, - BCD638DBECB39E64D6C90A2F /* SBUConfig.swift in Sources */, - 557AC1BD60F649D589E1636D /* SBUVoiceMessageConfiguration.swift in Sources */, - AC2CD36CEB7DD0F5BB33BF6D /* SBUConfig.Base.swift in Sources */, - 98828A0B3A256029F51C8918 /* SBUConfig.GroupChannel.swift in Sources */, - E61CF8ABBF12DE61A7FC6453 /* SBUMentionConfiguration.swift in Sources */, - CEA1C189C37D01EB0CB63B64 /* SBUUserMentionConfiguration.swift in Sources */, - EA2236128D9100F25C680FF4 /* SBUConfig.Common.swift in Sources */, - FD43D0344653B92382629C61 /* SBUDashboardConfig.swift in Sources */, - D3CE433601D9F20E0181C9A8 /* SBUConfig.CodingKeys.swift in Sources */, - 1F5D1C5609A49E9B9A837A0E /* UIStackView.SBUIKit.swift in Sources */, - 4F1EA47F37CBDCEA4984C2C0 /* URL+SBUKit.swift in Sources */, - BAFB4C7AD0B77C2395DAA03C /* Array+SBUIKit.swift in Sources */, - 24867E42A054C4CFC5F5B8BE /* UIColor+SBUIKit.swift in Sources */, - 4598B6C582FB9BE18A8C2B00 /* Formatter+SBUIKit.swift in Sources */, - DC35DBB56568E3A6D228D427 /* UIImage+SBUIKit.swift in Sources */, - 552BF9DD6392E5F410646CB5 /* NSLayoutConstraint+SBUIKit.swift in Sources */, - 79CAB89EE621AF7FC446F702 /* UIButton+SBUIKit.swift in Sources */, - 5F458E5E006791B967CB065A /* UINavigationController+SBUIKit.swift in Sources */, - E05C1E2426358E9C4DC5FE63 /* BaseMessage+SBUIKit.swift in Sources */, - A4BF9EC0A887CA800CFC357B /* MultipleFilesMessage+SBUIKit.swift in Sources */, - 7E1C80A115E5E7EB9365A43A /* String+SBUIKit.swift in Sources */, - 628D0E2AB22BD19318055E3E /* CGSize+SBUIKit.swift in Sources */, - 48F372A8605BF54DC3A6E2DE /* Float+SBUKit.swift in Sources */, - 586938D7D0DB56895F4F7A83 /* Data+SBUIKit.swift in Sources */, - 4DA50174D44ADD5A71EB0DEF /* UIViewController+SBUIKit.swift in Sources */, - 79042716676C96948FAABDB2 /* Date+SBUIKit.swift in Sources */, - CC8A6E87DE6C0D4001C05304 /* StringProtocol+SBUIKit.swift in Sources */, - 48E6E8473036DF48BFB1463E /* UIApplication+SBUIKit.swift in Sources */, - 6F13601FE9DD56BCD28F377B /* UIView+SBUIKit.swift in Sources */, - C2D4FA9CB61AE3E0A1E7FA4F /* Sequence+SBUIKit.swift in Sources */, - F9C60AB85DD13D850FA36B13 /* UIImageView+SBUIKit.swift in Sources */, - EFCE2670187BFA2405A06A6D /* NSObject+SBUIKit.swift in Sources */, - B4D2524CCD4953F455C52FE8 /* UITextField+SBUIKit.swift in Sources */, - D1FD3F22F28359F6E9B7FEF5 /* SBUPropertyWrapper.swift in Sources */, - 1D48AB053364CB4FD10FACA1 /* BlockingOperation.swift in Sources */, - 56DD83C918D51C6FBEB16DA4 /* SBUUtils.swift in Sources */, - 7E300E140DB490E177137183 /* SBULogger.swift in Sources */, - A492EB8D4A5042C27F8F5551 /* SBUMentionManager.swift in Sources */, - 6487DFA9518FBAE69C8879BA /* SBUDebouncer.swift in Sources */, - 8E767591EB5897DAD7BF0AB3 /* SendbirdUI.swift in Sources */, - 8BB8E337226C2E025FEA56C5 /* SBUAvailable.swift in Sources */, - A2889E7D006F7ADD12E19691 /* SBUBaseChannelListModule.swift in Sources */, - 0F525DA26C8C2A13DDA102BE /* SBUGroupChannelListModule.List.swift in Sources */, - 3546CF593EE5DBBC96546307 /* SBUGroupChannelListModule.swift in Sources */, - B1B7A7B0B5B39A82FD7DFB4C /* SBUGroupChannelListModule.Header.swift in Sources */, - C461F44F002FA60BE710BB28 /* SBUBaseChannelListModule.Header.swift in Sources */, - 7ABBE8B19E3F2D21363A99D9 /* SBUBaseChannelListModule.List.swift in Sources */, - 5C3661FFAB694BF8DB16B933 /* SBUOpenChannelListModule.swift in Sources */, - C53C063EAB9F6E7E3BE79E29 /* SBUOpenChannelListModule.List.swift in Sources */, - FCA217ABD13D6FB77B74F4E7 /* SBUOpenChannelListModule.Header.swift in Sources */, - 385493D5910A2044285111AD /* SBUGroupChannelPushSettingsModule.List.swift in Sources */, - E81A54FFAC3C516BDEB4AB5D /* SBUGroupChannelPushSettingsModule.swift in Sources */, - F900B3D98B36BAE96A07AB99 /* SBUGroupChannelPushSettingsModule.Header.swift in Sources */, - D3EB8A90EEA0783BECB717E2 /* SBUGroupChannelModule.Input.swift in Sources */, - 99D293C7437D40E7DBB19976 /* SBUGroupChannelModule.List.swift in Sources */, - CD03D1D0957E4D4FB3142CA6 /* SBUGroupChannelModule.Header.swift in Sources */, - C3421B6F80FD56C48DFE9579 /* SBUGroupChannelModule.swift in Sources */, - 1F7E0A756F21D4B84A0B2C88 /* SBUChatNotificationChannelModule.swift in Sources */, - 9A086D7E6E46EC6956E255CA /* SBUChatNotificationChannelModule.List.swift in Sources */, - A330FA9A66BA00D23D30F866 /* SBUChatNotificationChannelModule.Header.swift in Sources */, - 3C2311328D550F36C873B44A /* SBUFeedNotificationChannelModule.Header.swift in Sources */, - 4633134536E1295AD4F4B6A9 /* SBUFeedNotificationChannelModule.List.swift in Sources */, - B300119E483DC8BAC32953D1 /* SBUFeedNotificationChannelModule.CategoryFilter.swift in Sources */, - 660F1458567259F5D9D7CB12 /* SBUFeedNotificationChannelModule.swift in Sources */, - 4B3D2B6D40F377CC5B0EA5FC /* SBUBaseChannelModule.Input.swift in Sources */, - 25BB20BDDF2CA8E2DF9C709E /* SBUBaseChannelModule.swift in Sources */, - E3BCEDA93245DEB33FDEF01C /* SBUBaseChannelModule.Header.swift in Sources */, - C49A795F915EB25BFE32FA61 /* SBUOpenChannelModule.List.swift in Sources */, - EFCFAF3C81192C31DA2684A3 /* SBUOpenChannelModule.Media.swift in Sources */, - 0D6434403E13EE5168E33E76 /* SBUOpenChannelModule.Input.swift in Sources */, - CD27BB8E74CE744AB0E345A2 /* SBUOpenChannelModule.Header.swift in Sources */, - D7CB54195380451592F15DC2 /* SBUOpenChannelModule.swift in Sources */, - DE48408CA5280A97A09929DD /* SBUBaseChannelModule.List.swift in Sources */, - C19750CC96B7A2E74FABCEA2 /* SBUBaseChannelSettingsModule.Header.swift in Sources */, - 286090358497F3F344E360D4 /* SBUBaseChannelSettingsModule.List.swift in Sources */, - 86693F4968F55FF9A1422606 /* SBUChannelSettingItem.swift in Sources */, - B9825DB0E8667C284F567E09 /* SBUGroupChannelSettingsModule.swift in Sources */, - 78D0CA943C500B8586358A35 /* SBUGroupChannelSettingsModule.Header.swift in Sources */, - 6D2EB25E744C3C91A9CFC37C /* SBUGroupChannelSettingsModule.List.swift in Sources */, - 3F47A7ABEC8005C2D48B1928 /* SBUBaseChannelSettingsModule.swift in Sources */, - 275E3CA8725E02326F819881 /* SBUOpenChannelSettingsModule.List.swift in Sources */, - 0B1C9ADC0514277EFA2429A1 /* SBUOpenChannelSettingsModule.swift in Sources */, - 4FB49AC3F9486A60B243A37C /* SBUOpenChannelSettingsModule.Header.swift in Sources */, - 0141EE1EC1D8AA4E735465B1 /* SBUUserListModule.swift in Sources */, - 69EF97D4478580705099F3F5 /* SBUUserListModule.List.swift in Sources */, - EBDA023941D6416341745318 /* SBUUserListModule.Header.swift in Sources */, - 489799C238E7FD8D4756A176 /* SBUModuleSet.swift in Sources */, - 82201A59965587E0276BDB08 /* SBUMessageSearchModule.Header.swift in Sources */, - 5C7B885BE5A62DE604C16F55 /* SBUMessageSearchModule.List.swift in Sources */, - D6653A2DA6826FF0A17225E5 /* SBUMessageSearchModule.swift in Sources */, - BE12A5C2D645067BAA85641B /* SBUMessageThreadModule.List.swift in Sources */, - D46DDAEB09D018C8F3D6DA16 /* SBUMessageThreadModule.swift in Sources */, - 42B7E34F6291D141A1BE1EA4 /* SBUMessageThreadModule.Input.swift in Sources */, - 3F16F6FCF0CBC490BABABAEB /* SBUMessageThreadModule.Header.swift in Sources */, - 7191FD9C78168C882BC55B4E /* SBUModerationsModule.List.swift in Sources */, - 2264B75D06F1E42FCB891192 /* SBUModerationsModule.swift in Sources */, - 8E117794E10E892418943AFF /* SBUModerationsModule.Header.swift in Sources */, - 0882CE77886C90D46A56EE4F /* SBURegisterOperatorModule.List.swift in Sources */, - AE46E3EA166D20BE004FD5F0 /* SBURegisterOperatorModule.Header.swift in Sources */, - D14B888C57F480BE233DE88F /* SBURegisterOperatorModule.swift in Sources */, - 9583E1850230519E28DAA3B4 /* SBUInviteUserModule.List.swift in Sources */, - DBCB614FF5146494B9BB0997 /* SBUInviteUserModule.swift in Sources */, - D5DEAB148F660AF204DB5EAA /* SBUInviteUserModule.Header.swift in Sources */, - A6981DC19212D3C8800374E3 /* SBUBaseSelectUserModule.Header.swift in Sources */, - C8D571D43E4F4FBF0B2BB5A9 /* SBUBaseSelectUserModule.swift in Sources */, - 49AC7F34FA52F4DEF4482C21 /* SBUCreateOpenChannelModule.ProfileInput.swift in Sources */, - AC3F8B2A1ADF4466753600B7 /* SBUCreateChannelModule.swift in Sources */, - 73E8843269DC1DEC746432E7 /* SBUCreateOpenChannelModule.swift in Sources */, - A15E243152B8A8E85D821D12 /* SBUCreateOpenChannelModule.Header.swift in Sources */, - 396A5A9E80930E6C46274EB3 /* SBUCreateChannelModule.Header.swift in Sources */, - 57ACA513482EAC1FA792D64A /* SBUCreateChannelModule.List.swift in Sources */, - 5D254FFF3509F0B775C5FED3 /* SBUBaseSelectUserModule.List.swift in Sources */, - B2FE64CDC7FE3ADF6A725E29 /* VoiceMessageStatus.swift in Sources */, - 3322422192BFF0340FEC2AD7 /* SBUIconSetType.swift in Sources */, - 2B3CBE693899A36B6E5B8C28 /* SBUEnums.swift in Sources */, - 3F01448353EEE25534AD2F24 /* MessageTemplateTestViewController.swift in Sources */, - B397017166585F8E03884391 /* MessageTemplateRenderer.Image.swift in Sources */, - B1038197A552192A4314C5F4 /* MessageTemplateParser.swift in Sources */, - 665BEC4CF9823579F7AAC91C /* MessageTemplateRenderer.swift in Sources */, - 558EA6EFF69965182807E08A /* CommonProtocols.swift in Sources */, - DDB66AA7CDF0735EB9DFFD31 /* SBUEmojiManager.swift in Sources */, - 7F9FC61E12D4F12B743AB65C /* SBUCacheManager.Config.swift in Sources */, - 96DBEAF39A4A4C77120910F6 /* SBUCacheManager.Version.swift in Sources */, - 4827144ADCAEA6142BA70918 /* SBUCacheManager.File.swift in Sources */, - 50F4CA804D63488760625020 /* SBUCacheManager.Template.swift in Sources */, - E23E71133C0965A95BA15907 /* SBUCacheManager.Image.swift in Sources */, - 9BFC16B3A9157033CD1833C9 /* SBUCacheManager.swift in Sources */, - 8E4045A9ACE5076A9CF4C8A8 /* SBUCacheManager.NotificationSetting.swift in Sources */, - 9E140E46E93506356F414007 /* SBUVoicePlayer.swift in Sources */, - D64FAECBDE563D493CF47407 /* SBUNotificationChannelManager.swift in Sources */, - B339FDAB937FE1A8D3EE78D8 /* SBUTypingIndicatorMessageManager.swift in Sources */, - 5B86E459AABD409788D531F1 /* SBUPendingMessageManager.swift in Sources */, - 95F45926B388268447515C27 /* SBUDownloadManager.swift in Sources */, - 7758E7AB829F06C5A9192FCD /* SBUVoiceRecorder.swift in Sources */, - E2E19B516B7E56B6CDBEC963 /* SBUPermissionManager.swift in Sources */, - 33104F7AD5AC20AE9DE2837C /* SBUToastManager.swift in Sources */, - 19DF828A0962CF4F1DF292C2 /* SBUGlobalCustomParams.swift in Sources */, - 8985AB8BB608D7E14F81DE8C /* SBUStringSet.Deprecated.swift in Sources */, - 53A4F77A17604D256ADA9B6B /* SBUDateFormatSet.swift in Sources */, - 6E4F5A02569AEF20FD0E6F58 /* SBUConstant.swift in Sources */, - 57387FA8ED8266C7923BEE76 /* SBUStringSet.swift in Sources */, - 20038F327FF4BEBBF5755EBC /* SBUIconSet.swift in Sources */, - 721E34058E8CC075D70F023D /* SBUColorSet.swift in Sources */, - 0C32577E6DFEDED6999DAE34 /* SBUTheme+Type.swift in Sources */, - DD58C7FF6E467068F81F8319 /* SBUFontSet.swift in Sources */, - B5A42D78D6B25317E5DB889E /* SBUTheme.swift in Sources */, - 0E5FAA8D60AA7B836D348128 /* SBUExtendedMessage.swift in Sources */, - E0BF8074971661C52DA00FF8 /* SBUTypingIndicatorMessage.swift in Sources */, - 9C86574CC6F0CEE770C20D3A /* SBUMention.swift in Sources */, - 9DC6B1E7812553DF2C033653 /* SBUMessageCache.swift in Sources */, - A848EF8289613FE1E99D048A /* SBUUser.swift in Sources */, - B0FAF203FC8AAC5C4DF4992B /* SBUVoiceFileInfo.swift in Sources */, - F58DACDD1B167CDADC480A61 /* SBUTypingIndicatorInfo.swift in Sources */, - 3922BA98027A00C793C23643 /* SBUHighlightMessageInfo.swift in Sources */, - E1C38CE490C6B2630BEB21ED /* SBUForms.swift in Sources */, - CC8ADA338627002C918CA800 /* SBUBaseViewController.swift in Sources */, - 6629DF0F58BA20D8AA370FC5 /* SBUOpenChannelCell.swift in Sources */, - 908D39582CCA0BD873CCE0F5 /* SBUGroupChannelCell.swift in Sources */, - 39C460AFC615EB969453807D /* SBUBaseChannelCell.swift in Sources */, - 0C904F9438F44AE83A2268CC /* SBUBaseChannelListViewController.swift in Sources */, - E05A98A1377DCBFAA4AFBAC7 /* SBUGroupChannelListViewController.swift in Sources */, - 7FD01ABA21A4FE426DB2051E /* SBUOpenChannelListViewController.swift in Sources */, - A63D7BD9E1882F75004689D3 /* SBUChannelPushSettingCell.swift in Sources */, - 5842E68872B46F05250632E0 /* SBUGroupChannelPushSettingsViewController.swift in Sources */, - A5A40D4CC8D835BC419C79CB /* SBUUserMessageTextViewModel.swift in Sources */, - 372F2F8FA62F3DCDE094B93F /* SBUMessageWebViewModel.swift in Sources */, - 83B4A3C04842B93236A90B07 /* SBUParentMessageInfoReactionView.swift in Sources */, - E7608600949FFE0127366829 /* SBUReactionCollectionViewCell.swift in Sources */, - A85F11E322101F00D2A8E5D5 /* SBUReactionsViewController.swift in Sources */, - F163CF1830181409AB529FA0 /* SBUMessageReactionView.swift in Sources */, - 2257B1EDC8FFEFD2B80BB7F6 /* SBUEmojiListViewController.swift in Sources */, - F754E1AC8E91410C53933D82 /* SBUFeedNotificationChannelViewController.swift in Sources */, - BD73AE04257F44F43F55D29E /* SBUBaseChannelViewController.swift in Sources */, - 096D23D8168205DA952D5425 /* SBUMultipleFilesMessageCellParams.swift in Sources */, - 9D57417AC9EDF0631BDD62A2 /* SBUTypingMessageCellParams.swift in Sources */, - A8E11429D8B0B601F6711140 /* SBUUserMessageCellParams.swift in Sources */, - 211B7CB6F9946D31ACE5DA7A /* SBUUnknownMessageCellParams.swift in Sources */, - 42BB0F89D6AE9F1AB239C21C /* SBUFeedNotificationCellParams.swift in Sources */, - 80714D490E290AE3CA38A056 /* SBUAdminMessageCellParams.swift in Sources */, - 2509E2DC10AEBB3D9F4B1D32 /* SBUBaseMessageCellParams.swift in Sources */, - C2829D2D5FEEB135FD323FEC /* SBUFileMessageCellParams.swift in Sources */, - D447922ABC2400AED168D7FF /* SBUTypingIndicatorMessageCell.swift in Sources */, - 793B39CCF61631DA20B57733 /* SBUFormViewParams.swift in Sources */, - 2758BB1F43A83A801214CC53 /* SBUFormView.swift in Sources */, - 520842D0AB22D3A33061420F /* SBUFormFieldView.swift in Sources */, - D9766F0290AFFA47F6BBC5A1 /* SBUBaseFileContentView.swift in Sources */, - 2F140250B4C1355F441E55DE /* SBUOpenChannelCommonContentView.swift in Sources */, - 3DDF81BF2D9A02219A3326F1 /* SBUVoiceContentView.swift in Sources */, - 55165A05F3D9976FFA1AE288 /* SBUImageContentView.swift in Sources */, - 4C8D3548C672258602060B7A /* SBUCommonContentView.swift in Sources */, - F1DC74DB1189EB12A85BCE63 /* SBUOpenChannelImageContentView.swift in Sources */, - 850819ADC10700BFAE4CC9C8 /* SBUSuggestedReplyViewParams.swift in Sources */, - 3A6717DA4DE84E7E2A8BD4F1 /* SBUSuggestedReplyView.swift in Sources */, - 8001936C5E488386C3E4F709 /* SBUSuggestedReplyOptionView.swift in Sources */, - 5B4049E5FF9C286ACC0A1681 /* SBUNotificationCell.swift in Sources */, - 05F458061A71382C4A3CE165 /* SBUFeedNotificationCell.swift in Sources */, - 6BB4CD411C27F8D2274E1D93 /* SBUChatNotificationCell.swift in Sources */, - DBA9FFB7EC228EB5799607A6 /* QuotedFileCommonContentView.swift in Sources */, - 1075F2D696E9D85DF87F2485 /* SBUQuotedBaseMessageView.swift in Sources */, - 22C9253FF10AE0A46BA844A5 /* SBUThreadInfoView.swift in Sources */, - B519637CDA53EDD301DEE688 /* QuotedFileImageContentView.swift in Sources */, - 6D79AEDFEFD1B0F30FD55D82 /* SBUQuotedFileMessageView.swift in Sources */, - F71F614AA61C9CF143089C30 /* SBUQuotedUserMessageView.swift in Sources */, - 59150488322135F672FDC96F /* SBUQuotedBaseMessageViewParams.swift in Sources */, - C01F3B7CF0BE22914B1A572B /* SBUMultipleFilesMessageCollectionViewCell.swift in Sources */, - EFC83EC5AA3456B7999A4C6D /* SBUMultipleFilesMessageCollectionView.swift in Sources */, - 664EC41D322AFD8F5C7183DB /* SBUMultipleFilesMessageCell.swift in Sources */, - 48E055B78B51A6B4133C7D1E /* SBUBaseMessageCell.swift in Sources */, - BF118DF2B5525745A2F9F30D /* SBUOpenChannelFileMessageCell.swift in Sources */, - E60A2D11B1A5962BA38596B9 /* SBUOpenChannelAdminMessageCell.swift in Sources */, - F395759140B66F435FBA2ED3 /* SBUOpenChannelContentBaseMessageCell.swift in Sources */, - 688CA30FBDFF1DA24BE82A45 /* SBUOpenChannelUserMessageCell.swift in Sources */, - 2D28694E9FBEAC618E87B365 /* SBUOpenChannelUnknownMessageCell.swift in Sources */, - 40F6A1C3DF997610DBA02728 /* SBUOpenChannelBaseMessageCell.swift in Sources */, - BAF9B1915CB6DB6729FFC9BE /* SBUExtendedMessagePayloadCustomViewFactory.swift in Sources */, - EB19D9FD838D0A8760B58E5D /* SBUFileMessageCell.swift in Sources */, - BF0AD5A04520C4A83A8A4227 /* SBUAdminMessageCell.swift in Sources */, - 12534B2341F3CB15A455C8E7 /* SBUContentBaseMessageCell.swift in Sources */, - A704AB807949CBFE1C692D14 /* SBUUnknownMessageCell.swift in Sources */, - CCAEAC16F5F5EBC0728E52C3 /* SBUUserMessageCell.swift in Sources */, - 7757B4E91C37EDB2DC883095 /* SBUGroupChannelViewController.swift in Sources */, - 9AC8D0B19580BCF3F21461C5 /* SBUMentionLimitGuideCell.swift in Sources */, - 5420CB6E19F9640E8AE9C199 /* SBUSuggestedMentionList.swift in Sources */, - 436234D077218FB75C21207F /* SBUQuoteMessageInputView.swift in Sources */, - 1C9FF660170D52EF4597F5E9 /* SBUMessageInputMode.swift in Sources */, - F3A2E2AAA2BBAA7C156349C2 /* SBUQuoteMessageInputViewParams.swift in Sources */, - 7A1A01CCD959089EE4962B4D /* SBUMessageInputView.swift in Sources */, - 29DBE4F59B616043A463161D /* SBUCategoryFilterCell.swift in Sources */, - B0F15E2BE45E6675E0C576A9 /* SBUMessageStateView.swift in Sources */, - 6E45C6DFA6882072DBB0D90A /* SBUMessageProfileView.swift in Sources */, - 3496FAC459A2BDC09A210B96 /* SBUUserMessageTextView.swift in Sources */, - EAA0B56435A932E17D43A915 /* SBUUserNameView.swift in Sources */, - CF50B1DCF6A6280C5E981465 /* SBUMessageWebView.swift in Sources */, - D1897325CD5C65752391A26C /* SBUMessageDateView.swift in Sources */, - 8DD839333E5563660296875D /* SBULinkClickableTextView.swift in Sources */, - 41FC7B7115F274676D0750F4 /* SBUOpenChannelMessageWebView.swift in Sources */, - E7994014FEBFEC6C9430C113 /* SBUSelectableStackView.swift in Sources */, - 7AFB73765C1756B543C29BE3 /* SBUNotificationTimelineView.swift in Sources */, - 5AD7D560E7F97D2DEF3FCC9A /* SBUFileViewController.swift in Sources */, - E9E6BAF747AFB0EA8F8B6391 /* SBUBaseChannelViewController.Keyboard.swift in Sources */, - 6C4D3FB63EC39FFD947FD0AB /* SBUChatNotificationChannelViewController.swift in Sources */, - DF4F895BD5337CA0D15D0900 /* SBUNewNotificationInfo.swift in Sources */, - 21864FAF988EEB1CC6FA226A /* SBUNewMessageInfo.swift in Sources */, - D1252E222B12E2A9301DB1D3 /* SBUOpenChannelViewController.swift in Sources */, - 67A41441799BE1CFFF91A122 /* SBUChannelInfoHeaderView.swift in Sources */, - F1B205137AFDF5875AD3E625 /* SBUChannelTitleView.swift in Sources */, - 6D8B4433F92FD99F1AF214DE /* SBUBaseChannelSettingsViewController.swift in Sources */, - A0D2E22548834B0296CF84CC /* SBUOpenChannelSettingsViewController.swift in Sources */, - 7AB83BDABC76011F982D841B /* SBUOpenChannelSettingCell.swift in Sources */, - 7A5040DE89E5F993ACA04276 /* SBUBaseChannelSettingCell.swift in Sources */, - 11A61F948996A1B269EF9ACE /* SBUModerationCell.swift in Sources */, - 1C27FC63FD4268EB143BB335 /* SBUGroupChannelSettingCell.swift in Sources */, - 64679FB47191772AB9023709 /* SBUChannelSettingsChannelInfoView.swift in Sources */, - 2F7D36B89E98C047ED3ABB27 /* SBUGroupChannelSettingsViewController.swift in Sources */, - E8E0FD775B72996AD5A6D901 /* SBUVoiceMessageInputView.swift in Sources */, - DEF440D632C0EF964BCA75EA /* SBUStackView.swift in Sources */, - 1A73031654C74DE8091E6D2A /* SBUAnimation.swift in Sources */, - 3D5C8523E89B36FE7E3899B4 /* SBUEmptyView.swift in Sources */, - A03E598ADF71F87548DB9BF5 /* SBUCoverImageView.swift in Sources */, - 814EA10ED179AB7A4E9B2C3A /* SBUPhotoAccess.swift in Sources */, - A7A27504BCB810C77A8E5221 /* SBUPhotoCollectionViewCell.swift in Sources */, - A11B452F0CF02986295CE466 /* SBUSelectablePhotoViewController.swift in Sources */, - 0E61618FCBFC6CB16DE83780 /* SBUPaddingLabel.swift in Sources */, - 398EDA99D303E26A5FDF1E74 /* SBUCommonItem.swift in Sources */, - A30EDA84A5E2EA3E38F4FE83 /* SBULayoutableButton.swift in Sources */, - CEB96786831783EE4A1FF55A /* SBUUserProfileView.swift in Sources */, - EDCB09D551FE312E339108A1 /* SBUNavigationTitleView.swift in Sources */, - 39F7A3E96158AC68261055CC /* SBUNotificationNavigationTitleView.swift in Sources */, - 63555A32656D7B1E0B967648 /* SBUBarButtonItem.swift in Sources */, - 4667E77C17D6E4B242B52197 /* SBUActionSheet.swift in Sources */, - 3FDD0899344ABCB90091AA7F /* SBUNotificationEmptyView.swift in Sources */, - 092458461544B46017D5B3D5 /* SBUAlertView.swift in Sources */, - D265A075986A4FC7BFA756F1 /* SBUMenuSheetViewController.swift in Sources */, - 3857060A83D15B251B1E1B09 /* SBUMenuCell.swift in Sources */, - 7E55C7D0D04109973718EF47 /* SBUMenuView.swift in Sources */, - 96232E04940DD92C50EA0730 /* SBUBottomSheetController.swift in Sources */, - 1480919994CCAAB78EF481CE /* SBUUnderLineTextField.swift in Sources */, - 1BAFBEF239F30DA038A0C227 /* SBUUserCell.swift in Sources */, - 8F1B9E9B839A1DA222B60C79 /* SBUTemplateLabel.swift in Sources */, - 702A9D56C67A4CF2F7005FBE /* SBUMarginView.swift in Sources */, - 83BEE4B0BCBD46D5DE6073AD /* SBUTypingIndicatorBubbleView.swift in Sources */, - 78210830DBB777C04F173E3F /* SBUCommonViewControllerSet.swift in Sources */, - E8B87C98A0DFA3D7CF95A0E0 /* SBULoading.swift in Sources */, - B32D962BE03879E4FBC62991 /* SBUCollectionViewFlowLayout.swift in Sources */, - E3F00AD8A78E0B6C0CB79306 /* SBUUserListViewController.swift in Sources */, - 6D1FA82B7BD3DDE132669C4C /* SBUViewControllerSet.swift in Sources */, - 131BF1B8B19186C718BA30A6 /* SBUMessageSearchViewController.swift in Sources */, - 4CEB71721FF6F4C8AD1ED082 /* SBUMessageSearchResultCell.swift in Sources */, - E8587C7BC0087D51FEB2E3EA /* SBUTableViewCell.swift in Sources */, - 1FD6DC653399375A3947A1A8 /* SBUCollectionViewCell.swift in Sources */, - 8F5D2B1CF096D2534E47F18D /* SBUQuoteMessageInputViewProtocol.swift in Sources */, - 93DFA480797F6C649C5E7491 /* SBUMessageCellProtocol.swift in Sources */, - B18FE95D77DC43A429FF6547 /* SBUViewLifeCycle.swift in Sources */, - C563496A9CE0A244D224964F /* SBUQuotedMessageViewProtocol.swift in Sources */, - 96E4C88C845F27ABA1735EC5 /* SBUView.swift in Sources */, - E0A2FC6A3039FC90E879EB42 /* SBUMessageThreadViewController.swift in Sources */, - 2F53D6B171B1AC773070D643 /* SBUMessageThreadTitleView.swift in Sources */, - 3C9294F3951A03D54B4619E6 /* SBUParentMessageInfoView.swift in Sources */, - 4DC2A00859C06EFA2AC934D0 /* SBUModerationsViewController.swift in Sources */, - D5F692533E568D088A5C4D81 /* SBURegisterOperatorViewController.swift in Sources */, - DF7CF0AE2912017233C2525C /* SBUBaseSelectUserViewController.swift in Sources */, - B661AB38624AB56F9D68177D /* SBUInviteUserViewController.swift in Sources */, - 6D72842A87189C04E069596E /* SBUCreateChannelTypeSelector.swift in Sources */, - 6D34DEBF62201CCEA10CB597 /* SBUCreateChannelViewController.swift in Sources */, - 3747BE6B797F1947D30C1466 /* SBUCreateOpenChannelViewController.swift in Sources */, - D97717B619658828A72E3DFD /* SBUGlobals.swift in Sources */, - 51750291ABA08DCF3966BDC5 /* SBUTableViewCell.Unavailable.swift in Sources */, - FA22DE8D831D929ED8D6D408 /* SBUChannelListViewController.Deprecated.swift in Sources */, - 3D99C9CE32FB2EF16EC9147D /* SBUBaseMessageCellParams.Deprecated.swift in Sources */, - 91265440B5945A9CA8F8E896 /* SBUQuotedBaseMessageViewParams.Deprecated.swift in Sources */, - 25E75E3C0DDF78EDD590CE0A /* SBUContentBaseMessageCell.Deprecated.swift in Sources */, - 14A7974210520D3D54D080DC /* SBUBaseChannelViewController.Deprecated.swift in Sources */, - 7A688377C5A61AA7B1887F70 /* SBUGroupChannelViewController.Unavailable.swift in Sources */, - 1AAAE1D996496AD7579D475D /* SBUOpenChannelViewController.Deprecated.swift in Sources */, - BE192873B462B1467640E992 /* SBUOpenChannelViewController.Unavailable.swift in Sources */, - 0D9479E7AD1D322C25090069 /* SBUGroupChannelViewController.Deprecated.swift in Sources */, - FA72881B180F1A865C11AE6A /* SBUBaseChannelViewController.Unavailable.swift in Sources */, - EC2F53A5CC8909F5FCCADB7D /* SBUBaseChannelSettingsViewController.Deprecated.swift in Sources */, - D1B1E639DA68B63AB24D5C32 /* SBUBaseViewController.Unavailable.swift in Sources */, - C61B5E8403DA9375827E347D /* SBUMemberListViewController.Deprecated.swift in Sources */, - 86F96939BF7FB584C090C1CE /* SBUBaseSelectUserViewController.Deprecated.swift in Sources */, - 41572A20CA1EF7531648D645 /* SBUMessageSearchViewController.Deprecated.swift in Sources */, - 038A9042B005122E8CE46F89 /* SBUView.Unavaliable.swift in Sources */, - 6A8EE710C00EED877E6011BE /* SBUGlobals.Deprecated.swift in Sources */, - B4EB388F5B279E3F11423E60 /* SBUCoverImageView.Deprecated.swift in Sources */, - D28323701294B6608FBE0D7D /* SBUModerationsViewModel.Deprecated.swift in Sources */, - B96F73E9CF37D7EB99E78F58 /* SBUModerationsViewController.Deprecated.swift in Sources */, - 67CAB36D29CEB576DDE03271 /* SBUTheme.Deprecated.swift in Sources */, - E5CC7EFEA4DB37D73A3FE88C /* SBUCreateChannelViewController.Deprecated.swift in Sources */, - 6079098968E3A13FCD7CB40F /* SBUModuleSet.Deprecated.swift in Sources */, - 7AAFEB605317B61A12E928A5 /* SBUEnums.Deprecated.swift in Sources */, + 2E9850E72B1EEC0B00EA4F39 /* GroupChannelViewModel_AdditionalFeatures.swift in Sources */, + 2E9850EC2B1EEC4B00EA4F39 /* PaddedLabel.swift in Sources */, + 2E9850E32B1EEBA900EA4F39 /* ChannelVC_AdditionalFeatures.swift in Sources */, + 04BFBFE762B25132D7D46785 /* SBUViewModelDelegate.swift in Sources */, + 85FF85F571CAC0BFFB2CFBD9 /* SBUGroupChannelListViewModel.swift in Sources */, + 9509FFEFBE2B7BC8B5569507 /* SBUOpenChannelListViewModel.swift in Sources */, + F784BA771500AD55352620F4 /* SBUBaseChannelListViewModel.swift in Sources */, + E361147FDB1B044F81FD4C45 /* SBUGroupChannelPushSettingsViewModel.swift in Sources */, + C8833B6B3EBC200AF8E291DF /* SBUFeedNotificationChannelViewModel.swift in Sources */, + E87220089500ACECFBE23D3B /* SBUOpenChannelViewModel.swift in Sources */, + CDE9898F58577C42EE3CCEC0 /* SBUBaseChannelViewModel.swift in Sources */, + 43575876F63303BB164836DD /* SBUChatNotificationChannelViewModel.swift in Sources */, + EC9D82B34FF4AFBD9EA80A22 /* SBUGroupChannelViewModel.swift in Sources */, + EA9742E6860A604F79BC2813 /* SBUBaseChannelSettingsViewModel.swift in Sources */, + A013D3C00ED28C21CF259248 /* SBUModerationsViewModel.swift in Sources */, + 36F3F6965C2506BCBF684857 /* SBUGroupChannelSettingsViewModel.swift in Sources */, + 0D1E85118BAABDFFCAB56B5C /* SBUOpenChannelSettingsViewModel.swift in Sources */, + F47C1362A4CFE20333B5C200 /* SBUCommonDelegate.swift in Sources */, + 19442580697F6DAAEC7DD2B9 /* SBUUserListViewModel.swift in Sources */, + 64789B1FB9D51D71A47609B0 /* SBUMessageSearchViewModel.swift in Sources */, + A0C5E85177CB42F291D21F31 /* SBUMessageThreadViewModel.swift in Sources */, + EF9E45ED168DEE2864942E80 /* SBUBaseSelectUserViewModel.swift in Sources */, + 0BB262DD2FD0F7E58E56DEFB /* SBURegisterOperatorViewModel.swift in Sources */, + 4292DC5939331E49F844FD6C /* SBUCreateChannelViewModel.swift in Sources */, + 543F6083BF97D0430E10DCA5 /* SBUCreateOpenChannelViewModel.swift in Sources */, + 192C5EC52AD78A23C8BC25D5 /* SBUInviteUserViewModel.swift in Sources */, + 1E9C3907901437518A1BC260 /* SBUScrollPostionConfiguration.swift in Sources */, + 1755C521495BD79FE3677E14 /* SBUMessageCellConfiguration.swift in Sources */, + 224F376A0B5D067EC80FD3A7 /* SBUReplyConfiguration.swift in Sources */, + 9842830CF1DE5835B0001D5F /* SBUConfigManager.swift in Sources */, + 06FDC17D33B6D8E80FB83CF3 /* SBUConfig.OpenChannel.swift in Sources */, + 08CF5B97EB6B390840FF194D /* SBUConfig.swift in Sources */, + C733F70F30C2ABE52B7F2535 /* SBUVoiceMessageConfiguration.swift in Sources */, + 8EDAAFF8837FD7BCFC7DFA9B /* SBUConfig.Base.swift in Sources */, + 00D11268496B6E366BAD380A /* SBUConfig.GroupChannel.swift in Sources */, + 1BC14E6E73E3FBADBCBA9CDC /* SBUMentionConfiguration.swift in Sources */, + E0A792AD4728B909E14CAFE6 /* SBUUserMentionConfiguration.swift in Sources */, + 090A7E42FA08AA969CC464DA /* SBUConfig.Common.swift in Sources */, + B29A74B396AD17DFACCAFEC7 /* SBUDashboardConfig.swift in Sources */, + D922A4C97FE3039FB3BA7AB5 /* SBUConfig.CodingKeys.swift in Sources */, + 6F928DF6307EB2C6C47801BB /* UIStackView.SBUIKit.swift in Sources */, + BC0278521AEA96C20FF5EEE2 /* URL+SBUKit.swift in Sources */, + 2B9A4630BBD95E7A71A17F87 /* Array+SBUIKit.swift in Sources */, + 1B595747F7BAC4DCED210A10 /* UIColor+SBUIKit.swift in Sources */, + 43EFB78F7552C38894B2491E /* Formatter+SBUIKit.swift in Sources */, + FC0CFE16CBD41E13AD42C220 /* UIImage+SBUIKit.swift in Sources */, + 9BF93618B5CF55C981FB9A16 /* NSLayoutConstraint+SBUIKit.swift in Sources */, + 1D3762712B81E4D102534657 /* UIButton+SBUIKit.swift in Sources */, + 304927150788C17400A20744 /* UINavigationController+SBUIKit.swift in Sources */, + 30A133488518DBB621AACE58 /* BaseMessage+SBUIKit.swift in Sources */, + 1667FD8586947825A22FA38E /* MultipleFilesMessage+SBUIKit.swift in Sources */, + AFFF0E22B6CB25BBEB787DB9 /* String+SBUIKit.swift in Sources */, + B7635FDD17CE825C3DB724ED /* CGSize+SBUIKit.swift in Sources */, + 3DB18BAEF463256E7F97C7AC /* Float+SBUKit.swift in Sources */, + F51CA29CB17C22A2286D6B9A /* Data+SBUIKit.swift in Sources */, + 24EDF941D65976A8C1C1FB26 /* UIViewController+SBUIKit.swift in Sources */, + 835DA48E5D66B47869DA767B /* Date+SBUIKit.swift in Sources */, + 3EA63529C69BD7E9DC029706 /* StringProtocol+SBUIKit.swift in Sources */, + 616254F50366AF5C0AB589CC /* UIApplication+SBUIKit.swift in Sources */, + EC007C44202E79B264BEF205 /* UIView+SBUIKit.swift in Sources */, + 6FD1B70EB1CCBE051CAF8FA6 /* Sequence+SBUIKit.swift in Sources */, + 6B4972D897508F0805EC64F0 /* UIImageView+SBUIKit.swift in Sources */, + E22C9C1CAC224DFB7383EB1E /* NSObject+SBUIKit.swift in Sources */, + 1D8A896BA7D70E6211DAD648 /* UITextField+SBUIKit.swift in Sources */, + C65ED1F8484CE9BE055F8A5E /* SBUPropertyWrapper.swift in Sources */, + 34431D39A4B0F9092E1CE08A /* BlockingOperation.swift in Sources */, + 3BACE6D76E8136184A15626C /* SBUUtils.swift in Sources */, + 1369DF3B5E7E16A2EC1E0974 /* SBULogger.swift in Sources */, + FE7D6E479BA0C265D1860D25 /* SBUMentionManager.swift in Sources */, + 502F474BAA1649358C3E0854 /* SBUDebouncer.swift in Sources */, + 759DE0218BA0C165D4A49EB0 /* SendbirdUI.swift in Sources */, + E17C3272B14F3E8DF6DE2AC1 /* SBUAvailable.swift in Sources */, + 7AD43509173F965648C07930 /* SBUBaseChannelListModule.swift in Sources */, + B93A2F652F489AE2770B8BCF /* SBUGroupChannelListModule.List.swift in Sources */, + BD845BBE8C02B4C10C6212E2 /* SBUGroupChannelListModule.swift in Sources */, + C5109CB250282522BBC1E27C /* SBUGroupChannelListModule.Header.swift in Sources */, + DAC6759825D8657D7B2FD408 /* SBUBaseChannelListModule.Header.swift in Sources */, + D35CAD4B9BEBEEE4B44E23D5 /* SBUBaseChannelListModule.List.swift in Sources */, + 80CB325ED9DEC0D6BD665F43 /* SBUOpenChannelListModule.swift in Sources */, + 8D073F09996C6000E67063B7 /* SBUOpenChannelListModule.List.swift in Sources */, + 3611946401D23F425360054A /* SBUOpenChannelListModule.Header.swift in Sources */, + 291319A2D12D98635A439CCE /* SBUGroupChannelPushSettingsModule.List.swift in Sources */, + 86DE6F30BB635BE6088359DE /* SBUGroupChannelPushSettingsModule.swift in Sources */, + E5FA92CCB71E9EF5C9937361 /* SBUGroupChannelPushSettingsModule.Header.swift in Sources */, + E345107886178720F51FDBD5 /* SBUGroupChannelModule.Input.swift in Sources */, + C044A4A853CB3E5664287B6C /* SBUGroupChannelModule.List.swift in Sources */, + B6156EFA13A92F1AE06CA05C /* SBUGroupChannelModule.Header.swift in Sources */, + CCDE392ED59DA36635F73C59 /* SBUGroupChannelModule.swift in Sources */, + 8F6884055A9CD29D7913E8CF /* SBUChatNotificationChannelModule.swift in Sources */, + A326E5FE4C722959BD4A57C7 /* SBUChatNotificationChannelModule.List.swift in Sources */, + E54FF7C07301421176CA2BEB /* SBUChatNotificationChannelModule.Header.swift in Sources */, + FD4AA8A51B7D4BCFAD4C9DAA /* SBUFeedNotificationChannelModule.Header.swift in Sources */, + 79C9A6741D9BFBBAD2C1AEEF /* SBUFeedNotificationChannelModule.List.swift in Sources */, + 0BAB66DBC1D23301F3CD8B63 /* SBUFeedNotificationChannelModule.CategoryFilter.swift in Sources */, + 415BEF93DDC1AA00F8810F76 /* SBUFeedNotificationChannelModule.swift in Sources */, + 45CA1E0435FB208CFCD04321 /* SBUBaseChannelModule.Input.swift in Sources */, + 99138EC5EEE828E3DA0CF127 /* SBUBaseChannelModule.swift in Sources */, + AB06CF832C9920BAAEA097C1 /* SBUBaseChannelModule.Header.swift in Sources */, + ED2AE8B1CA974F7947768C6F /* SBUOpenChannelModule.List.swift in Sources */, + 8E4C758DC457A1AF3D013F3E /* SBUOpenChannelModule.Media.swift in Sources */, + 26780932EA8A7859DB9B6351 /* SBUOpenChannelModule.Input.swift in Sources */, + D9AA6BCA6EDD3BC5AD8ADA34 /* SBUOpenChannelModule.Header.swift in Sources */, + 46BDA21BCD554C3D18051DA4 /* SBUOpenChannelModule.swift in Sources */, + 410D2D9EC4AC5403E38ABE01 /* SBUBaseChannelModule.List.swift in Sources */, + A1B4EFE9E49F0D398356D6D8 /* SBUBaseChannelSettingsModule.Header.swift in Sources */, + 48BBA86A491D509F22584471 /* SBUBaseChannelSettingsModule.List.swift in Sources */, + 30CA44F3E2B500EBD95B38FB /* SBUChannelSettingItem.swift in Sources */, + D18659B3CDE3F027727201B1 /* SBUGroupChannelSettingsModule.swift in Sources */, + 74D9137B47CC6A3716D54D1F /* SBUGroupChannelSettingsModule.Header.swift in Sources */, + B8F13CB361E0382D81E54510 /* SBUGroupChannelSettingsModule.List.swift in Sources */, + 9C0A6090583C3AFEE1569181 /* SBUBaseChannelSettingsModule.swift in Sources */, + 81F83A7C6BD9F88E27B1B0C6 /* SBUOpenChannelSettingsModule.List.swift in Sources */, + 87CAEBE02DEF4FB43A49C808 /* SBUOpenChannelSettingsModule.swift in Sources */, + 63C568470DE7C0029CCE3CAA /* SBUOpenChannelSettingsModule.Header.swift in Sources */, + BD9DCDFC84F9DBE561E900D6 /* SBUUserListModule.swift in Sources */, + 01849F34287E5A6C6A507277 /* SBUUserListModule.List.swift in Sources */, + B7CDFB2103A8635D8BC7AB4C /* SBUUserListModule.Header.swift in Sources */, + 1A94ED42EBD782A23AAD5B34 /* SBUModuleSet.swift in Sources */, + A34565D42410367FDC2DE838 /* SBUMessageSearchModule.Header.swift in Sources */, + CCDE4E63201F72501CAB0FBC /* SBUMessageSearchModule.List.swift in Sources */, + 12D643C7A8850F98E11B797F /* SBUMessageSearchModule.swift in Sources */, + 95170530F5B9AAB20CDC4EC1 /* SBUMessageThreadModule.List.swift in Sources */, + 127599EA5A662210C0B7DD37 /* SBUMessageThreadModule.swift in Sources */, + DC70F7896AEC23C6EA8A2ACE /* SBUMessageThreadModule.Input.swift in Sources */, + 17B05B2447CACC5605B73AA3 /* SBUMessageThreadModule.Header.swift in Sources */, + 45DA9E0E5FBEE27475F1B135 /* SBUModerationsModule.List.swift in Sources */, + F0DFA2A23FFBA087F4577BDA /* SBUModerationsModule.swift in Sources */, + 5990129DD401D5270042A9FF /* SBUModerationsModule.Header.swift in Sources */, + 62194DA20182B3F25FABCE51 /* SBURegisterOperatorModule.List.swift in Sources */, + EC25555D13F9AC74D033E205 /* SBURegisterOperatorModule.Header.swift in Sources */, + 5FA1D3C9C1F1F4D94A31A19F /* SBURegisterOperatorModule.swift in Sources */, + C6F06074D47CF97582E250DB /* SBUInviteUserModule.List.swift in Sources */, + 00627F6C540A66EA20416422 /* SBUInviteUserModule.swift in Sources */, + EC1900E50063B75085C09187 /* SBUInviteUserModule.Header.swift in Sources */, + 795A5150141436704A847DD7 /* SBUBaseSelectUserModule.Header.swift in Sources */, + 1091D01133DE50C415BD4770 /* SBUBaseSelectUserModule.swift in Sources */, + 396C66A46F09F31A0301A922 /* SBUCreateOpenChannelModule.ProfileInput.swift in Sources */, + 48B5B57E9538B6BFB92FFF58 /* SBUCreateChannelModule.swift in Sources */, + 1A2047263D9FBC21D04D3AC0 /* SBUCreateOpenChannelModule.swift in Sources */, + 901B46E3123C9723D5773DDD /* SBUCreateOpenChannelModule.Header.swift in Sources */, + 2656CAE5BECFFCF4FDF683F8 /* SBUCreateChannelModule.Header.swift in Sources */, + ABAF9BB3265FB89BFFD26140 /* SBUCreateChannelModule.List.swift in Sources */, + 5455820F2448D9C290508C06 /* SBUBaseSelectUserModule.List.swift in Sources */, + CCC15856E982AC130874F42C /* VoiceMessageStatus.swift in Sources */, + 3385247291A4CE45070D03DD /* SBUIconSetType.swift in Sources */, + 3EDBEE99BAE2FBD4E18D9F15 /* SBUEnums.swift in Sources */, + 55B483F179C71E6B8EECE1A6 /* MessageTemplateTestViewController.swift in Sources */, + 9693C93528124919ACA0AC76 /* MessageTemplateRenderer.Image.swift in Sources */, + EAAC6B5C5E8A6849ECCEBBBB /* MessageTemplateParser.swift in Sources */, + 7285FCBE1055AC51231B13C9 /* MessageTemplateRenderer.swift in Sources */, + 8E6F2632A85E64371E3D501D /* CommonProtocols.swift in Sources */, + 4F295B1F0EAA08025EEC89EE /* SBUEmojiManager.swift in Sources */, + 2284A6673959A1BE1B487BD5 /* SBUCacheManager.Config.swift in Sources */, + B884EFC36EBA92D1FF55454B /* SBUCacheManager.Version.swift in Sources */, + E494BEB01BF31AC8B5CCA3F1 /* SBUCacheManager.File.swift in Sources */, + EF7F870C459E43C91B3429C3 /* SBUCacheManager.Template.swift in Sources */, + 8EFA37E01C032C946E0CA30C /* SBUCacheManager.Image.swift in Sources */, + D2716DA130ADDC213C5198F4 /* SBUCacheManager.swift in Sources */, + 38ABBBA24FDDBD3A9184FBF2 /* SBUCacheManager.NotificationSetting.swift in Sources */, + D3C6454AFBCCB93C11076428 /* SBUVoicePlayer.swift in Sources */, + 471532FB80922CF773BC7398 /* SBUNotificationChannelManager.swift in Sources */, + D80032E47DB45A5C5576B7C2 /* SBUTypingIndicatorMessageManager.swift in Sources */, + EDDE6E7DB172A63BF5E4CC1A /* SBUPendingMessageManager.swift in Sources */, + EFDD69252581653F84F01611 /* SBUDownloadManager.swift in Sources */, + CE0CD3F6B0E62BD2635842AF /* SBUVoiceRecorder.swift in Sources */, + DDB48771363341D3EBF67097 /* SBUPermissionManager.swift in Sources */, + CA99FCFF22E3B12D0652A540 /* SBUToastManager.swift in Sources */, + 364722B92370625B020BC123 /* SBUGlobalCustomParams.swift in Sources */, + DC7E396E9734AAA3B352E65F /* SBUStringSet.Deprecated.swift in Sources */, + 886AE755ED1E1F4DCA2353BB /* SBUDateFormatSet.swift in Sources */, + D476A41897C0FEC489FDD332 /* SBUConstant.swift in Sources */, + 071B571BD5BD2DB29C3EEF0C /* SBUStringSet.swift in Sources */, + 6230A3F1A5E602B28C0C93D3 /* SBUIconSet.swift in Sources */, + 4DAADCF9DCA668F2D6203509 /* SBUColorSet.swift in Sources */, + 614F2CF8FA26AB83A0EEC983 /* SBUTheme+Type.swift in Sources */, + 641C2CEF19A65975D3012926 /* SBUFontSet.swift in Sources */, + 99429B19775A8CCBF295D285 /* SBUTheme.swift in Sources */, + 967A5E6C5F810FD88FCB46DE /* SBUExtendedMessage.swift in Sources */, + 30936A9EA4AA2C78AC9A0FF3 /* SBUTypingIndicatorMessage.swift in Sources */, + EEEB07E787BC48E9C6F1E141 /* SBUMention.swift in Sources */, + DF55240CD2C8A8ED24925B7A /* SBUMessageCache.swift in Sources */, + B7A4AEC413875E300830C7B7 /* SBUUser.swift in Sources */, + CECB34F183AD758C355FE7AA /* SBUVoiceFileInfo.swift in Sources */, + B155C5F7A444220E40014D43 /* SBUTypingIndicatorInfo.swift in Sources */, + 6CA9F4E75739185180AFF6A1 /* SBUHighlightMessageInfo.swift in Sources */, + BF13F9DA4B49616612B9B72D /* SBUForms.swift in Sources */, + 4EF3B2FE2BB2CBAC9F84C10E /* SBUScrollOptions.swift in Sources */, + 6BF03D544009C655C13C6114 /* SBUBaseViewController.swift in Sources */, + 417775016893662AD442EA10 /* SBUOpenChannelCell.swift in Sources */, + 3D66C2B50840FBCA3FC86887 /* SBUGroupChannelCell.swift in Sources */, + 0EC8827025F5A14DD4E3F3D2 /* SBUBaseChannelCell.swift in Sources */, + 46DE805202BC4BD93B363959 /* SBUBaseChannelListViewController.swift in Sources */, + B3089C737EA4BD3B7A537305 /* SBUGroupChannelListViewController.swift in Sources */, + 089103CD044BAB773CC6079A /* SBUOpenChannelListViewController.swift in Sources */, + 0513D6FDD75145BF744E3663 /* SBUChannelPushSettingCell.swift in Sources */, + AE503824007CDFA709DF0B45 /* SBUGroupChannelPushSettingsViewController.swift in Sources */, + E1574019CAE27C824E797780 /* SBUUserMessageTextViewModel.swift in Sources */, + 88F4331192910EB576F15B86 /* SBUMessageWebViewModel.swift in Sources */, + 4B24D06B527BC87BEA7757B6 /* SBUParentMessageInfoReactionView.swift in Sources */, + 0B5B3F9383C61D1B93F2D6C2 /* SBUReactionCollectionViewCell.swift in Sources */, + C1A0777FAE72ED0293E1C52A /* SBUReactionsViewController.swift in Sources */, + 23B4C1BA0B8C10983C9D5846 /* SBUMessageReactionView.swift in Sources */, + 8D2C13FE2CBCA19A6C3419FF /* SBUEmojiListViewController.swift in Sources */, + FC96990D0E890265EF8D20F0 /* SBUFeedNotificationChannelViewController.swift in Sources */, + B274F666E3564BE81D1C9C65 /* SBUBaseChannelViewController.swift in Sources */, + B75B76D4F552EF0E5C98C9DE /* SBUMultipleFilesMessageCellParams.swift in Sources */, + 1635618852E7D8FAE6FCD54A /* SBUTypingMessageCellParams.swift in Sources */, + C00AB912C1CFBF27C0BA01D7 /* SBUUserMessageCellParams.swift in Sources */, + B240990D2355966D259BB295 /* SBUUnknownMessageCellParams.swift in Sources */, + 229DCF6F4A2B57AD4506B5FF /* SBUFeedNotificationCellParams.swift in Sources */, + F3409951E84069B5062C9551 /* SBUAdminMessageCellParams.swift in Sources */, + C817A1EE7B0A6E67F033DE60 /* SBUBaseMessageCellParams.swift in Sources */, + 6C267B16901E669BD6A06612 /* SBUFileMessageCellParams.swift in Sources */, + 73845EBBD39BC08843ED3DFF /* SBUTypingIndicatorMessageCell.swift in Sources */, + BD41DB1E47D07C92403C304C /* SBUFormViewParams.swift in Sources */, + 4687053936AB1A78E41FD07F /* SBUFormView.swift in Sources */, + 11258060B283B5AF39A7FA45 /* SBUFormFieldView.swift in Sources */, + DD13DCBA0FCE5FCB5E239653 /* SBUBaseFileContentView.swift in Sources */, + 4A7C6734C94AD1542BAAC0A2 /* SBUOpenChannelCommonContentView.swift in Sources */, + 1EDEFF4B56AF1AE7D3BD2ACF /* SBUVoiceContentView.swift in Sources */, + 85BFF3BE5ADD078254584655 /* SBUImageContentView.swift in Sources */, + 30E0065084627A7F36C23703 /* SBUCommonContentView.swift in Sources */, + 29EDAD63E7AA10B1565B0896 /* SBUOpenChannelImageContentView.swift in Sources */, + EFF0C13F7B37CAC0401E4245 /* SBUSuggestedReplyViewParams.swift in Sources */, + A6BE6CBBAA465CF19DB2D606 /* SBUSuggestedReplyView.swift in Sources */, + 1E29ADE98B8F752A3E497B2E /* SBUSuggestedReplyOptionView.swift in Sources */, + 2DD5E3089827AB10FA1479BA /* SBUNotificationCell.swift in Sources */, + 89E8B7186695563BE767EA5D /* SBUFeedNotificationCell.swift in Sources */, + C43D4E025F3F4ECD8F1C830C /* SBUChatNotificationCell.swift in Sources */, + 404A2F83B293E29E44088C92 /* QuotedFileCommonContentView.swift in Sources */, + 030AA7A3825CE2A810184B06 /* SBUQuotedBaseMessageView.swift in Sources */, + DE5FD7562A17B76F585FA20B /* SBUThreadInfoView.swift in Sources */, + F0E5B24C1B8C1479B9FB1E8A /* QuotedFileImageContentView.swift in Sources */, + E73C2455DDF465A6D7067DD6 /* SBUQuotedFileMessageView.swift in Sources */, + 5DDAAC07DA68011694610E7C /* SBUQuotedUserMessageView.swift in Sources */, + A7A25D6F1C98D53D809C103F /* SBUQuotedBaseMessageViewParams.swift in Sources */, + D8DAD08FE32AD25FD59D4CF0 /* SBUMultipleFilesMessageCollectionViewCell.swift in Sources */, + DD1810D79197F69B9EEB0860 /* SBUMultipleFilesMessageCollectionView.swift in Sources */, + F4333ABE47CC9687BCB641B4 /* SBUMultipleFilesMessageCell.swift in Sources */, + 0AD549EB16CB78D194A38001 /* SBUBaseMessageCell.swift in Sources */, + 6A5AA8FF67B45FD95E3DB58C /* SBUOpenChannelFileMessageCell.swift in Sources */, + 0D6C5939B151A4EE704505F8 /* SBUOpenChannelAdminMessageCell.swift in Sources */, + FCB3C1572795E536AA7CD451 /* SBUOpenChannelContentBaseMessageCell.swift in Sources */, + A779EBB072D89CC70132B3AA /* SBUOpenChannelUserMessageCell.swift in Sources */, + BF1C02567349C2DE23E01287 /* SBUOpenChannelUnknownMessageCell.swift in Sources */, + FCBC359F3CA8BF94FC1259E4 /* SBUOpenChannelBaseMessageCell.swift in Sources */, + 4FFA56A286BE753DB800D5C0 /* SBUExtendedMessagePayloadCustomViewFactory.swift in Sources */, + 29A12B5C59DC75706276A6C8 /* SBUFileMessageCell.swift in Sources */, + A94FDE92010E30BBE8FF5B25 /* SBUAdminMessageCell.swift in Sources */, + 5053760AACCB2237286F0A0D /* SBUContentBaseMessageCell.swift in Sources */, + A807BB7DD206BBA6B5F72D48 /* SBUUnknownMessageCell.swift in Sources */, + 25D67216A823C4EF5AFB9760 /* SBUUserMessageCell.swift in Sources */, + 905A5593FAD01CC0DFCB2E9D /* SBUGroupChannelViewController.swift in Sources */, + 427508383F978402DAEFE135 /* SBUMentionLimitGuideCell.swift in Sources */, + B297E22A41176BFDDB5CD488 /* SBUSuggestedMentionList.swift in Sources */, + 947FC08C5CB41A13126307CF /* SBUQuoteMessageInputView.swift in Sources */, + 48E229E923C106C77448499D /* SBUMessageInputMode.swift in Sources */, + E3D3F03366733EC2346059D6 /* SBUQuoteMessageInputViewParams.swift in Sources */, + 03D48B3D96BB3BED14680CEB /* SBUMessageInputView.swift in Sources */, + 7AC12FA7CF0F2E98F2D7D0D8 /* SBUCategoryFilterCell.swift in Sources */, + 2ED4578D12D2E78DA47EEC79 /* SBUMessageStateView.swift in Sources */, + FE8F91E04CB762FA898B9098 /* SBUMessageProfileView.swift in Sources */, + 01454D50AD8BDD9BFEC1C6D9 /* SBUUserMessageTextView.swift in Sources */, + 1FDB7F7EEBFD7D1F572A350C /* SBUUserNameView.swift in Sources */, + 4D4352A5E361C993F83DFB72 /* SBUMessageWebView.swift in Sources */, + 46F9394B7ABB314C56B54AA3 /* SBUMessageDateView.swift in Sources */, + 04B57706E646AD5593094F31 /* SBULinkClickableTextView.swift in Sources */, + 422AD604091AD8BFC16196A3 /* SBUOpenChannelMessageWebView.swift in Sources */, + C916B8239AFC3821C6341D56 /* SBUSelectableStackView.swift in Sources */, + A3660D748B76048AE2099134 /* SBUNotificationTimelineView.swift in Sources */, + 906252373543A5AF6030EBC1 /* SBUFileViewController.swift in Sources */, + 1BACEB156D8B0319A0744919 /* SBUBaseChannelViewController.Keyboard.swift in Sources */, + 54401B90205E8480F5F9C8E7 /* SBUChatNotificationChannelViewController.swift in Sources */, + B22AF8AD271AC4BA49A32252 /* SBUNewNotificationInfo.swift in Sources */, + 2C3789D46012A3A8A0BCABB5 /* SBUNewMessageInfo.swift in Sources */, + EE89BE45A78EF3E2F7FE80A3 /* SBUOpenChannelViewController.swift in Sources */, + E8CAF9B73AE94B955777E7B5 /* SBUChannelInfoHeaderView.swift in Sources */, + 83FFA238F0281F77FA929BD3 /* SBUChannelTitleView.swift in Sources */, + 3B768C291B48A0A2037BD6AC /* SBUBaseChannelSettingsViewController.swift in Sources */, + 428719898660609223F660C3 /* SBUOpenChannelSettingsViewController.swift in Sources */, + 32F86073A412773DA0DDF604 /* SBUOpenChannelSettingCell.swift in Sources */, + D549BC44AB5BD1E350B51E81 /* SBUBaseChannelSettingCell.swift in Sources */, + B654B30D186FC1BBE772B637 /* SBUModerationCell.swift in Sources */, + 33DB411B2A785EC0C2A2F3FA /* SBUGroupChannelSettingCell.swift in Sources */, + 0D962935D30531F6C7F4464E /* SBUChannelSettingsChannelInfoView.swift in Sources */, + 3557E20BB44108E43C4E5CB4 /* SBUGroupChannelSettingsViewController.swift in Sources */, + 8868E4AEDE2237C6BF00C44D /* SBUVoiceMessageInputView.swift in Sources */, + 41EAD635DE57129819915EE4 /* SBUStackView.swift in Sources */, + 85CD86DF834F34EB0F4DE65F /* SBUAnimation.swift in Sources */, + DA5EF95041F639ECAF0EB015 /* SBUEmptyView.swift in Sources */, + ED57DF28C4D2209726D06E15 /* SBUCoverImageView.swift in Sources */, + EF297464FAF3299EB4F48A1C /* SBUPhotoAccess.swift in Sources */, + 1DD2887FFCBE4FF582ADE2B2 /* SBUPhotoCollectionViewCell.swift in Sources */, + 37F86D219100091803A3D86E /* SBUSelectablePhotoViewController.swift in Sources */, + 0933EA8521D79818954747EC /* SBUPaddingLabel.swift in Sources */, + 3B501308B2461D596E470C45 /* SBUCommonItem.swift in Sources */, + 8295CD2EF50CA0BB77C4EACB /* SBULayoutableButton.swift in Sources */, + 37B249A7216C55E8F2736C77 /* SBUUserProfileView.swift in Sources */, + BF7557046884512585D4B111 /* SBUNavigationTitleView.swift in Sources */, + 152AC0C3DC0214FDE8501EEA /* SBUNotificationNavigationTitleView.swift in Sources */, + 79E79456A6A19E72AB4F5012 /* SBUBarButtonItem.swift in Sources */, + 0BBB93626BD932C9B996C943 /* SBUActionSheet.swift in Sources */, + E3AC428E5A2AC0DDE39120DE /* SBUNotificationEmptyView.swift in Sources */, + 68ED6BA519C5B7E44604C3A3 /* SBUAlertView.swift in Sources */, + 27A075AE5405C328C3E8E5A2 /* SBUMenuSheetViewController.swift in Sources */, + 2086A0A8CFA51A8DCA34AFD0 /* SBUMenuCell.swift in Sources */, + 199DD59D37F986520462238A /* SBUMenuView.swift in Sources */, + FC31D6693D2D1B2ABE264F43 /* SBUBottomSheetController.swift in Sources */, + 7FBFB9E7397B25A4DB0F4FF3 /* SBUUnderLineTextField.swift in Sources */, + 3B108EA4F92D184251F4BE94 /* SBUUserCell.swift in Sources */, + 2B5A2978BDD14FD414E3779C /* SBUTemplateLabel.swift in Sources */, + 20980EB92318F0FCAC540A72 /* SBUMarginView.swift in Sources */, + 5777D384610017FAE384F4F4 /* SBUTypingIndicatorBubbleView.swift in Sources */, + DA06C72AB1DE8EF39B05A5F5 /* SBUCommonViewControllerSet.swift in Sources */, + AFEF5833780936DC0A0C53C0 /* SBULoading.swift in Sources */, + CBCCDD0F9A4C049E009A98A0 /* SBUCollectionViewFlowLayout.swift in Sources */, + 03216A3CAB06D37F2579BDAD /* SBUUserListViewController.swift in Sources */, + 45CDA2C72A079B66461742A4 /* SBUViewControllerSet.swift in Sources */, + EE5433043584DDBBF38732AA /* SBUMessageSearchViewController.swift in Sources */, + AC40613E6D89F1C3D412EE58 /* SBUMessageSearchResultCell.swift in Sources */, + A496E63CF04C088C802C0FB2 /* SBUTableViewCell.swift in Sources */, + 7552FA9E27ED43D8A228CB48 /* SBUCollectionViewCell.swift in Sources */, + 38931C5862485306CF0D5EE0 /* SBUQuoteMessageInputViewProtocol.swift in Sources */, + CACEC38BEB7FB3A80BE23308 /* SBUMessageCellProtocol.swift in Sources */, + 80FBEBF4D1B458C96039AEAA /* SBUViewLifeCycle.swift in Sources */, + D9430A5D3C246C88173BC5C1 /* SBUQuotedMessageViewProtocol.swift in Sources */, + 367F74000916FA26F5741C06 /* SBUView.swift in Sources */, + 3B25780D187BC5CF3EBB5A05 /* SBUMessageThreadViewController.swift in Sources */, + D4F47BC719078C977ADEDE03 /* SBUMessageThreadTitleView.swift in Sources */, + 682769305BA916C2D0AC3B68 /* SBUParentMessageInfoView.swift in Sources */, + CB5F268CE84DBF00F1505DF7 /* SBUModerationsViewController.swift in Sources */, + F483F0CF8689175E8643C066 /* SBURegisterOperatorViewController.swift in Sources */, + 9DE7E5B666B2B7C99142FB2D /* SBUBaseSelectUserViewController.swift in Sources */, + 3BE9246E51DCC1A7691FD3AF /* SBUInviteUserViewController.swift in Sources */, + EF2CBAC26F1B0D602D8AC7E3 /* SBUCreateChannelTypeSelector.swift in Sources */, + 7B92563DD17A4C7BED3CAED1 /* SBUCreateChannelViewController.swift in Sources */, + 1091519C4EB22991A75C593D /* SBUCreateOpenChannelViewController.swift in Sources */, + A5723F1B3F5208F31F591D1E /* SBUGlobals.swift in Sources */, + 5D63E492F884BB72A867E354 /* SBUTableViewCell.Unavailable.swift in Sources */, + BD34CD19B138D30D61847462 /* SBUChannelListViewController.Deprecated.swift in Sources */, + 1427E2BC1C89E6CEB55CE4DD /* SBUBaseMessageCellParams.Deprecated.swift in Sources */, + 143D157740276064F9DB41C4 /* SBUQuotedBaseMessageViewParams.Deprecated.swift in Sources */, + E35B6349877F176BEB8A9C84 /* SBUContentBaseMessageCell.Deprecated.swift in Sources */, + 1732C7EBBF3BCFE03955045F /* SBUBaseChannelViewController.Deprecated.swift in Sources */, + AA3C1F83759C05B5D4DBFA55 /* SBUGroupChannelViewController.Unavailable.swift in Sources */, + 398BD939DE3EDE679C9202EB /* SBUOpenChannelViewController.Deprecated.swift in Sources */, + F4EA486A31CE04119DC26A8A /* SBUOpenChannelViewController.Unavailable.swift in Sources */, + 05C047D2EF83F4070F1FB339 /* SBUGroupChannelViewController.Deprecated.swift in Sources */, + 31A6C12AFEA5BFA530149F06 /* SBUBaseChannelViewController.Unavailable.swift in Sources */, + C0099ECAA04DA881A4A36254 /* SBUBaseChannelSettingsViewController.Deprecated.swift in Sources */, + 7F13C5B3656F8B65E199898E /* SBUBaseViewController.Unavailable.swift in Sources */, + F1F74B874C67BF506FDC4690 /* SBUMemberListViewController.Deprecated.swift in Sources */, + 9B84FEA897330285D652BE81 /* SBUBaseSelectUserViewController.Deprecated.swift in Sources */, + B2C6AB09AFCF708338D631BE /* SBUMessageSearchViewController.Deprecated.swift in Sources */, + 9081D224F047E489DB3123DE /* SBUView.Unavaliable.swift in Sources */, + 3100A0DFA4E3CC5F7F0D1BB2 /* SBUGlobals.Deprecated.swift in Sources */, + EAA7FFF16BB4A38EAC25456A /* SBUCoverImageView.Deprecated.swift in Sources */, + 620B0D472413587E9D658DEB /* SBUModerationsViewModel.Deprecated.swift in Sources */, + 2357EDD8472D1DCCBC4C17D3 /* SBUModerationsViewController.Deprecated.swift in Sources */, + 22DEA575982555E905341E99 /* SBUTheme.Deprecated.swift in Sources */, + 6467D989331B604188CD693B /* SBUCreateChannelViewController.Deprecated.swift in Sources */, + 7059B572261ACE27CB4A9DCC /* SBUModuleSet.Deprecated.swift in Sources */, + 0A47A0536723D9F3C1A6B373 /* SBUEnums.Deprecated.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3890,7 +3943,7 @@ CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = "$(inherited)"; DEVELOPMENT_TEAM = RM4A5PXTUX; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = NotificationService/Info.plist; @@ -3920,7 +3973,7 @@ CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = "$(inherited)"; DEVELOPMENT_TEAM = RM4A5PXTUX; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = NotificationService/Info.plist; @@ -3975,6 +4028,7 @@ CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; @@ -3993,7 +4047,7 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MARKETING_VERSION = 3.9.2; + MARKETING_VERSION = 3.11.1; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; ONLY_ACTIVE_ARCH = YES; @@ -4036,6 +4090,7 @@ CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; @@ -4048,7 +4103,7 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MARKETING_VERSION = 3.9.2; + MARKETING_VERSION = 3.11.1; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; SDKROOT = iphoneos; @@ -4068,7 +4123,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = "$(inherited)"; DEFINES_MODULE = NO; DEVELOPMENT_TEAM = RM4A5PXTUX; ENABLE_BITCODE = NO; @@ -4100,7 +4155,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = "$(inherited)"; DEFINES_MODULE = NO; DEVELOPMENT_TEAM = RM4A5PXTUX; ENABLE_BITCODE = NO; diff --git a/Sample/QuickStart/AppDelegate.swift b/Sample/QuickStart/AppDelegate.swift index 039eacd8..f81c4d0d 100644 --- a/Sample/QuickStart/AppDelegate.swift +++ b/Sample/QuickStart/AppDelegate.swift @@ -45,6 +45,11 @@ class AppDelegate: UIResponder, UIApplicationDelegate, UNUserNotificationCenterD // GroupChannel - form type message SendbirdUI.config.groupChannel.channel.isFormTypeMessageEnabled = true +// if #available(iOS 14, *) { +// SendbirdUI.config.groupChannel.channel.isMultipleFilesMessageEnabled = true +// } + + self.initializeRemoteNotification() return true diff --git a/Sample/QuickStart/Customize/CustomBaseViewController.swift b/Sample/QuickStart/Customize/CustomBaseViewController.swift index 93946e1e..b83c679e 100644 --- a/Sample/QuickStart/Customize/CustomBaseViewController.swift +++ b/Sample/QuickStart/Customize/CustomBaseViewController.swift @@ -94,6 +94,13 @@ class CustomBaseViewController: UITableViewController { naviVC: navigationController, type: MemberListCustomType(rawValue: row) ) + case .AdditionalFeatures: + + AdditionalFeaturesManager.shared.startSample( + naviVC: navigationController, + type: AdditionalFeaturesType(rawValue: row) + ) + default: break } diff --git a/Sample/QuickStart/Customize/Manager/Common/CustomSampleEnums.swift b/Sample/QuickStart/Customize/Manager/Common/CustomSampleEnums.swift index cfa1ae1c..0204d93d 100644 --- a/Sample/QuickStart/Customize/Manager/Common/CustomSampleEnums.swift +++ b/Sample/QuickStart/Customize/Manager/Common/CustomSampleEnums.swift @@ -27,6 +27,10 @@ enum ChannelListCustomType: Int { case listComponentcustom } +enum AdditionalFeaturesType: Int { + case translationAndReport = 0 +} + enum ChannelCustomType: Int { case uiComponent case customCell @@ -73,6 +77,7 @@ enum CustomSection: Int, CaseIterable { case CreateChannel case InviteUser case MemberList + case AdditionalFeatures var title: String { return String(describing: self) } var index: Int { return self.rawValue } @@ -122,6 +127,8 @@ enum CustomSection: Int, CaseIterable { return ["UI Component", "Custom cell", "Function Overriding"] + case .AdditionalFeatures: + return ["Translation, Report, Channel Metadata"] case .none: return [] } @@ -173,6 +180,9 @@ enum CustomSection: Int, CaseIterable { return ["[MemberListCustomManager uiComponentCustom()]", "[MemberListCustomManager cellCustom()]", "MemberListVC_Overriding.swift"] + case .AdditionalFeatures: + return ["[AdditionalFeaturesManager translationReportMetadata()]"] + case .none: return [] } diff --git a/Sample/QuickStart/Customize/Manager/Features/AdditionalFeaturesManager.swift b/Sample/QuickStart/Customize/Manager/Features/AdditionalFeaturesManager.swift new file mode 100644 index 00000000..b2ae7a05 --- /dev/null +++ b/Sample/QuickStart/Customize/Manager/Features/AdditionalFeaturesManager.swift @@ -0,0 +1,49 @@ +// +// AdditionalFeaturesManager.swift +// QuickStart +// +// Created by Celine Moon on 11/23/23. +// Copyright © 2023 SendBird, Inc. All rights reserved. +// + +import UIKit +import SendbirdChatSDK + +class AdditionalFeaturesManager: BaseCustomManager { + static var shared = AdditionalFeaturesManager() + + func startSample(naviVC: UINavigationController, type: AdditionalFeaturesType?) { + self.navigationController = naviVC + + switch type { + case .translationAndReport: + translationReportMetadata() +// case .channelMetadata: +// channelMetaData() + default: + break + } + + } + + func translationReportMetadata() { + ChannelManager.getSampleChannel { channel in + let channelVC = ChannelVC_AdditionalFeatures(channel: channel) + + // This part changes the default user message cell to a custom cell. + #if swift(>=5.2) + channelVC.listComponent?.register(userMessageCell: UserMessageCell_AdditionalFeatures()) + #else + channelVC.register(userMessageCell: CustomUserMessageCell( + style: .default, + reuseIdentifier: CustomUserMessageCell.sbu_className) + ) + #endif + + + + // Move to ChannelViewController using customized components + self.navigationController?.pushViewController(channelVC, animated: true) + } + } +} diff --git a/Sample/QuickStart/Customize/Manager/Features/MessageTranslationMessageCell.swift b/Sample/QuickStart/Customize/Manager/Features/MessageTranslationMessageCell.swift new file mode 100644 index 00000000..4b9ed7a4 --- /dev/null +++ b/Sample/QuickStart/Customize/Manager/Features/MessageTranslationMessageCell.swift @@ -0,0 +1,64 @@ +// +// MessageTranslationMessageCell.swift +// QuickStart +// +// Created by Celine Moon on 11/23/23. +// Copyright © 2023 SendBird, Inc. All rights reserved. +// + +import UIKit +import SendbirdChatSDK + +class MessageTranslationMessageCell: UITableViewCell { + + static let identifier = "MessageTranslationMessageCell" + + lazy var contentStackView: UIStackView = { + let stackView = UIStackView() + stackView.translatesAutoresizingMaskIntoConstraints = false + stackView.axis = .vertical + return stackView + }() + + lazy var messageLabel: UILabel = { + let messageLabel: UILabel = UILabel() + messageLabel.textColor = .black + messageLabel.translatesAutoresizingMaskIntoConstraints = false + messageLabel.font = .systemFont(ofSize: 17) + messageLabel.numberOfLines = 0 + return messageLabel + }() + + public override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) { + super.init(style: style, reuseIdentifier: reuseIdentifier) + setupViews() + } + + required public init?(coder: NSCoder) { + super.init(coder: coder) + setupViews() + } + + func setupViews() { + contentView.addSubview(contentStackView) + contentStackView.addArrangedSubview(messageLabel) + + NSLayoutConstraint.activate([ + contentStackView.topAnchor.constraint(equalTo: contentView.topAnchor, constant: 10), + contentStackView.leadingAnchor.constraint(equalTo: contentView.leadingAnchor, constant: 10), + contentStackView.trailingAnchor.constraint(equalTo: contentView.trailingAnchor, constant: -10), + contentStackView.bottomAnchor.constraint(equalTo: contentView.bottomAnchor, constant: -10) + ]) + } + + func configure(with message: BaseMessage) { +// if let sender = message.sender { +// profileLabel.text = "\(sender.nickname)" +// profileImageView.setProfileImageView(for: sender) +// } else if message is AdminMessage { +// profileLabel.text = "Admin" +// } + messageLabel.text = "\(message.message)" +// "\(message.message)\(MessageSendingStatus(message).description) (\(Date.sbu_from(message.createdAt).sbu_toString(format: .hhmma)))" + } +} diff --git a/Sample/QuickStart/Customize/View/Channel/ChannelVC_AdditionalFeatures.swift b/Sample/QuickStart/Customize/View/Channel/ChannelVC_AdditionalFeatures.swift new file mode 100644 index 00000000..35efdb7f --- /dev/null +++ b/Sample/QuickStart/Customize/View/Channel/ChannelVC_AdditionalFeatures.swift @@ -0,0 +1,456 @@ +// +// ChannelVC_AdditionalFeatures.swift +// QuickStart +// +// Created by Celine Moon on 11/23/23. +// Copyright © 2023 SendBird, Inc. All rights reserved. +// + +import UIKit +import SendbirdChatSDK + +// MARK: - Custom SBUGroupChannelViewController +class ChannelVC_AdditionalFeatures: SBUGroupChannelViewController { + override func createViewModel( + channel: BaseChannel? = nil, + channelURL: String? = nil, + messageListParams: MessageListParams? = nil, + startingPoint: Int64? = .max, + showIndicator: Bool = true + ) { + self.viewModel = GroupChannelViewModel_AdditionalFeatures( + channel: channel, + channelURL: channel?.channelURL, + messageListParams: nil, + startingPoint: nil, + delegate: self, + dataSource: self, + displaysLocalCachedListFirst: false + ) + + viewModel?.sendUserMessageCompletionHandler = { userMessage, error in + guard let userMessage = userMessage, error == nil else { + print("\(error!)") + return + } + print("\(userMessage.translations)") + } + } + + + override func baseChannelModule(_ inputComponent: SBUBaseChannelModule.Input, didTapSend text: String, parentMessage: BaseMessage?) { + guard text.count > 0 else { return } + let text = text.trimmingCharacters(in: .whitespacesAndNewlines) + let messageParam = UserMessageCreateParams(message: text) + + messageParam.translationTargetLanguages = ["es", "ko"] // Spanish and Korean + + self.viewModel?.sendUserMessage(messageParams: messageParam) + } + + override func showChannelSettings() { + guard let channel = self.channel else { return } + + let channelSettingsVC = SBUViewControllerSet.GroupChannelSettingsViewController.init(channel: channel) + let listComponent = GroupChannelSettingsModuleList_AdditionalFeatures() + listComponent.additionalFeaturesDelegate = self + channelSettingsVC.listComponent = listComponent + + self.navigationController?.pushViewController(channelSettingsVC, animated: true) + } + +} + +extension ChannelVC_AdditionalFeatures: GroupChannelSettingsModuleList_AdditionalFeaturesDelegate { + func groupChannelSettingsModuleDidReportChannel( + _ listComponent: GroupChannelSettingsModuleList_AdditionalFeatures, + category: ReportCategory, + channel: GroupChannel, + error: SBError? + ) { + // Show alert. + let channelName = channel.name.isEmpty ? channel.channelURL : channel.name + + let successMessage = + """ + Successfully reported + channel \(channelName) + as \(category.rawValue.uppercased()). + """ + + let failedMessage = + """ + Failed to report + channel \(channelName) + as \(category.rawValue.uppercased()). + \(String(describing: error)) + """ + + var alert = UIAlertController( + title: error == nil ? "✅" : "❌", + message: error == nil ? successMessage : failedMessage, + preferredStyle: .alert + ) + + let ok = UIAlertAction(title: "OK", style: .default) + alert.addAction(ok) + self.present(alert, animated: true, completion: nil) + } + + func groupChannelSettingsModuleDidReportUser( + _ listComponent: GroupChannelSettingsModuleList_AdditionalFeatures, + category: ReportCategory, + user: User, + error: SBError? + ) { + // Show alert. + let successMessage = + """ + Successfully reported + user \(user.userId.uppercased()) + as \(category.rawValue.uppercased()). + """ + let failedMessage = "Failed to report a \(category.rawValue.uppercased()) user \(user.userId.uppercased()). \(String(describing: error))" + var alert = UIAlertController( + title: error == nil ? "✅" : "❌", + message: error == nil ? successMessage : failedMessage, + preferredStyle: .alert + ) + + let ok = UIAlertAction(title: "OK", style: .default) + alert.addAction(ok) + self.present(alert, animated: true, completion: nil) + } + + func groupChannelSettingsModuleDidReportMessage( + _ listComponent: GroupChannelSettingsModuleList_AdditionalFeatures, + category: ReportCategory, + message: BaseMessage, + error: SBError? + ) { + // Show alert. + var chatMessage = "" + if let userMessage = message as? UserMessage { + chatMessage = userMessage.message + } else if let fileMessage = message as? FileMessage { + chatMessage = fileMessage.name + } else if let multipleFilesMessage = message as? MultipleFilesMessage, + let firstFileName = multipleFilesMessage.files.first?.fileName { + chatMessage = firstFileName + } else { + chatMessage = message.message + } + + let successMessage = + """ + Successfully reported + the last message (\(chatMessage)) + as \(category.rawValue.uppercased()). + """ + let failedMessage = "Failed to report the last message (\(chatMessage) as \(category.rawValue.uppercased()). \(String(describing: error))" + var alert = UIAlertController( + title: error == nil ? "✅" : "❌", + message: error == nil ? successMessage : failedMessage, + preferredStyle: .alert + ) + + let ok = UIAlertAction(title: "OK", style: .default) + alert.addAction(ok) + self.present(alert, animated: true, completion: nil) + } + + func groupChannelSettingsModuleDidSelectCreateMetadata(_ listComponent: GroupChannelSettingsModuleList_AdditionalFeatures, channel: GroupChannel) { + let vc = MetadataViewController(channel: channel, mode: .create) + self.navigationController?.pushViewController(vc, animated: true) + } + + func groupChannelSettingsModuleDidSelectUpdateMetadata(_ listComponent: GroupChannelSettingsModuleList_AdditionalFeatures, channel: GroupChannel) { + let vc = MetadataViewController(channel: channel, mode: .update) + self.navigationController?.pushViewController(vc, animated: true) + } + + func groupChannelSettingsModuleDidSelectDeleteMetadata(_ listComponent: GroupChannelSettingsModuleList_AdditionalFeatures, channel: GroupChannel) { + let vc = MetadataViewController(channel: channel, mode: .delete) + self.navigationController?.pushViewController(vc, animated: true) + } +} + + +// MARK: - Custom UserMessageCell +class UserMessageCell_AdditionalFeatures: SBUUserMessageCell { + lazy var translationLabel: PaddedLabel = { + let messageLabel = PaddedLabel() + messageLabel.textInsets = UIEdgeInsets(top: 0, left: 12, bottom: 4, right: 12) + messageLabel.textColor = .systemPink + messageLabel.translatesAutoresizingMaskIntoConstraints = false + messageLabel.font = .systemFont(ofSize: 14) + messageLabel.numberOfLines = 0 + return messageLabel + }() + + + override func setupViews() { + super.setupViews() + + self.mainContainerView.addArrangedSubview(translationLabel) + } + + override func configure(with configuration: SBUBaseMessageCellParams) { + super.configure(with: configuration) + + guard let configuration = configuration as? SBUUserMessageCellParams else { return } + guard let message = configuration.userMessage else { return } + + guard let koTranslatedMessage = message.translations["ko"] else { + return + } + print("\(koTranslatedMessage)") + translationLabel.text = koTranslatedMessage + } +} + +// MARK: - Custom GroupChannel Settings Module List +class GroupChannelSettingsModuleList_AdditionalFeatures: SBUGroupChannelSettingsModule.List { + var additionalFeaturesDelegate: GroupChannelSettingsModuleList_AdditionalFeaturesDelegate? + + // MARK: UI methods. + override func setupStyles(theme: SBUChannelSettingsTheme? = nil) { + super.setupStyles(theme: theme) + self.channelInfoView?.backgroundColor = .white + } + + override func setupItems() { + super.setupItems() + + let reportChannelItems = createReportChannelItems() + self.items += reportChannelItems + + let reportUserItems = createReportUserItems() + self.items += reportUserItems + + let reportMessageItems = createReportMessageItems() + self.items += reportMessageItems + + let metadataItems = createChannelMetadataItems() + self.items += metadataItems + } + + // Report Channel + func createReportChannelItems() -> [SBUChannelSettingItem] { + var items = [SBUChannelSettingItem]() + + for category in ReportCategory.allCases() { + let item = SBUChannelSettingItem( + title: "Report Channel - \(category.rawValue.uppercased())", + icon: SBUIconSetType.iconBan.image( + with: .systemPink, + to: SBUIconSetType.Metric.defaultIconSize + ), + isRightButtonHidden: true + ) { [weak self] in + guard let self = self else { return } + self.reportChannel(category: category) + } + items.append(item) + } + + return items + } + + // Report User + func createReportUserItems() -> [SBUChannelSettingItem] { + var items = [SBUChannelSettingItem]() + + for category in ReportCategory.allCases() { + let item = SBUChannelSettingItem( + title: "Report User (alphabetical last) - \(category.rawValue.uppercased())", + icon: SBUIconSetType.iconBan.image( + with: .systemBlue, + to: SBUIconSetType.Metric.defaultIconSize + ), + isRightButtonHidden: true + ) { [weak self] in + guard let self = self else { return } + self.reportUser(category: category) + } + items.append(item) + } + + return items + } + + // Report Message + func createReportMessageItems() -> [SBUChannelSettingItem] { + var items = [SBUChannelSettingItem]() + + for category in ReportCategory.allCases() { + let item = SBUChannelSettingItem( + title: "Report Last Message - \(category.rawValue.uppercased())", + icon: SBUIconSetType.iconBan.image( + with: .systemYellow, + to: SBUIconSetType.Metric.defaultIconSize + ), + isRightButtonHidden: true + ) { [weak self] in + guard let self = self else { return } + self.reportLastMessage(category: category) + } + items.append(item) + } + + return items + } + + // Metadata create, update, delete + func createChannelMetadataItems() -> [SBUChannelSettingItem] { + var items = [SBUChannelSettingItem]() + + let createItem = SBUChannelSettingItem( + title: "Create metadata", + icon: SBUIconSetType.iconAdd.image( + with: .systemGreen, // theme?.cellTypeIconTintColor, + to: SBUIconSetType.Metric.defaultIconSize + ), + isRightButtonHidden: false + ) { [weak self] in + guard let self = self else { return } + guard let channel = self.channel else { return } + + self.additionalFeaturesDelegate?.groupChannelSettingsModuleDidSelectCreateMetadata(self, channel: channel) + } + + let updateItem = SBUChannelSettingItem( + title: "Update metadata", + icon: SBUIconSetType.iconAdd.image( + with: .systemGreen, + to: SBUIconSetType.Metric.defaultIconSize + ), + isRightButtonHidden: false + ) { [weak self] in + guard let self = self else { return } + guard let channel = self.channel else { return } + + self.additionalFeaturesDelegate?.groupChannelSettingsModuleDidSelectUpdateMetadata(self, channel: channel) + } + + + let deleteItem = SBUChannelSettingItem( + title: "Delete metadata", + icon: SBUIconSetType.iconAdd.image( + with: .systemGreen, + to: SBUIconSetType.Metric.defaultIconSize + ), + isRightButtonHidden: false + ) { [weak self] in + guard let self = self else { return } + guard let channel = self.channel else { return } + + self.additionalFeaturesDelegate?.groupChannelSettingsModuleDidSelectDeleteMetadata(self, channel: channel) + } + + items.append(createItem) + items.append(updateItem) + items.append(deleteItem) + + return items + } + + // MARK: Report methods. + func reportChannel(category: ReportCategory) { + self.channel?.report(category: .suspicious, reportDescription: "\(category.rawValue) channel report!") { (error) in + guard let channel = self.channel else { return } + self.additionalFeaturesDelegate?.groupChannelSettingsModuleDidReportChannel( + self, + category: category, + channel: channel, + error: error + ) + } + } + + func reportUser(category: ReportCategory) { + guard let channel = self.channel else { return } + guard let currentUser = SBUGlobals.currentUser else { return } + + var otherMembers = channel.members.filter({ $0.userId != currentUser.userId }) + otherMembers.sort { $0.nickname.lowercased() < $1.nickname.lowercased() } + + guard let otherUser = otherMembers.last else { + return + } + + channel.report( + offendingUser: otherUser, + reportCategory: category, + reportDescription: "\(category.rawValue) user report" + ) { (error) in + self.additionalFeaturesDelegate?.groupChannelSettingsModuleDidReportUser(self, category: category, user: otherUser, error: error) + } + } + + func reportLastMessage(category: ReportCategory) { + guard let channel = self.channel else { return } + guard let lastMessage = channel.lastMessage else { + return + } + + channel.report( + message: lastMessage, + reportCategory: category, + reportDescription: "Reporting last message as \(category.rawValue.uppercased())" + ) { (error) in + self.additionalFeaturesDelegate?.groupChannelSettingsModuleDidReportMessage( + self, + category: category, + message: lastMessage, + error: error + ) + } + } +} + +protocol GroupChannelSettingsModuleList_AdditionalFeaturesDelegate { + // Report + func groupChannelSettingsModuleDidReportChannel( + _ listComponent: GroupChannelSettingsModuleList_AdditionalFeatures, + category: ReportCategory, + channel: GroupChannel, + error: SBError? + ) + + func groupChannelSettingsModuleDidReportUser( + _ listComponent: GroupChannelSettingsModuleList_AdditionalFeatures, + category: ReportCategory, + user: User, + error: SBError? + ) + + func groupChannelSettingsModuleDidReportMessage( + _ listComponent: GroupChannelSettingsModuleList_AdditionalFeatures, + category: ReportCategory, + message: BaseMessage, + error: SBError? + ) + + // Metadata + func groupChannelSettingsModuleDidSelectCreateMetadata( + _ listComponent: GroupChannelSettingsModuleList_AdditionalFeatures, + channel: GroupChannel + ) + + func groupChannelSettingsModuleDidSelectUpdateMetadata( + _ listComponent: GroupChannelSettingsModuleList_AdditionalFeatures, + channel: GroupChannel + ) + + func groupChannelSettingsModuleDidSelectDeleteMetadata( + _ listComponent: GroupChannelSettingsModuleList_AdditionalFeatures, + channel: GroupChannel + ) +} + +extension ReportCategory { + static func allCases() -> [ReportCategory] { + return [.suspicious, .harassing, .spam, .inappropriate] + } +} diff --git a/Sample/QuickStart/Customize/View/Common/PaddedLabel.swift b/Sample/QuickStart/Customize/View/Common/PaddedLabel.swift new file mode 100644 index 00000000..e6ca523f --- /dev/null +++ b/Sample/QuickStart/Customize/View/Common/PaddedLabel.swift @@ -0,0 +1,31 @@ +// +// PaddedLabel.swift +// QuickStart +// +// Created by Celine Moon on 12/5/23. +// Copyright © 2023 SendBird, Inc. All rights reserved. +// + +import UIKit + +// Label with padding +class PaddedLabel: UILabel { + var textInsets = UIEdgeInsets.zero { + didSet { setNeedsDisplay() } + } + + override func drawText(in rect: CGRect) { + super.drawText(in: rect.inset(by: textInsets)) + } + + override var intrinsicContentSize: CGSize { + let size = super.intrinsicContentSize + return CGSize(width: size.width + textInsets.left + textInsets.right, + height: size.height + textInsets.top + textInsets.bottom) + } + + override func sizeToFit() { + super.sizeToFit() + self.frame.size = intrinsicContentSize + } +} diff --git a/Sample/QuickStart/Customize/View/Others/MetadataViewController.swift b/Sample/QuickStart/Customize/View/Others/MetadataViewController.swift new file mode 100644 index 00000000..43fdbd9f --- /dev/null +++ b/Sample/QuickStart/Customize/View/Others/MetadataViewController.swift @@ -0,0 +1,323 @@ +// +// MetadataViewController.swift +// QuickStart +// +// Created by Celine Moon on 12/5/23. +// Copyright © 2023 SendBird, Inc. All rights reserved. +// + +import UIKit +import SendbirdChatSDK + +// MARK: - Metadata Create, Update, Delete VC +class MetadataViewController: UIViewController { + let metadataLabel: PaddedLabel = { + let label = PaddedLabel() + label.textInsets = UIEdgeInsets(top: 8, left: 8, bottom: 8, right: 8) + label.text = "channel metadata" + label.layer.cornerRadius = 13 + label.layer.borderWidth = 1 + label.layer.borderColor = UIColor.black.cgColor + label.numberOfLines = 0 + return label + }() + + let metadataKeyTextField: UITextField = { + let textField = UITextField() + textField.placeholder = "(Channel Metadata) KEY" + textField.borderStyle = .roundedRect + + return textField + }() + + let metadataValueTextField: UITextField = { + let textField = UITextField() + textField.placeholder = "(Channel Metadata) VALUE" + textField.borderStyle = .roundedRect + return textField + }() + + let createButton: UIButton = { + let button = UIButton() + button.setTitle("Create", for: .normal) + button.setTitleColor(.systemGreen, for: .normal) + button.setTitleColor(.systemGray, for: .disabled) + return button + }() + + let updateButton: UIButton = { + let button = UIButton() + button.setTitle("Update", for: .normal) + button.setTitleColor(.systemOrange, for: .normal) + button.setTitleColor(.systemGray, for: .disabled) + return button + }() + + let deleteButton: UIButton = { + let button = UIButton() + button.setTitle("Delete", for: .normal) + button.setTitleColor(.systemRed, for: .normal) + button.setTitleColor(.systemGray, for: .disabled) + return button + }() + + var channel: GroupChannel + var mode: MetadataMode + + var metadataKey: String? + var metadataValue: String? + + init(channel: GroupChannel, mode: MetadataMode) { + self.channel = channel + self.mode = mode + + super.init(nibName: nil, bundle: nil) + } + + required init?(coder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + override func viewDidLoad() { + super.viewDidLoad() + + self.view.backgroundColor = .white + + self.view.addSubview(metadataLabel) + self.view.addSubview(metadataKeyTextField) + self.view.addSubview(metadataValueTextField) + self.view.addSubview(createButton) + self.view.addSubview(updateButton) + self.view.addSubview(deleteButton) + + metadataLabel.translatesAutoresizingMaskIntoConstraints = false + metadataKeyTextField.translatesAutoresizingMaskIntoConstraints = false + metadataValueTextField.translatesAutoresizingMaskIntoConstraints = false + createButton.translatesAutoresizingMaskIntoConstraints = false + updateButton.translatesAutoresizingMaskIntoConstraints = false + deleteButton.translatesAutoresizingMaskIntoConstraints = false + + let margin = 8.0 + + NSLayoutConstraint.activate([ + metadataLabel.centerXAnchor.constraint(equalTo: view.centerXAnchor), + metadataLabel.centerYAnchor.constraint(equalTo: view.centerYAnchor, constant: -300), + metadataLabel.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 20), + metadataLabel.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: -20), + ]) + + NSLayoutConstraint.activate([ + metadataKeyTextField.centerXAnchor.constraint(equalTo: view.centerXAnchor), + metadataKeyTextField.topAnchor.constraint(equalTo: metadataLabel.bottomAnchor, constant: margin), + metadataKeyTextField.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 20), + metadataKeyTextField.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: -20), + metadataKeyTextField.heightAnchor.constraint(equalToConstant: 40), + ]) + + // Constraints for textField2 + NSLayoutConstraint.activate([ + metadataValueTextField.centerXAnchor.constraint(equalTo: view.centerXAnchor), + metadataValueTextField.topAnchor.constraint(equalTo: metadataKeyTextField.bottomAnchor, constant: margin), + metadataValueTextField.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 20), + metadataValueTextField.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: -20), + metadataValueTextField.heightAnchor.constraint(equalToConstant: 40), + ]) + + NSLayoutConstraint.activate([ + createButton.centerXAnchor.constraint(equalTo: view.centerXAnchor), + createButton.topAnchor.constraint(equalTo: metadataValueTextField.bottomAnchor, constant: margin), + createButton.widthAnchor.constraint(equalToConstant: 80), + ]) + + NSLayoutConstraint.activate([ + updateButton.centerXAnchor.constraint(equalTo: view.centerXAnchor), + updateButton.topAnchor.constraint(equalTo: createButton.bottomAnchor, constant: margin), + updateButton.widthAnchor.constraint(equalToConstant: 80), + ]) + + NSLayoutConstraint.activate([ + deleteButton.centerXAnchor.constraint(equalTo: view.centerXAnchor), + deleteButton.topAnchor.constraint(equalTo: updateButton.bottomAnchor, constant: margin), + deleteButton.widthAnchor.constraint(equalToConstant: 80), + ]) + + // data setup + let initialMetdata = channel.getCachedMetaData() + metadataLabel.text = initialMetdata.isEmpty ? "no channel metadata" : initialMetdata.description + + metadataKeyTextField.delegate = self + metadataValueTextField.delegate = self + + switch mode { + case .create: + metadataValueTextField.isEnabled = true + createButton.isEnabled = true + updateButton.isEnabled = false + deleteButton.isEnabled = false + case .update: + metadataValueTextField.isEnabled = true + createButton.isEnabled = false + updateButton.isEnabled = true + deleteButton.isEnabled = false + case .delete: + metadataValueTextField.isEnabled = false + createButton.isEnabled = false + updateButton.isEnabled = false + deleteButton.isEnabled = true + } + + createButton.addTarget(self, action: #selector(createButtonTapped), for: .touchUpInside) + updateButton.addTarget(self, action: #selector(updateButtonTapped), for: .touchUpInside) + deleteButton.addTarget(self, action: #selector(deleteButtonTapped), for: .touchUpInside) + } + + @objc func createButtonTapped() { + guard let key = self.metadataKey, + let value = self.metadataValue else { return } + + let metadata = [key: value] + channel.createMetaData(metadata) { metaData, error in + let successMessage = + """ + Successfully created + metadata \(String(describing: metaData)) + """ + + let failedMessage = + """ + Failed to create metadata. + \(String(describing: error)) + """ + + let alert = UIAlertController( + title: error == nil ? "✅" : "❌", + message: error == nil ? successMessage : failedMessage, + preferredStyle: .alert + ) + + let ok = UIAlertAction(title: "OK", style: .default) + alert.addAction(ok) + self.present(alert, animated: true, completion: nil) + + + if error == nil { + let metadata = self.channel.getCachedMetaData() + self.metadataLabel.text = metadata.description + } + } + } + + @objc func updateButtonTapped() { + guard let key = self.metadataKey, + let value = self.metadataValue else { return } + + let metadata = [key: value] + channel.updateMetaData(metadata) { metaData, error in + let successMessage = + """ + Successfully updated + metadata \(String(describing: metaData)) + """ + + let failedMessage = + """ + Failed to update metadata. + \(String(describing: error)) + """ + + let alert = UIAlertController( + title: error == nil ? "✅" : "❌", + message: error == nil ? successMessage : failedMessage, + preferredStyle: .alert + ) + + let ok = UIAlertAction(title: "OK", style: .default) + alert.addAction(ok) + self.present(alert, animated: true, completion: nil) + + if error == nil { + let metadata = self.channel.getCachedMetaData() + self.metadataLabel.text = metadata.description + } + } + } + + @objc func deleteButtonTapped() { + guard let key = self.metadataKey else { return } + + channel.deleteMetaData(key: key) { error in + let successMessage = + """ + Successfully deleted + metadata \(key) + """ + + let failedMessage = + """ + Failed to delete metadata. + \(key) + """ + + let alert = UIAlertController( + title: error == nil ? "✅" : "❌", + message: error == nil ? successMessage : failedMessage, + preferredStyle: .alert + ) + + let ok = UIAlertAction(title: "OK", style: .default) + alert.addAction(ok) + self.present(alert, animated: true, completion: nil) + + if error == nil { + let metadata = self.channel.getCachedMetaData() + self.metadataLabel.text = metadata.description + } + } + } +} + +extension MetadataViewController: UITextFieldDelegate { + func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool { + if textField == self.metadataKeyTextField { + self.metadataKey = textField.text + } else if textField == self.metadataValueTextField { + self.metadataValue = textField.text + } + + if let currentText = textField.text, let textRange = Range(range, in: currentText) { + let updatedText = currentText.replacingCharacters(in: textRange, with: string) + + if textField == self.metadataKeyTextField { + self.metadataKey = updatedText + } else if textField == self.metadataValueTextField { + self.metadataValue = updatedText + } + } + + return true + } + + func textFieldDidEndEditing(_ textField: UITextField) { + if textField == self.metadataKeyTextField { + self.metadataKey = textField.text + } else if textField == self.metadataValueTextField { + self.metadataValue = textField.text + } + } + + func textFieldShouldReturn(_ textField: UITextField) -> Bool { + if textField == self.metadataKeyTextField { + self.metadataKey = textField.text + } else if textField == self.metadataValueTextField { + self.metadataValue = textField.text + } + textField.resignFirstResponder() + return true + } +} + +enum MetadataMode: Int { + case create + case update + case delete +} diff --git a/Sample/QuickStart/Customize/ViewModel/GroupChannelViewModel_AdditionalFeatures.swift b/Sample/QuickStart/Customize/ViewModel/GroupChannelViewModel_AdditionalFeatures.swift new file mode 100644 index 00000000..0a23266c --- /dev/null +++ b/Sample/QuickStart/Customize/ViewModel/GroupChannelViewModel_AdditionalFeatures.swift @@ -0,0 +1,44 @@ +// +// GroupChannelViewModel_AdditionalFeatures.swift +// QuickStart +// +// Created by Celine Moon on 12/5/23. +// Copyright © 2023 SendBird, Inc. All rights reserved. +// + +import SendbirdChatSDK + + +// MARK: Custom SBUGroupChannelViewModel +class GroupChannelViewModel_AdditionalFeatures: SBUGroupChannelViewModel { + override func channel(_ channel: BaseChannel, didReceive message: BaseMessage) { + if let message = message as? UserMessage { + guard let koTranslatedMessage = message.translations["ko"] else { return } + print("\(koTranslatedMessage)") + } + } + + override func messageCollection(_ collection: MessageCollection, context: MessageContext, channel: GroupChannel, addedMessages messages: [BaseMessage]) { + super.messageCollection(collection, context: context, channel: channel, addedMessages: messages) + + for message in messages { + if let message = message as? UserMessage { + guard let koTranslatedMessage = message.translations["ko"] else { return } + print("\(koTranslatedMessage)") + } + } + } + + override func messageCollection(_ collection: MessageCollection, context: MessageContext, channel: GroupChannel, updatedMessages messages: [BaseMessage]) { + super.messageCollection(collection, context: context, channel: channel, updatedMessages: messages) + + var translatedMessages = [BaseMessage]() + + for message in messages { + if let message = message as? UserMessage { + guard let koTranslatedMessage = message.translations["ko"] else { return } + print("\(koTranslatedMessage)") + } + } + } +} diff --git a/SendBirdUIKit.podspec b/SendBirdUIKit.podspec index b732eba0..261c976f 100644 --- a/SendBirdUIKit.podspec +++ b/SendBirdUIKit.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = "SendBirdUIKit" - s.version = "3.12.0" + s.version = "3.13.0" s.summary = "UIKit based on SendbirdChatSDK" s.description = "Sendbird UIKit is a framework composed of basic UI components based on SendbirdChatSDK." s.homepage = "https://sendbird.com" diff --git a/Sources/Configuration/ScrollPostion/SBUScrollPostionConfiguration.swift b/Sources/Configuration/ScrollPostion/SBUScrollPostionConfiguration.swift new file mode 100644 index 00000000..a080c130 --- /dev/null +++ b/Sources/Configuration/ScrollPostion/SBUScrollPostionConfiguration.swift @@ -0,0 +1,47 @@ +// +// SBUScrollPostionConfiguration.swift +// SendbirdUIKit +// +// Created by Damon Park on 2023/11/22. +// Copyright © 2023 Sendbird, Inc. All rights reserved. +// + +import UIKit +import SendbirdChatSDK + +/// The class for configuring scroll position. +/// - Since: 3.13.0 +public class SBUScrollPostionConfiguration { + public var groupChannel = BaseChannel() + public var openChannel = BaseChannel() + public var feedChannel = BaseChannel() + + public class BaseChannel { + /// Position value when the message is scrolled to the bottom by user interaction. + public var scrollToBottom: SBUScrollPosition = .bottom + + /// Position value when the message is scrolled to the bottom with the New Message interaction. + public var scrollToNewMessage: SBUScrollPosition = .bottom + + /// Position value to be scrolled on initialization. + public var scrollToInitial: SBUScrollPosition = .bottom + + /// Position value to be scrolled on initialization with a starting point. + public var scrollToInitialWithStartingPoint: SBUScrollPosition = .middle + } + + class GroupChannel: BaseChannel { } + class OpenChannel: BaseChannel { } + class FeedChannel: BaseChannel { } +} + +extension SBUScrollPostionConfiguration { + static func getConfiguration(with channel: SendbirdChatSDK.BaseChannel?) -> SBUScrollPostionConfiguration.BaseChannel { + switch channel { + case is GroupChannel: return SBUGlobals.scrollPostionConfiguration.groupChannel + case is OpenChannel: return SBUGlobals.scrollPostionConfiguration.openChannel + case is FeedChannel: return SBUGlobals.scrollPostionConfiguration.feedChannel + default: return SBUGlobals.scrollPostionConfiguration.groupChannel + } + } +} diff --git a/Sources/Configurations/Base.xcconfig b/Sources/Configurations/Base.xcconfig index 404cd269..608bac2d 100644 --- a/Sources/Configurations/Base.xcconfig +++ b/Sources/Configurations/Base.xcconfig @@ -9,6 +9,6 @@ // Configuration settings file format documentation can be found at: // https://help.apple.com/xcode/#/dev745c5c974 -SBU_APP_VERSION = 3.12.0 -SBU_APP_BUNDLE_VERSION = 3.12.0 +SBU_APP_VERSION = 3.13.0 +SBU_APP_BUNDLE_VERSION = 3.13.0 SENDBIRD_CHAT_SDK_VERSION = 4.12.2 diff --git a/Sources/Enums/SBUEnums.swift b/Sources/Enums/SBUEnums.swift index 4b8881b6..c2f4c266 100644 --- a/Sources/Enums/SBUEnums.swift +++ b/Sources/Enums/SBUEnums.swift @@ -335,3 +335,41 @@ public enum SBUTypingIndicatorType { /// Animated bubble type typing indicator shown in ``SBUTypingIndicatorMessageCell``. case bubble } + +/// Enum representing the scroll position. +/// - Since: 3.13.0 +public enum SBUScrollPosition { + case bottom + case middle + case top + + var convert: UITableView.ScrollPosition { + switch self { + case .top: return .top + case .middle: return .middle + case .bottom: return .bottom + } + } + + var invert: UITableView.ScrollPosition { + switch self { + case .top: return .bottom + case .middle: return .middle + case .bottom: return .top + } + } + + func transform(with tableView: UITableView) -> UITableView.ScrollPosition { + tableView.isInverted ? self.invert : self.convert + } + + func transform(isInverted: Bool) -> UITableView.ScrollPosition { + isInverted ? self.invert : self.convert + } +} + +extension UITableView { + var isInverted: Bool { + self.transform == CGAffineTransform(scaleX: 1, y: -1) + } +} diff --git a/Sources/Extension/ChatSDK/BaseMessage+SBUIKit.swift b/Sources/Extension/ChatSDK/BaseMessage+SBUIKit.swift index fc6333a7..25c66308 100644 --- a/Sources/Extension/ChatSDK/BaseMessage+SBUIKit.swift +++ b/Sources/Extension/ChatSDK/BaseMessage+SBUIKit.swift @@ -42,7 +42,7 @@ extension BaseMessage { public var asSuggestedReplies: [String]? { self.asExtendedMessagePayload?.suggestedReplies } /// List of form data. - /// - Since: 3.11.0asCustomView + /// - Since: 3.11.0 public var asForms: [SBUForm]? { self.asExtendedMessagePayload?.forms } /// json string data. diff --git a/Sources/Model/SBUScrollOptions.swift b/Sources/Model/SBUScrollOptions.swift new file mode 100644 index 00000000..e11ee591 --- /dev/null +++ b/Sources/Model/SBUScrollOptions.swift @@ -0,0 +1,51 @@ +// +// SBUScrollOptions.swift +// SendbirdUIKit +// +// Created by Damon Park on 2023/11/22. +// Copyright © 2023 Sendbird, Inc. All rights reserved. +// + +import UIKit + +/// Options for scroll position. +/// - Since: 3.13.0 +public struct SBUScrollOptions { + /// Message count that to process scroll position. + public let count: Int? + /// specific cell postion to scroll messages. + public let position: SBUScrollPosition + /// Indicates if scrolling is reversed. + public let isInverted: Bool + + /// Initilizes `options`. + /// - Parameters: + /// - count: Number of new messsages. + /// - position: Message scroll position. + /// - isInverted: Indicates if scrolling is inverted. + public init(count: Int? = nil, position: SBUScrollPosition, isInverted: Bool) { + self.count = count + self.position = position + self.isInverted = isInverted + } +} + +extension SBUScrollOptions { + func row(with indexPath: IndexPath = IndexPath(row: 0, section: 0)) -> Int { + guard let count = self.count, count > 0 else { return indexPath.row } + guard position == .top else { return indexPath.row } + + let offset = max(0, count - 1) + + if isInverted == true { + return max(0, indexPath.row + offset) + } else { + return max(0, indexPath.row - offset) + } + } + + func at() -> UITableView.ScrollPosition { + self.position.transform(isInverted: self.isInverted) + } + +} diff --git a/Sources/Module/Channel/NotificationChannel/Chat/SBUChatNotificationChannelModule.List.swift b/Sources/Module/Channel/NotificationChannel/Chat/SBUChatNotificationChannelModule.List.swift index 114586f1..53101da8 100644 --- a/Sources/Module/Channel/NotificationChannel/Chat/SBUChatNotificationChannelModule.List.swift +++ b/Sources/Module/Channel/NotificationChannel/Chat/SBUChatNotificationChannelModule.List.swift @@ -66,6 +66,18 @@ protocol SBUChatNotificationChannelModuleListDelegate: SBUCommonDelegate { animated: Bool ) + /// Called when the `scrollBottomView`was tapped in the `listComponent`. + /// - Parameters: + /// - listComponent: `SBUChatNotificationChannelModule.List` object. + /// - options: options for scroll position. see also ``SBUScrollOptions``. + /// - animated: if it's `true`, the list component will be scrolled while animating + /// - Since: 3.13.0 + func chatNotificationChannelModule( + _ listComponent: SBUChatNotificationChannelModule.List, + didSelectScrollToBottonWithOptions options: SBUScrollOptions, + animated: Bool + ) + /// Called when a user selects the *retry* button in the list component. func chatNotificationChannelModuleDidSelectRetry( _ listComponent: SBUChatNotificationChannelModule.List @@ -627,17 +639,17 @@ extension SBUChatNotificationChannelModule.List { /// Scrolls tableview to initial position. /// If starting point is set, scroll to the starting point at `.middle`. func scrollToInitialPosition() { - if let startingPoint = self.dataSource?.chatNotificationChannelModule( - self, startingPointIn: - self.tableView - ) { - if let index = notifications.firstIndex(where: { $0.createdAt <= startingPoint }) { - self.scrollTableView(to: index, at: .middle) - } else { - self.scrollTableView(to: notifications.count - 1, at: .top) - } + let config = SBUGlobals.scrollPostionConfiguration.groupChannel + + guard let startingPoint = self.dataSource?.chatNotificationChannelModule(self, startingPointIn: self.tableView) else { + self.scrollTableView(to: 0, at: config.scrollToInitial.transform(with: self.tableView)) + return + } + + if let index = notifications.firstIndex(where: { $0.createdAt <= startingPoint }) { + self.scrollTableView(to: index, at: config.scrollToInitialWithStartingPoint.transform(with: self.tableView)) } else { - self.scrollTableView(to: 0) + self.scrollTableView(to: notifications.count - 1, at: config.scrollToInitial.transform(with: self.tableView)) } } } diff --git a/Sources/Module/Channel/NotificationChannel/Feed/SBUFeedNotificationChannelModule.List.swift b/Sources/Module/Channel/NotificationChannel/Feed/SBUFeedNotificationChannelModule.List.swift index 3fb38d67..a93314e0 100644 --- a/Sources/Module/Channel/NotificationChannel/Feed/SBUFeedNotificationChannelModule.List.swift +++ b/Sources/Module/Channel/NotificationChannel/Feed/SBUFeedNotificationChannelModule.List.swift @@ -66,6 +66,18 @@ protocol SBUFeedNotificationChannelModuleListDelegate: SBUCommonDelegate { animated: Bool ) + /// Called when the `scrollBottomView`was tapped in the `listComponent`. + /// - Parameters: + /// - listComponent: `SBUFeedNotificationChannelModule.List` object. + /// - options: options for scroll position. see also ``SBUScrollOptions``. + /// - animated: if it's `true`, the list component will be scrolled while animating + /// - Since: 3.13.0 + func feedNotificationChannelModule( + _ listComponent: SBUFeedNotificationChannelModule.List, + didSelectScrollToBottonWithOptions options: SBUScrollOptions, + animated: Bool + ) + /// Called when a user selects the *retry* button in the list component. func feedNotificationChannelModuleDidSelectRetry( _ listComponent: SBUFeedNotificationChannelModule.List @@ -607,17 +619,17 @@ extension SBUFeedNotificationChannelModule.List { /// Scrolls tableview to initial position. /// If starting point is set, scroll to the starting point at `.middle`. func scrollToInitialPosition() { - if let startingPoint = self.dataSource?.feedNotificationChannelModule( - self, startingPointIn: - self.tableView - ) { - if let index = notifications.firstIndex(where: { $0.createdAt <= startingPoint }) { - self.scrollTableView(to: index, at: .middle) - } else { - self.scrollTableView(to: notifications.count - 1, at: .top) - } + let config = SBUGlobals.scrollPostionConfiguration.feedChannel + + guard let startingPoint = self.dataSource?.feedNotificationChannelModule(self, startingPointIn: self.tableView) else { + self.scrollTableView(to: 0, at: config.scrollToInitial.transform(with: self.tableView)) + return + } + + if let index = notifications.firstIndex(where: { $0.createdAt <= startingPoint }) { + self.scrollTableView(to: index, at: config.scrollToInitialWithStartingPoint.transform(with: self.tableView)) } else { - self.scrollTableView(to: 0) + self.scrollTableView(to: notifications.count - 1, at: config.scrollToInitial.transform(with: self.tableView)) } } } diff --git a/Sources/Module/Channel/SBUBaseChannelModule.List.swift b/Sources/Module/Channel/SBUBaseChannelModule.List.swift index 9c34b74d..cc5f7524 100644 --- a/Sources/Module/Channel/SBUBaseChannelModule.List.swift +++ b/Sources/Module/Channel/SBUBaseChannelModule.List.swift @@ -87,6 +87,18 @@ public protocol SBUBaseChannelModuleListDelegate: SBUCommonDelegate { animated: Bool ) + /// Called when the `scrollBottomView`was tapped in the `listComponent`. + /// - Parameters: + /// - listComponent: `SBUBaseChannelModule.List` object. + /// - options: options for scroll position. see also ``SBUScrollOptions``. + /// - animated: if it's `true`, the list component will be scrolled while animating + /// - Since: 3.13.0 + func baseChannelModule( + _ listComponent: SBUBaseChannelModule.List, + didSelectScrollToBottonWithOptions options: SBUScrollOptions, + animated: Bool + ) + /// Called when the retry button was selected from the `listComponent`. /// - Parameter listComponent: `SBUBaseChannelModule.List` object. func baseChannelModuleDidSelectRetry(_ listComponent: SBUBaseChannelModule.List) @@ -165,6 +177,22 @@ public protocol SBUBaseChannelModuleListDelegate: SBUCommonDelegate { _ listComponent: SBUBaseChannelModule.List, didDismissMenuForCell cell: UITableViewCell ) + + /// Called when failed scroll to `message` in the `listComponent`. + /// - Parameters: + /// - listComponent: A ``SBUBaseChannelModule/List`` object. + /// - messageId: The message id for which scrolling was attempted. + /// - needToSearch: If `true`, reloads the collection based on the message information if not found by message ID. + /// - Since: 3.13.0 + func baseChannelModule(_ listComponent: SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Int64, needToSearch: Bool) + + /// Called when failed scroll to `message` in the `listComponent`. + /// - Parameters: + /// - listComponent: A ``SBUBaseChannelModule/List`` object. + /// - message: The message for which scrolling was attempted + /// - needToSearch: If `true`, reloads the collection based on the message information if not found by message ID. + /// - Since: 3.13.0 + func baseChannelModule(_ listComponent: SBUBaseChannelModule.List, didFailScrollToMessage message: BaseMessage, needToSearch: Bool) } extension SBUBaseChannelModuleListDelegate { @@ -867,7 +895,13 @@ extension SBUBaseChannelModule { /// Moves scroll to bottom. open func onTapScrollToBottom() { - self.baseDelegate?.baseChannelModuleDidTapScrollToButton(self, animated: false) + let position = SBUScrollPostionConfiguration.getConfiguration(with: self.baseChannel).scrollToBottom + let options = SBUScrollOptions(position: position, isInverted: self.tableView.isInverted) + self.baseDelegate?.baseChannelModule( + self, + didSelectScrollToBottonWithOptions: options, + animated: false + ) } // MARK: - UITableViewDelegate, UITableViewDataSource @@ -1135,52 +1169,105 @@ extension SBUBaseChannelModule.List { /// Scrolls tableview to initial position. /// If starting point is set, scroll to the starting point at `.middle`. func scrollToInitialPosition() { - if let startingPoint = self.baseDataSource?.baseChannelModule(self, startingPointIn: self.tableView) { - if let index = fullMessageList.firstIndex(where: { $0.createdAt <= startingPoint }) { - self.scrollTableView(to: index, at: .middle) - } else { - self.scrollTableView(to: fullMessageList.count - 1, at: .top) - } + let config = SBUScrollPostionConfiguration.getConfiguration(with: self.baseChannel) + + guard let startingPoint = self.baseDataSource?.baseChannelModule(self, startingPointIn: self.tableView) else { + self.scrollTableView(to: 0, at: config.scrollToInitial.transform(with: self.tableView)) + return + } + + if let index = fullMessageList.firstIndex(where: { $0.createdAt <= startingPoint }) { + self.scrollTableView(to: index, at: config.scrollToInitialWithStartingPoint.transform(with: self.tableView)) } else { - self.scrollTableView(to: 0) + self.scrollTableView(to: fullMessageList.count - 1, at: config.scrollToInitial.transform(with: self.tableView)) } } /// Scrolls to the message that is found by `id`. /// - Parameters: - /// - id: The identifier of the message that is wanted to find + /// - messageId: The identifier of the message that is wanted to find /// - enablesScrollAnimation: The boolean value whether scrolls to the message with animation or not. If `false`, it *jumps* to the message. /// - enablesMessageAnimation: The boolean value whether animate the message after the scrolling. If `true`, the message is shaked up and down. + /// - position: Scroll position value. + /// - needToSearch: If `true`, reloads the collection based on the message information if not found by message ID. /// - Returns: `false` when it couldn't find message with `id`. If it returns `true`, ``SBUBaseChannelModuleListDelegate/baseChannelModule(_:didScroll:)`` is called. @discardableResult public func scrollToMessage( id messageId: Int64, enablesScrollAnimation scrollAnimated: Bool = false, - enablesMessageAnimation messageAnimated: Bool = false + enablesMessageAnimation messageAnimated: Bool = false, + position: SBUScrollPosition = .middle, + needToSearch: Bool = true ) -> Bool { guard let row = self.fullMessageList.firstIndex( where: { $0.messageId == messageId } ) else { SBULog.error("Couldn't find message with ID: \(messageId)") + self.baseDelegate?.baseChannelModule(self, didFailScrollToMessageId: messageId, needToSearch: needToSearch) return false } + + self.moveToRow( + row: row, + scrollAnimated: scrollAnimated, + messageAnimated: messageAnimated, + position: position + ) + return true + } + + /// Scrolls to the message that is found by message id. + /// If no such message currently exists, it will attempt to initialize the message list with the time of that message. + /// - Parameters: + /// - message: The message that is wanted to find + /// - enablesScrollAnimation: The boolean value whether scrolls to the message with animation or not. If `false`, it *jumps* to the message. + /// - enablesMessageAnimation: The boolean value whether animate the message after the scrolling. If `true`, the message is shaked up and down. + /// - position: Scroll position value. + /// - needToSearch: If true, reloads the collection based on the message information if not found by message ID. + /// - Returns: `false` when it couldn't find message with `id`. If it returns `true`, ``SBUBaseChannelModuleListDelegate/baseChannelModule(_:didScroll:)`` is called. + @discardableResult + public func scrollToMessage( + message: BaseMessage, + enablesScrollAnimation scrollAnimated: Bool = false, + enablesMessageAnimation messageAnimated: Bool = false, + position: SBUScrollPosition = .middle, + needToSearch: Bool = true + ) -> Bool { + guard let row = self.fullMessageList.firstIndex( + where: { $0.messageId == message.messageId } + ) else { + SBULog.error("Couldn't find message with ID: \(message.messageId)") + self.baseDelegate?.baseChannelModule(self, didFailScrollToMessage: message, needToSearch: needToSearch) + return false + } + + self.moveToRow( + row: row, + scrollAnimated: scrollAnimated, + messageAnimated: messageAnimated, + position: position + ) + return true + } + + fileprivate func moveToRow(row: Int, scrollAnimated: Bool, messageAnimated: Bool, position: SBUScrollPosition) { let indexPath = IndexPath(row: row, section: 0) self.tableView.scrollToRow( at: indexPath, - at: .middle, + at: position.transform(with: self.tableView), animated: scrollAnimated ) defer { self.baseDelegate?.baseChannelModule(self, didScroll: self.tableView) } + if messageAnimated { guard let cell = self.tableView.cellForRow(at: indexPath) as? SBUBaseMessageCell else { SBULog.error("The cell for row at \(indexPath) is not `SBUBaseMessageCell`") - return true + return } cell.messageContentView.animate(.shakeUpDown) } - return true } /// This function checks if the current message and the next message date have the same day. diff --git a/Sources/Module/MessageThread/SBUMessageThreadModule.List.swift b/Sources/Module/MessageThread/SBUMessageThreadModule.List.swift index 45e2e642..9daad1d0 100644 --- a/Sources/Module/MessageThread/SBUMessageThreadModule.List.swift +++ b/Sources/Module/MessageThread/SBUMessageThreadModule.List.swift @@ -824,22 +824,24 @@ extension SBUMessageThreadModule.List { /// Scrolls tableview to initial position. /// If starting point is set, scroll to the starting point at `.middle`. override func scrollToInitialPosition() { - if let startingPoint = self.baseDataSource?.baseChannelModule(self, startingPointIn: self.tableView) { - if startingPoint != 0 { - if let index = fullMessageList.firstIndex(where: { $0.createdAt >= startingPoint }) { - // from quotedMessage - self.scrollTableView(to: index, at: .middle) - } else { - // from select reply thread on parent message menu - self.scrollTableView(to: fullMessageList.count - 1, at: .bottom) - } - } else { - // from threadInfo - self.scrollTableView(to: 0) - } - } else { + guard let startingPoint = self.baseDataSource?.baseChannelModule(self, startingPointIn: self.tableView) else { // from send message self.scrollTableView(to: self.fullMessageList.count - 1) + return + } + + guard startingPoint != 0 else { + // from threadInfo + self.scrollTableView(to: 0) + return + } + + if let index = fullMessageList.firstIndex(where: { $0.createdAt >= startingPoint }) { + // from quotedMessage + self.scrollTableView(to: index, at: .middle) + } else { + // from select reply thread on parent message menu + self.scrollTableView(to: fullMessageList.count - 1, at: .bottom) } } } diff --git a/Sources/SBUGlobals.swift b/Sources/SBUGlobals.swift index 49d1d351..8fe1c68e 100644 --- a/Sources/SBUGlobals.swift +++ b/Sources/SBUGlobals.swift @@ -166,4 +166,14 @@ public class SBUGlobals { /// ``` /// - Since: 3.5.2 public static var isCustomizedIconResizable: Bool = true + + /// The configuration for scroll position. + /// + /// See the example below for configuration setting. + /// ```swift + /// SBUGlobals.scrollPostionConfiguration.groupChannel.scrollToBottom = .top + /// SBUGlobals.scrollPostionConfiguration.groupChannel.scrollToNewMessage = .top + /// ``` + /// - Since: 3.13.0 + public static var scrollPostionConfiguration = SBUScrollPostionConfiguration() } diff --git a/Sources/View/Channel/SBUBaseChannelViewController.swift b/Sources/View/Channel/SBUBaseChannelViewController.swift index 7a0a5049..510b7fe5 100644 --- a/Sources/View/Channel/SBUBaseChannelViewController.swift +++ b/Sources/View/Channel/SBUBaseChannelViewController.swift @@ -415,24 +415,50 @@ open class SBUBaseChannelViewController: SBUBaseViewController, SBUBaseChannelVi /// Scrolls to the message that is found by `id`. When it scrolls successfully, ``SBUBaseChannelModuleListDelegate/baseChannelModule(_:didScroll:)`` delegate method is called. /// - Parameters: - /// - id: The identifier of the message that is wanted to find + /// - messageId: The identifier of the message that is wanted to find /// - enablesScrollAnimation: The boolean value whether scrolls to the message with animation or not. If `false`, it *jumps* to the message. /// - enablesMessageAnimation: The boolean value whether animate the message after the scrolling. If `true`, the message is shaked up and down. + /// - position: Scroll position value. + /// - needToSearch: If `true`, reloads the collection based on the message information if not found by message ID. /// - SeeAlso: ``SBUBaseChannelModule/List/scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:)`` public func scrollToMessage( id messageId: Int64, enablesScrollAnimation: Bool = false, - enablesMessageAnimation: Bool = false + enablesMessageAnimation: Bool = false, + position: SBUScrollPosition = .middle, + needToSearch: Bool = true ) { - let isScrolled = self.baseListComponent?.scrollToMessage( + self.baseListComponent?.scrollToMessage( id: messageId, enablesScrollAnimation: enablesScrollAnimation, - enablesMessageAnimation: enablesMessageAnimation + enablesMessageAnimation: enablesMessageAnimation, + position: position, + needToSearch: needToSearch + ) + } + + /// Scrolls to the message that is found by id of `message`. When it scrolls successfully, ``SBUBaseChannelModuleListDelegate/baseChannelModule(_:didScroll:)`` delegate method is called. + /// - Parameters: + /// - message: The message that is wanted to find + /// - enablesScrollAnimation: The boolean value whether scrolls to the message with animation or not. If `false`, it *jumps* to the message. + /// - enablesMessageAnimation: The boolean value whether animate the message after the scrolling. If `true`, the message is shaked up and down. + /// - position: Scroll position value. + /// - needToSearch: If `true`, reloads the collection based on the message information if not found by message ID. + /// - SeeAlso: ``SBUBaseChannelModule/List/scrollToMessage(id:enablesScrollAnimation:enablesMessageAnimation:)`` + public func scrollToMessage( + message: BaseMessage, + enablesScrollAnimation: Bool = false, + enablesMessageAnimation: Bool = false, + position: SBUScrollPosition = .middle, + needToSearch: Bool = true + ) { + self.baseListComponent?.scrollToMessage( + message: message, + enablesScrollAnimation: enablesScrollAnimation, + enablesMessageAnimation: enablesMessageAnimation, + position: position, + needToSearch: needToSearch ) - - if let isScrolled = isScrolled, !isScrolled { - self.errorHandler("Couldn't find the message with id: \(messageId)") - } } // MARK: - New message info @@ -882,6 +908,42 @@ open class SBUBaseChannelViewController: SBUBaseViewController, SBUBaseChannelVi } } + open func baseChannelModule(_ listComponent: SBUBaseChannelModule.List, didFailScrollToMessageId messageId: Int64, needToSearch: Bool) { + guard needToSearch == true else { + self.errorHandler("Couldn't find the message with id: \(messageId)") + return + } + + self.baseViewModel?.channel?.getMessagesByMessageId( + messageId, + params: MessageListParams(previousResultSize: 1, nextResultSize: 1), + completionHandler: { [weak self] messages, _ in + guard let self = self, let message = messages?.first(where: { $0.messageId == messageId }) else { + self?.errorHandler("Couldn't find the message with id: \(messageId)") + return + } + + self.baseViewModel?.loadInitialMessages( + startingPoint: message.createdAt, + showIndicator: true, + initialMessages: self.baseViewModel?.fullMessageList + ) + }) + } + + open func baseChannelModule(_ listComponent: SBUBaseChannelModule.List, didFailScrollToMessage message: BaseMessage, needToSearch: Bool) { + guard needToSearch == true else { + self.errorHandler("Couldn't find the message with id: \(message.messageId)") + return + } + + baseViewModel?.loadInitialMessages( + startingPoint: message.createdAt, + showIndicator: true, + initialMessages: self.baseViewModel?.fullMessageList + ) + } + open func baseChannelModule(_ listComponent: SBUBaseChannelModule.List, didReactToMessage message: BaseMessage, withEmoji key: String, selected: Bool) { self.baseViewModel?.setReaction( message: message, @@ -907,6 +969,22 @@ open class SBUBaseChannelViewController: SBUBaseViewController, SBUBaseChannelVi } open func baseChannelModuleDidTapScrollToButton(_ listComponent: SBUBaseChannelModule.List, animated: Bool) { + let options = SBUScrollOptions( + position: .bottom, + isInverted: listComponent.tableView.isInverted + ) + self.baseChannelModule( + listComponent, + didSelectScrollToBottonWithOptions: options, + animated: true + ) + } + + open func baseChannelModule( + _ listComponent: SBUBaseChannelModule.List, + didSelectScrollToBottonWithOptions options: SBUScrollOptions, + animated: Bool + ) { guard self.baseViewModel?.fullMessageList.isEmpty == false else { return } self.lastSeenIndexPath = nil @@ -918,24 +996,29 @@ open class SBUBaseChannelViewController: SBUBaseViewController, SBUBaseChannelVi self.setMessageInputViewMode(.none) } - if self.baseViewModel?.hasNext() ?? false { + if self.baseViewModel?.hasNext() == true { listComponent.tableView.setContentOffset(listComponent.tableView.contentOffset, animated: false) self.baseViewModel?.reloadMessageList() self.baseListComponent?.scrollTableView(to: 0) - } else { - var indexPath = IndexPath(row: 0, section: 0) - - if !self.isTransformedList, - let fullMessageCount = self.baseViewModel?.fullMessageList.count { - indexPath = IndexPath(item: fullMessageCount - 1, section: 0) - - self.baseViewModel?.reloadMessageList() - } + return + } + + var indexPath = IndexPath(row: 0, section: 0) + + if self.isTransformedList == false, + let fullMessageCount = self.baseViewModel?.fullMessageList.count { + indexPath = IndexPath(item: fullMessageCount - 1, section: 0) - self.baseListComponent?.scrollTableView(to: indexPath.row, animated: animated) - self.updateNewMessageInfo(hidden: true) - self.baseListComponent?.setScrollBottomView(hidden: true) + self.baseViewModel?.reloadMessageList() } + + self.baseListComponent?.scrollTableView( + to: options.row(with: indexPath), + at: options.at(), + animated: animated + ) + self.updateNewMessageInfo(hidden: true) + self.baseListComponent?.setScrollBottomView(hidden: true) } } diff --git a/Sources/View/Channel/SBUChatNotificationChannelViewController.swift b/Sources/View/Channel/SBUChatNotificationChannelViewController.swift index 4bb8240e..81ccacb9 100644 --- a/Sources/View/Channel/SBUChatNotificationChannelViewController.swift +++ b/Sources/View/Channel/SBUChatNotificationChannelViewController.swift @@ -379,7 +379,19 @@ open class SBUChatNotificationChannelViewController: SBUBaseViewController, newNotificationInfoView.updateCount(count: self.newNotificationsCount) { [weak self] in guard let self = self else { return } guard let listComponent = self.listComponent else { return } - self.chatNotificationChannelModuleDidTapScrollToButton(listComponent, animated: true) + + let position = SBUGlobals.scrollPostionConfiguration.groupChannel.scrollToNewMessage + let options = SBUScrollOptions( + count: self.newNotificationsCount, + position: position, + isInverted: listComponent.tableView.isInverted + ) + + self.chatNotificationChannelModule( + listComponent, + didSelectScrollToBottonWithOptions: options, + animated: true + ) } } @@ -608,6 +620,22 @@ open class SBUChatNotificationChannelViewController: SBUBaseViewController, func chatNotificationChannelModuleDidTapScrollToButton( _ listComponent: SBUChatNotificationChannelModule.List, animated: Bool + ) { + let options = SBUScrollOptions( + position: .bottom, + isInverted: listComponent.tableView.isInverted + ) + self.chatNotificationChannelModule( + listComponent, + didSelectScrollToBottonWithOptions: options, + animated: animated + ) + } + + func chatNotificationChannelModule( + _ listComponent: SBUChatNotificationChannelModule.List, + didSelectScrollToBottonWithOptions options: SBUScrollOptions, + animated: Bool ) { guard self.viewModel?.notifications.isEmpty == false else { return } self.newNotificationsCount = 0 @@ -625,8 +653,11 @@ open class SBUChatNotificationChannelViewController: SBUBaseViewController, self.viewModel?.reloadNotificationList() self.listComponent?.scrollTableView(to: 0) } else { - let indexPath = IndexPath(row: 0, section: 0) - self.listComponent?.scrollTableView(to: indexPath.row, animated: animated) + self.listComponent?.scrollTableView( + to: options.row(), + at: options.at(), + animated: animated + ) self.updateNewNotificationInfo(hidden: true) } } diff --git a/Sources/View/Channel/SBUFeedNotificationChannelViewController.swift b/Sources/View/Channel/SBUFeedNotificationChannelViewController.swift index e5718da0..310da0f6 100644 --- a/Sources/View/Channel/SBUFeedNotificationChannelViewController.swift +++ b/Sources/View/Channel/SBUFeedNotificationChannelViewController.swift @@ -449,7 +449,19 @@ open class SBUFeedNotificationChannelViewController: SBUBaseViewController, newNotificationInfoView.updateCount(count: self.newNotificationsCount) { [weak self] in guard let self = self else { return } guard let listComponent = self.listComponent else { return } - self.feedNotificationChannelModuleDidTapScrollToButton(listComponent, animated: true) + + let position = SBUGlobals.scrollPostionConfiguration.feedChannel.scrollToNewMessage + let options = SBUScrollOptions( + count: self.newNotificationsCount, + position: position, + isInverted: listComponent.tableView.isInverted + ) + + self.feedNotificationChannelModule( + listComponent, + didSelectScrollToBottonWithOptions: options, + animated: true + ) } } @@ -710,6 +722,22 @@ open class SBUFeedNotificationChannelViewController: SBUBaseViewController, func feedNotificationChannelModuleDidTapScrollToButton( _ listComponent: SBUFeedNotificationChannelModule.List, animated: Bool + ) { + let options = SBUScrollOptions( + position: .bottom, + isInverted: listComponent.tableView.isInverted + ) + self.feedNotificationChannelModule( + listComponent, + didSelectScrollToBottonWithOptions: options, + animated: animated + ) + } + + func feedNotificationChannelModule( + _ listComponent: SBUFeedNotificationChannelModule.List, + didSelectScrollToBottonWithOptions options: SBUScrollOptions, + animated: Bool ) { guard self.viewModel?.notifications.isEmpty == false else { return } self.newNotificationsCount = 0 @@ -727,8 +755,11 @@ open class SBUFeedNotificationChannelViewController: SBUBaseViewController, self.viewModel?.reloadNotificationList() self.listComponent?.scrollTableView(to: 0) } else { - let indexPath = IndexPath(row: 0, section: 0) - self.listComponent?.scrollTableView(to: indexPath.row, animated: animated) + self.listComponent?.scrollTableView( + to: options.row(), + at: options.at(), + animated: animated + ) self.updateNewNotificationInfo(hidden: true) } } diff --git a/Sources/View/Channel/SBUGroupChannelViewController.swift b/Sources/View/Channel/SBUGroupChannelViewController.swift index 0012872d..20c09bd9 100644 --- a/Sources/View/Channel/SBUGroupChannelViewController.swift +++ b/Sources/View/Channel/SBUGroupChannelViewController.swift @@ -322,7 +322,19 @@ open class SBUGroupChannelViewController: SBUBaseChannelViewController, SBUGroup newMessageInfoView.updateCount(count: self.newMessagesCount) { [weak self] in guard let self = self else { return } guard let listComponent = self.listComponent else { return } - self.baseChannelModuleDidTapScrollToButton(listComponent, animated: true) + + let position = SBUGlobals.scrollPostionConfiguration.groupChannel.scrollToNewMessage + let options = SBUScrollOptions( + count: self.newMessagesCount, + position: position, + isInverted: listComponent.tableView.isInverted + ) + + self.baseChannelModule( + listComponent, + didSelectScrollToBottonWithOptions: options, + animated: true + ) } } return true @@ -952,6 +964,21 @@ open class SBUGroupChannelViewController: SBUBaseChannelViewController, SBUGroup super.baseChannelModuleDidTapScrollToButton(listComponent, animated: animated) } + open override func baseChannelModule( + _ listComponent: SBUBaseChannelModule.List, + didSelectScrollToBottonWithOptions options: SBUScrollOptions, + animated: Bool + ) { + guard self.baseViewModel?.fullMessageList.isEmpty == false else { return } + self.newMessagesCount = 0 + + super.baseChannelModule( + listComponent, + didSelectScrollToBottonWithOptions: options, + animated: animated + ) + } + open override func baseChannelModule(_ listComponent: SBUBaseChannelModule.List, didScroll scrollView: UIScrollView) { super.baseChannelModule(listComponent, didScroll: scrollView) diff --git a/Sources/View/Common/Menu/SBUMenuSheetViewController.swift b/Sources/View/Common/Menu/SBUMenuSheetViewController.swift index e902982c..2070ed7b 100644 --- a/Sources/View/Common/Menu/SBUMenuSheetViewController.swift +++ b/Sources/View/Common/Menu/SBUMenuSheetViewController.swift @@ -124,6 +124,8 @@ public class SBUMenuSheetViewController: SBUBaseViewController, UITableViewDeleg bottom: 0 ) } + + self.tableView.layoutIfNeeded() } public override func updateLayouts() {