@@ -77,18 +77,19 @@ const createTask = /* @__PURE__ */ (() => {
7777 return ( ) => defaultTask ;
7878} ) ( ) ;
7979
80- export function nextDispatch (
80+ export function callHooks (
8181 hooks : HookCallback [ ] ,
8282 args : any [ ] ,
83- task : ReturnType < CreateTask > ,
8483 startIndex : number ,
84+ task ?: ReturnType < CreateTask > ,
8585) : Promise < any > | void {
8686 for ( let i = startIndex ; i < hooks . length ; i += 1 ) {
8787 try {
88- const result = task . run ( ( ) => hooks [ i ] ( ...args ) ) ;
89-
88+ const result = task
89+ ? task . run ( ( ) => hooks [ i ] ( ...args ) )
90+ : hooks [ i ] ( ...args ) ;
9091 if ( result instanceof Promise ) {
91- return result . then ( ( ) => nextDispatch ( hooks , args , task , i + 1 ) ) ;
92+ return result . then ( ( ) => callHooks ( hooks , args , i + 1 , task ) ) ;
9293 }
9394 } catch ( error ) {
9495 return Promise . reject ( error ) ;
@@ -100,25 +101,19 @@ export function serialTaskCaller(
100101 hooks : HookCallback [ ] ,
101102 args : any [ ] ,
102103) : Promise < any > | void {
103- if ( hooks . length === 0 ) {
104- return ;
104+ if ( hooks . length > 0 ) {
105+ return callHooks ( hooks , args , 0 , createTask ( args . shift ( ) ) ) ;
105106 }
106-
107- const task = createTask ( args . shift ( ) ) ;
108-
109- return nextDispatch ( hooks , args , task , 0 ) ;
110107}
111108
112109export function parallelTaskCaller (
113110 hooks : HookCallback [ ] ,
114111 args : any [ ] ,
115112) : Promise < any > | void {
116- if ( hooks . length === 0 ) {
117- return ;
113+ if ( hooks . length > 0 ) {
114+ const task = createTask ( args . shift ( ) ) ;
115+ return Promise . all ( hooks . map ( ( hook ) => task . run ( ( ) => hook ( ...args ) ) ) ) ;
118116 }
119-
120- const task = createTask ( args . shift ( ) ) ;
121- return Promise . all ( hooks . map ( ( hook ) => task . run ( ( ) => hook ( ...args ) ) ) ) ;
122117}
123118
124119/** @deprecated */
0 commit comments