Class MessageComposerViewModelBinding

    • Constructor Detail

    • Method Detail

      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener, Function0<Unit> audioDeleteButtonClickListener, Function0<Unit> audioStopButtonClickListener, Function0<Unit> audioPlaybackButtonClickListener, Function0<Unit> audioCompleteButtonClickListener, Function1<Float, Unit> audioSliderDragStartListener, Function1<Float, Unit> audioSliderDragStopListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
        audioDeleteButtonClickListener - Click listener for the audio recording delete button.
        audioStopButtonClickListener - Click listener for the audio recording stop button.
        audioPlaybackButtonClickListener - Click listener for the audio recording playback button.
        audioCompleteButtonClickListener - Click listener for the audio recording complete button.
        audioSliderDragStartListener - Drag start listener invoked when the audio slider starts being dragged.
        audioSliderDragStopListener - Drag stop listener invoked when the audio slider stops being dragged.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener, Function0<Unit> audioDeleteButtonClickListener, Function0<Unit> audioStopButtonClickListener, Function0<Unit> audioPlaybackButtonClickListener, Function0<Unit> audioCompleteButtonClickListener, Function1<Float, Unit> audioSliderDragStartListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
        audioDeleteButtonClickListener - Click listener for the audio recording delete button.
        audioStopButtonClickListener - Click listener for the audio recording stop button.
        audioPlaybackButtonClickListener - Click listener for the audio recording playback button.
        audioCompleteButtonClickListener - Click listener for the audio recording complete button.
        audioSliderDragStartListener - Drag start listener invoked when the audio slider starts being dragged.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener, Function0<Unit> audioDeleteButtonClickListener, Function0<Unit> audioStopButtonClickListener, Function0<Unit> audioPlaybackButtonClickListener, Function0<Unit> audioCompleteButtonClickListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
        audioDeleteButtonClickListener - Click listener for the audio recording delete button.
        audioStopButtonClickListener - Click listener for the audio recording stop button.
        audioPlaybackButtonClickListener - Click listener for the audio recording playback button.
        audioCompleteButtonClickListener - Click listener for the audio recording complete button.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener, Function0<Unit> audioDeleteButtonClickListener, Function0<Unit> audioStopButtonClickListener, Function0<Unit> audioPlaybackButtonClickListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
        audioDeleteButtonClickListener - Click listener for the audio recording delete button.
        audioStopButtonClickListener - Click listener for the audio recording stop button.
        audioPlaybackButtonClickListener - Click listener for the audio recording playback button.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener, Function0<Unit> audioDeleteButtonClickListener, Function0<Unit> audioStopButtonClickListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
        audioDeleteButtonClickListener - Click listener for the audio recording delete button.
        audioStopButtonClickListener - Click listener for the audio recording stop button.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener, Function0<Unit> audioDeleteButtonClickListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
        audioDeleteButtonClickListener - Click listener for the audio recording delete button.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
      • bind

         final static Unit bind(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener, Function0<Unit> audioDeleteButtonClickListener, Function0<Unit> audioStopButtonClickListener, Function0<Unit> audioPlaybackButtonClickListener, Function0<Unit> audioCompleteButtonClickListener, Function1<Float, Unit> audioSliderDragStartListener, Function1<Float, Unit> audioSliderDragStopListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
        audioDeleteButtonClickListener - Click listener for the audio recording delete button.
        audioStopButtonClickListener - Click listener for the audio recording stop button.
        audioPlaybackButtonClickListener - Click listener for the audio recording playback button.
        audioCompleteButtonClickListener - Click listener for the audio recording complete button.
        audioSliderDragStartListener - Drag start listener invoked when the audio slider starts being dragged.
        audioSliderDragStopListener - Drag stop listener invoked when the audio slider stops being dragged.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener, Function0<Unit> audioDeleteButtonClickListener, Function0<Unit> audioStopButtonClickListener, Function0<Unit> audioPlaybackButtonClickListener, Function0<Unit> audioCompleteButtonClickListener, Function1<Float, Unit> audioSliderDragStartListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
        audioDeleteButtonClickListener - Click listener for the audio recording delete button.
        audioStopButtonClickListener - Click listener for the audio recording stop button.
        audioPlaybackButtonClickListener - Click listener for the audio recording playback button.
        audioCompleteButtonClickListener - Click listener for the audio recording complete button.
        audioSliderDragStartListener - Drag start listener invoked when the audio slider starts being dragged.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener, Function0<Unit> audioDeleteButtonClickListener, Function0<Unit> audioStopButtonClickListener, Function0<Unit> audioPlaybackButtonClickListener, Function0<Unit> audioCompleteButtonClickListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
        audioDeleteButtonClickListener - Click listener for the audio recording delete button.
        audioStopButtonClickListener - Click listener for the audio recording stop button.
        audioPlaybackButtonClickListener - Click listener for the audio recording playback button.
        audioCompleteButtonClickListener - Click listener for the audio recording complete button.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener, Function0<Unit> audioDeleteButtonClickListener, Function0<Unit> audioStopButtonClickListener, Function0<Unit> audioPlaybackButtonClickListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
        audioDeleteButtonClickListener - Click listener for the audio recording delete button.
        audioStopButtonClickListener - Click listener for the audio recording stop button.
        audioPlaybackButtonClickListener - Click listener for the audio recording playback button.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener, Function0<Unit> audioDeleteButtonClickListener, Function0<Unit> audioStopButtonClickListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
        audioDeleteButtonClickListener - Click listener for the audio recording delete button.
        audioStopButtonClickListener - Click listener for the audio recording stop button.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener, Function0<Unit> audioDeleteButtonClickListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
        audioDeleteButtonClickListener - Click listener for the audio recording delete button.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener, Function0<Unit> audioRecordButtonReleaseListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
        audioRecordButtonReleaseListener - Release listener invoked when the microphone button gets released.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener, Function0<Unit> audioRecordButtonCancelListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
        audioRecordButtonCancelListener - Cancel listener invoked when the audio recording gets cancelled.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener, Function0<Unit> audioRecordButtonLockListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
        audioRecordButtonLockListener - Lock listener invoked when the audio recording gets locked.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener, Function0<Unit> audioRecordButtonHoldListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
        audioRecordButtonHoldListener - Hold listener invoked when the microphone button gets pressed down.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener, Function0<Unit> dismissSuggestionsListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
        dismissSuggestionsListener - Click listener invoked when suggestion popup is dismissed.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener, Function0<Unit> commandsButtonClickListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
        commandsButtonClickListener - Click listener for the pick commands button.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener, Function0<Unit> dismissActionClickListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
        dismissActionClickListener - Click listener for the dismiss action button.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener, Function1<Boolean, Unit> alsoSendToChannelSelectionListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
        alsoSendToChannelSelectionListener - Selection listener for the "also send to channel" checkbox.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener, Function1<Command, Unit> commandSelectionListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
        commandSelectionListener - Selection listener invoked when a command suggestion item is selected.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener, Function1<User, Unit> mentionSelectionListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
        mentionSelectionListener - Selection listener invoked when a mention suggestion item is selected.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener, Function1<Attachment, Unit> attachmentRemovalListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
        attachmentRemovalListener - Click listener for the remove attachment button.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener, Function1<List<Attachment>, Unit> attachmentSelectionListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.
        attachmentSelectionListener - Selection listener invoked when attachments are selected.
      • bindDefaults

         final static Unit bindDefaults(MessageComposerViewModel $self, MessageComposerView view, LifecycleOwner lifecycleOwner, Function0<Message> messageBuilder, Function1<Message, Unit> sendMessageButtonClickListener, Function1<String, Unit> textInputChangeListener)

        Function which connects MessageComposerView to MessageComposerViewModel. As a result the view renders the state delivered by the ViewModel, and the ViewModel intercepts the user's actions automatically. The main difference with bindView is that listeners in this function do not override the default behaviour.

        Parameters:
        view - An instance of MessageComposerView to bind to the ViewModel.
        lifecycleOwner - LifecycleOwner of Activity or Fragment hosting the MessageComposerView
        messageBuilder - A lambda function to build a new message.
        sendMessageButtonClickListener - Click listener for the send message button.
        textInputChangeListener - Text change listener invoked each time after text was changed.