@@ -20,9 +20,13 @@ import {
2020 failResponseSchema ,
2121 fetchRequestSchema ,
2222 fetchResponseSchema ,
23+ flowRequestSchema ,
24+ flowResponseSchema ,
2325 findJobsResponseSchema ,
2426 getBamStatusResponseSchema ,
2527 getBlockedKeysResponseSchema ,
28+ getDependenciesResponseSchema ,
29+ getDependentsResponseSchema ,
2630 getQueueResponseSchema ,
2731 getQueuesResponseSchema ,
2832 getSchedulesResponseSchema ,
@@ -154,12 +158,18 @@ const blockedKeysQuerySchema = z.object({
154158 name : z . string ( ) . min ( 1 )
155159} )
156160
161+ const dependencyQuerySchema = z . object ( {
162+ name : z . string ( ) . min ( 1 ) ,
163+ id : z . string ( ) . min ( 1 )
164+ } )
165+
157166export const postMethods : RouteEntry [ ] = [
158167 post ( 'jobs' , 'send' , sendRequestSchema , sendResponseSchema , ( body ) => withOptionalDataOptions ( [ body . name ] , body . data , body . options ) ) ,
159168 post ( 'jobs' , 'sendAfter' , sendAfterRequestSchema , sendAfterResponseSchema , ( body ) => withFixedDataOptions ( [ body . name ] , body . data , body . options , [ body . after ] ) ) ,
160169 post ( 'jobs' , 'sendThrottled' , sendThrottledRequestSchema , sendThrottledResponseSchema , ( body ) => withFixedDataOptions ( [ body . name ] , body . data , body . options , [ body . seconds , body . key ] ) ) ,
161170 post ( 'jobs' , 'sendDebounced' , sendDebouncedRequestSchema , sendDebouncedResponseSchema , ( body ) => withFixedDataOptions ( [ body . name ] , body . data , body . options , [ body . seconds , body . key ] ) ) ,
162171 post ( 'jobs' , 'insert' , insertRequestSchema , insertResponseSchema , ( body ) => withOptionalOptions ( [ body . name , body . jobs ] , body . options ) ) ,
172+ post ( 'jobs' , 'flow' , flowRequestSchema , flowResponseSchema , ( body ) => [ body . jobs ] ) ,
163173 post ( 'jobs' , 'fetch' , fetchRequestSchema , fetchResponseSchema , ( body ) => withOptionalOptions ( [ body . name ] , body . options ) ) ,
164174 post ( 'jobs' , 'complete' , completeRequestSchema , completeResponseSchema , ( body ) => withOptionalDataOptions ( [ body . name , body . id ] , body . data , body . options ) ) ,
165175 post ( 'jobs' , 'fail' , failRequestSchema , failResponseSchema , ( body ) => withOptionalDataOptions ( [ body . name , body . id ] , body . data ) ) ,
@@ -193,6 +203,8 @@ export const getMethods: RouteEntry[] = [
193203 if ( q . name ) return [ q . name ]
194204 return [ ]
195205 } ) ,
206+ get ( 'jobs' , 'getDependencies' , getDependenciesResponseSchema , dependencyQuerySchema , ( q ) => [ q . name , q . id ] ) ,
207+ get ( 'jobs' , 'getDependents' , getDependentsResponseSchema , dependencyQuerySchema , ( q ) => [ q . name , q . id ] ) ,
196208 get ( 'jobs' , 'findJobs' , findJobsResponseSchema , findJobsQuerySchema , ( q ) => {
197209 const args : unknown [ ] = [ q . name ]
198210 const options : Record < string , unknown > = { }
0 commit comments