Releases: daily-co/daily-react
Releases · daily-co/daily-react
Release list
0.26.0
Features
useDialOutanduseDialinhooks for the PSTN/SIP dial-out and dial-in APIs, which daily-react did not previously model.useDialOutexposes a sessions map (keyed bysessionId) plusstartDialOut,stopDialOut,sendDTMF,sipCallTransfer, andsipRefer, withonDialOut*callbacks.useDialinexposesisReady,sipEndpoint,provider, a sessions map, andstartDialIn, withonDialin*callbacks.- Both reset on
left-meetingand call-instance destruction.
useMeetingSessionSummaryhook that reactively surfaces the server-assigned session id ({ id }) — useful for correlating a call with recordings, logs, and REST API resources. Distinct fromuseMeetingSessionState(which returns data and topology); returnsnullbefore the session has started.- Custom track support in components.
DailyVideoandDailyAudioTracknow accept a customtrackName(for tracks started via daily-jsstartCustomTrack()), and theirtypeprop is now optional. Read custom tracks viauseMediaTrack(id, trackName). A local participant's own custom track is no longer wrongly forced playable or mirrored. Note: a customtrackNameis resolved as a participant-property path, so names containing.are unsupported.
Bug Fixes
- Picture-in-picture mirror: restore the local self-view mirror transform after leaving picture-in-picture (e.g. a browser-triggered auto-PiP on tab switch), instead of permanently un-mirroring the self-view until the tile remounts.
Full Changelog: daily-react-2026-06-25-0.25.3...daily-react-2026-07-15-0.26.0
0.25.3
Maintenance
atomFamilymigrated to thejotai-familypackage.atomFamilynow imports fromjotai-familyinstead of the deprecatedjotai/utilsexport, keeping daily-react forward-compatible with jotai v3 (which drops it fromjotai/utils). The package is externalized in the build, so it isn't bundled intodist. Resolves #47.
Full diff: daily-react-2026-05-13-0.25.2...daily-react-2026-06-25-0.25.3
0.25.2
Bug Fixes
- iOS Safari audio silent after rejoin in
DailyAudio/DailyAudioTrack. The audio element is now released onleft-meetingby pausing playback and clearingsrcObject. Previously the stale WebRTC stream stayed attached across join/leave cycles, which on iOS Safari produced a stuck-buffer noise on leave and silenced audio on subsequent joins whenDailyAudiowas kept mounted.
Full diff: daily-react-2026-04-30-0.25.1...daily-react-2026-05-13-0.25.2
0.25.1
Bug Fixes
- Safari audio dropouts after
srcObjectswap inDailyAudioTrack. The audio element is now played after thesrcObjectswap on Safari, fixing intermittent audio dropouts when participant tracks change.
Full diff: daily-react-2026-04-21-0.25.0...daily-react-2026-04-30-0.25.1
0.25.0
Features
- Multiple concurrent recording & livestreaming instances —
useRecording()anduseLiveStreaming()now accept aninstanceIdparameter for per-instance state. AddeduseRecordingInstances()anduseLiveStreamingInstances()convenience hooks, plus newRecordingInstanceStateandLiveStreamingInstanceStateexports. Stopping or erroring one instance no longer clears state for others. - Version reporting via
aboutClient— the daily-react version is now passed through todaily-jsvia the newaboutClientAPI, so it's included in call logs regardless of who creates the call instance. networkStatusonuseNetwork()— added to the hook's return value.- Cloud-audio-only recording type — supported end-to-end via the bumped daily-js.
Maintenance
- Upgraded
size-limit/@size-limit/preset-small-libto v11, eliminating the transitivesvgovulnerability (billion-laughs XML entity expansion). Dev-only change. - Minimal example: bumped
daily-js,daily-react,react, andreact-dom; replaced the hardcoded room URL with aDAILY_ROOM_URLenv var plus a missing-config guard. - Minimal example: updated
picomatchto patch GHSA-3v7f-55p6-f55p (method injection) and GHSA-c2c7-rcm5-vvqj (ReDoS via extglob quantifiers).
Full diff: daily-react-2025-10-29-0.24.0...daily-react-2026-04-21-0.25.0
0.24.0
Maintenance
useCallObject()anduseCallFrame()will now throw an error when in strict mode and a call object cannot be created in unsupported browsers
Fixes
- Fixed a race condition where
useDevices()could unintentionally reset selected devices after joining a call
0.23.2
Maintenance
- Fixed rollup configuration to match build output previously generated (0.23.0 and below)
0.23.1
Fixes
- Fixed an issue which could lead to Safari not playing audio anymore after a participant left
Maintenance
- Switched from tsdx to rollup for bundling the package
0.23.0
Improvements
- Added an optional
intervalparameter touseAudioLevelObserver()to allow setting custom intervals for audio level events (Thanks @AlexHayton!) - Updated
useNetwork()to return the newnetworkStateandnetworkStateReasonsproperties.qualityandthresholdare now considered deprecated in favor of the new properties. - Added
user_nameandrawResponseproperties to theTranscriptiontype definition
0.22.0
Bugfixes
- Fixed return value from
useRoomExpwhen token and roomexpand eject were mixed - Added error handling around
startLocalAudioObserverinsideuseAudioLevelObserver
Maintenance
- Update React peer dependency
- Updated dependencies in minimal example
- Added Jotai debug labels