-
Notifications
You must be signed in to change notification settings - Fork 280
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix!: extract MP3 encoder plugin #2447
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #2447 +/- ##
==========================================
+ Coverage 85.18% 85.52% +0.33%
==========================================
Files 369 368 -1
Lines 7886 7847 -39
Branches 1910 1907 -3
==========================================
- Hits 6718 6711 -7
+ Misses 1077 1045 -32
Partials 91 91 ☔ View full report in Codecov by Sentry. |
Size Change: -67.2 kB (-8.95%) ✅ Total Size: 684 kB
ℹ️ View Unchanged
|
docusaurus/docs/React/components/message-input-components/audio-recorder.mdx
Show resolved
Hide resolved
import { EmojiPickerIcon } from '../MessageInput/icons'; | ||
import { EmojiPickerIcon } from './icons'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
## [12.0.0-rc.3](v12.0.0-rc.2...v12.0.0-rc.3) (2024-07-10) ### ⚠ BREAKING CHANGES * MP3 audio encoder has to be explicitly imported and used as a plugin for audio recordings. The default audio recording format is audio/wav. * @breezystack/lamejs became a peer dependency and has to be installed by the integrator so that the MP3 audio encoder can work properly. * Removed fileOrder, imageOrder, fileUploads, imageUploads, uploadFile, uploadImage, removeFile, removeImage from the MessageInputContext. Use attachments, uploadAttachment, uploadNewFiles, upsertAttachments, removeAttachments instead. * Removed default values for timestamp formatting props like calendar or format for DateSeparator, EventComponent, MessageTimestamp. The formatting configuration now entirely relies on i18n translations. ### Bug Fixes * acknowledge the use of LAME ([dbce6dc](dbce6dc)) * extract MP3 encoder plugin ([#2447](#2447)) ([625196f](625196f)) * reflect Message groupStyles prop in the component memoization ([#2448](#2448)) ([251eb08](251eb08)) ### Features * keep attachments array and remove file and image uploads in MessageInput state ([#2445](#2445)) ([238e801](238e801)) * remove default timestamp formatting props from DateSeparator, EventComponent, MessageTimestamp ([#2442](#2442)) ([6431954](6431954))
🎉 This PR is included in version 12.0.0-rc.3 🎉 The release is available on: Your semantic-release bot 📦🚀 |
## [12.0.0](v11.23.9...v12.0.0) (2024-09-17) ### ⚠ BREAKING CHANGES * - own user will not anymore be filtered out of the selection list of users to mention if `mentionAllAppUsers` is enabled on MessageInput * - removes the following variables from `MessageContext`: isReactionEnabled, onReactionListClick, showDetailedReactions, reactionSelectorRef - removes prop `messageWrapperRef` from `MessageOptions` and `MessageActions` props. * ComponentContext no longer provides any defaults * removed Thread prop fullWidth, removed class str-chat__thread--full * removed Window prop hideOnThread, replaced class str-chat__main-panel--hideOnThread with str-chat__main-panel--thread-open * MP3 audio encoder has to be explicitly imported and used as a plugin for audio recordings. The default audio recording format is audio/wav. * @breezystack/lamejs became a peer dependency and has to be installed by the integrator so that the MP3 audio encoder can work properly. * Removed fileOrder, imageOrder, fileUploads, imageUploads, uploadFile, uploadImage, removeFile, removeImage from the MessageInputContext. Use attachments, uploadAttachment, uploadNewFiles, upsertAttachments, removeAttachments instead. * Removed default values for timestamp formatting props like calendar or format for DateSeparator, EventComponent, MessageTimestamp. The formatting configuration now entirely relies on i18n translations. * The VirtualizedMessageList does not provide default Footer component * The VirtualizedMessageList markup has changed as TypingIndicator is rendered as a child of MessageListMainPanel * stylesheet import path changed & v1 stylesheet has been dropped, see release guide for more information * theme v1 related markup and classNames have been removed * `themeVersion` property has been removed from `ChatContext` ### Bug Fixes * add theme to ChatView component ([#2494](#2494)) ([d477072](d477072)) * address the circular dependencies among TranslationContext and Streami18n ([#2483](#2483)) ([b91fd9a](b91fd9a)) * change platform for CJS bundle from node to browser ([#2454](#2454)) ([4bc2d35](4bc2d35)) * do not rerender on client options update ([#2465](#2465)) ([3899352](3899352)) * export typeVersions correctly for emojis and mp3-encoder ([#2449](#2449)) ([17218db](17218db)) * extract MP3 encoder plugin ([#2447](#2447)) ([625196f](625196f)) * provide both browser and node cjs bundles ([#2457](#2457)) ([273ea2a](273ea2a)) * quote replies in threads ([#2487](#2487)) ([0e4a6f1](0e4a6f1)) * remove the use of deprecated query operator $ne ([#2504](#2504)) ([09614f6](09614f6)) * render typing indicator outside the VirtualizedMessageList scroll container ([#2406](#2406)) ([d9442d2](d9442d2)) * reuse useChannelPreviewInfo for ThreadListItemUI ([#2508](#2508)) ([4bb5b7c](4bb5b7c)) * update ChannelHeader and ChannelPreview titles and images on channel.updated ([#2500](#2500)) ([f32fbb6](f32fbb6)) ### Features * add centralized dialog management ([#2489](#2489)) ([8235d45](8235d45)) * add ThreadList and ThreadProvider (Threads 2.0) ([#2407](#2407)) ([941707d](941707d)) * keep attachments array and remove file and image uploads in MessageInput state ([#2445](#2445)) ([238e801](238e801)) * remove default timestamp formatting props from DateSeparator, EventComponent, MessageTimestamp ([#2442](#2442)) ([6431954](6431954)) * remove fullWidth prop from Thread & hideOnThread prop from Window ([#2450](#2450)) ([32c8fc0](32c8fc0)) * remove legacy style components ([#2394](#2394)) ([7bf63ae](7bf63ae)) ### Chores * **deps:** bump @stream-io/stream-chat-css to version 5.0.0 ([9580a3f](9580a3f)) * **deps:** bump @stream-io/stream-chat-css to version 5.0.0-rc.1nvm ([e9cf42f](e9cf42f)) * **deps:** bump stream-chat to version 8.40.8 ([#2510](#2510)) ([5cc7a09](5cc7a09)) * **deps:** remove unused isomorphic-ws from dependencies ([853bd8b](853bd8b)) * **deps:** upgrade @stream-io/stream-chat-css to v5.0.0-rc.4 ([#2492](#2492)) ([6e30cb5](6e30cb5)) * **deps:** upgrade @stream-io/stream-chat-css to v5.0.0-rc.5 ([#2495](#2495)) ([2b8fa32](2b8fa32))
🎉 This PR is included in version 12.0.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
🎯 Goal
Make lamejs a peer dependency so that the source code is not bundled within the integrator application source code. This is to prevent issues when integrators do not want to bundle code issued under LGPL license.
🛠 Implementation details
Emojis and mp3 encoding function have been moved to separate
plugins
folder. However, the emojis import path stays the same.A new audio recording configuration parameter has been introduced -
encoder
- to allow integrators to plug in the MP3 or other encoder.🎨 UI Changes
None
BREAKING CHANGE: MP3 audio encoder has to be explicitly imported and used as a plugin for audio recordings. The default audio recording format is audio/wav.
BREAKING CHANGE: @breezystack/lamejs became a peer dependency and has to be installed by the integrator so that the MP3 audio encoder can work properly.