import Icon, {
CarFilled,
ClockCircleFilled,
DollarCircleFilled,
FileAddFilled,
FileFilled,
GlobalOutlined,
HomeFilled,
ImportOutlined,
LineChartOutlined,
ScheduleOutlined,
TeamOutlined,
ToolFilled,
UnorderedListOutlined,
UserOutlined,
} from "@ant-design/icons";
import { Avatar, Menu } from "antd";
import React from "react";
import { useTranslation } from "react-i18next";
import { BsKanban } from "react-icons/bs";
import {
FaCalendarAlt,
FaCarCrash,
FaCreditCard,
FaFileInvoiceDollar,
} from "react-icons/fa";
import { connect } from "react-redux";
import { Link } from "react-router-dom";
import { createStructuredSelector } from "reselect";
import {
selectRecentItems,
selectSelectedHeader,
} from "../../redux/application/application.selectors";
import { setModalContext } from "../../redux/modals/modals.actions";
import { signOutStart } from "../../redux/user/user.actions";
import { selectCurrentUser } from "../../redux/user/user.selectors";
import GlobalSearch from "../global-search/global-search.component";
const mapStateToProps = createStructuredSelector({
currentUser: selectCurrentUser,
recentItems: selectRecentItems,
selectedHeader: selectSelectedHeader,
});
const mapDispatchToProps = (dispatch) => ({
setBillEnterContext: (context) =>
dispatch(setModalContext({ context: context, modal: "billEnter" })),
setTimeTicketContext: (context) =>
dispatch(setModalContext({ context: context, modal: "timeTicket" })),
setPaymentContext: (context) =>
dispatch(setModalContext({ context: context, modal: "payment" })),
setReportCenterContext: (context) =>
dispatch(setModalContext({ context: context, modal: "reportCenter" })),
signOutStart: () => dispatch(signOutStart()),
});
function Header({
handleMenuClick,
currentUser,
selectedHeader,
signOutStart,
setBillEnterContext,
setTimeTicketContext,
setPaymentContext,
setReportCenterContext,
recentItems,
}) {
const { t } = useTranslation();
return (
}
>
signOutStart()}>
{t("user.actions.signout")}
{
window.open("https://imexrescue.com/", "_blank");
}}
>
{t("menus.header.rescueme")}
{t("menus.header.shiftclock")}
{t("menus.currentuser.profile")}
{t("menus.currentuser.languageselector")}
}
>
{t("general.languages.english")}
{t("general.languages.french")}
{t("general.languages.spanish")}
}>
{recentItems.map((i, idx) => (
{i.label}
))}
);
}
export default connect(mapStateToProps, mapDispatchToProps)(Header);