Added TypeScript for frontend
Added type definitions for components, functions, data Added guards for network responses fixes #8
This commit is contained in:
41
front/src/assets/category.ts
Normal file
41
front/src/assets/category.ts
Normal file
@ -0,0 +1,41 @@
|
||||
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 }
|
Reference in New Issue
Block a user