@nestbotics/nct_frontend_common_components
Version:
A collection of reusable React components with theme management and styling utilities
125 lines (123 loc) • 5.21 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireWildcard(require("react"));
var _material = require("@mui/material");
var _Theme = require("../../theme/Theme");
var _UserDataProvider = require("../../context/UserDataProvider");
var _axios = _interopRequireDefault(require("axios"));
var _reactRouterDom = require("react-router-dom");
var _DownloadOutlined = _interopRequireDefault(require("@mui/icons-material/DownloadOutlined"));
var _LightModeOutlined = _interopRequireDefault(require("@mui/icons-material/LightModeOutlined"));
var _DarkModeOutlined = _interopRequireDefault(require("@mui/icons-material/DarkModeOutlined"));
var _NotificationsOutlined = _interopRequireDefault(require("@mui/icons-material/NotificationsOutlined"));
var _DropdownAccount = _interopRequireDefault(require("./DropdownAccount"));
var _dayjs = _interopRequireDefault(require("dayjs"));
var _jsCookie = _interopRequireDefault(require("js-cookie"));
var _jsxRuntime = require("react/jsx-runtime");
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
// Optional toast import - fallback to console if not available
var toast;
try {
toast = require('react-hot-toast').toast;
} catch (e) {
toast = {
success: function success(message) {
return console.log('Success:', message);
},
error: function error(message) {
return console.error('Error:', message);
},
loading: function loading(message) {
return console.log('Loading:', message);
}
};
}
// Optional toastify CSS import
try {
require('react-toastify/dist/ReactToastify.css');
} catch (e) {
// CSS not available, continue without it
}
var Header = function Header(_ref) {
var title = _ref.title,
subtitle = _ref.subtitle;
var theme = (0, _material.useTheme)();
var colors = (0, _Theme.tokens)(theme.palette.mode);
var colorMode = (0, _react.useContext)(_Theme.ColorModeContext);
var _useContext = (0, _react.useContext)(_UserDataProvider.userDataContext),
user = _useContext.user;
// console.log(theme.palette.mode)
return (
/*#__PURE__*/
// Header Component of Dashboard
(0, _jsxRuntime.jsxs)(_material.Box, {
mb: "4px",
sx: {
width: '100%',
display: 'flex',
justifyContent: 'space-between',
backgroundColor: '#200f30eb',
paddingX: "10px"
},
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {
variant: "h1"
// color={colors.grey[100]}
,
fontWeight: "bold",
sx: {
fontWeight: "light",
color: 'white'
},
children: title
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {
variant: "h5",
color: colors.greenAccent[400],
children: subtitle
})]
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Button, {
sx: {
backgroundColor: colors.blueAccent[700],
color: colors.grey[100],
fontSize: "14px",
fontWeight: "bold",
padding: "10px 20px",
display: "none"
},
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DownloadOutlined.default, {
sx: {
mr: "10px"
}
}), "Download Reports"]
})
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {
display: "flex",
alignItems: "baseline",
justifyContent: "center",
mr: "10px",
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {
onClick: colorMode.toggleColorMode
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.IconButton, {
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Tooltip, {
title: "Notifications",
arrow: true,
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_NotificationsOutlined.default, {
style: {
fontSize: "1.84rem",
color: 'white'
}
})
})
})]
})]
})
);
};
var _default = exports.default = Header;