100 lines
2.3 KiB
JavaScript
100 lines
2.3 KiB
JavaScript
const { randomUUID } = require("crypto");
|
|
|
|
const CUISINES = [
|
|
"american",
|
|
"argentinian",
|
|
"armenian",
|
|
"asian",
|
|
"bakery",
|
|
"bar_grill",
|
|
"barbecue",
|
|
"bavarian",
|
|
"bbq",
|
|
"belgian",
|
|
"bistro",
|
|
"breakfast",
|
|
"bubble_tea",
|
|
"burger",
|
|
"cake",
|
|
"caucasian",
|
|
"chicken",
|
|
"chinese",
|
|
"chocolate",
|
|
"coffee",
|
|
"coffee_shop",
|
|
"czech",
|
|
"dessert",
|
|
"donut",
|
|
"eclair",
|
|
"european",
|
|
"falafel",
|
|
"fast_food",
|
|
"fine_dining",
|
|
"fish",
|
|
"french",
|
|
"fries",
|
|
"fusion",
|
|
"georgian",
|
|
"grill",
|
|
"ice_cream",
|
|
"indian",
|
|
"international",
|
|
"italian",
|
|
"italian_pizza",
|
|
"japanese",
|
|
"jewish",
|
|
"kebab",
|
|
"korean",
|
|
"latvian",
|
|
"local",
|
|
"lunch",
|
|
"meat",
|
|
"mediterranean",
|
|
"mexican",
|
|
"oriental",
|
|
"oyster",
|
|
"pancake",
|
|
"pastry",
|
|
"pizza",
|
|
"ramen",
|
|
"regional",
|
|
"russian",
|
|
"sandwich",
|
|
"savory_pancakes",
|
|
"seafood",
|
|
"soup",
|
|
"soviet",
|
|
"steak_house",
|
|
"sushi",
|
|
"tapas",
|
|
"tea",
|
|
"traditional",
|
|
"turkish",
|
|
"ukrainian",
|
|
"uzbek",
|
|
"vietnamese",
|
|
"waffle"
|
|
]
|
|
|
|
const CATEGORIES = [
|
|
{ id: randomUUID(), name: 'restaurant', subcategories: CUISINES.map(name => ({ id: randomUUID(), name })) },
|
|
{ id: randomUUID(), name: 'cafe', subcategories: CUISINES.map(name => ({ id: randomUUID(), name })) },
|
|
{ id: randomUUID(), name: 'bar', subcategories: CUISINES.map(name => ({ id: randomUUID(), name })) },
|
|
{ id: randomUUID(), name: 'pub', subcategories: CUISINES.map(name => ({ id: randomUUID(), name })) },
|
|
{ id: randomUUID(), name: 'biergarten', subcategories: CUISINES.map(name => ({ id: randomUUID(), name })) },
|
|
{ id: randomUUID(), name: 'fast_food', subcategories: CUISINES.map(name => ({ id: randomUUID(), name })) },
|
|
{ id: randomUUID(), name: 'food_court', subcategories: CUISINES.map(name => ({ id: randomUUID(), name })) },
|
|
{ id: randomUUID(), name: 'ice_cream', subcategories: CUISINES.map(name => ({ id: randomUUID(), name })) },
|
|
];
|
|
|
|
exports.CATEGORIES = CATEGORIES;
|
|
|
|
/**
|
|
* @param { import("knex").Knex } knex
|
|
* @returns { Promise<void> }
|
|
*/
|
|
exports.seed = async function (knex) {
|
|
await knex('categories').insert(CATEGORIES.map(({ name, id }) => ({ name, id })));
|
|
await knex('subcategories').insert(CATEGORIES.flatMap(({ subcategories, id }) => subcategories.map((s) => ({ id: s.id, name: s.name, category_id: id }))));
|
|
};
|