Releases: daily-co/daily-react
Releases · daily-co/daily-react
0.23.1
0.23.0
Improvements
- Added an optional
interval
parameter touseAudioLevelObserver()
to allow setting custom intervals for audio level events (Thanks @AlexHayton!) - Updated
useNetwork()
to return the newnetworkState
andnetworkStateReasons
properties.quality
andthreshold
are now considered deprecated in favor of the new properties. - Added
user_name
andrawResponse
properties to theTranscription
type definition
0.22.0
Bugfixes
- Fixed return value from
useRoomExp
when token and roomexp
and eject were mixed - Added error handling around
startLocalAudioObserver
insideuseAudioLevelObserver
Maintenance
- Update React peer dependency
- Updated dependencies in minimal example
- Added Jotai debug labels
0.21.3
Improvements
- Added checks to fail gracefully when
MediaStream
andMediaStreamTrack
APIs are not available
0.21.2
Improvements
- Improved Jotai state atoms for reduced CPU and memory usage.
Maintenance
- Updated dependencies in minimal example.
0.21.1
0.21.0
Breaking changes
- Removed
recoilRootProps
fromDailyProvider
as we've internally migrated from Recoil to Jotai. - Added
jotaiStore
prop toDailyProvider
, which, when passed with a Jotai store, is equivalent to passingrecoilRootProps={{ override: false }}
in previous versions.
Maintenance
- Replaced
faker
with@faker-js/faker
Thanks to @TimHeckel for supporting the migration to Jotai!
0.20.0
Features
useAudioLevelObserver()
: new hook to handle participant mic volume levels. This hook is based on audio level observers in daily-js.
Improvements
useParticipantIds()
: the fix to avoid potential stale state introduced in 0.19.1 was reverted, due to negative performance impact. Instead stale state is now avoided by prioritizing internal event handlers in Daily React over application level event handlers.
Deprecations
useAudioLevel()
is now deprecated. UseuseAudioLevelObserver()
instead.
0.19.1
Bugfixes
useParticipantIds()
: when using a customfilter
orsort
it was possible thatuseParticipantIds()
would return stale state until for any affected participant aparticipant-updated
event was emitted.useActiveSpeakerId()
: the internally stored id of the last active speaker is now correctly reset when receiving aleft-meeting
event.useParticipantProperty()
: when embedding a Daily React app inside Angular's NgZone, attempting to resolve aMediaStreamTrack
property could result in a recursive loop, due to NgZone's monkey-patching behavior on certain browser objects. (Thanks @stewartmcgown!)
0.19.0
Changes
⚠️ Breaking change:useCallFrame
: Instead of accepting the resolved value for a givenparentEl
, it will now accept a React RefparentElRef
. This generally improves the DX when working with conditionally rendered call frame wrappers.
// Before
const ref = useRef(null);
const callFrame = useCallFrame({
parentEl: ref.current,
});
// Now
const ref = useRef(null);
const callFrame = useCallFrame({
parentElRef: ref,
});
- Removed unnecessary
playsInline
attributes from rendered<audio>
elements - Updated devDependencies