Replace entire repo content with updated code from /root/shahikitchen-website/

This commit is contained in:
root
2026-06-30 12:19:55 +00:00
parent 50e3a34895
commit c8b7dc95e4
26 changed files with 1153 additions and 161 deletions
+36 -10
View File
@@ -2,6 +2,10 @@ import type { Language, LanguageOption } from '@/domain/language/entities';
import { arTranslations } from './languages/ar';
import { trTranslations } from './languages/tr';
import { mergeTranslations } from './merge';
import {
HINDI_MENU_DESCRIPTIONS,
MENU_DESCRIPTION_SUPPLEMENT,
} from './menu/description-supplement';
export type { Language };
@@ -86,7 +90,7 @@ export const translations = {
filterGrill: 'Grill',
filterSweets: 'Sweets',
filterMeat: 'Meat',
filterStreet: 'Street',
filterStreet: 'Street Food',
filterRoll: 'Roll',
addToTable: 'Add to Table',
viewFullMenu: 'VIEW THE COMPLETE MENU — 40+ DISHES',
@@ -126,7 +130,6 @@ export const translations = {
"shami-sandwich": "Spiced minced meat shami kebab patties served in bread with chutney and onions.",
"chicken-biryani": "Fragrant aged basmati rice layered with tender spiced chicken, saffron and caramelized onions.",
"chicken-tikka": "Boneless chicken pieces marinated in yogurt and spices, grilled in a tandoor.",
"tikka-boti": "Tender chicken chunks marinated in spices and grilled on skewers.",
"chicken-karahi": "Wok-tossed chicken in a robust tomato, chili and ginger gravy.",
"lahore-sizzler": "Sizzling platter of marinated chicken with vegetables and spicy sauces.",
"butter-chicken": "Tender chicken in a creamy tomato and butter gravy with mild spices.",
@@ -196,6 +199,9 @@ export const translations = {
subtitle:
'Premium per-head packages for weddings, corporate events, and family gatherings — authentic Shahi flavours, beautifully served.',
perHead: 'per guest',
contactForPricing: 'Contact us for pricing',
packagePricingInquiry:
'Hello Shahi Kitchen 👋\n\nI would like pricing for the {{package}} catering package.\n\nPlease contact me with availability and options.\n\nThank you!',
includedDishes: 'Included dishes',
mostPopular: 'Most Popular',
guestNote: 'Custom menus available — contact us to tailor your event.',
@@ -457,7 +463,7 @@ export const translations = {
filterGrill: 'Grill',
filterSweets: 'Sötsaker',
filterMeat: 'Kött',
filterStreet: 'Gata',
filterStreet: 'Gatumat',
filterRoll: 'Rulle',
addToTable: 'Lägg till',
viewFullMenu: 'SE HELA MENYN — 40+ RÄTTER',
@@ -497,7 +503,6 @@ export const translations = {
"shami-sandwich": "Kryddade malet kött shami kebab-patties serverade i bröd med chutney och lök.",
"chicken-biryani": "Doftande åldrad basmatiris med lager av kryddad kyckling, saffran och karamelliserade lökar.",
"chicken-tikka": "Benfri kyckling marinerad i yoghurt och kryddor, grillad i tandoorugn.",
"tikka-boti": "Möra kycklingbitar marinerade i kryddor och grillade på spett.",
"chicken-karahi": "Wokad kyckling i en robust tomat-, chili- och ingefärssås.",
"lahore-sizzler": "Surrande fat med marinerad kyckling med grönsaker och kryddiga såser.",
"butter-chicken": "Mör kyckling i en krämig tomat- och smörsås med milda kryddor.",
@@ -564,6 +569,9 @@ export const translations = {
subtitle:
'Premium paket per gäst för bröllop, företagsevent och familjefester — autentiska Shahi-smaker, vackert serverade.',
perHead: 'per gäst',
contactForPricing: 'Kontakta oss för pris',
packagePricingInquiry:
'Hej Shahi Kitchen 👋\n\nJag vill ha pris för {{package}} cateringpaketet.\n\nVänligen kontakta mig med tillgänglighet och alternativ.\n\nTack!',
includedDishes: 'Ingående rätter',
mostPopular: 'Mest populär',
guestNote: 'Skräddarsydda menyer finns — kontakta oss för att anpassa ditt event.',
@@ -823,6 +831,7 @@ export const translations = {
filterRice: 'चावल',
filterGrill: 'ग्रिल',
filterSweets: 'मिठाइयाँ',
filterStreet: 'स्ट्रीट फूड',
addToTable: 'ऐड करें',
viewFullMenu: 'पूरी मेन्यू देखें — 40+ व्यंजन',
},
@@ -861,7 +870,6 @@ export const translations = {
"shami-sandwich": "Spiced minced meat shami kebab patties served in bread with chutney and onions.",
"chicken-biryani": "Fragrant aged basmati rice layered with tender spiced chicken, saffron and caramelized onions.",
"chicken-tikka": "Boneless chicken pieces marinated in yogurt and spices, grilled in a tandoor.",
"tikka-boti": "Tender chicken chunks marinated in spices and grilled on skewers.",
"chicken-karahi": "Wok-tossed chicken in a robust tomato, chili and ginger gravy.",
"lahore-sizzler": "Sizzling platter of marinated chicken with vegetables and spicy sauces.",
"butter-chicken": "Tender chicken in a creamy tomato and butter gravy with mild spices.",
@@ -1000,6 +1008,9 @@ export const translations = {
subtitle:
'शादियों, कॉर्पोरेट इवेंट और पारिवारिक समारोहों के लिए प्रीमियम प्रति व्यक्ति पैकेज — प्रामाणिक शाही स्वाद, सुंदर परोसा।',
perHead: 'प्रति अतिथि',
contactForPricing: 'मूल्य जानने के लिए हमसे संपर्क करें',
packagePricingInquiry:
'नमस्ते Shahi Kitchen 👋\n\nमुझे {{package}} कैटरिंग पैकेज की कीमत जाननी है।\n\nकृपया उपलब्धता और विकल्पों के साथ मुझसे संपर्क करें।\n\nधन्यवाद!',
includedDishes: 'शामिल व्यंजन',
mostPopular: 'सबसे लोकप्रिय',
guestNote: 'कस्टम मेनू उपलब्ध — अपने इवेंट के लिए हमसे संपर्क करें।',
@@ -1184,6 +1195,7 @@ export const translations = {
filterRice: 'چاول',
filterGrill: 'گرل',
filterSweets: 'مٹھائیاں',
filterStreet: 'سٹریٹ فوڈ',
addToTable: 'شامل کریں',
viewFullMenu: 'مکمل مینو دیکھیں — 40+ پکوان',
},
@@ -1222,7 +1234,6 @@ export const translations = {
"shami-sandwich": "مصالحہ دار کییما کے شامی کباب پیٹیز بریڈ میں چٹنی اور پیاز کے ساتھ۔",
"chicken-biryani": "خوشبودار پرانی باسمتی چاول کی تہوں میں نرم مصالحہ دار چکن، زعفران اور کاراملائزڈ پیاز۔",
"chicken-tikka": "ہڈیوں والے چکن کے ٹکڑے دہی اور مصالحوں میں مرینیٹ کیے گئے، ٹینڈور میں گرل کیے گئے۔",
"tikka-boti": "نرم چکن کے ٹکڑے مصالحوں میں مرینیٹ کیے گئے اور سیخوں پر گرل کیے گئے۔",
"chicken-karahi": "ووک میں تلے ہوئے چکن کا مضبوط ٹماٹر، مرچ اور ادرک کی گریوی میں۔",
"lahore-sizzler": "مرینیٹ کیے گئے چکن کا سٹیلنگ پلیٹر سبزیوں اور تیز ساس کے ساتھ۔",
"butter-chicken": "نرم چکن کریمی ٹماٹر اور مکھن کی گریوی میں ہلکے مصالحوں کے ساتھ۔",
@@ -1361,6 +1372,9 @@ export const translations = {
subtitle:
'شادیوں، کارپوریٹ ایونٹس اور خاندانی محفلوں کے لیے پریمیم فی مہمان پیکج — مستند شاہی ذائقے، خوبصورت پیشکش۔',
perHead: 'فی مہمان',
contactForPricing: 'قیمت کے لیے ہم سے رابطہ کریں',
packagePricingInquiry:
'ہیلو Shahi Kitchen 👋\n\nمجھے {{package}} کیٹرنگ پیکج کی قیمت جاننی ہے۔\n\nبراہ مہربانی دستیابی اور اختیارات کے ساتھ مجھ سے رابطہ کریں۔\n\nشکریہ!',
includedDishes: 'شامل کھانے',
mostPopular: 'سب سے مقبول',
guestNote: 'حسب ضرورت مینو دستیاب — اپنے ایونٹ کے لیے ہم سے رابطہ کریں۔',
@@ -1492,8 +1506,20 @@ const trBundle = mergeTranslations(
trTranslations as unknown as Partial<TranslationBundle>
);
export function getTranslation(lang: Language): TranslationBundle {
if (lang === 'ar') return arBundle as TranslationBundle;
if (lang === 'tr') return trBundle as TranslationBundle;
return translations[lang] as TranslationBundle;
function withMenuText(lang: Language, bundle: TranslationBundle): TranslationBundle {
const baseDescriptions = { ...bundle.menuDescriptions };
const hiDescriptions =
lang === 'hi' ? { ...baseDescriptions, ...HINDI_MENU_DESCRIPTIONS } : baseDescriptions;
const supplement = MENU_DESCRIPTION_SUPPLEMENT[lang];
const menuDescriptions = supplement
? { ...hiDescriptions, ...supplement }
: hiDescriptions;
return { ...bundle, menuDescriptions };
}
export function getTranslation(lang: Language): TranslationBundle {
if (lang === 'ar') return withMenuText(lang, arBundle as TranslationBundle);
if (lang === 'tr') return withMenuText(lang, trBundle as TranslationBundle);
return withMenuText(lang, translations[lang] as TranslationBundle);
}