import React, { useState } from 'react'; import { ChevronRight, ChevronLeft, Check, Palette, AlertCircle, Sparkles, CheckCircle2 } from 'lucide-react'; // بيانات الاستبيان const PERSONALITIES = [ 'احترافي ورسمي', 'مرح وحيوي', 'فاخر وأنيق', 'بسيط وحديث (مودرن)', 'طبيعي وصديق للبيئة', 'كلاسيكي وتقليدي', 'جريء ومبتكر', 'هادئ وموثوق' ]; const COLORS = [ { id: 'red', name: 'أحمر', hex: '#ef4444', meaning: 'طاقة، شغف، قوة' }, { id: 'blue', name: 'أزرق', hex: '#3b82f6', meaning: 'ثقة، احترافية، هدوء' }, { id: 'green', name: 'أخضر', hex: '#22c55e', meaning: 'نمو، طبيعة، صحة' }, { id: 'yellow', name: 'أصفر', hex: '#eab308', meaning: 'تفاؤل، سعادة، دفء' }, { id: 'purple', name: 'بنفسجي', hex: '#a855f7', meaning: 'إبداع، فخامة، حكمة' }, { id: 'orange', name: 'برتقالي', hex: '#f97316', meaning: 'حيوية، ود، ابتكار' }, { id: 'black', name: 'أسود', hex: '#171717', meaning: 'رقي، قوة، غموض' }, { id: 'white', name: 'أبيض / رمادي', hex: '#e5e5e5', meaning: 'نقاء، بساطة، توازن' }, { id: 'brown', name: 'بني', hex: '#78350f', meaning: 'أصالة، استقرار، أرضية' }, { id: 'pink', name: 'وردي', hex: '#ec4899', meaning: 'نعومة، رعاية، حداثة' }, ]; const STYLES = [ { id: 'vibrant', title: 'ألوان ساطعة وحيوية', desc: 'تلفت الانتباه وتعطي طاقة عالية' }, { id: 'pastel', title: 'ألوان باستيل هادئة', desc: 'ألوان ناعمة ومريحة للعين' }, { id: 'dark', title: 'ألوان داكنة وعميقة', desc: 'تعكس الفخامة والجدية والغموض' }, { id: 'minimalist', title: 'ألوان حيادية (أبيض، أسود، رمادي)', desc: 'بساطة مطلقة وتركيز على الشكل' } ]; export default function App() { const [step, setStep] = useState(0); const [isSubmitted, setIsSubmitted] = useState(false); const [formData, setFormData] = useState({ personalities: [], favoriteColors: [], avoidColors: [], colorStyle: '', additionalNotes: '' }); const totalSteps = 5; const handleNext = () => { if (step < totalSteps) setStep(step + 1); }; const handlePrev = () => { if (step > 0) setStep(step - 1); }; const toggleSelection = (field, item) => { setFormData(prev => { const currentList = prev[field]; if (currentList.includes(item)) { return { ...prev, [field]: currentList.filter(i => i !== item) }; } else { return { ...prev, [field]: [...currentList, item] }; } }); }; const handleSubmit = () => { // في بيئة العمل الحقيقية، هنا يتم إرسال البيانات للخادم console.log("تم جمع البيانات:", formData); setIsSubmitted(true); }; // ---------------- شاشات التطبيق ---------------- const renderWelcome = () => (

رحلة اكتشاف ألوان هويتك

لأن الشعار هو الوجه الأول لعلامتك التجارية، نريد أن نضمن أن ألوانه تعكس شخصيتك وقيمك بدقة. شاركنا تفضيلاتك في خطوات بسيطة.

); const renderStep1 = () => (

شخصية علامتك التجارية

اختر 1 إلى 3 صفات تصف مشروعك بأفضل شكل (هذا يساعدنا في تحديد سيكولوجية الألوان).

{PERSONALITIES.map(trait => ( ))}
); const renderStep2 = () => (

الألوان المفضلة

ما هي الألوان التي تشعر أنها تمثل علامتك التجارية؟ (اختر لونين أو ثلاثة كحد أقصى)

{COLORS.map(color => { const isSelected = formData.favoriteColors.includes(color.id); const isAvoided = formData.avoidColors.includes(color.id); return ( ); })}
); const renderStep3 = () => (

ألوان تود تجنبها

هل هناك ألوان معينة تكرهها ولا ترغب برؤيتها في شعارك أبداً؟

{COLORS.map(color => { const isSelected = formData.avoidColors.includes(color.id); const isFavorite = formData.favoriteColors.includes(color.id); return ( ); })}
); const renderStep4 = () => (

طابع الألوان المفضل

كيف تفضل أن يكون مظهر أو "Tone" الألوان؟

{STYLES.map(style => ( ))}
); const renderStep5 = () => (

ملخص وتأكيد

يرجى مراجعة اختياراتك قبل الإرسال، هل تود إضافة أي ملاحظات؟

{/* Personalities Summary */}

شخصية العلامة التجارية:

{formData.personalities.length > 0 ? formData.personalities.map(p => ( {p} )) : لم يتم التحديد}
{/* Favorite Colors Summary */}

الألوان المفضلة:

{formData.favoriteColors.length > 0 ? formData.favoriteColors.map(colorId => { const color = COLORS.find(c => c.id === colorId); return (
{color.name}
); }) : أي ألوان (متروك للمصمم)}
{/* Avoid Colors Summary */}

ألوان مستبعدة:

{formData.avoidColors.length > 0 ? formData.avoidColors.map(colorId => { const color = COLORS.find(c => c.id === colorId); return (
{color.name}
); }) : لا يوجد}
{/* Style Summary */}

طابع الألوان:

{formData.colorStyle ? STYLES.find(s => s.id === formData.colorStyle).title : لم يتم التحديد}

); const renderSuccess = () => (

شكراً لك!

تم استلام تفضيلاتك بنجاح. هذه المعلومات ستساعدنا كثيراً في بناء هوية بصرية رائعة تمثل علامتك التجارية بأفضل صورة.

يمكنك إغلاق هذه الصفحة الآن.

); // ---------------- مكونات رئيسية ---------------- const renderProgressBar = () => { if (step === 0 || isSubmitted) return null; const progress = (step / totalSteps) * 100; return (
الخطوة {step} من {totalSteps} {Math.round(progress)}%
); }; return (
{/* Header decoration */}
{renderProgressBar()}
{isSubmitted ? renderSuccess() : ( <> {step === 0 && renderWelcome()} {step === 1 && renderStep1()} {step === 2 && renderStep2()} {step === 3 && renderStep3()} {step === 4 && renderStep4()} {step === 5 && renderStep5()} )}
{/* Navigation Buttons */} {!isSubmitted && step > 0 && (
{step < totalSteps ? ( ) : ( )}
)}
{/* Footer Branding (Optional) */}

مصمم خصيصاً لابتكار هويتك البصرية ✨

); }