import { CustomError, errorCodes } from "../interfaces"; import { scheduleNames, supportedSchedule } from "../types/scheduledEventTypes"; export function findInScheduleTypes(inputString: string): supportedSchedule { const maybeScheduleName: unknown = JSON.parse(`"${inputString.toLowerCase()}"`); const scheduleName = scheduleNames.find((validName: supportedSchedule) => validName === maybeScheduleName); if (scheduleName) { // `sheepName` comes from the list of `sheepNames` so the compiler is happy. return scheduleName; } throw new CustomError('That is not a schedule name.', errorCodes.schedule_not_supported); }