Package-level declarations
Types
Link copied to clipboard
class AttachmentsPickerViewModel(storageHelper: StorageHelperWrapper, channelState: StateFlow<ChannelState?>) : ViewModel
ViewModel responsible for handling the state and business logic of attachments.
Link copied to clipboard
ViewModel class for the AudioPlayer.
Link copied to clipboard
class AudioPlayerViewModelFactory(getAudioPlayer: () -> AudioPlayer, getRecordingUri: (Attachment) -> String?) : ViewModelProvider.Factory
Link copied to clipboard
ViewModel responsible for handling the composing and sending of messages.
Link copied to clipboard
ViewModel responsible for handling all the business logic & state for the list of messages.
Link copied to clipboard
class MessagesViewModelFactory(context: Context, channelId: String, messageId: String? = null, parentMessageId: String? = null, autoTranslationEnabled: Boolean = false, chatClient: ChatClient = ChatClient.instance(), clientState: ClientState = chatClient.clientState, mediaRecorder: StreamMediaRecorder = DefaultStreamMediaRecorder(context.applicationContext), userLookupHandler: UserLookupHandler = DefaultUserLookupHandler(chatClient, channelId), fileToUriConverter: (File) -> String = { file -> file.toUri().toString() }, messageLimit: Int = MessageListController.DEFAULT_MESSAGES_LIMIT, clipboardHandler: ClipboardHandler = ClipboardHandlerImpl(
clipboardManager = context.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager,
autoTranslationEnabled = autoTranslationEnabled,
getCurrentUser = { chatClient.getCurrentUser() },
), enforceUniqueReactions: Boolean = true, maxAttachmentCount: Int = AttachmentConstants.MAX_ATTACHMENTS_COUNT, showSystemMessages: Boolean = true, deletedMessageVisibility: DeletedMessageVisibility = DeletedMessageVisibility.ALWAYS_VISIBLE, messageFooterVisibility: MessageFooterVisibility = MessageFooterVisibility.WithTimeDifference(), dateSeparatorHandler: DateSeparatorHandler = DateSeparatorHandler.getDefaultDateSeparatorHandler(), threadDateSeparatorHandler: DateSeparatorHandler = DateSeparatorHandler.getDefaultThreadDateSeparatorHandler(), messagePositionHandler: MessagePositionHandler = MessagePositionHandler.defaultHandler(), showDateSeparatorInEmptyThread: Boolean = false, showThreadSeparatorInEmptyThread: Boolean = false, threadLoadOlderToNewer: Boolean = false, isComposerLinkPreviewEnabled: Boolean = false) : ViewModelProvider.Factory
Holds all the dependencies needed to build the ViewModels for the Messages Screen. Currently builds the MessageComposerViewModel, MessageListViewModel and AttachmentsPickerViewModel.