@@ -76,6 +76,13 @@ import {
7676 UpdateEnvironmentVariableParams ,
7777} from "./types.js" ;
7878import { AsyncIterableStream } from "../streams/asyncIterableStream.js" ;
79+ import { Prettify } from "../types/utils.js" ;
80+
81+ export type CreateWaitpointTokenResponse = Prettify <
82+ CreateWaitpointTokenResponseBody & {
83+ publicAccessToken : string ;
84+ }
85+ > ;
7986
8087export type {
8188 CreateEnvironmentVariableParams ,
@@ -214,37 +221,36 @@ export class ApiClient {
214221 headers : this . #getHeaders( clientOptions ?. spanParentAsLink ?? false ) ,
215222 body : JSON . stringify ( body ) ,
216223 } ,
217- {
218- ...mergeRequestOptions ( this . defaultRequestOptions , requestOptions ) ,
219- prepareData : async ( data , response ) => {
220- const jwtHeader = response . headers . get ( "x-trigger-jwt" ) ;
221-
222- if ( typeof jwtHeader === "string" ) {
223- return {
224- ...data ,
225- publicAccessToken : jwtHeader ,
226- } ;
227- }
228-
229- const claimsHeader = response . headers . get ( "x-trigger-jwt-claims" ) ;
230- const claims = claimsHeader ? JSON . parse ( claimsHeader ) : undefined ;
231-
232- const jwt = await generateJWT ( {
233- secretKey : this . accessToken ,
234- payload : {
235- ...claims ,
236- scopes : [ `read:runs:${ data . id } ` ] ,
237- } ,
238- expirationTime : requestOptions ?. publicAccessToken ?. expirationTime ?? "1h" ,
239- } ) ;
224+ mergeRequestOptions ( this . defaultRequestOptions , requestOptions )
225+ )
226+ . withResponse ( )
227+ . then ( async ( { data, response } ) => {
228+ const jwtHeader = response . headers . get ( "x-trigger-jwt" ) ;
240229
230+ if ( typeof jwtHeader === "string" ) {
241231 return {
242232 ...data ,
243- publicAccessToken : jwt ,
233+ publicAccessToken : jwtHeader ,
244234 } ;
245- } ,
246- }
247- ) ;
235+ }
236+
237+ const claimsHeader = response . headers . get ( "x-trigger-jwt-claims" ) ;
238+ const claims = claimsHeader ? JSON . parse ( claimsHeader ) : undefined ;
239+
240+ const jwt = await generateJWT ( {
241+ secretKey : this . accessToken ,
242+ payload : {
243+ ...claims ,
244+ scopes : [ `read:runs:${ data . id } ` ] ,
245+ } ,
246+ expirationTime : requestOptions ?. publicAccessToken ?. expirationTime ?? "1h" ,
247+ } ) ;
248+
249+ return {
250+ ...data ,
251+ publicAccessToken : jwt ,
252+ } ;
253+ } ) ;
248254 }
249255
250256 batchTriggerV3 (
@@ -262,28 +268,27 @@ export class ApiClient {
262268 } ) ,
263269 body : JSON . stringify ( body ) ,
264270 } ,
265- {
266- ...mergeRequestOptions ( this . defaultRequestOptions , requestOptions ) ,
267- prepareData : async ( data , response ) => {
268- const claimsHeader = response . headers . get ( "x-trigger-jwt-claims" ) ;
269- const claims = claimsHeader ? JSON . parse ( claimsHeader ) : undefined ;
270-
271- const jwt = await generateJWT ( {
272- secretKey : this . accessToken ,
273- payload : {
274- ...claims ,
275- scopes : [ `read:batch:${ data . id } ` ] ,
276- } ,
277- expirationTime : requestOptions ?. publicAccessToken ?. expirationTime ?? "1h" ,
278- } ) ;
279-
280- return {
281- ...data ,
282- publicAccessToken : jwt ,
283- } ;
284- } ,
285- }
286- ) ;
271+ mergeRequestOptions ( this . defaultRequestOptions , requestOptions )
272+ )
273+ . withResponse ( )
274+ . then ( async ( { data, response } ) => {
275+ const claimsHeader = response . headers . get ( "x-trigger-jwt-claims" ) ;
276+ const claims = claimsHeader ? JSON . parse ( claimsHeader ) : undefined ;
277+
278+ const jwt = await generateJWT ( {
279+ secretKey : this . accessToken ,
280+ payload : {
281+ ...claims ,
282+ scopes : [ `read:batch:${ data . id } ` ] ,
283+ } ,
284+ expirationTime : requestOptions ?. publicAccessToken ?. expirationTime ?? "1h" ,
285+ } ) ;
286+
287+ return {
288+ ...data ,
289+ publicAccessToken : jwt ,
290+ } ;
291+ } ) ;
287292 }
288293
289294 createUploadPayloadUrl ( filename : string , requestOptions ?: ZodFetchOptions ) {
@@ -701,7 +706,7 @@ export class ApiClient {
701706 } ;
702707 } ,
703708 }
704- ) ;
709+ ) as ApiPromise < CreateWaitpointTokenResponse > ;
705710 }
706711
707712 listWaitpointTokens (
@@ -752,7 +757,9 @@ export class ApiClient {
752757 headers : this . #getHeaders( false ) ,
753758 body : JSON . stringify ( options ) ,
754759 } ,
755- mergeRequestOptions ( this . defaultRequestOptions , requestOptions )
760+ {
761+ ...mergeRequestOptions ( this . defaultRequestOptions , requestOptions ) ,
762+ }
756763 ) ;
757764 }
758765
0 commit comments