chatview library

Classes

AndroidEncoderSettings
Class to specify encoder and output format settings for Android.
BackspaceButton
Backspace Button Widget
BottomActionBar
Template class for custom implementation
BottomActionBarConfig
Bottom Action Bar Config
CacheNetworkImageDownloadProgress
Progress of the file that is being downloaded from the originalUrl.
CameraActionButton
Camera action button implementation.
CancelRecordConfiguration
CategoryEmoji
Container for Category and their emoji
CategoryIcon
Class that defines the icon representing a Category
CategoryIcons
Class used to define all the CategoryIcon shown for each Category
CategoryView
Template class for custom implementation Inhert this class to create your own Category view
CategoryViewConfig
Category view Config
CategoryViewState<T extends CategoryView>
Template class for custom implementation Inhert this class to create your own category view state
ChatBackgroundConfiguration
ChatBubble
ChatBubbleConfiguration
ChatController
ChatList
ChatListAppBar
ChatListController
ChatListItem
Model class representing a user or group in the chat list.
ChatMenuConfig
ChatSettings
ChatUser
ChatUserConfigBase
This class provides a structure for specifying custom JSON key mappings for user properties, ensuring flexibility in parsing and serializing different user data formats.
ChatView
ChatViewAppBar
ChatViewLocale
Class representing all localizable strings for ChatView package.
ChatViewStateConfiguration
ChatViewStateWidgetConfiguration
Config
Config for customizations
Constants
DefaultBottomActionBar
Default Bottom Action Bar implementation
DefaultCategoryTabBar
Default category tab bar
DefaultCategoryView
Default category view
DefaultCategoryViewState
Default Category View State
DefaultEmojiPickerView
Default EmojiPicker Implementation
DefaultGroupSeparatorConfiguration
DefaultSearchView
Default Search implementation
DefaultSearchViewState
Default Search View State
Emoji
A class to store data for each individual emoji
EmojiCell
A widget that represents an individual clickable emoji cell. Can have a long pressed listener onSkinToneDialogRequested that provides necessary data to show a skin tone popup.
EmojiConfiguration
EmojiContainer
A wrapper around a grid or list of emojis. If the button style is Cupertino or None, this is just wrapping the child with a container of a provided color. For Material style it is a Material widget that allows to render touch response for individual InkWell cells.
EmojiMessageConfiguration
EmojiPicker
The Emoji Keyboard widget
EmojiPickerActionButton
Emoji picker action button implementation.
EmojiPickerController
Controller for EmojiPicker widget that allows reading and changing the selected category programmatically.
EmojiPickerState
EmojiPickerState
EmojiPickerUtils
Helper class that provides extended usage
EmojiPickerView
Template class for custom implementation Inhert this class to create your own EmojiPicker
EmojiTextEditingController
Text editing controller that produces text spans on the fly for setting a particular style to emoji characters.
EmojiViewConfig
Emoji View Config
EmojiViewState
State that holds current emoji data
FeatureActiveConfig
GalleryActionButton
Gallery action button implementation.
GlassMorphismConfiguration
ImageMessageConfiguration
ImagePickerConfiguration
ImagePickerIconsConfiguration
IosEncoderSetting
Class to configure encoder settings for iOS recordings.
ItemState<T>
LastMessageStatusConfig
LastMessageTimeConfig
LinkPreviewConfiguration
ListStateConfig
ListTileConfig
Configuration class for the user widget in the chat list UI.
LoadMoreConfig
Configuration class for the load more chat list widget.
Message
MessageConfiguration
MessageReactionConfiguration
MuteIconConfig
OverlayActionButton
Custom action button that displays a plus icon and shows a horizontal row of options when pressed.
OverlayActionWidget
Represents a widget that can be used in the plus/attach modal sheet.
PackageStrings
PinIconConfig
PlayerWaveStyle
ProfileCircleConfiguration
Reaction
ReactionPopupConfiguration
ReactionsBottomSheetConfiguration
ReceiptsWidgetConfig
RecentEmoji
Class that holds an recent emoji Recent Emoji has an instance of the emoji And a counter, which counts how often this emoji has been used before
RecorderSettings
Class to configure audio recording settings for Android and iOS.
RepliedMessageConfiguration
RepliedMsgAutoScrollConfig
ReplyMessage
ReplyPopupConfiguration
ReplySuggestionsConfig
Configuration for reply suggestions in a chat view.
ScrollToBottomButtonConfig
Configuration for the "Scroll to Bottom" button.
SearchButton
Search Button Widget
SearchConfig
Configuration class for the search text field in the chat list UI.
SearchView
Template class for custom implementation Inhert this class to create your own search view
SearchViewConfig
Search view Config
SearchViewState<T extends SearchView>
Template class for custom implementation Inhert this class to create your own search view state
SendMessageConfiguration
ShareIconConfiguration
SkinTone
Alternative skin tones of Emoji
SkinToneConfig
Skin tone config Config
SuggestionItemConfig
SuggestionItemData
SuggestionListConfig
SwipeToReplyConfiguration
TextFieldActionButton
A generic action button for text fields that can be used for various actions like opening the camera, or selecting images from the gallery.
TextFieldActionButtonState<T extends TextFieldActionButton>
TextFieldConfiguration
TextSelectionConfig
TriangleDecoration
Decoration that can be used to render a triangle in the bottom-right corner of a container
TypeIndicatorConfiguration
TypingStatusConfig
Configuration for the chat list type indicator. Controls appearance and behavior of the indicator shown in chat list tiles.
UnreadCountConfig
Configuration class for the unread message widget in the chat list UI.
UserActiveStatusConfig
UserAvatarConfig
ViewOrderConfig
View order config
VoiceMessageConfiguration
A configuration model class for voice message bubble.
VoiceRecordingConfiguration
WaveStyle

Enums

AndroidEncoder
Android encoders.
ButtonMode
Enum to alter the keyboard button style
Category
All the possible categories that Emoji can be put into
CategoryExtraTab
Behavior of extra tab
ChatPaginationDirection
Defines the direction for pagination in the chat view.
ChatRoomType
An enumeration representing different types of chat rooms.
ChatViewState
Represents the different states of the chat view.
EmojiPickerItem
Widgets shown in EmojiPicker view
GroupedListOrder
ImageType
Defines the different types of image sources.
IosEncoder
IOS encoders.
MessageStatus
Represents the current state of a message from sending to delivery.
MessageType
Defines the various message types in ChatView.
MuteStatus
An enumeration representing the mute status of a chat.
PinStatus
An enumeration representing the pin status of a chat.
RecentTabBehavior
Behavior of Recent Tab
ScrollButtonAlignment
ShowReceiptsIn
SuggestionItemsType
SuggestionListAlignment
TypeWriterStatus
Indicates whether the user is currently typing or has finished typing.
UnreadCountStyle
An enumeration of unread count styles.
UserActiveStatus
An enumeration of user status.
UserActiveStatusAlignment

Mixins

SkinToneOverlayStateMixin<T extends StatefulWidget>
Skin tone overlay mixin

Extensions

CategoryExtension on Category
Extension on Category enum to get its name
ChatViewStateExtension on ChatViewState
GroupedListOrderExtension on GroupedListOrder
MessageTypes on MessageType
Extension on MessageType for checking specific message type

Constants

defaultEmojiSet → const List<CategoryEmoji>
List of categories of emojis
DefaultEmojiTextStyle → const TextStyle
Emoji text style providing commonly available fallback fonts
DefaultNoRecentsWidget → const Text
Default Widget if no recent is available
delimiter → const String
Default delimiter for regex
EmojiRegex → const String
Emoji Regex Keycap Sequence '((\u0023|\u002a|\u0030-\u0039)\ufe0f\u20e3){1}' Issue: https://github.com/flutter/flutter/issues/36062
emojiSetChinese → const List<CategoryEmoji>
List of categories of emojis
emojiSetDutch → const List<CategoryEmoji>
List of categories of emojis
emojiSetEnglish → const List<CategoryEmoji>
List of categories of emojis
emojiSetFrance → const List<CategoryEmoji>
List of categories of emojis
emojiSetGerman → const List<CategoryEmoji>
List of categories of emojis
emojiSetHindi → const List<CategoryEmoji>
List of categories of emojis
emojiSetItalian → const List<CategoryEmoji>
List of categories of emojis
emojiSetJapanese → const List<CategoryEmoji>
List of categories of emojis
emojiSetPortuguese → const List<CategoryEmoji>
List of categories of emojis
emojiSetRussian → const List<CategoryEmoji>
List of categories of emojis
emojiSetSpanish → const List<CategoryEmoji>
List of categories of emojis
kSkinToneCount → const int
Number of skin tone icons

Functions

getIconForCategory(CategoryIcons categoryIcons, Category category) IconData
Returns the icon for the category

Typedefs

ActiveStatusIndicatorColorResolver = Color Function(UserActiveStatus status)
AssetImageErrorBuilder = Widget Function(BuildContext context, Object error, StackTrace? stackTrace)
AutoAnimateItemBuilder<T> = Widget Function(BuildContext context, int index, bool isLastItem, T item)
AutoAnimateSeparatorBuilder = Widget Function(BuildContext context, int index)
BackgroundImageLoadError = void Function(Object exception, StackTrace? stackTrace)?
BottomActionBarBuilder = Widget Function(Config config, EmojiViewState state, VoidCallback showSearchView)
Callback function for custom bottom action bar
CameraActionCallback = void Function(String? path, ReplyMessage? replyMessage)
CategoryViewBuilder = Widget Function(Config config, EmojiViewState state, TabController tabController, PageController pageController)
Callback function for custom category view
ChatBubbleLongPressCallback = void Function(double yCordinate, double xCordinate, Message message)
ChatListLastMessageTileBuilder = Widget Function(ChatListItem chat)
ChatListTextBuilder = String? Function(ChatListItem chat)
ChatListTileBuilder = Widget Function(BuildContext context, ChatListItem chat)
ChatListWidgetBuilder = Widget? Function(ChatListItem chat)
ChatPinnedCallback<T> = bool Function(T chat)
ChatSorter = int Function(ChatListItem chat1, ChatListItem chat2)
ChatStatusCallback<T> = void Function(({ChatListItem chat, T status}) result)
ChatTextFieldViewBuilderCallback<T> = Widget Function(BuildContext context, T value, Widget? child)
CustomMessageBuilder = Widget Function(Message message)
CustomMessageReplyViewBuilder = Widget Function(ReplyMessage state)
customMessageType view for a reply of custom message type
CustomViewForReplyMessage = Widget Function(BuildContext context, ReplyMessage state)
customView for replying to any message
CustomVoiceActionIconCallback = Icon Function(bool isMessageBySender)
DeleteChatCallback = void Function(ChatListItem chat)
DoubleCallBack = void Function(double yPosition, double xPosition)
DragUpdateDetailsCallback = void Function(DragUpdateDetails)
EmojiPickerActionCallback = void Function(String? emoji, ReplyMessage? replyMessage)
EmojiViewBuilder = Widget Function(Config config, EmojiViewState state, VoidCallback showSearchBar)
Callback function for custom view
GetMessageSeparatorWithCounts = (Map<int, DateTime>, DateTime, Map<int, int>)
ImagePickedCallback = Future<String?> Function(String? path)
LastMessageTimeBuilder = Widget Function(DateTime time)
LastSeenAgoBuilder = Widget Function(Message message, String formattedDate)
MessageSorter = int Function(Message message1, Message message2)
MessageStatusBuilder = Widget Function(MessageStatus status)
MessageStatusColorResolver = Color Function(MessageStatus status)
MessageStatusIconEnableCallback = bool Function(Message message)
MessageStatusIconResolver = IconData Function(MessageStatus status)
MoreTapCallBack = void Function(Message message, bool sentByCurrentUser)
NetworkImageErrorBuilder = Widget Function(BuildContext context, String url, Object error)
NetworkImageProgressIndicatorBuilder = Widget Function(BuildContext context, String url, CacheNetworkImageDownloadProgress progress)
OldReplyMessageFetchCallback = Future<void> Function(String messageId)
OnBackspaceLongPressed = void Function()
Callback function for backspace button when long pressed
OnBackspacePressed = void Function()
Callback function for backspace button
OnCategoryChanged = void Function(Category category)
Callback function for category tab changed
OnEmojiSelected = void Function(Category? category, Emoji emoji)
Callback function for when emoji is selected
OnMessageSwipeCallback = void Function(String message, String sentBy)
OnSkinToneDialogRequested = void Function(Offset emojiBoxPosition, Emoji emoji, double emojiSize, CategoryEmoji? categoryEmoji)
Callback from emoji cell to show a skin tone selection overlay
PaginationCallback = Future<void> Function(ChatPaginationDirection direction, Message message)
PaginationScrollUpdateResult = ({ChatPaginationDirection? direction, Message? message})
ReactedUserCallback = void Function(ChatUser reactedUser, String reaction)
ReactionCallback = void Function(Message message, String emoji)
ReceiptBuilder = Widget Function(MessageStatus status)
ReplyMessageWithReturnWidget = Widget Function(ReplyMessage? replyMessage)
ReplyPopupBuilder = Widget Function(Message message, bool sentByCurrentUser)
SearchUserCallback = FutureOr<List<ChatListItem>?> Function(String value)
SearchViewBuilder = Widget Function(Config config, EmojiViewState state, VoidCallback showEmojiView)
Callback function for custom search view
SelectedImageViewBuilder = Widget Function(List<String> images, ValueSetter<String> onImageRemove)
ShowUserActiveIndicatorCallback = bool Function(UserActiveStatus status)
StatusTrailingIcon<T> = IconData Function(T status)
StringMessageCallBack = void Function(String message, ReplyMessage replyMessage, MessageType messageType)
StringsCallBack = void Function(String emoji, String messageId)
StringWithReturnWidget = Widget Function(String separator)
SuggestionItemBuilder = Widget Function(int index, SuggestionItemData suggestionItemData)
TextFieldActionWidgetBuilder = List<Widget> Function(BuildContext context, TextEditingController controller)
TrailingBuilder = Widget Function(ChatListItem chat)
UnreadCountWidgetBuilder = Widget Function(int count)
UpdateChatCallback = ChatListItem Function(ChatListItem previousChat)
UserAvatarBuilder = Widget Function(ChatListItem chat)
UserNameBuilder = Widget Function(ChatListItem chat)