forked from polka_billy/porridger
Added type definitions for components, functions, data Added guards for network responses fixes #8
42 lines
1.5 KiB
TypeScript
42 lines
1.5 KiB
TypeScript
import { isLiteralUnion } from "../utils/types"
|
|
|
|
const categories = ["PORRIDGE", "conspects", "milk", "bred", "wathing", "cloth",
|
|
"fruits_vegatables", "soup", "dinner", "conserves", "pens", "other_things"] as const
|
|
type Category = typeof categories[number]
|
|
|
|
const isCategory = (obj: unknown): obj is Category => isLiteralUnion(obj, categories)
|
|
|
|
const categoryGraphics = new Map<Category, string>([
|
|
["PORRIDGE", "static/PORRIDGE.jpg"],
|
|
["conspects", "static/conspects.jpg"],
|
|
["milk", "static/milk.jpg"],
|
|
["bred", "static/bred.jpg"],
|
|
["wathing", "static/wathing.jpg"],
|
|
["cloth", "static/cloth.jpg"],
|
|
["fruits_vegatables", "static/fruits_vegatables.jpg"],
|
|
["soup", "static/soup.jpg"],
|
|
["dinner", "static/dinner.jpg"],
|
|
["conserves", "static/conserves.jpg"],
|
|
["pens", "static/pens.jpg"],
|
|
["other_things", "static/other_things.jpg"]
|
|
|
|
])
|
|
|
|
const categoryNames = new Map<Category, string>([
|
|
["PORRIDGE", "PORRIDGE"],
|
|
["conspects", "Конспекты"],
|
|
["milk", "Молочные продукты"],
|
|
["bred", "Хлебобулочные изделия"],
|
|
["wathing", "Моющие средства"],
|
|
["cloth", "Одежда"],
|
|
["fruits_vegatables", "Фрукты и овощи"],
|
|
["soup", "Супы"],
|
|
["dinner", "Ужин"],
|
|
["conserves", "Консервы"],
|
|
["pens", "Канцелярия"],
|
|
["other_things", "Всякая всячина"]
|
|
])
|
|
|
|
export type { Category }
|
|
export { categoryNames, categoryGraphics, isCategory }
|