chore: fix prettier formatting, regenerate phase9 manifest, add missing config files (.env.example, .node-version, .nvmrc, CI workflow)
CI / test (push) Failing after 28s

This commit is contained in:
root
2026-06-25 20:12:15 -04:00
parent c43620a005
commit b7a640735c
36 changed files with 3402 additions and 1857 deletions
@@ -9,7 +9,7 @@ English is the authoring source. French and Arabic are independent production re
Set document attributes on the server:
```html
<html lang="ar" dir="rtl" data-theme-preference="system" data-theme="dark">
<html lang="ar" dir="rtl" data-theme-preference="system" data-theme="dark"></html>
```
Do not wait for hydration to set language, direction, or resolved theme.
@@ -1,11 +1,7 @@
{
"version": "1.0",
"defaultLocale": "en",
"locales": [
"en",
"fr",
"ar"
],
"locales": ["en", "fr", "ar"],
"rootDetection": true,
"routes": [
{
@@ -16,15 +12,7 @@
"ar": ""
},
"indexable": true,
"hashes": [
"top",
"product",
"workflow",
"modules",
"pricing",
"faq",
"contact"
]
"hashes": ["top", "product", "workflow", "modules", "pricing", "faq", "contact"]
},
{
"id": "login",
@@ -68,22 +56,12 @@
}
],
"switching": {
"preserveQueryAllowlist": [
"utm_source",
"utm_medium",
"utm_campaign",
"utm_content",
"gclid"
],
"preserveQueryAllowlist": ["utm_source", "utm_medium", "utm_campaign", "utm_content", "gclid"],
"preserveValidHash": true,
"dropUnknownQuery": true
},
"hreflang": {
"values": [
"en",
"fr",
"ar"
],
"values": ["en", "fr", "ar"],
"xDefaultLocale": "en",
"selfCanonical": true
}
@@ -7,26 +7,11 @@
},
"header": {
"nav": [
[
"product",
"المنتج"
],
[
"workflow",
"سير العمل"
],
[
"modules",
"الوحدات"
],
[
"pricing",
"التسعير"
],
[
"faq",
"الأسئلة الشائعة"
]
["product", "المنتج"],
["workflow", "سير العمل"],
["modules", "الوحدات"],
["pricing", "التسعير"],
["faq", "الأسئلة الشائعة"]
],
"login": "تسجيل الدخول",
"demo": "احجز عرضًا توضيحيًا",
@@ -50,22 +35,10 @@
"title": "سير عمل واحد يغطي دورة التأجير كاملة.",
"body": "حافظ على ترابط سياق العميل والمركبة والعقد والمهام مع تقدم عملية التأجير.",
"items": [
[
"الحجز",
"سجّل الطلب والبيانات المطلوبة."
],
[
"المركبة",
"تابع التوافر والجاهزية."
],
[
"العقد",
"اجمع مهام التسليم والسجلات في موضع واحد."
],
[
"الإرجاع",
"سجّل الحالة وأغلق أعمال المتابعة."
]
["الحجز", "سجّل الطلب والبيانات المطلوبة."],
["المركبة", "تابع التوافر والجاهزية."],
["العقد", "اجمع مهام التسليم والسجلات في موضع واحد."],
["الإرجاع", "سجّل الحالة وأغلق أعمال المتابعة."]
]
},
"comparison": {
@@ -92,48 +65,20 @@
"title": "حرّك عملية التأجير إلى الأمام من دون فقدان السياق.",
"body": "توضح كل خطوة القرار والمسؤول والإجراء التالي بدل دفن التشغيل داخل قائمة عامة من الميزات.",
"steps": [
[
"01",
"تسجيل الحجز",
"سجّل التواريخ وبيانات السائق والمتطلبات والمصدر."
],
[
"02",
"تخصيص مركبة جاهزة",
"طابق التوافر مع الفئة والموقع وحالة الجاهزية."
],
[
"03",
"إكمال التسليم",
"تحقق من المستندات والفحص والعقد ومهام تسليم المركبة."
],
[
"04",
"معالجة الإرجاع",
"سجّل الحالة وأغلق الأعمال المفتوحة وأعد المركبة إلى التوافر."
]
["01", "تسجيل الحجز", "سجّل التواريخ وبيانات السائق والمتطلبات والمصدر."],
["02", "تخصيص مركبة جاهزة", "طابق التوافر مع الفئة والموقع وحالة الجاهزية."],
["03", "إكمال التسليم", "تحقق من المستندات والفحص والعقد ومهام تسليم المركبة."],
["04", "معالجة الإرجاع", "سجّل الحالة وأغلق الأعمال المفتوحة وأعد المركبة إلى التوافر."]
]
},
"roles": {
"eyebrow": "مصمم لفريق التشغيل",
"title": "امنح كل دور السياق الذي يحتاجه من دون إنشاء نسخ متعددة من الحقيقة.",
"roles": [
[
"المالك أو المدير",
"اطّلع على عبء العمل والاستثناءات والمؤشرات التشغيلية عبر النشاط."
],
[
"فريق الحجوزات",
"حوّل الطلبات إلى حجوزات مؤكدة مع عدد أقل من عمليات التسليم."
],
[
"الأسطول والتشغيل",
"اعرف المركبات المتاحة أو المحجوبة أو المستحقة أو التي تنتظر إجراءً."
],
[
"مكتب الاستقبال",
"حضّر مهام التسليم والإرجاع قبل انتظار العميل."
]
["المالك أو المدير", "اطّلع على عبء العمل والاستثناءات والمؤشرات التشغيلية عبر النشاط."],
["فريق الحجوزات", "حوّل الطلبات إلى حجوزات مؤكدة مع عدد أقل من عمليات التسليم."],
["الأسطول والتشغيل", "اعرف المركبات المتاحة أو المحجوبة أو المستحقة أو التي تنتظر إجراءً."],
["مكتب الاستقبال", "حضّر مهام التسليم والإرجاع قبل انتظار العميل."]
]
},
"modules": {
@@ -141,30 +86,12 @@
"title": "نواة مترابطة منظّمة حول أعمال التأجير الفعلية.",
"body": "توضح حدود الوحدات المسؤوليات، بينما تمنع السجلات المشتركة فوضى النسخ واللصق المعتادة.",
"items": [
[
"الحجوزات",
"التوافر والتواريخ ومتطلبات العميل والحالة ضمن سير واحد."
],
[
"جاهزية الأسطول",
"توافر المركبات والحجوزات التشغيلية وحالة الخدمة وسياق الموقع."
],
[
"عقود الإيجار",
"متطلبات التسليم وحالة العقد والسجلات التشغيلية."
],
[
"فحص المركبة",
"فحوص منظمة عند التسليم والإرجاع مع مهام متابعة."
],
[
"سجلات العملاء",
"سجل التأجير وبيانات الاتصال المرتبطة بالعمل الجاري."
],
[
"التقارير التشغيلية",
"تعريفات وعروض تشغيلية يمكن التحقق منها مقابل النشاط المصدر."
]
["الحجوزات", "التوافر والتواريخ ومتطلبات العميل والحالة ضمن سير واحد."],
["جاهزية الأسطول", "توافر المركبات والحجوزات التشغيلية وحالة الخدمة وسياق الموقع."],
["عقود الإيجار", "متطلبات التسليم وحالة العقد والسجلات التشغيلية."],
["فحص المركبة", "فحوص منظمة عند التسليم والإرجاع مع مهام متابعة."],
["سجلات العملاء", "سجل التأجير وبيانات الاتصال المرتبطة بالعمل الجاري."],
["التقارير التشغيلية", "تعريفات وعروض تشغيلية يمكن التحقق منها مقابل النشاط المصدر."]
]
},
"results": {
@@ -172,22 +99,10 @@
"title": "قِس التغيير، لا الخطاب التسويقي.",
"body": "لا ينبغي نشر أي نتيجة قبل اعتماد خط أساس حقيقي لعميل وفترة مقارنة وتعريف واضح للبيانات. لذلك تعرض هذه النسخة منهجية القياس بدل نسب مئوية مختلقة.",
"metrics": [
[
"زمن معالجة الحجز",
"من استلام طلب صالح للعمل حتى تأكيد الحجز."
],
[
"زمن إعادة المركبة إلى الجاهزية",
"من تسجيل الإرجاع حتى حالة جاهز للتأجير."
],
[
"معدل استخدام الأسطول",
"مقارنة أيام التوافر بأيام التأجير وفق تعريف واحد معتمد."
],
[
"متابعة حالات التأخير",
"عمليات التأجير المتأخرة المفتوحة مع مسؤول وإجراء تالٍ."
]
["زمن معالجة الحجز", "من استلام طلب صالح للعمل حتى تأكيد الحجز."],
["زمن إعادة المركبة إلى الجاهزية", "من تسجيل الإرجاع حتى حالة جاهز للتأجير."],
["معدل استخدام الأسطول", "مقارنة أيام التوافر بأيام التأجير وفق تعريف واحد معتمد."],
["متابعة حالات التأخير", "عمليات التأجير المتأخرة المفتوحة مع مسؤول وإجراء تالٍ."]
],
"methodTitle": "المنهجية المطلوبة قبل نشر أي نتيجة",
"method": [
@@ -215,22 +130,10 @@
"title": "قيّم المنصة بالأدلة، لا بالشعارات.",
"body": "لا تُنشر شهادات أو وعود بمستوى الخدمة قبل وجود وثائق معتمدة. أثناء التقييم، اطلب إجابات محددة حول الضوابط المهمة لنشاطك.",
"checks": [
[
"التحكم في الوصول",
"الأدوار والصلاحيات وإجراءات المسؤول وإنهاء وصول المستخدم."
],
[
"قابلية التدقيق",
"التغييرات المسجلة والقابلة للبحث والتصدير."
],
[
"معالجة البيانات",
"الملكية والاحتفاظ والتصدير والحذف والجهات الفرعية."
],
[
"استمرارية العمل",
"النسخ الاحتياطي والاستعادة والتواصل عند الحوادث والدعم."
]
["التحكم في الوصول", "الأدوار والصلاحيات وإجراءات المسؤول وإنهاء وصول المستخدم."],
["قابلية التدقيق", "التغييرات المسجلة والقابلة للبحث والتصدير."],
["معالجة البيانات", "الملكية والاحتفاظ والتصدير والحذف والجهات الفرعية."],
["استمرارية العمل", "النسخ الاحتياطي والاستعادة والتواصل عند الحوادث والدعم."]
]
},
"pricing": {
@@ -289,65 +192,32 @@
[
"المنتج",
[
[
"سير العمل",
"#workflow"
],
[
"الوحدات",
"#modules"
],
[
"التسعير",
"#pricing"
]
["سير العمل", "#workflow"],
["الوحدات", "#modules"],
["التسعير", "#pricing"]
]
],
[
"الشركة",
[
[
"تواصل مع المبيعات",
"#contact"
],
[
"احجز عرضًا توضيحيًا",
"#demo"
]
["تواصل مع المبيعات", "#contact"],
["احجز عرضًا توضيحيًا", "#demo"]
]
],
[
"الحساب",
[
[
"تسجيل الدخول",
"#login"
],
[
"اللغة",
"#language"
],
[
"المظهر",
"#theme"
]
["تسجيل الدخول", "#login"],
["اللغة", "#language"],
["المظهر", "#theme"]
]
],
[
"قانوني",
[
[
"الخصوصية",
"#!"
],
[
"الشروط",
"#!"
],
[
"إمكانية الوصول",
"#!"
]
["الخصوصية", "#!"],
["الشروط", "#!"],
["إمكانية الوصول", "#!"]
]
]
],
@@ -377,11 +247,7 @@
"أكثر من 500 مركبة",
"غير متأكد بعد"
],
"langOptions": [
"English",
"Français",
"العربية"
],
"langOptions": ["English", "Français", "العربية"],
"successTitle": "تم تسجيل طلب العرض",
"successBody": "اكتمل مسار الحجز في هذا النموذج الأولي. لم يُرسل أي طلب إلى نظام مبيعات فعلي.",
"submitAnother": "إرسال طلب آخر",
@@ -7,26 +7,11 @@
},
"header": {
"nav": [
[
"product",
"Product"
],
[
"workflow",
"Workflow"
],
[
"modules",
"Modules"
],
[
"pricing",
"Pricing"
],
[
"faq",
"FAQ"
]
["product", "Product"],
["workflow", "Workflow"],
["modules", "Modules"],
["pricing", "Pricing"],
["faq", "FAQ"]
],
"login": "Log in",
"demo": "Book a demo",
@@ -50,22 +35,10 @@
"title": "One workflow across the rental lifecycle.",
"body": "Keep the customer, vehicle, agreement, and task context connected as the rental moves forward.",
"items": [
[
"Reservation",
"Capture the request and required details."
],
[
"Vehicle",
"Track availability and readiness."
],
[
"Agreement",
"Keep pickup tasks and records together."
],
[
"Return",
"Record condition and close follow-up work."
]
["Reservation", "Capture the request and required details."],
["Vehicle", "Track availability and readiness."],
["Agreement", "Keep pickup tasks and records together."],
["Return", "Record condition and close follow-up work."]
]
},
"comparison": {
@@ -92,48 +65,23 @@
"title": "Move the rental forward without losing the thread.",
"body": "Each step exposes the decision, owner, and next action instead of burying operations inside a generic feature list.",
"steps": [
[
"01",
"Capture the reservation",
"Record dates, driver details, requirements, and source."
],
[
"02",
"Assign a ready vehicle",
"Match availability with class, location, and readiness."
],
[
"03",
"Complete pickup",
"Confirm documents, inspection, agreement, and handover tasks."
],
[
"04",
"Process the return",
"Record condition, close open work, and release the vehicle."
]
["01", "Capture the reservation", "Record dates, driver details, requirements, and source."],
["02", "Assign a ready vehicle", "Match availability with class, location, and readiness."],
["03", "Complete pickup", "Confirm documents, inspection, agreement, and handover tasks."],
["04", "Process the return", "Record condition, close open work, and release the vehicle."]
]
},
"roles": {
"eyebrow": "Built for the operating team",
"title": "Give each role the context it needs, without creating separate versions of the truth.",
"roles": [
[
"Owner or manager",
"See workload, exceptions, and operating signals across the business."
],
[
"Reservations team",
"Move requests from inquiry to confirmed rental with fewer handoffs."
],
["Owner or manager", "See workload, exceptions, and operating signals across the business."],
["Reservations team", "Move requests from inquiry to confirmed rental with fewer handoffs."],
[
"Fleet and operations",
"Know which vehicles are available, blocked, due, or awaiting action."
],
[
"Front desk",
"Prepare pickup and return tasks before the customer is waiting."
]
["Front desk", "Prepare pickup and return tasks before the customer is waiting."]
]
},
"modules": {
@@ -141,26 +89,14 @@
"title": "A connected core, organized around real rental work.",
"body": "Module boundaries clarify responsibility while shared records prevent the usual copy-and-paste archaeology.",
"items": [
[
"Reservations",
"Availability, dates, customer requirements, and status in one flow."
],
[
"Fleet readiness",
"Vehicle availability, blocks, service state, and location context."
],
[
"Rental agreements",
"Pickup requirements, agreement status, and operational records."
],
["Reservations", "Availability, dates, customer requirements, and status in one flow."],
["Fleet readiness", "Vehicle availability, blocks, service state, and location context."],
["Rental agreements", "Pickup requirements, agreement status, and operational records."],
[
"Vehicle inspections",
"Structured pickup and return condition checks with follow-up tasks."
],
[
"Customer records",
"Rental history and contact context attached to active work."
],
["Customer records", "Rental history and contact context attached to active work."],
[
"Operations reporting",
"Definitions and operational views that can be validated against source activity."
@@ -172,22 +108,13 @@
"title": "Measure the change, not the marketing.",
"body": "No outcome claim should appear until a real customer baseline, comparison period, and data definition are approved. The production page therefore shows the measurement plan instead of fictional percentages.",
"metrics": [
[
"Reservation handling time",
"From usable request to confirmed reservation."
],
[
"Vehicle turnaround time",
"From return recorded to ready-for-rental status."
],
["Reservation handling time", "From usable request to confirmed reservation."],
["Vehicle turnaround time", "From return recorded to ready-for-rental status."],
[
"Fleet utilization",
"Available rental days compared with rented days, using one approved definition."
],
[
"Overdue follow-up",
"Open overdue rentals with an assigned owner and next action."
]
["Overdue follow-up", "Open overdue rentals with an assigned owner and next action."]
],
"methodTitle": "Methodology required before publishing results",
"method": [
@@ -215,22 +142,10 @@
"title": "Evaluate the platform with evidence, not badges.",
"body": "Certifications and service-level claims remain unpublished until approved documentation exists. During evaluation, request concrete answers for the controls that matter to your operation.",
"checks": [
[
"Access control",
"Roles, permissions, administrator actions, and offboarding."
],
[
"Auditability",
"Which changes are recorded, searchable, and exportable."
],
[
"Data handling",
"Ownership, retention, export, deletion, and subprocessors."
],
[
"Continuity",
"Backup, recovery, incident communication, and support process."
]
["Access control", "Roles, permissions, administrator actions, and offboarding."],
["Auditability", "Which changes are recorded, searchable, and exportable."],
["Data handling", "Ownership, retention, export, deletion, and subprocessors."],
["Continuity", "Backup, recovery, incident communication, and support process."]
]
},
"pricing": {
@@ -289,65 +204,32 @@
[
"Product",
[
[
"Workflow",
"#workflow"
],
[
"Modules",
"#modules"
],
[
"Pricing",
"#pricing"
]
["Workflow", "#workflow"],
["Modules", "#modules"],
["Pricing", "#pricing"]
]
],
[
"Company",
[
[
"Contact sales",
"#contact"
],
[
"Book a demo",
"#demo"
]
["Contact sales", "#contact"],
["Book a demo", "#demo"]
]
],
[
"Account",
[
[
"Log in",
"#login"
],
[
"Language",
"#language"
],
[
"Theme",
"#theme"
]
["Log in", "#login"],
["Language", "#language"],
["Theme", "#theme"]
]
],
[
"Legal",
[
[
"Privacy",
"#!"
],
[
"Terms",
"#!"
],
[
"Accessibility",
"#!"
]
["Privacy", "#!"],
["Terms", "#!"],
["Accessibility", "#!"]
]
]
],
@@ -377,11 +259,7 @@
"More than 500 vehicles",
"Not sure yet"
],
"langOptions": [
"English",
"Français",
"العربية"
],
"langOptions": ["English", "Français", "العربية"],
"successTitle": "Demo request recorded",
"successBody": "This prototype has completed the booking flow. No request was sent to a real sales system.",
"submitAnother": "Submit another request",
@@ -7,26 +7,11 @@
},
"header": {
"nav": [
[
"product",
"Produit"
],
[
"workflow",
"Parcours"
],
[
"modules",
"Modules"
],
[
"pricing",
"Tarifs"
],
[
"faq",
"FAQ"
]
["product", "Produit"],
["workflow", "Parcours"],
["modules", "Modules"],
["pricing", "Tarifs"],
["faq", "FAQ"]
],
"login": "Se connecter",
"demo": "Réserver une démo",
@@ -50,22 +35,10 @@
"title": "Un même parcours pour tout le cycle de location.",
"body": "Conservez le contexte du client, du véhicule, du contrat et des tâches au fil de la location.",
"items": [
[
"Réservation",
"Saisir la demande et les informations nécessaires."
],
[
"Véhicule",
"Suivre la disponibilité et l’état de préparation."
],
[
"Contrat",
"Regrouper les tâches de départ et les documents."
],
[
"Retour",
"Enregistrer l’état et clôturer les actions de suivi."
]
["Réservation", "Saisir la demande et les informations nécessaires."],
["Véhicule", "Suivre la disponibilité et l’état de préparation."],
["Contrat", "Regrouper les tâches de départ et les documents."],
["Retour", "Enregistrer l’état et clôturer les actions de suivi."]
]
},
"comparison": {
@@ -118,10 +91,7 @@
"eyebrow": "Conçu pour l’équipe opérationnelle",
"title": "Donnez à chaque rôle le contexte utile, sans multiplier les versions de la vérité.",
"roles": [
[
"Direction ou responsable",
"Voir la charge, les exceptions et les signaux dexploitation."
],
["Direction ou responsable", "Voir la charge, les exceptions et les signaux dexploitation."],
[
"Équipe réservations",
"Faire passer les demandes vers une location confirmée avec moins de transmissions."
@@ -130,10 +100,7 @@
"Parc et opérations",
"Savoir quels véhicules sont disponibles, bloqués, attendus ou en attente daction."
],
[
"Comptoir",
"Préparer les tâches de départ et de retour avant que le client nattende."
]
["Comptoir", "Préparer les tâches de départ et de retour avant que le client nattende."]
]
},
"modules": {
@@ -141,30 +108,15 @@
"title": "Un socle connecté, organisé autour du travail réel de location.",
"body": "Les modules clarifient les responsabilités, tandis que les dossiers partagés évitent larchéologie du copier-coller.",
"items": [
[
"Réservations",
"Disponibilités, dates, besoins du client et statut dans un même flux."
],
[
"Préparation du parc",
"Disponibilité, blocages, état de service et contexte dagence."
],
[
"Contrats de location",
"Exigences de départ, état du contrat et dossiers opérationnels."
],
["Réservations", "Disponibilités, dates, besoins du client et statut dans un même flux."],
["Préparation du parc", "Disponibilité, blocages, état de service et contexte dagence."],
["Contrats de location", "Exigences de départ, état du contrat et dossiers opérationnels."],
[
"Inspections des véhicules",
"Contrôles structurés au départ et au retour avec actions de suivi."
],
[
"Dossiers clients",
"Historique de location et coordonnées rattachés au travail en cours."
],
[
"Rapports opérationnels",
"Définitions et vues vérifiables par rapport à lactivité source."
]
["Dossiers clients", "Historique de location et coordonnées rattachés au travail en cours."],
["Rapports opérationnels", "Définitions et vues vérifiables par rapport à lactivité source."]
]
},
"results": {
@@ -176,18 +128,12 @@
"Temps de traitement des réservations",
"De la demande exploitable à la réservation confirmée."
],
[
"Temps de remise en service",
"Du retour enregistré au statut prêt à louer."
],
["Temps de remise en service", "Du retour enregistré au statut prêt à louer."],
[
"Taux dutilisation du parc",
"Jours louables comparés aux jours loués, selon une définition approuvée."
],
[
"Suivi des retards",
"Locations en retard avec responsable et prochaine action."
]
["Suivi des retards", "Locations en retard avec responsable et prochaine action."]
],
"methodTitle": "Méthode requise avant toute publication",
"method": [
@@ -215,22 +161,10 @@
"title": "Évaluez la plateforme avec des preuves, pas avec des badges.",
"body": "Aucune certification ni promesse de niveau de service nest publiée sans documentation approuvée. Pendant l’évaluation, demandez des réponses concrètes sur les contrôles utiles à votre activité.",
"checks": [
[
"Contrôle des accès",
"Rôles, autorisations, actions administrateur et départs."
],
[
"Traçabilité",
"Modifications enregistrées, recherchables et exportables."
],
[
"Gestion des données",
"Propriété, conservation, export, suppression et sous-traitants."
],
[
"Continuité",
"Sauvegarde, reprise, communication dincident et support."
]
["Contrôle des accès", "Rôles, autorisations, actions administrateur et départs."],
["Traçabilité", "Modifications enregistrées, recherchables et exportables."],
["Gestion des données", "Propriété, conservation, export, suppression et sous-traitants."],
["Continuité", "Sauvegarde, reprise, communication dincident et support."]
]
},
"pricing": {
@@ -289,65 +223,32 @@
[
"Produit",
[
[
"Parcours",
"#workflow"
],
[
"Modules",
"#modules"
],
[
"Tarifs",
"#pricing"
]
["Parcours", "#workflow"],
["Modules", "#modules"],
["Tarifs", "#pricing"]
]
],
[
"Entreprise",
[
[
"Contacter le service commercial",
"#contact"
],
[
"Réserver une démo",
"#demo"
]
["Contacter le service commercial", "#contact"],
["Réserver une démo", "#demo"]
]
],
[
"Compte",
[
[
"Se connecter",
"#login"
],
[
"Langue",
"#language"
],
[
"Thème",
"#theme"
]
["Se connecter", "#login"],
["Langue", "#language"],
["Thème", "#theme"]
]
],
[
"Mentions légales",
[
[
"Confidentialité",
"#!"
],
[
"Conditions",
"#!"
],
[
"Accessibilité",
"#!"
]
["Confidentialité", "#!"],
["Conditions", "#!"],
["Accessibilité", "#!"]
]
]
],
@@ -377,11 +278,7 @@
"Plus de 500 véhicules",
"Je ne sais pas encore"
],
"langOptions": [
"English",
"Français",
"العربية"
],
"langOptions": ["English", "Français", "العربية"],
"successTitle": "Demande de démonstration enregistrée",
"successBody": "Ce prototype a terminé le parcours de réservation. Aucune demande na été envoyée à un véritable système commercial.",
"submitAnother": "Envoyer une autre demande",