faifood/index.mjs

36 lines
1.1 KiB
JavaScript
Executable File

#!/usr/bin/env node
import fetch from "node-fetch";
const APIURI = "https://fi.jamix.cloud/apps/menuservice/rest/haku/menu/92225/1?lang=fi";
const myArgs = process.argv.slice(2);
function getDate() {
switch (myArgs[0]) {
case "t":
return new Date(new Date().getTime() + 24 * 60 * 60 * 1000).toISOString().slice(0, 10).replaceAll('-', '');
default:
return new Date().toISOString().slice(0, 10).replaceAll('-', '');
}
}
function getFood(data) {
const days = data[0].menuTypes[0].menus[0].days
const daysFiltered = days.filter((day) => String(day.date) === getDate());
const foods = [];
daysFiltered[0].mealoptions.map((mealoption) => {
let str = ""
str += mealoption.name + ": "
mealoption.menuItems.map((menuItem, index) => {
index !== mealoption.menuItems.length - 1 ? str += menuItem.name + ", " : str += menuItem.name;
console.log(index, mealoption.menuItems.length)
})
foods.push(str);
})
return foods;
}
fetch(APIURI)
.then((response) => response.json())
.then((data) => getFood(data).map((food) => console.log(food)));