@@ -34,9 +34,14 @@ export const MediaPlayerMachine = MediaPlayerDefinition.handle({
3434 invoke : Machine . invoke ( {
3535 id : "load-audio" ,
3636 effect : ( { state } ) => loadAudio ( state . url ) ,
37- onDone : ( _ , enqueue ) => enqueue . raise ( MediaPlayerInternalEvents . LoadSucceeded ( ) ) ,
38- onFailure : ( { error } , enqueue ) =>
37+ onDone : ( { target } , enqueue ) => {
38+ enqueue . raise ( MediaPlayerInternalEvents . LoadSucceeded ( ) )
39+ return target . none ( )
40+ } ,
41+ onFailure : ( { error, target } , enqueue ) => {
3942 enqueue . raise ( MediaPlayerInternalEvents . OperationFailed ( { message : error . message } ) )
43+ return target . none ( )
44+ }
4045 } ) ,
4146 on : {
4247 LoadSucceeded : ( { target } ) => target . local . Ready . from ( ( ready ) => ready . Paused . from ( initialPlaybackData ) )
@@ -49,9 +54,11 @@ export const MediaPlayerMachine = MediaPlayerDefinition.handle({
4954 invoke : Machine . invoke ( {
5055 id : "pause-audio" ,
5156 effect : pauseAudio ,
52- onDone : ( ) => undefined ,
53- onFailure : ( { error } , enqueue ) =>
57+ onDone : ( { target } ) => target . none ( ) ,
58+ onFailure : ( { error, target } , enqueue ) => {
5459 enqueue . raise ( MediaPlayerInternalEvents . OperationFailed ( { message : error . message } ) )
60+ return target . none ( )
61+ }
5562 } ) ,
5663 on : {
5764 PlayRequested : ( { state, target } ) =>
@@ -69,18 +76,21 @@ export const MediaPlayerMachine = MediaPlayerDefinition.handle({
6976 Machine . invoke ( {
7077 id : "play-audio" ,
7178 effect : playAudio ,
72- onDone : ( ) => undefined ,
73- onFailure : ( { error } , enqueue ) =>
79+ onDone : ( { target } ) => target . none ( ) ,
80+ onFailure : ( { error, target } , enqueue ) => {
7481 enqueue . raise ( MediaPlayerInternalEvents . OperationFailed ( { message : error . message } ) )
82+ return target . none ( )
83+ }
7584 } ) ,
7685 Machine . invoke ( {
7786 id : "analyze-audio" ,
7887 address : Machine . childAddress ( "analyze-audio" ) ,
7988 logic : analyzeAudio ,
80- onDone : ( ) => undefined ,
81- onSnapshot : ( { snapshot } , enqueue ) => {
89+ onDone : ( { target } ) => target . none ( ) ,
90+ onSnapshot : ( { snapshot, target } , enqueue ) => {
8291 const event = loudnessEvent ( snapshot . state )
8392 if ( event !== undefined ) enqueue . raise ( event )
93+ return target . none ( )
8494 }
8595 } )
8696 ] ,
@@ -136,9 +146,14 @@ export const MediaPlayerMachine = MediaPlayerDefinition.handle({
136146 invoke : Machine . invoke ( {
137147 id : "restart-audio" ,
138148 effect : restartAudio ,
139- onDone : ( _ , enqueue ) => enqueue . raise ( MediaPlayerInternalEvents . RestartSucceeded ( ) ) ,
140- onFailure : ( { error } , enqueue ) =>
149+ onDone : ( { target } , enqueue ) => {
150+ enqueue . raise ( MediaPlayerInternalEvents . RestartSucceeded ( ) )
151+ return target . none ( )
152+ } ,
153+ onFailure : ( { error, target } , enqueue ) => {
141154 enqueue . raise ( MediaPlayerInternalEvents . OperationFailed ( { message : error . message } ) )
155+ return target . none ( )
156+ }
142157 } ) ,
143158 on : {
144159 RestartSucceeded : ( { target } ) => target . local . Playing . from ( { currentTime : 0 , loudness : null } ) ,
@@ -159,27 +174,27 @@ export const MediaPlayerMachine = MediaPlayerDefinition.handle({
159174 } ,
160175
161176 Failed : {
162- invoke : {
177+ invoke : Machine . invoke ( {
163178 id : "report-error" ,
164179 effect : ( { state } ) =>
165180 Effect . gen ( function * ( ) {
166181 const mediaPlayer = yield * MediaPlayer
167182 yield * mediaPlayer . reportError ( state . message )
168183 } ) ,
169- onDone : ( ) => undefined
170- }
184+ onDone : ( { target } ) => target . none ( )
185+ } )
171186 }
172187 }
173188 } ,
174189
175190 settings : {
176191 states : {
177192 Audible : {
178- invoke : {
193+ invoke : Machine . invoke ( {
179194 id : "apply-audio-settings" ,
180195 effect : ( { state } ) => applyAudioSettings ( state , false ) ,
181- onDone : ( ) => undefined
182- } ,
196+ onDone : ( { target } ) => target . none ( )
197+ } ) ,
183198 on : {
184199 VolumeChanged : {
185200 reenter : true ,
@@ -208,11 +223,11 @@ export const MediaPlayerMachine = MediaPlayerDefinition.handle({
208223 } ,
209224
210225 Muted : {
211- invoke : {
226+ invoke : Machine . invoke ( {
212227 id : "apply-audio-settings" ,
213228 effect : ( { state } ) => applyAudioSettings ( state , true ) ,
214- onDone : ( ) => undefined
215- } ,
229+ onDone : ( { target } ) => target . none ( )
230+ } ) ,
216231 on : {
217232 VolumeChanged : {
218233 reenter : true ,
0 commit comments