// #region [Imports] =================================================================================================== // Libraries import { connect } from "react-redux"; import { bindActionCreators, Dispatch } from "redux"; import { useHistory } from "react-router-dom"; // Components import BigNumberWidget from "./widgets/BigNumberWidget"; import CouponTableWidget from "./widgets/CouponTableWidget"; import UpsellWidget from "./widgets/UpsellWidget"; // Actions import { PageActions } from "../../store/actions/page"; // Types import { IDashboardWidget } from "../../types/dashboard"; // Helpers import { getPathPrefix } from "../../helpers/utils"; // #endregion [Imports] // #region [Variables] ================================================================================================= const { setStorePage } = PageActions; // #endregion [Variables] // #region [Interfaces]================================================================================================= interface IActions { setStorePage: typeof setStorePage; } interface IProps { widgets: IDashboardWidget[]; actions: IActions; } // #endregion [Interfaces] // #region [Component] ================================================================================================= const ReportWidgets = (props: IProps) => { const {widgets, actions} = props; const history = useHistory(); /** * Handle internal redirects for the menu items. * * @param {string} id Page ID. */ const handlePageRedirect = (id: string) => { history.push(`${ getPathPrefix() }admin.php?page=${id}`); actions.setStorePage({ data: id }); }; if (!widgets) { return null; } return (