19 lines
No EOL
744 B
TypeScript
19 lines
No EOL
744 B
TypeScript
import { ScheduleDataType, ScheduleType } from "@/types/ScheduleType";
|
|
import { ScheduledUserDishType, UserDishType } from "@/types/ScheduledUserDishType";
|
|
import { UserType } from "@/types/UserType";
|
|
|
|
const ScheduleBuilder = (
|
|
schedule: ScheduleType,
|
|
users: UserType[],
|
|
userDishes: UserDishType[]
|
|
): ScheduleDataType[] => users.map(user => {
|
|
return {
|
|
user,
|
|
scheduled_user_dish: schedule.scheduled_user_dishes
|
|
.filter((scheduledUserDish: ScheduledUserDishType) => scheduledUserDish.user_dish?.user.id === user.id)
|
|
.shift()?.user_dish ?? null,
|
|
user_dishes: userDishes.filter((userDish: UserDishType) => userDish.user.id === user.id)
|
|
}
|
|
})
|
|
|
|
export default ScheduleBuilder |