import { createRefIdPlugin } from "../../../plugins/refIdToConfirmationNumber" import { safeProtectedServiceProcedure } from "../../../procedures" import { getLinkedReservations } from "../../../services/booking/linkedReservations" import { isValidSession } from "../../../utils/session" import { getLinkedReservationsInput } from "../input" const refIdPlugin = createRefIdPlugin() export const getLinkedReservationsRoute = safeProtectedServiceProcedure .input(getLinkedReservationsInput) .concat(refIdPlugin.toConfirmationNumber) .use(async ({ ctx, input, next }) => { const lang = input.lang ?? ctx.lang const token = isValidSession(ctx.session) ? ctx.session.token.access_token : ctx.serviceToken return next({ ctx: { lang, token, }, }) }) .query(async function ({ ctx }) { const { confirmationNumber, lang, token } = ctx return getLinkedReservations( { confirmationNumber, lang, }, token ) })