135 lines
2.5 KiB
JavaScript
135 lines
2.5 KiB
JavaScript
// Item classification constants - app-level controlled values
|
|
|
|
export const ITEM_TYPES = {
|
|
PRODUCE: "produce",
|
|
MEAT: "meat",
|
|
DAIRY: "dairy",
|
|
BAKERY: "bakery",
|
|
FROZEN: "frozen",
|
|
PANTRY: "pantry",
|
|
BEVERAGE: "beverage",
|
|
SNACK: "snack",
|
|
HOUSEHOLD: "household",
|
|
PERSONAL_CARE: "personal_care",
|
|
OTHER: "other",
|
|
};
|
|
|
|
// Item groups filtered by item type
|
|
export const ITEM_GROUPS = {
|
|
[ITEM_TYPES.PRODUCE]: [
|
|
"Fruits",
|
|
"Vegetables",
|
|
"Salad Mix",
|
|
"Herbs",
|
|
"Organic Produce",
|
|
],
|
|
[ITEM_TYPES.MEAT]: [
|
|
"Beef",
|
|
"Pork",
|
|
"Chicken",
|
|
"Seafood",
|
|
"Deli Meat",
|
|
"Prepared Meat",
|
|
],
|
|
[ITEM_TYPES.DAIRY]: [
|
|
"Milk",
|
|
"Cheese",
|
|
"Yogurt",
|
|
"Butter",
|
|
"Eggs",
|
|
"Cream",
|
|
],
|
|
[ITEM_TYPES.BAKERY]: [
|
|
"Bread",
|
|
"Rolls",
|
|
"Pastries",
|
|
"Cakes",
|
|
"Bagels",
|
|
"Tortillas",
|
|
],
|
|
[ITEM_TYPES.FROZEN]: [
|
|
"Frozen Meals",
|
|
"Ice Cream",
|
|
"Frozen Vegetables",
|
|
"Frozen Meat",
|
|
"Pizza",
|
|
"Desserts",
|
|
],
|
|
[ITEM_TYPES.PANTRY]: [
|
|
"Canned Goods",
|
|
"Pasta",
|
|
"Rice",
|
|
"Cereal",
|
|
"Condiments",
|
|
"Spices",
|
|
"Baking",
|
|
"Oils",
|
|
],
|
|
[ITEM_TYPES.BEVERAGE]: [
|
|
"Water",
|
|
"Soda",
|
|
"Juice",
|
|
"Coffee",
|
|
"Tea",
|
|
"Alcohol",
|
|
"Sports Drinks",
|
|
],
|
|
[ITEM_TYPES.SNACK]: [
|
|
"Chips",
|
|
"Crackers",
|
|
"Nuts",
|
|
"Candy",
|
|
"Cookies",
|
|
"Protein Bars",
|
|
],
|
|
[ITEM_TYPES.HOUSEHOLD]: [
|
|
"Cleaning Supplies",
|
|
"Paper Products",
|
|
"Laundry",
|
|
"Kitchen Items",
|
|
"Storage",
|
|
],
|
|
[ITEM_TYPES.PERSONAL_CARE]: [
|
|
"Bath & Body",
|
|
"Hair Care",
|
|
"Oral Care",
|
|
"Skincare",
|
|
"Health",
|
|
],
|
|
[ITEM_TYPES.OTHER]: [
|
|
"Miscellaneous",
|
|
],
|
|
};
|
|
|
|
// Store zones for Costco layout
|
|
export const ZONES = [
|
|
"Front Entry",
|
|
"Fresh Foods Right",
|
|
"Fresh Foods Left",
|
|
"Center Aisles",
|
|
"Bakery",
|
|
"Meat Department",
|
|
"Dairy Cooler",
|
|
"Freezer Section",
|
|
"Back Wall",
|
|
"Checkout Area",
|
|
];
|
|
|
|
// Helper to get display label for item type
|
|
export const getItemTypeLabel = (type) => {
|
|
const labels = {
|
|
[ITEM_TYPES.PRODUCE]: "Produce",
|
|
[ITEM_TYPES.MEAT]: "Meat & Seafood",
|
|
[ITEM_TYPES.DAIRY]: "Dairy & Eggs",
|
|
[ITEM_TYPES.BAKERY]: "Bakery",
|
|
[ITEM_TYPES.FROZEN]: "Frozen",
|
|
[ITEM_TYPES.PANTRY]: "Pantry & Dry Goods",
|
|
[ITEM_TYPES.BEVERAGE]: "Beverages",
|
|
[ITEM_TYPES.SNACK]: "Snacks",
|
|
[ITEM_TYPES.HOUSEHOLD]: "Household",
|
|
[ITEM_TYPES.PERSONAL_CARE]: "Personal Care",
|
|
[ITEM_TYPES.OTHER]: "Other",
|
|
};
|
|
return labels[type] || type;
|
|
};
|