export type HomeIntro = {
    eyebrow: string;
    heading: string;
    summary: string;
    imageOneUrl: string;
    imageTwoUrl: string;
    mission: string;
    vision: string;
    history: string;
    highlights: string[];
};

const tabs = [
    { id: 'mission', label: 'Our Mission', field: 'mission' },
    { id: 'vision', label: 'Our Vision', field: 'vision' },
    { id: 'history', label: 'Our History', field: 'history' },
] as const;

export function HomeAbout({ intro }: { intro: HomeIntro }) {
    return (
        <>
                <section className="about-section-2 pt-100 md-pt-80 pb-100 md-pb-80">
                    <div className="about-shape-1">
                        <figure>
                            <img src="/assets/images/about/about-shape-4.png" alt="about shape four" />
                        </figure>
                    </div>
                    <div className="about-shape-2">
                        <figure>
                            <img src="/assets/images/about/about-shape-5.png" alt="about shape five" />
                        </figure>
                    </div>
                    <div className="container">
                        <div className="row">
                            <div className="col-lg-6 col-md-12">
                                <div className="about-left-content">
                                    <div className="about-left-content-top wow fadeInUp" data-wow-delay=".2s">
                                        <div className="section-title mb-30">
                                            <span className="sub-title">{intro.eyebrow}</span>
                                            <h2>{intro.heading}</h2>
                                            {intro.summary !== '' && <p>{intro.summary}</p>}
                                        </div>
                                    </div>
                                    <div className="about-left-content-image wow fadeInUp" data-wow-delay=".3s">
                                        <figure className="image-anime">
                                            <img src={intro.imageOneUrl} alt={intro.heading} />
                                        </figure>
                                    </div>
                                </div>
                            </div>
                            <div className="col-lg-6 col-md-12">
                                <div className="about-right-content">
                                    <div className="about-right-content-image wow fadeInUp" data-wow-delay=".4s">
                                        <figure className="image-anime">
                                            <img src={intro.imageTwoUrl} alt="" />
                                        </figure>
                                    </div>
                                    <div className="about-right-bottom">
                                        <div className="about-tabs-content wow fadeInUp" data-wow-delay=".5s">
                                            <div className="about-tabs">
                                                <nav>
                                                    <div className="nav nav-tabs" id="nav-about-tab" role="tablist">
                                                        {tabs.map((tab, index) => (
                                                            <button
                                                                className={index === 0 ? 'nav-link active' : 'nav-link'}
                                                                id={`nav-${tab.id}-tab`}
                                                                data-bs-toggle="tab"
                                                                data-bs-target={`#nav-${tab.id}`}
                                                                type="button"
                                                                role="tab"
                                                                aria-controls={`nav-${tab.id}`}
                                                                aria-selected={index === 0}
                                                                key={tab.id}
                                                            >
                                                                {tab.label}
                                                            </button>
                                                        ))}
                                                    </div>
                                                </nav>
                                                <div className="tab-content">
                                                    {tabs.map((tab, index) => (
                                                        <div
                                                            className={index === 0 ? 'tab-pane fade active show' : 'tab-pane fade'}
                                                            id={`nav-${tab.id}`}
                                                            role="tabpanel"
                                                            aria-labelledby={`nav-${tab.id}-tab`}
                                                            tabIndex={0}
                                                            key={tab.id}
                                                        >
                                                            <div className="tab-desc">
                                                                <p>{intro[tab.field]}</p>
                                                            </div>
                                                            {intro.highlights.length > 0 && (
                                                                <div className="check-list-two-col">
                                                                    <ul>
                                                                        {intro.highlights.map((item) => (
                                                                            <li key={item}>{item}</li>
                                                                        ))}
                                                                    </ul>
                                                                </div>
                                                            )}
                                                        </div>
                                                    ))}
                                                </div>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </section>
        </>
    );
}
