autobaan/src/common/reserver.ts

27 lines
620 B
TypeScript

import { Reservation } from './reservation'
import { Runner } from './runner'
let runner: Runner | undefined
const getRunner = () => {
if (!runner) {
runner = new Runner({
headless: true,
args: ['--no-sandbox', '--disable-setuid-sandbox'],
})
}
return runner
}
export const reserve = async (reservation?: Reservation) => {
let reservationToPerform = reservation
if (!reservationToPerform) {
reservationToPerform = (await Reservation.fetchFirst()) || undefined
}
if (!reservationToPerform) {
return
}
const runner = getRunner()
await runner.run(reservationToPerform)
}