UNPKG

company-cafeteria-shared-demo

Version:

Package partagé pour l'écosystème Cafétéria Entreprise

204 lines 7.37 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DEFAULT_PREPARATION_TIMES = exports.DIETARY_LABELS = exports.DIETARY_PREFERENCES = exports.ALLERGEN_LABELS = exports.ALLERGENS = exports.CATEGORY_ORDER = exports.CATEGORY_COLORS = exports.CATEGORY_ICONS = exports.CATEGORY_LABELS = exports.MENU_CATEGORIES = void 0; exports.isCategoryCompatible = isCategoryCompatible; exports.getDefaultPreparationTime = getDefaultPreparationTime; /** * Catégories de plats disponibles */ exports.MENU_CATEGORIES = { PLATS: 'plats', SALADES: 'salades', SANDWICHS: 'sandwichs', SOUPES: 'soupes', DESSERTS: 'desserts', BOISSONS: 'boissons', ENTREES: 'entrees', VEGETARIEN: 'vegetarien', VEGAN: 'vegan' }; /** * Libellés d'affichage pour les catégories */ exports.CATEGORY_LABELS = { [exports.MENU_CATEGORIES.PLATS]: 'Plats principaux', [exports.MENU_CATEGORIES.SALADES]: 'Salades', [exports.MENU_CATEGORIES.SANDWICHS]: 'Sandwichs & Wraps', [exports.MENU_CATEGORIES.SOUPES]: 'Soupes', [exports.MENU_CATEGORIES.DESSERTS]: 'Desserts', [exports.MENU_CATEGORIES.BOISSONS]: 'Boissons', [exports.MENU_CATEGORIES.ENTREES]: 'Entrées', [exports.MENU_CATEGORIES.VEGETARIEN]: 'Végétarien', [exports.MENU_CATEGORIES.VEGAN]: 'Vegan' }; /** * Icônes pour chaque catégorie */ exports.CATEGORY_ICONS = { [exports.MENU_CATEGORIES.PLATS]: '🍖', [exports.MENU_CATEGORIES.SALADES]: '🥗', [exports.MENU_CATEGORIES.SANDWICHS]: '🥪', [exports.MENU_CATEGORIES.SOUPES]: '🍲', [exports.MENU_CATEGORIES.DESSERTS]: '🍰', [exports.MENU_CATEGORIES.BOISSONS]: '🥤', [exports.MENU_CATEGORIES.ENTREES]: '🍤', [exports.MENU_CATEGORIES.VEGETARIEN]: '🌱', [exports.MENU_CATEGORIES.VEGAN]: '🌿' }; /** * Couleurs pour chaque catégorie */ exports.CATEGORY_COLORS = { [exports.MENU_CATEGORIES.PLATS]: { primary: '#EF4444', secondary: '#FEE2E2' }, [exports.MENU_CATEGORIES.SALADES]: { primary: '#10B981', secondary: '#D1FAE5' }, [exports.MENU_CATEGORIES.SANDWICHS]: { primary: '#F59E0B', secondary: '#FEF3C7' }, [exports.MENU_CATEGORIES.SOUPES]: { primary: '#8B5CF6', secondary: '#EDE9FE' }, [exports.MENU_CATEGORIES.DESSERTS]: { primary: '#EC4899', secondary: '#FCE7F3' }, [exports.MENU_CATEGORIES.BOISSONS]: { primary: '#06B6D4', secondary: '#CFFAFE' }, [exports.MENU_CATEGORIES.ENTREES]: { primary: '#F97316', secondary: '#FFEDD5' }, [exports.MENU_CATEGORIES.VEGETARIEN]: { primary: '#65A30D', secondary: '#ECFCCB' }, [exports.MENU_CATEGORIES.VEGAN]: { primary: '#059669', secondary: '#D1FAE5' } }; /** * Ordre d'affichage des catégories */ exports.CATEGORY_ORDER = [ exports.MENU_CATEGORIES.PLATS, exports.MENU_CATEGORIES.SALADES, exports.MENU_CATEGORIES.SANDWICHS, exports.MENU_CATEGORIES.SOUPES, exports.MENU_CATEGORIES.ENTREES, exports.MENU_CATEGORIES.DESSERTS, exports.MENU_CATEGORIES.BOISSONS, exports.MENU_CATEGORIES.VEGETARIEN, exports.MENU_CATEGORIES.VEGAN ]; /** * Allergènes possibles */ exports.ALLERGENS = { GLUTEN: 'gluten', DAIRY: 'dairy', EGGS: 'eggs', NUTS: 'nuts', PEANUTS: 'peanuts', SOY: 'soy', FISH: 'fish', SHELLFISH: 'shellfish', SESAME: 'sesame', SULFITES: 'sulfites', CELERY: 'celery', MUSTARD: 'mustard', LUPIN: 'lupin', MOLLUSCS: 'molluscs' }; /** * Libellés pour les allergènes */ exports.ALLERGEN_LABELS = { [exports.ALLERGENS.GLUTEN]: 'Gluten', [exports.ALLERGENS.DAIRY]: 'Lait', [exports.ALLERGENS.EGGS]: 'Œufs', [exports.ALLERGENS.NUTS]: 'Fruits à coque', [exports.ALLERGENS.PEANUTS]: 'Arachides', [exports.ALLERGENS.SOY]: 'Soja', [exports.ALLERGENS.FISH]: 'Poisson', [exports.ALLERGENS.SHELLFISH]: 'Crustacés', [exports.ALLERGENS.SESAME]: 'Sésame', [exports.ALLERGENS.SULFITES]: 'Sulfites', [exports.ALLERGENS.CELERY]: 'Céleri', [exports.ALLERGENS.MUSTARD]: 'Moutarde', [exports.ALLERGENS.LUPIN]: 'Lupin', [exports.ALLERGENS.MOLLUSCS]: 'Mollusques' }; /** * Régimes alimentaires */ exports.DIETARY_PREFERENCES = { VEGETARIAN: 'vegetarian', VEGAN: 'vegan', PESCATARIAN: 'pescatarian', GLUTEN_FREE: 'gluten_free', DAIRY_FREE: 'dairy_free', LOW_CARB: 'low_carb', KETO: 'keto', HALAL: 'halal', KOSHER: 'kosher' }; /** * Libellés pour les régimes alimentaires */ exports.DIETARY_LABELS = { [exports.DIETARY_PREFERENCES.VEGETARIAN]: 'Végétarien', [exports.DIETARY_PREFERENCES.VEGAN]: 'Vegan', [exports.DIETARY_PREFERENCES.PESCATARIAN]: 'Pescatarien', [exports.DIETARY_PREFERENCES.GLUTEN_FREE]: 'Sans gluten', [exports.DIETARY_PREFERENCES.DAIRY_FREE]: 'Sans lactose', [exports.DIETARY_PREFERENCES.LOW_CARB]: 'Faible en glucides', [exports.DIETARY_PREFERENCES.KETO]: 'Cétogène', [exports.DIETARY_PREFERENCES.HALAL]: 'Halal', [exports.DIETARY_PREFERENCES.KOSHER]: 'Casher' }; /** * Temps de préparation par défaut par catégorie (en minutes) */ exports.DEFAULT_PREPARATION_TIMES = { [exports.MENU_CATEGORIES.PLATS]: 15, [exports.MENU_CATEGORIES.SALADES]: 5, [exports.MENU_CATEGORIES.SANDWICHS]: 8, [exports.MENU_CATEGORIES.SOUPES]: 3, [exports.MENU_CATEGORIES.DESSERTS]: 2, [exports.MENU_CATEGORIES.BOISSONS]: 1, [exports.MENU_CATEGORIES.ENTREES]: 7, [exports.MENU_CATEGORIES.VEGETARIEN]: 12, [exports.MENU_CATEGORIES.VEGAN]: 12 }; /** * Vérifie si une catégorie est compatible avec un régime alimentaire */ function isCategoryCompatible(category, dietary) { const compatibilityMap = { [exports.DIETARY_PREFERENCES.VEGETARIAN]: [ exports.MENU_CATEGORIES.SALADES, exports.MENU_CATEGORIES.DESSERTS, exports.MENU_CATEGORIES.BOISSONS, exports.MENU_CATEGORIES.ENTREES, exports.MENU_CATEGORIES.VEGETARIEN, exports.MENU_CATEGORIES.VEGAN ], [exports.DIETARY_PREFERENCES.VEGAN]: [ exports.MENU_CATEGORIES.SALADES, exports.MENU_CATEGORIES.BOISSONS, exports.MENU_CATEGORIES.VEGAN ], [exports.DIETARY_PREFERENCES.PESCATARIAN]: [ exports.MENU_CATEGORIES.SALADES, exports.MENU_CATEGORIES.DESSERTS, exports.MENU_CATEGORIES.BOISSONS, exports.MENU_CATEGORIES.ENTREES, exports.MENU_CATEGORIES.VEGETARIEN, exports.MENU_CATEGORIES.VEGAN ], [exports.DIETARY_PREFERENCES.GLUTEN_FREE]: [], [exports.DIETARY_PREFERENCES.DAIRY_FREE]: [], [exports.DIETARY_PREFERENCES.LOW_CARB]: [ exports.MENU_CATEGORIES.PLATS, exports.MENU_CATEGORIES.SALADES, exports.MENU_CATEGORIES.SOUPES ], [exports.DIETARY_PREFERENCES.KETO]: [ exports.MENU_CATEGORIES.PLATS, exports.MENU_CATEGORIES.SALADES ], [exports.DIETARY_PREFERENCES.HALAL]: [], [exports.DIETARY_PREFERENCES.KOSHER]: [] }; return compatibilityMap[dietary]?.includes(category) ?? true; } /** * Obtient la durée de préparation par défaut pour une catégorie */ function getDefaultPreparationTime(category) { return exports.DEFAULT_PREPARATION_TIMES[category] ?? 10; } //# sourceMappingURL=menuCategories.js.map