@@ -8,24 +8,6 @@ import {
88} from '../data/booked-flights-store.js' ;
99import { formatFlightDate } from '../utils/format-date.js' ;
1010
11- function abortableDelay ( ms : number , signal ?: AbortSignal ) : Promise < void > {
12- return new Promise ( ( resolve , reject ) => {
13- if ( signal ?. aborted ) {
14- reject ( new DOMException ( 'Aborted' , 'AbortError' ) ) ;
15- return ;
16- }
17- const timeout = setTimeout ( ( ) => {
18- signal ?. removeEventListener ( 'abort' , onAbort ) ;
19- resolve ( ) ;
20- } , ms ) ;
21- const onAbort = ( ) : void => {
22- clearTimeout ( timeout ) ;
23- reject ( new DOMException ( 'Aborted' , 'AbortError' ) ) ;
24- } ;
25- signal ?. addEventListener ( 'abort' , onAbort , { once : true } ) ;
26- } ) ;
27- }
28-
2911const flightSchema = z . object ( {
3012 id : z . number ( ) ,
3113 from : z . string ( ) ,
@@ -93,3 +75,22 @@ export const bookFlightTool = createTool({
9375 } ;
9476 } ,
9577} ) ;
78+
79+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
80+ function abortableDelay ( ms : number , signal ?: AbortSignal ) : Promise < void > {
81+ return new Promise ( ( resolve , reject ) => {
82+ if ( signal ?. aborted ) {
83+ reject ( new DOMException ( 'Aborted' , 'AbortError' ) ) ;
84+ return ;
85+ }
86+ const timeout = setTimeout ( ( ) => {
87+ signal ?. removeEventListener ( 'abort' , onAbort ) ;
88+ resolve ( ) ;
89+ } , ms ) ;
90+ const onAbort = ( ) : void => {
91+ clearTimeout ( timeout ) ;
92+ reject ( new DOMException ( 'Aborted' , 'AbortError' ) ) ;
93+ } ;
94+ signal ?. addEventListener ( 'abort' , onAbort , { once : true } ) ;
95+ } ) ;
96+ }
0 commit comments