Viewing File: /home/ubuntu/route-and-root-frontend-base/src/components/landingPage/FAQIndex.jsx
import React, { useState, useEffect } from "react";
import { connect } from "react-redux";
import {
Navbar,
Container,
Image,
Nav,
Row,
Col,
Accordion,
} from "react-bootstrap";
import { Link } from "react-router-dom";
import "./Landing.css";
import { withTranslation, useTranslation } from "react-multi-lang";
import { fetchFaqsListStart } from "../store/actions/HomePageAction";
import SomethingWrong from "../Helper/SomethingWrong";
import Skeleton from "react-loading-skeleton";
import configuration from "react-global-configuration";
const FAQIndex = (props) => {
const t = useTranslation();
const [isVisible, setIsVisible] = useState(0);
const { faqsList } = props;
useEffect(() => {
props.dispatch(fetchFaqsListStart());
}, []);
return (
<>
<div className="faq-sec sm-padding">
<Container>
<Row className="justify-content-center">
<>
<Col md={12} xl={6} lg={6}>
<div className="faq-wrapped">
<div className="section-title-sec">
<h5 className="title-light">{t("faq")}</h5>
<h2 className="title-bold">
<span>{t("what_do_you_need_to_know")}</span>
</h2>
</div>
{faqsList.loading ? (
<Skeleton height={400} width={700} />
) : (
faqsList.data.faqs.map((list, index) => (
<div className="faq-accordion-sec accordion accordion-flush">
<Accordion
defaultActiveKey="0"
activeKey={isVisible}
class=""
>
<Accordion.Item
eventKey={index}
onClick={() =>
setIsVisible(isVisible === index ? null : index)
}
>
<Accordion.Header>{list.title}</Accordion.Header>
<Accordion.Body>
<p
dangerouslySetInnerHTML={{
__html: list.description,
}}
></p>
</Accordion.Body>
</Accordion.Item>
</Accordion>
</div>
))
)}
</div>
</Col>
</>
</Row>
</Container>
</div>
</>
);
};
const mapStateToPros = (state) => ({
faqsList: state.homepage.faqsList,
});
function mapDispatchToProps(dispatch) {
return { dispatch };
}
export default connect(
mapStateToPros,
mapDispatchToProps
)(withTranslation(FAQIndex));
Back to Directory
File Manager