Releases: tjtanjin/react-chatbotify
v1.6.0
Added:
- Added a new
sensitiveInput
configuration section to cater for sensitive information (refer to API documentation) - Added a new
autoLoad
property to thechatHistory
section which allows chat history messages to be automatically loaded on start - Added a new
dangerouslySetInnerHtml
property to bothuserBubble
andbotBubble
which allows setting of raw HTML content (use with caution)
Fixed:
- Fixed several type definitions within the library itself
- Fixed an issue where the load chat history button can appear distorted if given a long text string
- Fixed an issue where some chat history messages may not be saved when using real-time stream
- Fixed an issue where chat input textarea may resize when focused on some occasions
- Fixed selection of emoji causing textarea to lose focus
- Improved performance for saving chat history
- Further reduced assets file size
Note:
This update contains significant additions which have been documented on the API documentation. You will also find new live examples for Sensitive Input and Markup Message. This will be one of the last few (if not the last) release before v2.0.0 arrives. Feel free to join discord to stay up to date!
v1.5.2
v1.5.1
Fixed:
- Fixed an issue where library css file is not injected for commonjs users
- Fixed an issue where tooltip mode may not be respected
- Fixed an issue where option boxes do not stretch on much larger chatbot window width
- Fixed an issue where overflowing text are not hidden for checkboxes/option boxes
- Fixed an issue where if
header
section is used, thenshowAvatar
is a required property - Fixed usage of oversized images (improves default chatbot load time!)
v1.5.0
Added:
- Added a new
animate
option to bothuserBubble
andbotBubble
to easily toggle animations on and off for them
Fixed:
- Fixed an issue where empty chat bubbles from stream messages are being saved to chat history
Miscellaneous:
- As of this version (1.5.0), it is no longer necessary to import
react-chatbotify.css
file in your projects (injected implicitly). Keeping the import statement will not cause any issues currently but this will be a breaking change in version 2.0.0. It is recommended to remove the import statement as soon as possible and the documentation website has also been updated to reflect this change.
v1.4.0
Added:
- A new
chatWindow
section has been added into the Configurations category with the following default values:Explanations for what each property does can be found on the documentation website.chatWindow: { showScrollbar: false, autoJumpToBottom: false, showMessagePrompt: true, messagePromptText: "New Messages ↓", messagePromptOffset: 30, }
Fixed:
- Fixed an occasional issue where stream messages do not autoscroll when user is at the bottom of the chat
- Fixed an issue where users can interrupt the
start
block if it is streaming - Fixed a bug where users can pinch-zoom the chat window on mobile devices to cause it to be distorted
- Fixed a rare bug where the chat window could be scrolled out of view
- Fixed a longstanding issue where playing notification sounds on mobile devices causes media controls to appear in notifications tray
Note:
Initially planned for only bug fixes, I eventually added a whole new chatWindow
section simply because I felt there were many small areas that could use enhancements (hiding the scrollbar, showing new message prompts instead of forcing users to the bottom etc). This led to version 1.4.0 which was entirely focused on cleaning up the imperfections from the several changes that have been made in the last few releases.
v.1.3.2
Fixed:
- Fixed an issue where chat window auto-scrolling does not work for streamed messages
- Fixed an issue where loading chat history caused current scroll position to shift
- Fixed an issue where extremely long words get abruptly cut-off at the tail end of the message bubble
v1.3.1
A minor patch to clean up the previous release.
Added:
- Added
simStream
andstreamSpeed
options for user bubble to be consistent with bot bubble
Fixed:
- Fixed an issue where users can quickly click on options or checkboxes in rapid succession resulting in multiple inputs
- Fixed an issue where simulating stream messages would ignore the
blockSpam
option
v1.3.0
This version brings about significant updates/changes, the details have laid out below:
Added:
- New
simStream
andstreamSpeed
options withinbotBubble
to simulate streaming of messages - New
params.streamMessage
parameter that allows real-time streaming of messages (great for integration with LLMs)
Modified:
- The
isUser
field within messages has been updated tosender
- Both
params.injectMessage
andparams.streamMessage
are now async functions (previously,params.injectMessage
was non-async) - Internally, logic for chat history, notifications and a few other minor areas have been updated to support stream messages
- Documentation website has been updated to reflect all the latest information
Note: A possible "breaking" change would be params.injectMessage
which is now async. Depending on your existing usage, there might not be a need to make any changes. However, if you are using multiple params.injectMessage
in quick succession, this could mean multiple messages are being sent at once without the use of await
.
v1.2.0
- Fixed chatbot window resizing on mobile devices (previously window is out of view on some devices/browsers)
- Fixed chatbot window orientation (previously chatbot would not re-orientate on phone rotation)
The above fixes are important for users who wish to properly support the chatbot on mobile devices. While there has been significantly more mobile view tests done for these fixes, it is near-impossible to exhaustively run through all devices/browsers. Should anyone still encounter issues with mobile view, please do not hesitate to reach out.
v1.1.0
-
Added support for enforcing & showing character count/limit via the following options:
chatInput.showCharacterCount: false
chatInput.characterLimit: -1
-
Added support for styling the above character limit display via the following styles:
characterLimitStyle
characterLimitReachedStyle
The above additions have been updated on the documentation website for reference.