{"version":3,"sources":["environments/environment.js","contexts/JWTContext.js","ui-component/Loader.js","utils/axios.js","ui-component/cards/MainCard.js","apis/api.js","ui-component/extended/AnimateButton.js","store/actions.js","store/accountReducer.js","assets/images/LimitTablosu2024.jpg","ui-component/dialogs/UserLimitedDialog.js","store/snackbarReducer.js","assets/images/MEDTEC_LOGO.png","assets/scss/_themes-vars.module.scss","assets/scss/_theme1.module.scss","assets/scss/_theme2.module.scss","assets/scss/_theme3.module.scss","assets/scss/_theme4.module.scss","assets/scss/_theme5.module.scss","assets/scss/_theme6.module.scss","assets/images/logo.png","ui-component/Logo.js","serviceWorker.js","ui-component/extended/Breadcrumbs.js","assets/images/nav-logo.png","ui-component/NavbarLogo.js","layout/MainLayout/LogoSection/index.js","ui-component/extended/Transitions.js","layout/MainLayout/Header/SearchSection/index.js","layout/MainLayout/Header/LocalizationSection/index.js","layout/MainLayout/Header/MobileSection/index.js","layout/MainLayout/Header/ProfileSection/index.js","layout/MainLayout/Header/NotificationSection/index.js","assets/images/users/user-round.svg","layout/MainLayout/Header/NotificationSection/NotificationList.js","layout/MainLayout/Header/index.js","layout/MainLayout/Sidebar/MenuList/NavItem/index.js","layout/MainLayout/Sidebar/MenuList/NavCollapse/index.js","layout/MainLayout/Sidebar/MenuList/NavGroup/index.js","menu-items/employeeExpenseGroup.js","menu-items/managerAdvanceGroup.js","menu-items/employeeAdvanceGroup.js","menu-items/accountantGroup.js","menu-items/managerExpenseGroup.js","layout/MainLayout/Sidebar/MenuList/index.js","apis/FieldApi.js","layout/MainLayout/Sidebar/index.js","menu-items/index.js","layout/MainLayout/Footer/footer.js","layout/MainLayout/index.js","ui-component/Loadable.js","utils/route-guard/AuthGuard.js","routes/MainRoutes.js","utils/route-guard/GuestGuard.js","layout/MinimalLayout/index.js","layout/NavMotion.js","routes/LoginRoutes.js","routes/AuthenticationRoutes.js","routes/index.js","themes/palette.js","themes/typography.js","themes/shadows.js","themes/index.js","themes/compStyleOverride.js","ui-component/Locales.js","layout/NavigationScroll.js","ui-component/extended/Snackbar.js","App.js","store/customizationReducer.js","store/cartReducer.js","store/kanban.js","store/kanbanReducer.js","store/expenseReducer.js","store/reducer.js","store/index.js","index.js","assets/images/maintenance/img-error-bg.svg","assets/images/maintenance/img-error-bg-dark.svg","assets/images/maintenance/img-error-blue.svg","assets/images/maintenance/img-error-text.svg","assets/images/maintenance/img-error-purple.svg","views/pages/ErrorPage.js","config.js","store/constant.js","hooks/useAuth.js"],"names":["environment","apiUrl","signalRUrl","initialState","isLoggedIn","isInitialized","user","verifyToken","serviceToken","jwtDecode","exp","Date","now","setSession","localStorage","setItem","axios","defaults","headers","common","Authorization","removeItem","JWTContext","createContext","JWTProvider","children","useReducer","accountReducer","state","dispatch","useEffect","init","a","window","getItem","type","LOGIN","payload","LOGOUT","err","console","error","login","registryNo","password","loginAPI","Number","response","status","token","data","register","log","registerAPI","users","JSON","stringify","undefined","Provider","value","logout","resetPassword","email","updateProfile","LoaderWrapper","styled","position","top","left","zIndex","width","Loader","color","axiosServices","create","validateStatus","interceptors","use","Promise","reject","headerSX","mr","MainCard","forwardRef","ref","border","boxShadow","content","contentClass","contentSX","darkTitle","secondary","shadow","sx","title","others","theme","useTheme","borderColor","palette","mode","background","default","primary","action","variant","className","baseURL","model","post","changePasswordAPI","getProxyUserToken","activationUser","AnimateButton","offset1","offset2","direction","offset","scale","useCycle","x","cycleX","y","cycleY","div","animate","rotate","transition","repeat","Infinity","repeatType","duration","repeatDelay","onHoverEnd","onHoverStart","hover","tap","whileHover","whileTap","defaultProps","REGISTER","SET_MENU","MENU_OPEN","MENU_TYPE","PRESET_COLORS","THEME_LOCALE","THEME_RTL","SET_FONT_FAMILY","SET_BORDER_RADIUS","SET_OUTLINED_FILLED","SNACKBAR_OPEN","ADD_PRODUCTS","REMOVE_PRODUCT","UPDATE_QUANTITY","NEXT_STEP","BACK_STEP","SET_STEP","SET_BILLING_ADDRESS","SET_DISCOUNT","SET_SHIPPING_CHARGE","SET_PAYMENT_METHOD","SET_PAYMENT_CARD","RESET_CART","ADD_COLUMN","EDIT_COLUMN","DELETE_COLUMN","UPDATE_COLUMN_ORDER","ADD_ITEM","EDIT_ITEM","DELETE_ITEM","UPDATE_COLUMN_ITEM_ORDER","SELECT_ITEM","ADD_ITEM_COMMENT","UPDATE_STORY_ORDER","UPDATE_STORY_ITEM_ORDER","DELETE_STORY","ADD_STORY","EDIT_STORY","ADD_STORY_COMMENT","UPDATE_APPROVER_ORDER","DELETE_APPROVER","ADD_APPROVER","SET_APPROVERS","CHANGE_SELLER","CHANGE_AUFNR","CHANGE_HKONT","GETCOMPANY_INFO","UserLimitedDialog","open","onClose","masrafLimitPng","Dialog","maxWidth","fullWidth","DialogContent","alt","src","DialogActions","pr","justifyContent","Stack","Button","dark","onClick","message","anchorOrigin","vertical","horizontal","alertSeverity","close","actionButton","snackbarReducer","actionTypes","module","exports","Logo","logo","Boolean","location","hostname","match","linkSX","display","textDecoration","alignContent","alignItems","Breadcrumbs","card","divider","icon","icons","maxItems","navigation","rightAlign","separator","titleBottom","iconStyle","marginRight","spacing","marginTop","height","main","useState","setMain","item","getCollapse","menu","filter","collapse","document","pathname","config","basename","url","items","map","mainContent","itemContent","CollapseIcon","ItemIcon","SeparatorIcon","separatorIcon","stroke","size","breadcrumbContent","Typography","itemTitle","AccountTreeTwoToneIcon","component","Link","to","style","breadcrumbs","Card","marginBottom","gridSpacing","Box","p","pl","Grid","container","fontWeight","ml","Divider","mb","NavbarLogo","LogoSection","ButtonBase","disableRipple","defaultPath","Transitions","positionSX","transformOrigin","Grow","Collapse","Fade","timeout","appear","enter","exit","Slide","Zoom","Popper","shouldForwardProp","padding","breakpoints","down","OutlinedInput","marginLeft","paddingLeft","paddingRight","Avatar","typography","commonAvatar","mediumAvatar","light","LocalizationSection","customization","useSelector","useDispatch","matchesXs","useMediaQuery","setOpen","anchorRef","useRef","locale","language","setLanguage","handleListItemClick","event","lng","handleClose","current","contains","target","prevOpen","focus","borderRadius","textTransform","fontSize","placement","anchorEl","role","disablePortal","popperOptions","modifiers","name","options","TransitionProps","in","Paper","elevation","ClickAwayListener","onClickAway","List","minWidth","bgcolor","paper","ListItemButton","selected","ListItemText","MobileSection","matchMobile","mt","centerRipple","cursor","AppBar","Toolbar","pt","pb","ProfileSection","navigate","useNavigate","selectedIndex","setSelectedIndex","useAuth","userName","setUserName","control","setControl","handleLogout","index","route","decoded","fullName","systemUserRoles","split","includes","getControl","Chip","backgroundColor","lineHeight","margin","label","shadows","maxHeight","overflowX","ListItemIcon","NotificationSection","Header","handleLeftDrawerToggle","xs","md","flexGrow","overflow","sm","NavItem","level","matchesSM","Icon","itemIcon","isOpen","findIndex","id","itemTarget","listItemProps","props","external","href","toString","disabled","py","opened","my","caption","subMenuCaption","gutterBottom","chip","avatar","NavCollapse","setSelected","menus","visible","align","menuIcon","strokeWidth","unmountOnExit","disablePadding","opacity","NavGroup","subheader","menuCaption","IconListCheck","IconUserPlus","IconFileInfo","IconAlignCenter","IconBoxModel2","IconBoxModel","IconList","employeeExpenseGroup","IconFilePlus","IconFiles","managerAdvanceGroup","IconLoader","IconSubtask","employeeAdvanceGroup","accountantGroup","managerExpenseGroup","MenuList","navItems","setNavItems","sideMenuCalculator","menuItems","roles","calculateMenuItems","f","forEach","find","push","setNavs","Sidebar","drawerOpen","drawerToggle","matchUpMd","up","drawer","mx","px","body","flexShrink","drawerWidth","Drawer","anchor","text","borderRight","ModalProps","keepMounted","Footer","textAlign","MedTecLogo","FormLabel","Main","prop","borderBottomLeftRadius","borderBottomRightRadius","transitions","easing","sharp","leavingScreen","easeOut","enteringScreen","MainLayout","matchDownMd","leftDrawerOpened","CssBaseline","enableColorOnDark","IconChevronRight","Loadable","Component","fallback","AuthGuard","replace","propTypes","PropTypes","node","SamplePage","lazy","ExpenseForm","ExpenseFormEdit","ExpenseFormDetail","AccountedFormDetail","ExpenseList","AccountedList","ErrorPage","ChangePassword","UserManagement","MailLog","Dashboard","AccountantManagement","AdvanceList","MotivationBudgetList","AdvanceForm","AdvanceFormEdit","AdvanceFormDetail","AdvanceAccountedList","MainRoutes","path","element","GuestGuard","MinimalLayout","NavMotion","motion","initial","variants","out","ease","AuthLogin","AuthRegister","AuthForgotPassword","SuccessPage","LoginRoutes","AuthenticationRoutes","ThemeRoutes","useRoutes","themePalette","navType","black","colors","darkPaper","darkPrimaryLight","primaryLight","darkPrimaryMain","primaryMain","darkPrimaryDark","primaryDark","darkPrimary200","primary200","darkPrimary800","primary800","darkSecondaryLight","secondaryLight","darkSecondaryMain","secondaryMain","darkSecondaryDark","secondaryDark","darkSecondary200","secondary200","darkSecondary800","secondary800","errorLight","errorMain","errorDark","orange","orangeLight","orangeMain","orangeDark","warning","warningLight","warningMain","warningDark","success","successLight","success200","successMain","successDark","grey","grey50","grey100","darkTextSecondary","heading","darkTextPrimary","textDark","darkLevel1","darkLevel2","darkBackground","hint","backgroundDefault","themeTypography","fontFamily","h6","h5","h4","h3","h2","h1","subtitle1","subtitle2","body1","body2","letterSpacing","button","customInput","grey500","minHeight","smallAvatar","largeAvatar","createCustomShadow","transparent","alpha","z1","z8","z12","z16","z20","z24","customShadows","grey600","presetColor","theme1","theme2","theme3","theme4","theme5","theme6","themeOption","menuSelected","menuSelectedBack","darkTextTitle","grey700","grey900","grey200","themeOptions","rtlLayout","mixins","toolbar","themes","createTheme","components","bgColor","MuiButton","styleOverrides","root","MuiPaper","backgroundImage","rounded","MuiCardHeader","MuiCardContent","MuiCardActions","MuiAlert","outlined","MuiListItemButton","paddingTop","paddingBottom","MuiListItemIcon","MuiListItemText","MuiInputBase","input","MuiOutlinedInput","outlinedFilled","grey400","inputAdornedStart","notchedOutline","MuiSlider","grey300","mark","valueLabel","MuiAutocomplete","popper","MuiDivider","MuiSelect","select","MuiCheckbox","MuiAvatar","MuiChip","MuiTimelineContent","MuiTreeItem","MuiTimelineDot","MuiInternalDateTimePickerTabs","tabs","MuiTabs","flexContainer","borderBottom","MuiDialog","MuiTableCell","MuiTooltip","tooltip","MuiDialogTitle","componentStyleOverrides","Locales","messages","setMessages","loadLocaleData","then","d","defaultLocale","NavigationScroll","useLocation","scrollTo","behavior","SlideLeft","SlideUp","SlideRight","SlideDown","Snackbar","snackbarInitial","snackbar","reason","autoHideDuration","e","v","TransitionComponent","IconButton","whiteSpace","Alert","severity","App","StyledEngineProvider","injectFirst","ThemeProvider","i18n","customizationReducer","chance","Chance","checkout","step","products","subtotal","total","discount","shipping","billing","payment","method","cartReducer","result","latestProducts","newProduct","inCartProduct","oldSubTotal","amount","difference","newShipping","product","itemId","timestamp","quantity","offerPrice","length","newProducts","address","code","integer","min","max","charge","profileIds","profiles","time","commentIds","comments","comment","profileId","itemIds","item1","item2","item3","item4","item5","item6","item7","item8","item9","item10","assign","description","dueDate","sub","days","image","priority","set","hours","minutes","add","columnIds","columns","columnsOrder","userStoryIds","userStory1","userStory2","userStory3","userStory4","userStoryOrder","userStory","acceptance","columnId","sentence","words","selectedItem","approvers","approversOrder","kanbanReducer","newColumn","currentColumn","newUserStory","currentStory","newItems","column","splice","storyId","story","approver","m","sellerInfo","aufnrInfo","hkontInfo","expenseReducer","companyInfo","reducer","combineReducers","cart","persistReducer","key","storage","keyPrefix","kanban","expense","store","createStore","persister","persistStore","ReactDOM","render","loading","persistor","getElementById","navigator","serviceWorker","ready","registration","unregister","catch","CardMediaWrapper","ErrorWrapper","ErrorCard","CardMediaBlock","animation","CardMediaBlue","CardMediaPurple","CardContent","CardMedia","imageDarkBackground","imageBackground","imageText","imageBlue","imagePurple","jwt","secret","firebase","apiKey","authDomain","projectId","storageBucket","messagingSenderId","appId","measurementId","auth0","client_id","domain","context","useContext","Error"],"mappings":"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","file":"static/js/main.9bdfc06b.chunk.js","sourcesContent":["\r\nexport const environment = {\r\n\r\n\r\n //Debug\r\n // apiUrl: 'http://localhost:32203/api',\r\n // signalRUrl: 'http://localhost:32203',\r\n\r\n //DEV\r\n // apiUrl: 'http://10.68.216.54:4106/api',\r\n // signalRUrl: 'http://10.68.216.54:4106',\r\n\r\n //PREPROD\r\n // apiUrl: 'http://10.68.216.54:4103/api',\r\n // signalRUrl: 'http://10.68.216.54:4103',\r\n \r\n //PROD\r\n apiUrl: 'https://webapimyexpenses.msctr.com/api',\r\n signalRUrl: 'https://webapimyexpenses.msctr.com'\r\n\r\n\r\n};","import PropTypes from 'prop-types';\r\nimport { createContext, useEffect, useReducer } from 'react';\r\n\r\n// third-party\r\n\r\nimport jwtDecode from 'jwt-decode';\r\n\r\n// reducer - state management\r\nimport { LOGIN, LOGOUT } from 'store/actions';\r\nimport accountReducer from 'store/accountReducer';\r\n\r\n// project imports\r\nimport Loader from 'ui-component/Loader';\r\nimport axios from 'utils/axios';\r\nimport { loginAPI, registerAPI } from \"../apis/api\"\r\n\r\n\r\n// constant\r\nconst initialState = {\r\n isLoggedIn: false,\r\n isInitialized: false,\r\n user: null\r\n};\r\n\r\nconst verifyToken = (serviceToken) => {\r\n if (!serviceToken) {\r\n return false;\r\n }\r\n const decoded = jwtDecode(serviceToken);\r\n /**\r\n * Property 'exp' does not exist on type '(token: string, options?: JwtDecodeOptions | undefined) => T'.\r\n */\r\n return decoded.exp > Date.now() / 1000;\r\n};\r\n\r\nconst setSession = (serviceToken) => {\r\n if (serviceToken) {\r\n localStorage.setItem('serviceToken', serviceToken);\r\n axios.defaults.headers.common.Authorization = `Bearer ${serviceToken}`;\r\n } else {\r\n localStorage.removeItem('serviceToken');\r\n delete axios.defaults.headers.common.Authorization;\r\n }\r\n};\r\n\r\n// ==============================|| JWT CONTEXT & PROVIDER ||============================== //\r\nconst JWTContext = createContext(null);\r\n\r\nexport const JWTProvider = ({ children }) => {\r\n const [state, dispatch] = useReducer(accountReducer, initialState);\r\n\r\n useEffect(() => {\r\n const init = async () => {\r\n try {\r\n const serviceToken = window.localStorage.getItem('serviceToken');\r\n if (serviceToken && verifyToken(serviceToken)) {\r\n setSession(serviceToken);\r\n dispatch({\r\n type: LOGIN,\r\n payload: {\r\n isLoggedIn: true,\r\n serviceToken,\r\n }\r\n });\r\n } else {\r\n dispatch({\r\n type: LOGOUT\r\n });\r\n }\r\n } catch (err) {\r\n console.error(err);\r\n dispatch({\r\n type: LOGOUT\r\n });\r\n }\r\n };\r\n\r\n init();\r\n }, []);\r\n\r\n const login = async (registryNo, password) => {\r\n const response = await loginAPI({ registryNo: Number(registryNo), password: password });\r\n if (response.status === 400) {\r\n return response;\r\n }\r\n const token = response.data.data.token;\r\n setSession(token);\r\n dispatch({\r\n type: LOGIN,\r\n payload: {\r\n isLoggedIn: true,\r\n token\r\n }\r\n });\r\n };\r\n\r\n const register = async (registryNo, password) => {\r\n // todo: this flow need to be recode as it not verified\r\n console.log(registryNo)\r\n\r\n const response = await registerAPI({ registryNo: Number(registryNo), password: password });\r\n let users = response.data;\r\n window.localStorage.setItem('users', JSON.stringify(users));\r\n return response;\r\n };\r\n\r\n const logout = () => {\r\n setSession(null);\r\n dispatch({ type: LOGOUT });\r\n };\r\n\r\n const resetPassword = (email) => console.log(email);\r\n\r\n const updateProfile = () => { };\r\n\r\n if (state.isInitialized !== undefined && !state.isInitialized) {\r\n return ;\r\n }\r\n\r\n return (\r\n {children}\r\n );\r\n};\r\n\r\nJWTProvider.propTypes = {\r\n children: PropTypes.node.isRequired\r\n};\r\n\r\nexport default JWTContext;\r\n","// material-ui\r\nimport LinearProgress from '@mui/material/LinearProgress';\r\nimport { styled } from '@mui/material/styles';\r\n\r\n// styles\r\nconst LoaderWrapper = styled('div')({\r\n position: 'fixed',\r\n top: 0,\r\n left: 0,\r\n zIndex: 1301,\r\n width: '100%'\r\n});\r\n\r\n// ==============================|| LOADER ||============================== //\r\nconst Loader = () => (\r\n \r\n \r\n \r\n);\r\n\r\nexport default Loader;\r\n","/**\r\n * axios setup to use mock service\r\n */\r\n\r\nimport axios from 'axios';\r\n\r\nconst axiosServices = axios.create({\r\n validateStatus: (status) => {\r\n return true; // I'm always returning true, you may want to do it depending on the status received\r\n },\r\n});\r\n\r\n// interceptor for http\r\naxiosServices.interceptors.response.use(\r\n (response) => response,\r\n (error) =>{\r\n console.log(error.response)\r\n Promise.reject((error.response && error.response.data) || 'Wrong Services')}\r\n);\r\n\r\nexport default axiosServices;\r\n","import PropTypes from 'prop-types';\r\nimport { forwardRef } from 'react';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Card, CardContent, CardHeader, Divider, Typography } from '@mui/material';\r\n\r\n// constant\r\nconst headerSX = {\r\n '& .MuiCardHeader-action': { mr: 0 }\r\n};\r\n\r\n// ==============================|| CUSTOM MAIN CARD ||============================== //\r\n\r\nconst MainCard = forwardRef(\r\n (\r\n {\r\n border = true,\r\n boxShadow,\r\n children,\r\n content = true,\r\n contentClass = '',\r\n contentSX = {},\r\n darkTitle,\r\n secondary,\r\n shadow,\r\n sx = {},\r\n title,\r\n ...others\r\n },\r\n ref\r\n ) => {\r\n const theme = useTheme();\r\n\r\n return (\r\n \r\n {/* card header and action */}\r\n {!darkTitle && title && }\r\n {darkTitle && title && (\r\n {title}} action={secondary} />\r\n )}\r\n\r\n {/* content & header divider */}\r\n {title && }\r\n\r\n {/* card content */}\r\n {content && (\r\n \r\n {children}\r\n \r\n )}\r\n {!content && children}\r\n \r\n );\r\n }\r\n);\r\n\r\nMainCard.propTypes = {\r\n border: PropTypes.bool,\r\n boxShadow: PropTypes.bool,\r\n children: PropTypes.node,\r\n content: PropTypes.bool,\r\n contentClass: PropTypes.string,\r\n contentSX: PropTypes.object,\r\n darkTitle: PropTypes.bool,\r\n secondary: PropTypes.oneOfType([PropTypes.node, PropTypes.string, PropTypes.object]),\r\n shadow: PropTypes.string,\r\n sx: PropTypes.object,\r\n title: PropTypes.oneOfType([PropTypes.node, PropTypes.string, PropTypes.object])\r\n};\r\n\r\nexport default MainCard;\r\n","import axios from \"../utils/axios\";\r\nimport { environment } from \"environments/environment\";\r\n\r\nconst baseURL = environment.apiUrl;\r\n\r\nexport const loginAPI = async (model) => {\r\n const response = await axios.post(`${baseURL}/auth/login`, model);\r\n return response;\r\n};\r\n\r\nexport const registerAPI = async (model) => {\r\n const response = await axios.post(`${baseURL}/auth/register`, model);\r\n return response;\r\n};\r\n\r\n\r\nexport const changePasswordAPI = async (model) => {\r\n const response = await axios.post(`${baseURL}/auth/change-password`, model);\r\n return response;\r\n};\r\n\r\nexport const getProxyUserToken = async (model) => {\r\n const response = await axios.post(`${baseURL}/auth/getProxyUserToken`, model);\r\n return response;\r\n};\r\n\r\nexport const activationUser= async (model) => {\r\n const response = await axios.post(`${baseURL}/auth/activation-user`, model);\r\n return response;\r\n};\r\n\r\n\r\n","import PropTypes from 'prop-types';\r\nimport { forwardRef } from 'react';\r\n// third-party\r\nimport { motion, useCycle } from 'framer-motion';\r\n\r\n// ==============================|| ANIMATION BUTTON ||============================== //\r\n\r\nconst AnimateButton = forwardRef(({ children, type, direction, offset, scale }, ref) => {\r\n let offset1;\r\n let offset2;\r\n switch (direction) {\r\n case 'up':\r\n case 'left':\r\n offset1 = offset;\r\n offset2 = 0;\r\n break;\r\n case 'right':\r\n case 'down':\r\n default:\r\n offset1 = 0;\r\n offset2 = offset;\r\n break;\r\n }\r\n\r\n const [x, cycleX] = useCycle(offset1, offset2);\r\n const [y, cycleY] = useCycle(offset1, offset2);\r\n\r\n switch (type) {\r\n case 'rotate':\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n case 'slide':\r\n if (direction === 'up' || direction === 'down') {\r\n return (\r\n cycleY()}\r\n onHoverStart={() => cycleY()}\r\n >\r\n {children}\r\n \r\n );\r\n }\r\n return (\r\n cycleX()} onHoverStart={() => cycleX()}>\r\n {children}\r\n \r\n );\r\n\r\n case 'scale':\r\n default:\r\n if (typeof scale === 'number') {\r\n scale = {\r\n hover: scale,\r\n tap: scale\r\n };\r\n }\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n }\r\n});\r\n\r\nAnimateButton.propTypes = {\r\n children: PropTypes.node,\r\n offset: PropTypes.number,\r\n type: PropTypes.oneOf(['slide', 'scale', 'rotate']),\r\n direction: PropTypes.oneOf(['up', 'down', 'left', 'right']),\r\n scale: PropTypes.oneOfType([PropTypes.number, PropTypes.object])\r\n};\r\n\r\nAnimateButton.defaultProps = {\r\n type: 'scale',\r\n offset: 10,\r\n direction: 'right',\r\n scale: {\r\n hover: 1,\r\n tap: 0.9\r\n }\r\n};\r\n\r\nexport default AnimateButton;\r\n","// action - account reducer\r\nexport const LOGIN = 'LOGIN';\r\nexport const LOGOUT = 'LOGOUT';\r\nexport const REGISTER = 'REGISTER';\r\nexport const FIREBASE_STATE_CHANGED = 'FIREBASE_STATE_CHANGED';\r\n\r\n// action - customization reducer\r\nexport const SET_MENU = '@customization/SET_MENU';\r\nexport const MENU_TOGGLE = '@customization/MENU_TOGGLE';\r\nexport const MENU_OPEN = '@customization/MENU_OPEN';\r\nexport const MENU_TYPE = '@customization/MENU_TYPE';\r\nexport const PRESET_COLORS = '@customization/PRESET_COLORS';\r\nexport const THEME_LOCALE = '@customization/THEME_LOCALE';\r\nexport const THEME_RTL = '@customization/THEME_RTL';\r\nexport const SET_FONT_FAMILY = '@customization/SET_FONT_FAMILY';\r\nexport const SET_BORDER_RADIUS = '@customization/SET_BORDER_RADIUS';\r\nexport const SET_OUTLINED_FILLED = '@customization/SET_OUTLINED_FILLED';\r\n\r\n// action - snackbar\r\nexport const SNACKBAR_OPEN = '@snackbar/SNACKBAR_OPEN';\r\n\r\n// action - cart\r\nexport const ADD_PRODUCTS = '@cart/ADD_PRODUCTS';\r\nexport const REMOVE_PRODUCT = '@cart/REMOVE_PRODUCT';\r\nexport const UPDATE_QUANTITY = '@cart/UPDATE_QUANTITY';\r\nexport const NEXT_STEP = '@cart/NEXT_STEP';\r\nexport const BACK_STEP = '@cart/BACK_STEP';\r\nexport const SET_STEP = '@cart/SET_STEP';\r\nexport const SET_BILLING_ADDRESS = '@cart/SET_BILLING_ADDRESS';\r\nexport const SET_DISCOUNT = '@cart/SET_DISCOUNT';\r\nexport const SET_SHIPPING_CHARGE = '@cart/SET_SHIPPING_CHARGE';\r\nexport const SET_PAYMENT_METHOD = '@cart/SET_PAYMENT_METHOD';\r\nexport const SET_PAYMENT_CARD = '@cart/SET_PAYMENT_CARD';\r\nexport const RESET_CART = '@cart/RESET_CART';\r\n\r\n// action - kanban\r\nexport const ADD_COLUMN = '@kanban/ADD_COLUMN';\r\nexport const EDIT_COLUMN = '@kanban/EDIT_COLUMN';\r\nexport const DELETE_COLUMN = '@kanban/DELETE_COLUMN';\r\nexport const UPDATE_COLUMN_ORDER = '@kanban/UPDATE_COLUMN_ORDER';\r\n\r\nexport const ADD_ITEM = '@kanban/ADD_ITEM';\r\nexport const EDIT_ITEM = '@kanban/EDIT_ITEM';\r\nexport const DELETE_ITEM = '@kanban/DELETE_ITEM';\r\nexport const UPDATE_COLUMN_ITEM_ORDER = '@kanban/UPDATE_COLUMN_ITEM_ORDER';\r\nexport const SELECT_ITEM = '@kanban/SELECT_ITEM';\r\nexport const ADD_ITEM_COMMENT = '@kanban/ADD_ITEM_COMMENT';\r\n\r\nexport const UPDATE_STORY_ORDER = '@kanban/UPDATE_STORY_ORDER';\r\nexport const UPDATE_STORY_ITEM_ORDER = '@kanban/UPDATE_STORY_ITEM_ORDER';\r\nexport const DELETE_STORY = '@kanban/DELETE_STORY';\r\nexport const ADD_STORY = '@kanban/ADD_STORY';\r\nexport const EDIT_STORY = '@kanban/EDIT_STORY';\r\nexport const ADD_STORY_COMMENT = '@kanban/ADD_STORY_COMMENT';\r\n\r\nexport const UPDATE_APPROVER_ORDER = '@kanban/UPDATE_APPROVER_ORDER';\r\nexport const DELETE_APPROVER = '@kanban/DELETE_APPROVER';\r\nexport const ADD_APPROVER = '@kanban/ADD_APPROVER';\r\nexport const SET_APPROVERS = '@kanban/SET_APPROVERS';\r\n\r\nexport const CHANGE_SELLER = '@expense/CHANGE_SELLER';\r\nexport const CHANGE_AUFNR = '@expense/CHANGE_AUFNR';\r\nexport const CHANGE_HKONT = '@expense/CHANGE_HKONT';\r\nexport const GETCOMPANY_INFO = '@expense/GETCOMPANY_INFO';\r\n\r\n","// action - state management\r\nimport { LOGIN, LOGOUT, REGISTER } from './actions';\r\n\r\n// ==============================|| ACCOUNT REDUCER ||============================== //\r\n\r\nconst accountReducer = (state, action) => {\r\n switch (action.type) {\r\n case REGISTER: {\r\n const { user } = action.payload;\r\n return {\r\n ...state,\r\n user\r\n };\r\n }\r\n case LOGIN: {\r\n const { user } = action.payload;\r\n return {\r\n ...state,\r\n isLoggedIn: true,\r\n isInitialized: true,\r\n user\r\n };\r\n }\r\n case LOGOUT: {\r\n return {\r\n ...state,\r\n isInitialized: true,\r\n isLoggedIn: false,\r\n user: null\r\n };\r\n }\r\n default: {\r\n return { ...state };\r\n }\r\n }\r\n};\r\n\r\nexport default accountReducer;\r\n","export default __webpack_public_path__ + \"static/media/LimitTablosu2024.9b739afb.jpg\";","import { Dialog, DialogContent, Stack, Button, DialogActions } from \"@mui/material\";\r\nimport * as React from \"react\";\r\nimport { useTheme } from \"@emotion/react\";\r\nimport masrafLimitPng from \"../../assets/images/LimitTablosu2024.jpg\";\r\nexport default function UserLimitedDialog({ open, onClose }) {\r\n let theme = useTheme();\r\n return (\r\n <>\r\n {masrafLimitPng && (\r\n \r\n \r\n \"masrafLimitPng\"\r\n \r\n \r\n \r\n \r\n Kapat\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n","// action - state management\r\nimport * as actionTypes from './actions';\r\n\r\nconst initialState = {\r\n action: false,\r\n open: false,\r\n message: 'Note archived',\r\n anchorOrigin: {\r\n vertical: 'bottom',\r\n horizontal: 'right'\r\n },\r\n variant: 'default',\r\n alertSeverity: 'success',\r\n transition: 'Fade',\r\n close: true,\r\n actionButton: false,\r\n};\r\n\r\n// ==============================|| SNACKBAR REDUCER ||============================== //\r\n\r\nconst snackbarReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.SNACKBAR_OPEN:\r\n return {\r\n ...state,\r\n action: !state.action,\r\n open: action.open ? action.open : initialState.open,\r\n message: action.message ? action.message : initialState.message,\r\n anchorOrigin: action.anchorOrigin ? action.anchorOrigin : initialState.anchorOrigin,\r\n variant: action.variant ? action.variant : initialState.variant,\r\n alertSeverity: action.alertSeverity ? action.alertSeverity : initialState.alertSeverity,\r\n transition: action.transition ? action.transition : initialState.transition,\r\n close: action.close === false ? action.close : initialState.close,\r\n actionButton: action.actionButton ? action.actionButton : initialState.actionButton\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport default snackbarReducer;\r\n","export default __webpack_public_path__ + \"static/media/MEDTEC_LOGO.2f42e832.png\";","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#e3f2fd\",\"primary200\":\"#90caf9\",\"primaryMain\":\"#2196f3\",\"primaryDark\":\"#1e88e5\",\"primary800\":\"#1565c0\",\"secondaryLight\":\"#ede7f6\",\"secondary200\":\"#b39ddb\",\"secondaryMain\":\"#673ab7\",\"secondaryDark\":\"#5e35b1\",\"secondary800\":\"#4527a0\",\"successLight\":\"#b9f6ca\",\"success200\":\"#69f0ae\",\"successMain\":\"#00e676\",\"successDark\":\"#00c853\",\"errorLight\":\"#ef9a9a\",\"errorMain\":\"#f44336\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fff8e1\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#9e9e9e\",\"grey600\":\"#757575\",\"grey700\":\"#616161\",\"grey900\":\"#212121\",\"darkPaper\":\"#111936\",\"darkBackground\":\"#1a223f\",\"darkLevel1\":\"#29314f\",\"darkLevel2\":\"#212946\",\"darkTextTitle\":\"#d7dcec\",\"darkTextPrimary\":\"#bdc8f0\",\"darkTextSecondary\":\"#8492c4\",\"darkPrimaryLight\":\"#e3f2fd\",\"darkPrimaryMain\":\"#2196f3\",\"darkPrimaryDark\":\"#1e88e5\",\"darkPrimary200\":\"#90caf9\",\"darkPrimary800\":\"#1565c0\",\"darkSecondaryLight\":\"#d1c4e9\",\"darkSecondaryMain\":\"#7c4dff\",\"darkSecondaryDark\":\"#651fff\",\"darkSecondary200\":\"#b39ddb\",\"darkSecondary800\":\"#6200ea\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#eceff1\",\"primary200\":\"#b0bec5\",\"primaryMain\":\"#607d8b\",\"primaryDark\":\"#546e7a\",\"primary800\":\"#455a64\",\"secondaryLight\":\"#e0f2f1\",\"secondary200\":\"#80cbc4\",\"secondaryMain\":\"#009688\",\"secondaryDark\":\"#00897b\",\"secondary800\":\"#00695c\",\"successLight\":\"#edf7ed\",\"success200\":\"#b6e0b3\",\"successMain\":\"#6cc067\",\"successDark\":\"#64ba5f\",\"errorLight\":\"#e48784\",\"errorMain\":\"#d9534f\",\"errorDark\":\"#d54c48\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fdf5ea\",\"warningMain\":\"#f0ad4e\",\"warningDark\":\"#ec9c3d\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#9e9e9e\",\"grey600\":\"#757575\",\"grey700\":\"#616161\",\"grey900\":\"#212121\",\"darkPaper\":\"#060d12\",\"darkBackground\":\"#0e1b23\",\"darkLevel1\":\"#0b161d\",\"darkLevel2\":\"#14252f\",\"darkTextTitle\":\"#e4e8f7\",\"darkTextPrimary\":\"#d5d9e9\",\"darkTextSecondary\":\"#d8ddf0\",\"darkPrimaryLight\":\"#eceff1\",\"darkPrimaryMain\":\"#78919c\",\"darkPrimaryDark\":\"#587583\",\"darkPrimary200\":\"#b0bec5\",\"darkPrimary800\":\"#44606e\",\"darkSecondaryLight\":\"#e0f2f1\",\"darkSecondaryMain\":\"#009688\",\"darkSecondaryDark\":\"#00897b\",\"darkSecondary200\":\"#80cbc4\",\"darkSecondary800\":\"#00695c\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#e4e7ec\",\"primary200\":\"#909ab0\",\"primaryMain\":\"#203461\",\"primaryDark\":\"#1c2f59\",\"primary800\":\"#132145\",\"secondaryLight\":\"#fde8ef\",\"secondary200\":\"#f6a0bd\",\"secondaryMain\":\"#ec407a\",\"secondaryDark\":\"#ea3a72\",\"secondary800\":\"#e42a5d\",\"successLight\":\"#e3f8e8\",\"success200\":\"#8be09f\",\"successMain\":\"#17c13e\",\"successDark\":\"#14bb38\",\"errorLight\":\"#e48784\",\"errorMain\":\"#d9534f\",\"errorDark\":\"#d54c48\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fdf5ea\",\"warningMain\":\"#f0ad4e\",\"warningDark\":\"#ec9c3d\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#9e9e9e\",\"grey600\":\"#757575\",\"grey700\":\"#616161\",\"grey900\":\"#212121\",\"darkPaper\":\"#030614\",\"darkBackground\":\"#0a0f23\",\"darkLevel1\":\"#070e13\",\"darkLevel2\":\"#12172f\",\"darkTextTitle\":\"#e4e8f7\",\"darkTextPrimary\":\"#d5d9e9\",\"darkTextSecondary\":\"#d8ddf0\",\"darkPrimaryLight\":\"#ecedf1\",\"darkPrimaryMain\":\"#606d88\",\"darkPrimaryDark\":\"#586580\",\"darkPrimary200\":\"#b0b6c4\",\"darkPrimary800\":\"#44506b\",\"darkSecondaryLight\":\"#fde8ef\",\"darkSecondaryMain\":\"#ec407a\",\"darkSecondaryDark\":\"#ea3a72\",\"darkSecondary200\":\"#f6a0bd\",\"darkSecondary800\":\"#e42a5d\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#e3ebeb\",\"primary200\":\"#8bacad\",\"primaryMain\":\"#eed484\",\"primaryDark\":\"#eed484\",\"primary800\":\"#0c3e3f\",\"secondaryLight\":\"#f8f0e5\",\"secondary200\":\"#e3bf91\",\"secondaryMain\":\"#eed484\",\"secondaryDark\":\"#eed484\",\"secondary800\":\"#b36115\",\"successLight\":\"#b9f6ca\",\"success200\":\"#69f0ae\",\"successMain\":\"#00e676\",\"successDark\":\"#00c853\",\"errorLight\":\"#ef9a9a\",\"errorMain\":\"#f44336\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fff8e1\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#9e9e9e\",\"grey600\":\"#757575\",\"grey700\":\"#616161\",\"grey900\":\"#212121\",\"darkPaper\":\"#010f17\",\"darkBackground\":\"#010606\",\"darkLevel1\":\"#02131d\",\"darkLevel2\":\"#010f17\",\"darkTextTitle\":\"#fff\",\"darkTextPrimary\":\"#fff\",\"darkTextSecondary\":\"#8492c4\",\"darkPrimaryLight\":\"#eceff1\",\"darkPrimaryMain\":\"#1f7778\",\"darkPrimaryDark\":\"#1b6f70\",\"darkPrimary200\":\"#8fbbbc\",\"darkPrimary800\":\"#125a5b\",\"darkSecondaryLight\":\"#f8f0e5\",\"darkSecondaryMain\":\"#eed484\",\"darkSecondaryDark\":\"#eed484\",\"darkSecondary200\":\"#e3bf91\",\"darkSecondary800\":\"#b36115\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#e3e8e8\",\"primary200\":\"#8b9fa1\",\"primaryMain\":\"#173e43\",\"primaryDark\":\"#14383d\",\"primary800\":\"#0d282c\",\"secondaryLight\":\"#e8f6f5\",\"secondary200\":\"#9fd8d6\",\"secondaryMain\":\"#3fb0ac\",\"secondaryDark\":\"#39a9a5\",\"secondary800\":\"#299792\",\"successLight\":\"#b9f6ca\",\"success200\":\"#69f0ae\",\"successMain\":\"#00e676\",\"successDark\":\"#00c853\",\"errorLight\":\"#ef9a9a\",\"errorMain\":\"#f44336\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fff8e1\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#9e9e9e\",\"grey600\":\"#757575\",\"grey700\":\"#616161\",\"grey900\":\"#212121\",\"darkPaper\":\"#051114\",\"darkBackground\":\"#030708\",\"darkLevel1\":\"#02131d\",\"darkLevel2\":\"#051114\",\"darkTextTitle\":\"#fff\",\"darkTextPrimary\":\"#fff\",\"darkTextSecondary\":\"#ccd2eb\",\"darkPrimaryLight\":\"#e3e8e8\",\"darkPrimaryMain\":\"#3a5b5f\",\"darkPrimaryDark\":\"#14383d\",\"darkPrimary200\":\"#8b9fa1\",\"darkPrimary800\":\"#0d282c\",\"darkSecondaryLight\":\"#e8f6f5\",\"darkSecondaryMain\":\"#3fb0ac\",\"darkSecondaryDark\":\"#39a9a5\",\"darkSecondary200\":\"#9fd8d6\",\"darkSecondary800\":\"#299792\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#e2e5e8\",\"primary200\":\"#8591a1\",\"primaryMain\":\"#0a2342\",\"primaryDark\":\"#091f3c\",\"primary800\":\"#05152b\",\"secondaryLight\":\"#e6f4f1\",\"secondary200\":\"#96d2c6\",\"secondaryMain\":\"#2ca58d\",\"secondaryDark\":\"#279d85\",\"secondary800\":\"#1b8a70\",\"successLight\":\"#b9f6ca\",\"success200\":\"#69f0ae\",\"successMain\":\"#00e676\",\"successDark\":\"#00c853\",\"errorLight\":\"#ef9a9a\",\"errorMain\":\"#f44336\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fff8e1\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#9e9e9e\",\"grey600\":\"#757575\",\"grey700\":\"#616161\",\"grey900\":\"#212121\",\"darkPaper\":\"#030c1d\",\"darkBackground\":\"#051327\",\"darkLevel1\":\"#071a33\",\"darkLevel2\":\"#091f3c\",\"darkTextTitle\":\"#d7dcec\",\"darkTextPrimary\":\"#bdc8f0\",\"darkTextSecondary\":\"#8492c4\",\"darkPrimaryLight\":\"#e2e5e8\",\"darkPrimaryMain\":\"#54657b\",\"darkPrimaryDark\":\"#2f445e\",\"darkPrimary200\":\"#8591a1\",\"darkPrimary800\":\"#05152b\",\"darkSecondaryLight\":\"#e6f4f1\",\"darkSecondaryMain\":\"#2ca58d\",\"darkSecondaryDark\":\"#279d85\",\"darkSecondary200\":\"#96d2c6\",\"darkSecondary800\":\"#1b8a70\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"paper\":\"#fff\",\"primaryLight\":\"#e8eaf6\",\"primary200\":\"#9fa8da\",\"primaryMain\":\"#3f51b5\",\"primaryDark\":\"#3949ab\",\"primary800\":\"#283593\",\"secondaryLight\":\"#e8eaf6\",\"secondary200\":\"#9fa8da\",\"secondaryMain\":\"#3f51b5\",\"secondaryDark\":\"#3949ab\",\"secondary800\":\"#283593\",\"successLight\":\"#b9f6ca\",\"success200\":\"#69f0ae\",\"successMain\":\"#00e676\",\"successDark\":\"#00c853\",\"errorLight\":\"#ef9a9a\",\"errorMain\":\"#f44336\",\"errorDark\":\"#c62828\",\"orangeLight\":\"#fbe9e7\",\"orangeMain\":\"#ffab91\",\"orangeDark\":\"#d84315\",\"warningLight\":\"#fff8e1\",\"warningMain\":\"#ffe57f\",\"warningDark\":\"#ffc107\",\"grey50\":\"#fafafa\",\"grey100\":\"#f5f5f5\",\"grey200\":\"#eee\",\"grey300\":\"#e0e0e0\",\"grey500\":\"#9e9e9e\",\"grey600\":\"#757575\",\"grey700\":\"#616161\",\"grey900\":\"#212121\",\"darkPaper\":\"#111936\",\"darkBackground\":\"#1a223f\",\"darkLevel1\":\"#29314f\",\"darkLevel2\":\"#212946\",\"darkTextTitle\":\"#d7dcec\",\"darkTextPrimary\":\"#bdc8f0\",\"darkTextSecondary\":\"#8492c4\",\"darkPrimaryLight\":\"#eeedfd\",\"darkPrimaryMain\":\"#7267ef\",\"darkPrimaryDark\":\"#6a5fed\",\"darkPrimary200\":\"#b9b3f7\",\"darkPrimary800\":\"#554ae8\",\"darkSecondaryLight\":\"#eeedfd\",\"darkSecondaryMain\":\"#7267ef\",\"darkSecondaryDark\":\"#6a5fed\",\"darkSecondary200\":\"#b9b3f7\",\"darkSecondary800\":\"#554ae8\"};","export default __webpack_public_path__ + \"static/media/logo.39b0ffe0.png\";","// material-ui\r\nimport logo from '../assets/images/logo.png';\r\n/**\r\n * if you want to use image instead of uncomment following.\r\n *\r\n * import logoDark from 'assets/images/logo-dark.svg';\r\n * import logo from 'assets/images/logo.svg';\r\n *\r\n */\r\n\r\n// ==============================|| LOGO SVG ||============================== //\r\n\r\nconst Logo = () => {\r\n\r\n return ;\r\n /**\r\n * if you want to use image instead of svg uncomment following, and comment out element.\r\n *\r\n * \"Berry\"\r\n *\r\n */\r\n\r\n \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n //);\r\n};\r\n\r\nexport default Logo;\r\n","// This optional code is used to register a service worker.\r\n// register() is not called by default.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on subsequent visits to a page, after all the\r\n// existing tabs open on the page have been closed, since previously cached\r\n// resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model and instructions on how to\r\n// opt-in, read https://bit.ly/CRA-PWA\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.0/8 are considered localhost for IPv4.\r\n window.location.hostname.match(/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)\r\n);\r\n\r\nfunction registerValidSW(swUrl, config) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then((registration) => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n if (installingWorker == null) {\r\n return;\r\n }\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the updated precached content has been fetched,\r\n // but the previous service worker will still serve the older\r\n // content until all client tabs are closed.\r\n console.log(\r\n 'New content is available and will be used when all tabs for this page are closed. See https://bit.ly/CRA-PWA.'\r\n );\r\n\r\n // Execute callback\r\n if (config && config.onUpdate) {\r\n config.onUpdate(registration);\r\n }\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log('Content is cached for offline use.');\r\n\r\n // Execute callback\r\n if (config && config.onSuccess) {\r\n config.onSuccess(registration);\r\n }\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch((error) => {\r\n console.error('Error during service worker registration:', error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker(swUrl, config) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl, {\r\n headers: { 'Service-Worker': 'script' }\r\n })\r\n .then((response) => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n const contentType = response.headers.get('content-type');\r\n if (response.status === 404 || (contentType != null && contentType.indexOf('javascript') === -1)) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then((registration) => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl, config);\r\n }\r\n })\r\n .catch(() => {\r\n console.log('No internet connection found. App is running in offline mode.');\r\n });\r\n}\r\n\r\nexport function register(config) {\r\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Let's check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl, config);\r\n\r\n // Add some additional logging to localhost, pointing developers to the\r\n // service worker/PWA documentation.\r\n navigator.serviceWorker.ready.then(() => {\r\n console.log(\r\n 'This web app is being served cache-first by a service worker. To learn more, visit https://bit.ly/CRA-PWA'\r\n );\r\n });\r\n } else {\r\n // Is not localhost. Just register service worker\r\n registerValidSW(swUrl, config);\r\n }\r\n });\r\n }\r\n}\r\n\r\nexport function unregister() {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready\r\n .then((registration) => {\r\n registration.unregister();\r\n })\r\n .catch((error) => {\r\n console.error(error.message);\r\n });\r\n }\r\n}\r\n","import PropTypes from 'prop-types';\r\nimport { useEffect, useState } from 'react';\r\nimport { Link } from 'react-router-dom';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Box, Card, Divider, Grid, Typography } from '@mui/material';\r\nimport MuiBreadcrumbs from '@mui/material/Breadcrumbs';\r\n\r\n// project imports\r\nimport config from 'config';\r\nimport { gridSpacing } from 'store/constant';\r\n\r\n// assets\r\nimport { IconTallymark1 } from '@tabler/icons';\r\nimport AccountTreeTwoToneIcon from '@mui/icons-material/AccountTreeTwoTone';\r\nimport HomeIcon from '@mui/icons-material/Home';\r\nimport HomeTwoToneIcon from '@mui/icons-material/HomeTwoTone';\r\n\r\nconst linkSX = {\r\n display: 'flex',\r\n color: 'grey.900',\r\n textDecoration: 'none',\r\n alignContent: 'center',\r\n alignItems: 'center'\r\n};\r\n\r\n// ==============================|| BREADCRUMBS ||============================== //\r\n\r\nconst Breadcrumbs = ({ card, divider, icon, icons, maxItems, navigation, rightAlign, separator, title, titleBottom, ...others }) => {\r\n const theme = useTheme();\r\n\r\n const iconStyle = {\r\n marginRight: theme.spacing(0.75),\r\n marginTop: `-${theme.spacing(0.25)}`,\r\n width: '1rem',\r\n height: '1rem',\r\n color: theme.palette.secondary.main\r\n };\r\n\r\n const [main, setMain] = useState();\r\n const [item, setItem] = useState();\r\n\r\n // set active item state\r\n const getCollapse = (menu) => {\r\n if (menu.children) {\r\n menu.children.filter((collapse) => {\r\n if (collapse.type && collapse.type === 'collapse') {\r\n getCollapse(collapse);\r\n } else if (collapse.type && collapse.type === 'item') {\r\n if (document.location.pathname === config.basename + collapse.url) {\r\n setMain(menu);\r\n setItem(collapse);\r\n }\r\n }\r\n return false;\r\n });\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n navigation?.items?.map((menu) => {\r\n if (menu.type && menu.type === 'group') {\r\n getCollapse(menu);\r\n }\r\n return false;\r\n });\r\n });\r\n\r\n // item separator\r\n const SeparatorIcon = separator;\r\n const separatorIcon = separator ? : ;\r\n\r\n let mainContent;\r\n let itemContent;\r\n let breadcrumbContent = ;\r\n let itemTitle = '';\r\n let CollapseIcon;\r\n let ItemIcon;\r\n\r\n // collapse item\r\n if (main && main.type === 'collapse') {\r\n CollapseIcon = main.icon ? main.icon : AccountTreeTwoToneIcon;\r\n mainContent = (\r\n \r\n {icons && }\r\n {main.title}\r\n \r\n );\r\n }\r\n\r\n // items\r\n if (item && item.type === 'item') {\r\n itemTitle = item.title;\r\n\r\n ItemIcon = item.icon ? item.icon : AccountTreeTwoToneIcon;\r\n itemContent = (\r\n \r\n {icons && }\r\n {itemTitle}\r\n \r\n );\r\n\r\n // main\r\n if (item.breadcrumbs !== false) {\r\n breadcrumbContent = (\r\n \r\n \r\n \r\n {title && !titleBottom && (\r\n \r\n \r\n {item.title}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n {icons && }\r\n {icon && }\r\n {!icon && 'Dashboard'}\r\n \r\n {mainContent}\r\n {itemContent}\r\n \r\n \r\n {title && titleBottom && (\r\n \r\n \r\n {item.title}\r\n \r\n \r\n )}\r\n \r\n \r\n {card === false && divider !== false && }\r\n \r\n );\r\n }\r\n }\r\n\r\n return breadcrumbContent;\r\n};\r\n\r\nBreadcrumbs.propTypes = {\r\n card: PropTypes.bool,\r\n divider: PropTypes.bool,\r\n icon: PropTypes.bool,\r\n icons: PropTypes.bool,\r\n maxItems: PropTypes.number,\r\n navigation: PropTypes.object,\r\n rightAlign: PropTypes.bool,\r\n separator: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\r\n title: PropTypes.bool,\r\n titleBottom: PropTypes.bool\r\n};\r\n\r\nexport default Breadcrumbs;\r\n","export default __webpack_public_path__ + \"static/media/nav-logo.09313972.png\";","// material-ui\r\nimport logo from '../assets/images/nav-logo.png';\r\n\r\nconst NavbarLogo = () => {\r\n return ;\r\n};\r\n\r\nexport default NavbarLogo;\r\n","import { Link } from 'react-router-dom';\r\n\r\n// material-ui\r\nimport { ButtonBase } from '@mui/material';\r\n\r\n// project imports\r\nimport config from 'config';\r\nimport Logo from 'ui-component/Logo';\r\nimport NavbarLogo from 'ui-component/NavbarLogo';\r\n\r\n// ==============================|| MAIN LOGO ||============================== //\r\n\r\nconst LogoSection = () => (\r\n \r\n \r\n {/* // */}\r\n \r\n);\r\n\r\nexport default LogoSection;\r\n","import PropTypes from 'prop-types';\r\nimport { forwardRef } from 'react';\r\n\r\n// material-ui\r\nimport { Collapse, Fade, Box, Grow, Slide, Zoom } from '@mui/material';\r\n\r\n// ==============================|| TRANSITIONS ||============================== //\r\n\r\nconst Transitions = forwardRef(({ children, position, type, direction, ...others }, ref) => {\r\n let positionSX = {\r\n transformOrigin: '0 0 0'\r\n };\r\n\r\n switch (position) {\r\n case 'top-right':\r\n positionSX = {\r\n transformOrigin: 'top right'\r\n };\r\n break;\r\n case 'top':\r\n positionSX = {\r\n transformOrigin: 'top'\r\n };\r\n break;\r\n case 'bottom-left':\r\n positionSX = {\r\n transformOrigin: 'bottom left'\r\n };\r\n break;\r\n case 'bottom-right':\r\n positionSX = {\r\n transformOrigin: 'bottom right'\r\n };\r\n break;\r\n case 'bottom':\r\n positionSX = {\r\n transformOrigin: 'bottom'\r\n };\r\n break;\r\n case 'top-left':\r\n default:\r\n positionSX = {\r\n transformOrigin: '0 0 0'\r\n };\r\n break;\r\n }\r\n\r\n return (\r\n \r\n {type === 'grow' && (\r\n \r\n {children}\r\n \r\n )}\r\n {type === 'collapse' && (\r\n \r\n {children}\r\n \r\n )}\r\n {type === 'fade' && (\r\n \r\n {children}\r\n \r\n )}\r\n {type === 'slide' && (\r\n \r\n {children}\r\n \r\n )}\r\n {type === 'zoom' && (\r\n \r\n {children}\r\n \r\n )}\r\n \r\n );\r\n});\r\n\r\nTransitions.propTypes = {\r\n children: PropTypes.node,\r\n type: PropTypes.oneOf(['grow', 'fade', 'collapse', 'slide', 'zoom']),\r\n position: PropTypes.oneOf(['top-left', 'top-right', 'top', 'bottom-left', 'bottom-right', 'bottom']),\r\n direction: PropTypes.oneOf(['up', 'down', 'left', 'right'])\r\n};\r\n\r\nTransitions.defaultProps = {\r\n type: 'grow',\r\n position: 'top-left',\r\n direction: 'up'\r\n};\r\n\r\nexport default Transitions;\r\n","import PropTypes from 'prop-types';\r\nimport { useState } from 'react';\r\n\r\n// material-ui\r\nimport { useTheme, styled } from '@mui/material/styles';\r\nimport { Avatar, Box, ButtonBase, Card, Grid, InputAdornment, OutlinedInput, Popper } from '@mui/material';\r\n\r\n// third-party\r\nimport PopupState, { bindPopper, bindToggle } from 'material-ui-popup-state';\r\n\r\n// project imports\r\nimport Transitions from 'ui-component/extended/Transitions';\r\n\r\n// assets\r\nimport { IconAdjustmentsHorizontal, IconSearch, IconX } from '@tabler/icons';\r\nimport { shouldForwardProp } from '@mui/system';\r\n\r\n// styles\r\nconst PopperStyle = styled(Popper, { shouldForwardProp })(({ theme }) => ({\r\n zIndex: 1100,\r\n width: '99%',\r\n top: '-55px !important',\r\n padding: '0 12px',\r\n [theme.breakpoints.down('sm')]: {\r\n padding: '0 10px'\r\n }\r\n}));\r\n\r\nconst OutlineInputStyle = styled(OutlinedInput, { shouldForwardProp })(({ theme }) => ({\r\n width: 434,\r\n marginLeft: 16,\r\n paddingLeft: 16,\r\n paddingRight: 16,\r\n '& input': {\r\n background: 'transparent !important',\r\n paddingLeft: '4px !important'\r\n },\r\n [theme.breakpoints.down('lg')]: {\r\n width: 250\r\n },\r\n [theme.breakpoints.down('md')]: {\r\n width: '100%',\r\n marginLeft: 4,\r\n background: theme.palette.mode === 'dark' ? theme.palette.dark[800] : '#fff'\r\n }\r\n}));\r\n\r\nconst HeaderAvatarStyle = styled(Avatar, { shouldForwardProp })(({ theme }) => ({\r\n ...theme.typography.commonAvatar,\r\n ...theme.typography.mediumAvatar,\r\n background: theme.palette.mode === 'dark' ? theme.palette.dark.main : theme.palette.secondary.light,\r\n color: theme.palette.mode === 'dark' ? theme.palette.secondary.main : theme.palette.secondary.dark,\r\n '&:hover': {\r\n background: theme.palette.mode === 'dark' ? theme.palette.secondary.main : theme.palette.secondary.dark,\r\n color: theme.palette.mode === 'dark' ? theme.palette.secondary.light : theme.palette.secondary.light\r\n }\r\n}));\r\n\r\n// ==============================|| SEARCH INPUT - MOBILE||============================== //\r\n\r\nconst MobileSearch = ({ value, setValue, popupState }) => {\r\n const theme = useTheme();\r\n\r\n return (\r\n setValue(e.target.value)}\r\n placeholder=\"Search\"\r\n startAdornment={\r\n \r\n \r\n \r\n }\r\n endAdornment={\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n aria-describedby=\"search-helper-text\"\r\n inputProps={{ 'aria-label': 'weight' }}\r\n />\r\n );\r\n};\r\n\r\nMobileSearch.propTypes = {\r\n value: PropTypes.string,\r\n setValue: PropTypes.func,\r\n popupState: PopupState\r\n};\r\n\r\n// ==============================|| SEARCH INPUT ||============================== //\r\n\r\nconst SearchSection = () => {\r\n const theme = useTheme();\r\n const [value, setValue] = useState('');\r\n\r\n return (\r\n <>\r\n \r\n \r\n {(popupState) => (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {({ TransitionProps }) => (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n setValue(e.target.value)}\r\n placeholder=\"Search\"\r\n startAdornment={\r\n \r\n \r\n \r\n }\r\n endAdornment={\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n aria-describedby=\"search-helper-text\"\r\n inputProps={{ 'aria-label': 'weight' }}\r\n />\r\n \r\n \r\n );\r\n};\r\n\r\nexport default SearchSection;\r\n","import { useState, useRef, useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport {\r\n Avatar,\r\n Box,\r\n ButtonBase,\r\n ClickAwayListener,\r\n Grid,\r\n List,\r\n ListItemButton,\r\n ListItemText,\r\n Paper,\r\n Popper,\r\n Typography,\r\n useMediaQuery\r\n} from '@mui/material';\r\n\r\n// project imports\r\nimport Transitions from 'ui-component/extended/Transitions';\r\nimport * as actionTypes from 'store/actions';\r\n\r\n// assets\r\nimport TranslateTwoToneIcon from '@mui/icons-material/TranslateTwoTone';\r\n\r\n// ==============================|| LOCALIZATION ||============================== //\r\n\r\nconst LocalizationSection = () => {\r\n const customization = useSelector((state) => state.customization);\r\n const dispatch = useDispatch();\r\n\r\n const theme = useTheme();\r\n const matchesXs = useMediaQuery(theme.breakpoints.down('md'));\r\n\r\n const [open, setOpen] = useState(false);\r\n /**\r\n * anchorRef is used on different componets and specifying one type leads to other components throwing an error\r\n * */\r\n const anchorRef = useRef(null);\r\n const [language, setLanguage] = useState(customization.locale);\r\n\r\n const handleListItemClick = (event, lng) => {\r\n setLanguage(lng);\r\n dispatch({ type: actionTypes.THEME_LOCALE, locale: lng });\r\n setOpen(false);\r\n };\r\n\r\n const handleToggle = () => {\r\n setOpen((prevOpen) => !prevOpen);\r\n };\r\n\r\n const handleClose = (event) => {\r\n if (anchorRef.current && anchorRef.current.contains(event.target)) {\r\n return;\r\n }\r\n setOpen(false);\r\n };\r\n\r\n const prevOpen = useRef(open);\r\n useEffect(() => {\r\n if (prevOpen.current === true && open === false) {\r\n anchorRef.current.focus();\r\n }\r\n prevOpen.current = open;\r\n }, [open]);\r\n\r\n useEffect(() => {\r\n setLanguage(customization.locale);\r\n }, [customization]);\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n {language !== 'en' && (\r\n \r\n {language}\r\n \r\n )}\r\n {language === 'en' && }\r\n \r\n \r\n \r\n \r\n {({ TransitionProps }) => (\r\n \r\n \r\n \r\n \r\n handleListItemClick(event, 'en')}>\r\n \r\n English\r\n \r\n (UK)\r\n \r\n \r\n }\r\n />\r\n \r\n handleListItemClick(event, 'fr')}>\r\n \r\n français\r\n \r\n (French)\r\n \r\n \r\n }\r\n />\r\n \r\n handleListItemClick(event, 'ro')}>\r\n \r\n Română\r\n \r\n (Romanian)\r\n \r\n \r\n }\r\n />\r\n \r\n handleListItemClick(event, 'zh')}>\r\n \r\n 中国人\r\n \r\n (Chinese)\r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default LocalizationSection;\r\n","import { useState, useRef, useEffect } from 'react';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { AppBar, Box, ButtonBase, ClickAwayListener, Grid, Paper, Popper, Toolbar, useMediaQuery } from '@mui/material';\r\n\r\n// project imports\r\nimport LocalizationSection from '../LocalizationSection';\r\nimport Transitions from 'ui-component/extended/Transitions';\r\n\r\n// assets\r\nimport { IconDotsVertical } from '@tabler/icons';\r\n\r\n// ==============================|| MOBILE HEADER ||============================== //\r\n\r\nconst MobileSection = () => {\r\n const theme = useTheme();\r\n const matchMobile = useMediaQuery(theme.breakpoints.down('md'));\r\n\r\n const [open, setOpen] = useState(false);\r\n /**\r\n * anchorRef is used on different componets and specifying one type leads to other components throwing an error\r\n * */\r\n const anchorRef = useRef(null);\r\n\r\n const handleToggle = () => {\r\n setOpen((prevOpen) => !prevOpen);\r\n };\r\n\r\n const handleClose = (event) => {\r\n if (anchorRef.current && anchorRef.current.contains(event.target)) {\r\n return;\r\n }\r\n\r\n setOpen(false);\r\n };\r\n\r\n const prevOpen = useRef(open);\r\n useEffect(() => {\r\n if (prevOpen.current === true && open === false) {\r\n anchorRef.current.focus();\r\n }\r\n\r\n prevOpen.current = open;\r\n }, [open]);\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n {({ TransitionProps }) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default MobileSection;\r\n","import { useState, useRef, useEffect } from \"react\";\r\nimport { useNavigate } from \"react-router-dom\";\r\nimport { useSelector } from \"react-redux\";\r\nimport jwtDecode from 'jwt-decode';\r\nimport { useTheme } from \"@mui/material/styles\";\r\nimport {\r\n Avatar,\r\n Box,\r\n Chip,\r\n ClickAwayListener,\r\n Divider,\r\n List,\r\n ListItemButton,\r\n ListItemIcon,\r\n ListItemText,\r\n Paper,\r\n Popper,\r\n Stack,\r\n Typography,\r\n} from \"@mui/material\";\r\nimport PerfectScrollbar from \"react-perfect-scrollbar\";\r\nimport MainCard from \"ui-component/cards/MainCard\";\r\nimport Transitions from \"ui-component/extended/Transitions\";\r\nimport useAuth from \"hooks/useAuth\";\r\nimport SettingsIcon from '@mui/icons-material/Settings';\r\nimport LockIcon from '@mui/icons-material/Lock';\r\nimport LogoutIcon from '@mui/icons-material/Logout';\r\n\r\nconst ProfileSection = () => {\r\n const theme = useTheme();\r\n const customization = useSelector((state) => state.customization);\r\n const navigate = useNavigate();\r\n\r\n\r\n const [notification, setNotification] = useState(false);\r\n const [selectedIndex, setSelectedIndex] = useState(-1);\r\n const { logout, user } = useAuth();\r\n const [open, setOpen] = useState(false);\r\n const [userName, setUserName] = useState();\r\n const [control, setControl] = useState(false);\r\n\r\n const serviceToken = localStorage.getItem(\"serviceToken\");\r\n\r\n const getControl = () => {\r\n if (serviceToken) {\r\n let decoded = jwtDecode(serviceToken);\r\n setUserName(decoded?.fullName);\r\n let roles = decoded.systemUserRoles?.split(',');\r\n if (roles.includes('SystemAdministrator')) {\r\n setControl(true);\r\n }\r\n }\r\n }\r\n\r\n const anchorRef = useRef(null);\r\n const handleLogout = async () => {\r\n try {\r\n await logout();\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n };\r\n\r\n const handleClose = (event) => {\r\n if (anchorRef.current && anchorRef.current.contains(event.target)) {\r\n return;\r\n }\r\n setOpen(false);\r\n };\r\n\r\n const darkThemeHandlerCheck = (value) => {\r\n setNotification(value);\r\n\r\n const theme = value ? \"dark\" : \"light\";\r\n localStorage.setItem(\"theme\", theme)\r\n }\r\n\r\n const handleListItemClick = (event, index, route = \"\") => {\r\n setSelectedIndex(index);\r\n handleClose(event);\r\n\r\n if (route && route !== \"\") {\r\n navigate(route);\r\n }\r\n };\r\n const handleToggle = () => {\r\n setOpen((prevOpen) => !prevOpen);\r\n };\r\n\r\n const prevOpen = useRef(open);\r\n useEffect(() => {\r\n\r\n if (prevOpen.current === true && open === false) {\r\n anchorRef.current.focus();\r\n }\r\n\r\n getControl();\r\n prevOpen.current = open;\r\n }, [open]);\r\n\r\n return (\r\n <>\r\n \r\n }\r\n label={\r\n \r\n }\r\n variant=\"outlined\"\r\n ref={anchorRef}\r\n aria-controls={open ? \"menu-list-grow\" : undefined}\r\n aria-haspopup=\"true\"\r\n onClick={handleToggle}\r\n color=\"primary\"\r\n />\r\n \r\n {({ TransitionProps }) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Merhaba,\r\n \r\n \r\n \r\n {userName}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n handleListItemClick(\r\n event,\r\n 0,\r\n \"/change-password\"\r\n )\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n Parola Değiştir\r\n \r\n }\r\n />\r\n \r\n {control &&\r\n \r\n handleListItemClick(\r\n event,\r\n 0,\r\n \"/user-management\"\r\n )\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n Kullanıcı İşlemleri\r\n \r\n }\r\n />\r\n \r\n }\r\n {control &&\r\n \r\n handleListItemClick(\r\n event,\r\n 0,\r\n \"/accountant-management\"\r\n )\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n Muhasebeci-Şirket İşlemleri\r\n \r\n }\r\n />\r\n \r\n }\r\n {control &&\r\n \r\n handleListItemClick(\r\n event,\r\n 0,\r\n \"/mail-log\"\r\n )\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n Mail Log Kayıtları\r\n \r\n }\r\n />\r\n \r\n }\r\n \r\n \r\n \r\n \r\n Çıkış\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default ProfileSection;\r\n","import { useState, useRef, useEffect } from 'react';\r\nimport { Link } from 'react-router-dom';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport {\r\n Avatar,\r\n Box,\r\n Button,\r\n ButtonBase,\r\n CardActions,\r\n Chip,\r\n ClickAwayListener,\r\n Divider,\r\n Grid,\r\n Paper,\r\n Popper,\r\n Stack,\r\n TextField,\r\n Typography,\r\n useMediaQuery\r\n} from '@mui/material';\r\n\r\n// third-party\r\nimport PerfectScrollbar from 'react-perfect-scrollbar';\r\n\r\n// project imports\r\nimport MainCard from 'ui-component/cards/MainCard';\r\nimport Transitions from 'ui-component/extended/Transitions';\r\nimport NotificationList from './NotificationList';\r\n\r\n// assets\r\nimport { IconBell } from '@tabler/icons';\r\n\r\n// notification status options\r\nconst status = [\r\n {\r\n value: 'all',\r\n label: 'All Notification'\r\n },\r\n {\r\n value: 'new',\r\n label: 'New'\r\n },\r\n {\r\n value: 'unread',\r\n label: 'Unread'\r\n },\r\n {\r\n value: 'other',\r\n label: 'Other'\r\n }\r\n];\r\n\r\n// ==============================|| NOTIFICATION ||============================== //\r\n\r\nconst NotificationSection = () => {\r\n const theme = useTheme();\r\n const matchesXs = useMediaQuery(theme.breakpoints.down('md'));\r\n\r\n const [open, setOpen] = useState(false);\r\n const [value, setValue] = useState('');\r\n /**\r\n * anchorRef is used on different componets and specifying one type leads to other components throwing an error\r\n * */\r\n const anchorRef = useRef(null);\r\n\r\n const handleToggle = () => {\r\n setOpen((prevOpen) => !prevOpen);\r\n };\r\n\r\n const handleClose = (event) => {\r\n if (anchorRef.current && anchorRef.current.contains(event.target)) {\r\n return;\r\n }\r\n setOpen(false);\r\n };\r\n\r\n const prevOpen = useRef(open);\r\n useEffect(() => {\r\n if (prevOpen.current === true && open === false) {\r\n anchorRef.current.focus();\r\n }\r\n prevOpen.current = open;\r\n }, [open]);\r\n\r\n const handleChange = (event) => {\r\n if (event?.target.value) setValue(event?.target.value);\r\n };\r\n\r\n return (\r\n <>\r\n {/* \r\n \r\n \r\n \r\n \r\n \r\n */}\r\n {/* \r\n {({ TransitionProps }) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n All Notification\r\n \r\n \r\n \r\n \r\n \r\n Mark as all read\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {status.map((option) => (\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n */}\r\n \r\n );\r\n};\r\n\r\nexport default NotificationSection;\r\n","export default __webpack_public_path__ + \"static/media/user-round.27fe79b1.svg\";","// material-ui\r\nimport { useTheme, styled } from '@mui/material/styles';\r\nimport {\r\n Avatar,\r\n Button,\r\n Card,\r\n CardContent,\r\n Chip,\r\n Divider,\r\n Grid,\r\n List,\r\n ListItem,\r\n ListItemAvatar,\r\n ListItemSecondaryAction,\r\n ListItemText,\r\n Stack,\r\n Typography\r\n} from '@mui/material';\r\n\r\n// assets\r\nimport { IconBrandTelegram, IconBuildingStore, IconMailbox, IconPhoto } from '@tabler/icons';\r\nimport User1 from 'assets/images/users/user-round.svg';\r\n\r\n// styles\r\nconst ListItemWrapper = styled('div')(({ theme }) => ({\r\n cursor: 'pointer',\r\n padding: 16,\r\n '&:hover': {\r\n background: theme.palette.mode === 'dark' ? theme.palette.dark.main : theme.palette.primary.light\r\n },\r\n '& .MuiListItem-root': {\r\n padding: 0\r\n }\r\n}));\r\n\r\n// ==============================|| NOTIFICATION LIST ITEM ||============================== //\r\n\r\nconst NotificationList = () => {\r\n const theme = useTheme();\r\n\r\n const chipSX = {\r\n height: 24,\r\n padding: '0 6px'\r\n };\r\n const chipErrorSX = {\r\n ...chipSX,\r\n color: theme.palette.orange.dark,\r\n backgroundColor: theme.palette.mode === 'dark' ? theme.palette.dark.main : theme.palette.orange.light,\r\n marginRight: '5px'\r\n };\r\n\r\n const chipWarningSX = {\r\n ...chipSX,\r\n color: theme.palette.warning.dark,\r\n backgroundColor: theme.palette.mode === 'dark' ? theme.palette.dark.main : theme.palette.warning.light\r\n };\r\n\r\n const chipSuccessSX = {\r\n ...chipSX,\r\n color: theme.palette.success.dark,\r\n backgroundColor: theme.palette.mode === 'dark' ? theme.palette.dark.main : theme.palette.success.light,\r\n height: 28\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 2 min ago\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n It is a long established fact that a reader will be distracted\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Store Verification Done} />\r\n \r\n \r\n \r\n \r\n 2 min ago\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n We have successfully received your request.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Check Your Mail.} />\r\n \r\n \r\n \r\n \r\n 2 min ago\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n All done! Now check your inbox as you're in for a sweet treat!\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n John Doe} />\r\n \r\n \r\n \r\n \r\n 2 min ago\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Uploaded two file on  \r\n \r\n 21 Jan 2020\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n demo.jpg\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n John Doe} />\r\n \r\n \r\n \r\n \r\n 2 min ago\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n It is a long established fact that a reader will be distracted\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default NotificationList;\r\n","import PropTypes from 'prop-types';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Avatar, Box, ButtonBase } from '@mui/material';\r\n\r\n// project imports\r\nimport LogoSection from '../LogoSection';\r\nimport SearchSection from './SearchSection';\r\nimport LocalizationSection from './LocalizationSection';\r\nimport MobileSection from './MobileSection';\r\nimport ProfileSection from './ProfileSection';\r\nimport NotificationSection from './NotificationSection';\r\n\r\n// assets\r\nimport { IconMenu2 } from '@tabler/icons';\r\n\r\n// ==============================|| MAIN NAVBAR / HEADER ||============================== //\r\n\r\nconst Header = ({ handleLeftDrawerToggle }) => {\r\n const theme = useTheme();\r\n\r\n return (\r\n <>\r\n {/* logo & toggler button */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {/* header search */}\r\n \r\n \r\n \r\n\r\n {/* live customization & localization */}\r\n \r\n\r\n {/* notification & profile */}\r\n \r\n \r\n\r\n {/* mobile header */}\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nHeader.propTypes = {\r\n handleLeftDrawerToggle: PropTypes.func\r\n};\r\n\r\nexport default Header;\r\n","import PropTypes from 'prop-types';\r\nimport { forwardRef, useEffect } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Avatar, Chip, ListItemButton, ListItemIcon, ListItemText, Typography, useMediaQuery } from '@mui/material';\r\n\r\n// project imports\r\nimport { MENU_OPEN, SET_MENU } from 'store/actions';\r\n\r\n// assets\r\nimport FiberManualRecordIcon from '@mui/icons-material/FiberManualRecord';\r\n\r\n// ==============================|| SIDEBAR MENU LIST ITEMS ||============================== //\r\n\r\nconst NavItem = ({ item, level }) => {\r\n const theme = useTheme();\r\n const dispatch = useDispatch();\r\n const customization = useSelector((state) => state.customization);\r\n const matchesSM = useMediaQuery(theme.breakpoints.down('lg'));\r\n\r\n const Icon = item.icon;\r\n const itemIcon = item?.icon ? (\r\n \r\n ) : (\r\n id === item?.id) > -1 ? 8 : 6,\r\n height: customization.isOpen.findIndex((id) => id === item?.id) > -1 ? 8 : 6\r\n }}\r\n fontSize={level > 0 ? 'inherit' : 'medium'}\r\n />\r\n );\r\n\r\n let itemTarget = '_self';\r\n if (item.target) {\r\n itemTarget = '_blank';\r\n }\r\n\r\n let listItemProps = { component: forwardRef((props, ref) => ) };\r\n if (item?.external) {\r\n listItemProps = { component: 'a', href: item.url, target: itemTarget };\r\n }\r\n\r\n const itemHandler = (id) => {\r\n dispatch({ type: MENU_OPEN, id });\r\n if (matchesSM) dispatch({ type: SET_MENU, opened: false });\r\n };\r\n\r\n // active menu item on page load\r\n useEffect(() => {\r\n const currentIndex = document.location.pathname\r\n .toString()\r\n .split('/')\r\n .findIndex((id) => id === item.id);\r\n if (currentIndex > -1) {\r\n dispatch({ type: MENU_OPEN, id: item.id });\r\n }\r\n // eslint-disable-next-line\r\n }, []);\r\n\r\n return (\r\n 1 ? 'transparent !important' : 'inherit',\r\n py: level > 1 ? 1 : 1.25,\r\n pl: `${level * 24}px`\r\n }}\r\n selected={customization.isOpen.findIndex((id) => id === item.id) > -1}\r\n onClick={() => itemHandler(item.id)}\r\n >\r\n {itemIcon}\r\n id === item.id) > -1 ? 'h5' : 'body1'} color=\"inherit\">\r\n {item.title}\r\n \r\n }\r\n secondary={\r\n item.caption && (\r\n \r\n {item.caption}\r\n \r\n )\r\n }\r\n />\r\n {item.chip && (\r\n {item.chip.avatar}}\r\n />\r\n )}\r\n \r\n );\r\n};\r\n\r\nNavItem.propTypes = {\r\n item: PropTypes.object,\r\n level: PropTypes.number\r\n};\r\n\r\nexport default NavItem;\r\n","import PropTypes from 'prop-types';\r\nimport { useState } from 'react';\r\nimport { useSelector } from 'react-redux';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Collapse, List, ListItemButton, ListItemIcon, ListItemText, Typography } from '@mui/material';\r\n\r\n// project imports\r\nimport NavItem from '../NavItem';\r\n\r\n// assets\r\nimport FiberManualRecordIcon from '@mui/icons-material/FiberManualRecord';\r\nimport { IconChevronDown, IconChevronUp } from '@tabler/icons';\r\n\r\n// ==============================|| SIDEBAR MENU LIST COLLAPSE ITEMS ||============================== //\r\n\r\nconst NavCollapse = ({ menu, level }) => {\r\n const theme = useTheme();\r\n const customization = useSelector((state) => state.customization);\r\n const [open, setOpen] = useState(false);\r\n const [selected, setSelected] = useState(null);\r\n\r\n const handleClick = () => {\r\n setOpen(!open);\r\n setSelected(!selected ? menu.id : null);\r\n };\r\n\r\n // menu collapse & item\r\n const menus = menu.children?.map((item) => {\r\n switch (item.type) {\r\n case 'collapse':\r\n return ;\r\n case 'item':\r\n if (item.visible === true) {\r\n return ;\r\n } else {\r\n return;\r\n }\r\n default:\r\n return (\r\n \r\n Menu Items Error\r\n \r\n );\r\n }\r\n });\r\n\r\n const Icon = menu.icon;\r\n const menuIcon = menu.icon ? (\r\n \r\n ) : (\r\n 0 ? 'inherit' : 'medium'}\r\n />\r\n );\r\n\r\n return (\r\n <>\r\n 1 ? 'transparent !important' : 'inherit',\r\n py: level > 1 ? 1 : 1.25,\r\n pl: `${level * 24}px`\r\n }}\r\n selected={selected === menu.id}\r\n onClick={handleClick}\r\n >\r\n {menuIcon}\r\n \r\n {menu.title}\r\n \r\n }\r\n secondary={\r\n menu.caption && (\r\n \r\n {menu.caption}\r\n \r\n )\r\n }\r\n />\r\n {open ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n {menus}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nNavCollapse.propTypes = {\r\n menu: PropTypes.object,\r\n level: PropTypes.number\r\n};\r\n\r\nexport default NavCollapse;\r\n","import PropTypes from 'prop-types';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Divider, List, Typography } from '@mui/material';\r\n\r\n// project imports\r\nimport NavItem from '../NavItem';\r\nimport NavCollapse from '../NavCollapse';\r\n\r\n// ==============================|| SIDEBAR MENU LIST GROUP ||============================== //\r\n\r\nconst NavGroup = ({ item }) => {\r\n const theme = useTheme();\r\n // menu list collapse & items\r\n const items = item.children?.map((menu) => {\r\n switch (menu.type) {\r\n case 'collapse':\r\n return ;\r\n case 'item':\r\n return ;\r\n default:\r\n return (\r\n \r\n Menu Items Error\r\n \r\n );\r\n }\r\n });\r\n\r\n return (\r\n <>\r\n \r\n {item.title}\r\n {item.caption && (\r\n \r\n {item.caption}\r\n \r\n )}\r\n \r\n )\r\n }\r\n >\r\n {items}\r\n \r\n\r\n {/* group divider */}\r\n \r\n \r\n );\r\n};\r\n\r\nNavGroup.propTypes = {\r\n item: PropTypes.object\r\n};\r\n\r\nexport default NavGroup;\r\n","// third-party\r\nimport { FormattedMessage } from 'react-intl';\r\n\r\n// assets\r\nimport { IconListCheck, IconUserPlus, IconFileInfo, IconAlignCenter, IconBoxModel2, IconBoxModel, IconList } from '@tabler/icons';\r\n\r\n// constant\r\nconst icons = {\r\n IconListCheck,\r\n IconUserPlus,\r\n IconFileInfo,\r\n IconAlignCenter,\r\n IconBoxModel2,\r\n IconBoxModel,\r\n IconList\r\n};\r\n\r\n// ==============================|| SAMPLE PAGE & DOCUMENTATION MENU ITEMS ||============================== //\r\n\r\nconst employeeExpenseGroup = {\r\n id: 'employee-expense-group',\r\n type: 'group',\r\n children: [\r\n {\r\n id: 'employee-expense',\r\n title: ,\r\n type: 'collapse',\r\n breadcrumbs: false,\r\n icon: icons.IconBoxModel,\r\n children: [\r\n {\r\n id: 'new-expense',\r\n title: ,\r\n type: 'item',\r\n url: '/expense-form',\r\n icon: icons.IconFilePlus,\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n {\r\n id: 'my-expenses',\r\n title: ,\r\n type: 'item',\r\n url: '/expense-list?type=my_expenses',\r\n icon: icons.IconFiles,\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n ]\r\n },\r\n ]\r\n};\r\n\r\nexport default employeeExpenseGroup;\r\n","// third-party\r\nimport { FormattedMessage } from 'react-intl';\r\n\r\n// assets\r\nimport { IconListCheck, IconUserPlus, IconFileInfo, IconAlignCenter, IconBoxModel2, IconBoxModel, IconList } from '@tabler/icons';\r\n\r\n// constant\r\nconst icons = {\r\n IconListCheck,\r\n IconUserPlus,\r\n IconFileInfo,\r\n IconAlignCenter,\r\n IconBoxModel2,\r\n IconBoxModel,\r\n IconList\r\n};\r\n\r\n// ==============================|| SAMPLE PAGE & DOCUMENTATION MENU ITEMS ||============================== //\r\n\r\nconst managerAdvanceGroup = {\r\n id: 'manager-advance-group',\r\n type: 'group',\r\n children: [\r\n {\r\n id: 'manager-advance',\r\n title: ,\r\n type: 'collapse',\r\n breadcrumbs: false,\r\n icon: icons.IconBoxModel2,\r\n children: [\r\n {\r\n id: 'new-advance',\r\n title: ,\r\n type: 'item',\r\n url: '/advance-form',\r\n icon: icons.IconFilePlus,\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n {\r\n id: 'my-advances',\r\n title: ,\r\n type: 'item',\r\n url: '/advance-list?type=my_advances',\r\n icon: icons.IconFiles,\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n {\r\n id: 'waiting-my-approve-advance',\r\n title: ,\r\n type: 'item',\r\n url: '/advance-list?type=waiting_my_approve',\r\n icon: icons.IconLoader,\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n {\r\n id: 'my-approved-advances',\r\n title: ,\r\n type: 'item',\r\n url: '/advance-list?type=my-approved',\r\n icon: icons.IconSubtask,\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n ]\r\n },\r\n ]\r\n};\r\n\r\nexport default managerAdvanceGroup;\r\n","// third-party\r\nimport { FormattedMessage } from 'react-intl';\r\n\r\n// assets\r\nimport { IconListCheck, IconUserPlus, IconFileInfo, IconAlignCenter, IconBoxModel2, IconBoxModel, IconList } from '@tabler/icons';\r\n\r\n// constant\r\nconst icons = {\r\n IconListCheck,\r\n IconUserPlus,\r\n IconFileInfo,\r\n IconAlignCenter,\r\n IconBoxModel2,\r\n IconBoxModel,\r\n IconList\r\n};\r\n\r\n// ==============================|| SAMPLE PAGE & DOCUMENTATION MENU ITEMS ||============================== //\r\n\r\nconst employeeAdvanceGroup = {\r\n id: 'employee-advance-group',\r\n type: 'group',\r\n children: [\r\n {\r\n id: 'employee-advance',\r\n title: ,\r\n type: 'collapse',\r\n breadcrumbs: false,\r\n icon: icons.IconBoxModel2,\r\n children: [\r\n {\r\n id: 'new-advance',\r\n title: ,\r\n type: 'item',\r\n url: '/advance-form',\r\n icon: icons.IconFilePlus,\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n {\r\n id: 'my-advances',\r\n title: ,\r\n type: 'item',\r\n url: '/advance-list?type=my_advances',\r\n icon: icons.IconFiles,\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n ]\r\n },\r\n ]\r\n};\r\n\r\nexport default employeeAdvanceGroup;\r\n","// third-party\r\nimport { FormattedMessage } from 'react-intl';\r\n\r\n// assets\r\nimport { IconListCheck, IconUserPlus, IconFileInfo, IconAlignCenter, IconBoxModel2, IconBoxModel, IconList } from '@tabler/icons';\r\n\r\n// constant\r\nconst icons = {\r\n IconListCheck,\r\n IconUserPlus,\r\n IconFileInfo,\r\n IconAlignCenter,\r\n IconBoxModel2,\r\n IconBoxModel,\r\n IconList\r\n};\r\n\r\n// ==============================|| SAMPLE PAGE & DOCUMENTATION MENU ITEMS ||============================== //\r\n\r\nconst accountantGroup = {\r\n id: 'accountant-group',\r\n type: 'group',\r\n children: [\r\n {\r\n id: 'accountant',\r\n title: ,\r\n type: 'collapse',\r\n breadcrumbs: false,\r\n icon: icons.IconAlignCenter,\r\n children: [\r\n {\r\n id: 'accountant',\r\n title: ,\r\n type: 'collapse',\r\n breadcrumbs: false,\r\n icon: icons.IconBoxModel,\r\n children: [\r\n {\r\n id: 'approved-list',\r\n title: ,\r\n type: 'item',\r\n url: '/expense-list?type=approved',\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n {\r\n id: 'my_new_approve_expenses_list',\r\n title: ,\r\n type: 'item',\r\n url: '/expense-list?type=my_new_approve_expenses',\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n {\r\n id: 'accountant-list',\r\n title: ,\r\n type: 'item',\r\n url: '/accounted-list',\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n ]\r\n },\r\n {\r\n id: 'advance',\r\n title: ,\r\n type: 'collapse',\r\n breadcrumbs: false,\r\n icon: icons.IconBoxModel2,\r\n children: [\r\n {\r\n id: 'approved-list-advance',\r\n title: ,\r\n type: 'item',\r\n url: '/advance-list?type=approved',\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n {\r\n id: 'my_new_approve_advances_list',\r\n title: ,\r\n type: 'item',\r\n url: '/advance-list?type=my_new_approve_advances',\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n {\r\n id: 'advance-accountant-list',\r\n title: ,\r\n type: 'item',\r\n url: '/advance-accounted-list',\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n {\r\n id: 'motivation-budget-list',\r\n title: ,\r\n type: 'item',\r\n url: '/motivation-budget-list',\r\n breadcrumbs: false,\r\n visible: true\r\n }\r\n ]\r\n },\r\n ]\r\n },\r\n ]\r\n};\r\n\r\nexport default accountantGroup;\r\n","// third-party\r\nimport { FormattedMessage } from 'react-intl';\r\n\r\n// assets\r\nimport { IconListCheck, IconUserPlus, IconFileInfo, IconAlignCenter, IconBoxModel2, IconBoxModel, IconList } from '@tabler/icons';\r\n\r\n// constant\r\nconst icons = {\r\n IconListCheck,\r\n IconUserPlus,\r\n IconFileInfo,\r\n IconAlignCenter,\r\n IconBoxModel2,\r\n IconBoxModel,\r\n IconList\r\n};\r\n\r\n// ==============================|| SAMPLE PAGE & DOCUMENTATION MENU ITEMS ||============================== //\r\n\r\nconst managerExpenseGroup = {\r\n id: 'manager-expense-group',\r\n type: 'group',\r\n children: [\r\n {\r\n id: 'manager-expense',\r\n title: ,\r\n type: 'collapse',\r\n breadcrumbs: false,\r\n icon: icons.IconBoxModel,\r\n children: [\r\n {\r\n id: 'new-expense',\r\n title: ,\r\n type: 'item',\r\n url: '/expense-form',\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n {\r\n id: 'my-expenses',\r\n title: ,\r\n type: 'item',\r\n url: '/expense-list?type=my_expenses',\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n {\r\n id: 'waiting-my-approve',\r\n title: ,\r\n type: 'item',\r\n url: '/expense-list?type=waiting_my_approve',\r\n icon: icons.IconLoader,\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n {\r\n id: 'my-approved',\r\n title: ,\r\n type: 'item',\r\n url: '/expense-list?type=my-approved',\r\n icon: icons.IconSubtask,\r\n breadcrumbs: false,\r\n visible: true\r\n },\r\n ]\r\n },\r\n ]\r\n};\r\n\r\nexport default managerExpenseGroup;\r\n","// material-ui\r\nimport { Typography } from '@mui/material';\r\n\r\n// project imports\r\nimport NavGroup from './NavGroup';\r\nimport jwtDecode from 'jwt-decode';\r\nimport employeeExpenseGroup from '../../../../menu-items/employeeExpenseGroup';\r\nimport managerAdvanceGroup from '../../../../menu-items/managerAdvanceGroup';\r\nimport employeeAdvanceGroup from '../../../../menu-items/employeeAdvanceGroup';\r\nimport accountantGroup from '../../../../menu-items/accountantGroup';\r\nimport managerExpenseGroup from '../../../../menu-items/managerExpenseGroup';\r\n\r\nimport { useState, useEffect } from 'react';\r\nimport { logout } from 'apis/FieldApi';\r\n// ==============================|| SIDEBAR MENU LIST ||============================== //\r\nconst MenuList = () => {\r\n const [navItems, setNavItems] = useState(<>);\r\n\r\n useEffect(() => {\r\n sideMenuCalculator();\r\n }, []);\r\n\r\n const setInıt = () => {\r\n // expenseItem.children[0].children.forEach(f => f.visible = true);\r\n }\r\n const sideMenuCalculator = () => {\r\n setInıt();\r\n let menuItems = {\r\n items: [accountantGroup, managerExpenseGroup, managerAdvanceGroup, employeeAdvanceGroup, employeeExpenseGroup]\r\n }\r\n let decoded = jwtDecode(localStorage.getItem(\"serviceToken\"));\r\n let roles = decoded.systemUserRoles?.split(',');\r\n let calculateMenuItems = [];\r\n if (roles.includes('Employee')) {\r\n let menus = menuItems.items.filter(\r\n f => f.id === 'employee-expense-group' ||\r\n f.id === 'employee-advance-group'\r\n );\r\n menus.forEach(menu => {\r\n let isExist = calculateMenuItems.find(f => f.id == menu.id);\r\n if (!isExist) {\r\n calculateMenuItems.push(menu);\r\n }\r\n });\r\n }\r\n\r\n if (roles.includes('Manager')) {\r\n let menus = menuItems.items.filter(\r\n f => f.id === 'manager-expense-group' ||\r\n f.id === 'manager-advance-group'\r\n );\r\n menus.forEach(menu => {\r\n let isExist = calculateMenuItems.find(f => f.id == menu.id);\r\n if (!isExist) {\r\n calculateMenuItems.push(menu);\r\n }\r\n });\r\n }\r\n if (roles.includes('Accountant')) {\r\n let menus = roles.includes('Manager') ? menuItems.items.filter(\r\n f => f.id === 'manager-expense-group' ||\r\n f.id === 'manager-advance-group' ||\r\n f.id === 'accountant-group'\r\n\r\n ) : menuItems.items.filter(\r\n f => \r\n f.id === 'employee-advance-group' ||\r\n f.id === 'employee-expense-group' ||\r\n f.id === 'accountant-group'\r\n\r\n );\r\n menus.forEach(menu => {\r\n let isExist = calculateMenuItems.find(f => f.id == menu.id);\r\n if (!isExist) {\r\n calculateMenuItems.push(menu);\r\n }\r\n });\r\n }\r\n\r\n \r\n menuItems.items = calculateMenuItems;\r\n setNavs(menuItems);\r\n }\r\n\r\n const setNavs = (menuItems) => {\r\n let items = menuItems.items.map((item) => {\r\n switch (item.type) {\r\n case 'group':\r\n return ;\r\n default:\r\n return (\r\n \r\n Menu Items Error\r\n \r\n );\r\n }\r\n });\r\n setNavItems(items);\r\n }\r\n\r\n const handleLogout = async () => {\r\n try {\r\n await logout();\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n };\r\n\r\n return <>{navItems};\r\n};\r\n\r\nexport default MenuList;\r\n","import axios from \"../utils/axios\"\r\nimport { environment } from \"environments/environment\";\r\n\r\nconst baseURL = environment.apiUrl;\r\n\r\nexport const login= async(model)=>{\r\n const response = await axios.post(`${baseURL}/auth/login`,model);\r\n return response;\r\n }\r\n \r\n export const register= async(model)=>{\r\n const response = await axios.post(`${baseURL}/auth/register`,model);\r\n return response;\r\n }\r\n \r\n export const logout = async() => {\r\n const response = await axios.post(`${baseURL}/auth/logout`);\r\n console.log(response);\r\n return response;\r\n }\r\n \r\n export const forgotPassword= async(model)=>{\r\n const response = await axios.post(`${baseURL}/auth/forgot-password`,model);\r\n return response;\r\n }\r\n \r\n export const saveBudgetType= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-budget-type`,model);\r\n return response;\r\n }\r\n \r\n export const updateBudgetType= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-budget-type`,model);\r\n return response;\r\n }\r\n \r\n export const getBudgetTypeList= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-budget-type-list`);\r\n return response;\r\n }\r\n \r\n export const getBudgetType= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-budget-type`,model);\r\n return response;\r\n }\r\n \r\n export const saveCompany= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-company`,model);\r\n return response;\r\n }\r\n \r\n export const updateCompany= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-company`,model);\r\n return response;\r\n }\r\n \r\n export const getCompanyList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-company-list`);\r\n return response;\r\n }\r\n \r\n export const getCompany= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-company`,model);\r\n return response;\r\n }\r\n \r\n export const saveCompanyLocation= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-companyLocation`,model);\r\n return response;\r\n }\r\n \r\n export const getCompanyLocationList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-companyLocation-list`);\r\n return response;\r\n }\r\n \r\n export const getCompanyLocation= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/get-companyLocation`,model);\r\n return response;\r\n }\r\n \r\n export const saveEducationStatus= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-education-status`,model);\r\n return response;\r\n }\r\n \r\n export const updateEducationStatus= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-education-status`,model);\r\n return response;\r\n }\r\n \r\n export const getEducationStatusList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-education-status-list`);\r\n return response;\r\n }\r\n \r\n export const getEducationStatus= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/get-education-status`,model);\r\n return response;\r\n }\r\n \r\n export const saveContractTypes= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-contract-types`,model);\r\n return response;\r\n }\r\n \r\n export const updateContractTypes= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-contract-types`,model);\r\n return response;\r\n }\r\n \r\n export const getContractTypesList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-contract-types-list`);\r\n return response;\r\n }\r\n \r\n export const getContractTypes= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-contract-types`,model);\r\n return response;\r\n }\r\n \r\n export const saveFoodTypes= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-food-types`,model);\r\n return response;\r\n }\r\n \r\n export const updateFoodTypes= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-food-types`,model);\r\n return response;\r\n }\r\n \r\n export const getFoodTypes= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/get-food-types`,model);\r\n return response;\r\n }\r\n \r\n export const getFoodTypesList= async()=>{\r\n const response = await axios.post(`${baseURL}/field/get-food-types-list`);\r\n return response;\r\n }\r\n \r\n export const saveDeparmant= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-departmant`,model);\r\n return response;\r\n }\r\n \r\n export const updateDeparmant= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-departmant`,model);\r\n return response;\r\n }\r\n \r\n export const updateDeparmantList= async()=>{\r\n const response = await axios.post(`${baseURL}/field/update-departmant-list`);\r\n return response;\r\n }\r\n \r\n export const getDeparmant= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-departmant`,model);\r\n return response;\r\n }\r\n\r\n export const getDeparmantList = async() => {\r\n const response = await axios.get(`${baseURL}/field/get-departmant-list`);\r\n return response;\r\n }\r\n \r\n export const saveFormType= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-form-type`,model);\r\n return response;\r\n }\r\n \r\n export const updateFormType= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-form-type`,model);\r\n return response;\r\n }\r\n \r\n export const getFormType= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-form-type`,model);\r\n return response;\r\n }\r\n \r\n export const getFormTypeList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-form-type-list`);\r\n return response;\r\n }\r\n \r\n export const saveFormStatus= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-form-status`,model);\r\n return response;\r\n }\r\n \r\n export const updateFormStatus= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-form-status`,model);\r\n return response;\r\n }\r\n \r\n export const getFormStatus= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-form-status`,model);\r\n return response;\r\n }\r\n \r\n export const getFormStatusList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-form-status-list`);\r\n return response;\r\n }\r\n \r\n export const saveExperience= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-experience`,model);\r\n return response;\r\n }\r\n \r\n export const updateExperience= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-experience`,model);\r\n return response;\r\n }\r\n \r\n export const getExperienceList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-experience-list`);\r\n return response;\r\n }\r\n \r\n export const getExperience= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-experience-list`,model);\r\n return response;\r\n }\r\n \r\n export const saveLocation= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-location`,model);\r\n return response;\r\n }\r\n \r\n export const updateLocation= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-location`,model);\r\n return response;\r\n }\r\n \r\n export const getLocationList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-location-list`);\r\n return response;\r\n }\r\n \r\n export const getLocation= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-location`,model);\r\n return response;\r\n }\r\n \r\n export const saveSubLocation= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-sub-location`,model);\r\n return response;\r\n }\r\n \r\n export const updateSubLocation= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-sub-location`,model);\r\n return response;\r\n }\r\n \r\n export const getSubLocation= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-sub-location`,model);\r\n return response;\r\n }\r\n \r\n export const getSubLocationList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-sub-location-list`);\r\n return response;\r\n }\r\n \r\n export const saveForeignLanguage= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-foreign-language`,model);\r\n return response;\r\n }\r\n \r\n export const updateForeignLanguage= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-foreign-language`,model);\r\n return response;\r\n }\r\n \r\n export const getForeignLanguage= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-foreign-language`,model);\r\n return response;\r\n }\r\n \r\n export const getForeignLanguageList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-foreign-language-list`);\r\n return response;\r\n }\r\n \r\n export const saveSalaryType= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-salary-type`,model);\r\n return response;\r\n }\r\n \r\n export const updateSalaryType= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-salary-type`,model);\r\n return response;\r\n }\r\n \r\n export const getSalaryType= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-salary-type`,model);\r\n return response;\r\n }\r\n \r\n export const getSalaryTypeList= async()=>{\r\n const response = await axios.post(`${baseURL}/field/save-salary-type-list`);\r\n return response;\r\n }\r\n \r\n export const saveWorkerType= async()=>{\r\n const response = await axios.post(`${baseURL}/field/save-worker-type`);\r\n return response;\r\n }\r\n \r\n export const updateWorkerType= async()=>{\r\n const response = await axios.post(`${baseURL}/field/update-worker-type`);\r\n return response;\r\n }\r\n \r\n export const getWorkerType = async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-worker-type`,model);\r\n return response;\r\n }\r\n \r\n export const getWorkerTypeList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-worker-type-list`);\r\n return response;\r\n }\r\n \r\n export const saveVehicleType= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-vehicle-type`,model);\r\n return response;\r\n }\r\n \r\n export const updateVehicleType= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-vehicle-type`,model);\r\n return response;\r\n }\r\n \r\n export const getVehicleType= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-vehicle-type`,model);\r\n return response;\r\n }\r\n \r\n export const getVehicleTypeList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-vehicle-type`);\r\n return response;\r\n }\r\n \r\n export const saveTitle= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-title`,model);\r\n return response;\r\n }\r\n \r\n export const updateTitle= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-title`,model);\r\n return response;\r\n }\r\n \r\n export const getTitle= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-title`,model);\r\n return response;\r\n }\r\n \r\n export const getTitleList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-title-list`);\r\n return response;\r\n }\r\n \r\n export const savePositionType= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-position-type`,model);\r\n return response;\r\n }\r\n \r\n export const updatePositionType= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-position-type`,model);\r\n return response;\r\n }\r\n \r\n export const getPositionType= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-position-type`,model);\r\n return response;\r\n }\r\n \r\n export const getPositionTypeList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-position-type-list`);\r\n return response;\r\n }\r\n \r\n export const saveGender= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-gender`,model);\r\n return response;\r\n }\r\n \r\n export const updateGender= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-gender`,model);\r\n return response;\r\n }\r\n \r\n export const getGenderList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-gender-list`);\r\n return response;\r\n }\r\n \r\n export const getGender= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-gender`,model);\r\n return response;\r\n }\r\n \r\n export const saveCompletionType= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/save-completion-type`,model);\r\n return response;\r\n }\r\n \r\n export const updateCompletionType= async(model)=>{\r\n const response = await axios.post(`${baseURL}/field/update-completion-type`,model);\r\n return response;\r\n }\r\n \r\n export const getCompletionTypeList= async()=>{\r\n const response = await axios.get(`${baseURL}/field/get-completion-type-list`);\r\n return response;\r\n }\r\n \r\n export const getCompletionType= async(model)=>{\r\n const response = await axios.get(`${baseURL}/field/get-completion-type`,model);\r\n return response;\r\n }","import PropTypes from 'prop-types';\r\n\r\n// material-ui\r\nimport { useTheme } from '@mui/material/styles';\r\nimport { Box, Drawer, useMediaQuery } from '@mui/material';\r\n\r\n// third-party\r\nimport PerfectScrollbar from 'react-perfect-scrollbar';\r\nimport { BrowserView, MobileView } from 'react-device-detect';\r\n\r\n// project imports\r\nimport MenuList from './MenuList';\r\nimport LogoSection from '../LogoSection';\r\nimport { drawerWidth } from 'store/constant';\r\n\r\n// ==============================|| SIDEBAR DRAWER ||============================== //\r\n\r\nconst Sidebar = ({ drawerOpen, drawerToggle, window }) => {\r\n const theme = useTheme();\r\n const matchUpMd = useMediaQuery(theme.breakpoints.up('md'));\r\n\r\n const drawer = (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n\r\n const container = window !== undefined ? () => window.document.body : undefined;\r\n\r\n return (\r\n \r\n \r\n {drawer}\r\n \r\n \r\n );\r\n};\r\n\r\nSidebar.propTypes = {\r\n drawerOpen: PropTypes.bool,\r\n drawerToggle: PropTypes.func,\r\n window: PropTypes.object\r\n};\r\n\r\nexport default Sidebar;\r\n","import managerExpenseGroup from './managerExpenseGroup';\r\nimport accountantGroup from './accountantGroup';\r\nimport managerAdvanceGroup from './managerAdvanceGroup';\r\nimport employeeAdvanceGroup from './employeeAdvanceGroup';\r\nimport employeeExpenseGroup from './employeeExpenseGroup';\r\n\r\n// ==============================|| MENU ITEMS ||============================== //\r\n\r\nconst menuItems = {\r\n items: [accountantGroup, managerExpenseGroup, managerAdvanceGroup, employeeAdvanceGroup, employeeExpenseGroup]\r\n};\r\n\r\nexport default menuItems;\r\n","import { FormLabel } from \"@mui/material\";\r\nimport { Box } from \"@mui/material\";\r\nimport MedTecLogo from \"../../../assets/images/MEDTEC_LOGO.png\";\r\n\r\nconst Footer = () => {\r\n return (\r\n \r\n
\r\n \r\n © 2022 MEDTEC Bilgi Teknolojileri ve Yazılım A.Ş. - Tüm Hakları Saklıdır\r\n \r\n
\r\n );\r\n};\r\nexport default Footer;\r\n","import { useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { Outlet } from 'react-router-dom';\r\n\r\n// material-ui\r\nimport { styled, useTheme } from '@mui/material/styles';\r\nimport { AppBar, Box, CssBaseline, Toolbar, useMediaQuery } from '@mui/material';\r\n\r\n// project imports\r\nimport Breadcrumbs from 'ui-component/extended/Breadcrumbs';\r\nimport Header from './Header';\r\nimport Sidebar from './Sidebar';\r\nimport navigation from 'menu-items';\r\nimport { drawerWidth } from 'store/constant';\r\nimport { SET_MENU } from 'store/actions';\r\n// assets\r\nimport { IconChevronRight } from '@tabler/icons';\r\nimport Footer from \"../MainLayout/Footer/footer\";\r\n// styles\r\nconst Main = styled('main', { shouldForwardProp: (prop) => prop !== 'open' })(({ theme, open }) => ({\r\n ...theme.typography.mainContent,\r\n ...(!open && {\r\n borderBottomLeftRadius: 0,\r\n borderBottomRightRadius: 0,\r\n transition: theme.transitions.create('margin', {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen\r\n }),\r\n [theme.breakpoints.up('md')]: {\r\n marginLeft: -(drawerWidth - 20),\r\n width: `calc(100% - ${drawerWidth}px)`\r\n },\r\n [theme.breakpoints.down('md')]: {\r\n marginLeft: '20px',\r\n width: `calc(100% - ${drawerWidth}px)`,\r\n padding: '16px'\r\n },\r\n [theme.breakpoints.down('sm')]: {\r\n marginLeft: '10px',\r\n width: `calc(100% - ${drawerWidth}px)`,\r\n padding: '16px',\r\n marginRight: '10px'\r\n }\r\n }),\r\n ...(open && {\r\n transition: theme.transitions.create('margin', {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen\r\n }),\r\n marginLeft: 0,\r\n borderBottomLeftRadius: 0,\r\n borderBottomRightRadius: 0,\r\n width: `calc(100% - ${drawerWidth}px)`,\r\n [theme.breakpoints.down('md')]: {\r\n marginLeft: '20px'\r\n },\r\n [theme.breakpoints.down('sm')]: {\r\n marginLeft: '10px'\r\n }\r\n })\r\n}));\r\n\r\n// ==============================|| MAIN LAYOUT ||============================== //\r\n\r\nconst MainLayout = () => {\r\n const theme = useTheme();\r\n const matchDownMd = useMediaQuery(theme.breakpoints.down('lg'));\r\n\r\n // Handle left drawer\r\n const leftDrawerOpened = useSelector((state) => state.customization.opened);\r\n const dispatch = useDispatch();\r\n const handleLeftDrawerToggle = () => {\r\n dispatch({ type: SET_MENU, opened: !leftDrawerOpened });\r\n };\r\n\r\n useEffect(() => {\r\n dispatch({ type: SET_MENU, opened: !matchDownMd });\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [matchDownMd]);\r\n\r\n return (\r\n \r\n \r\n {/* header */}\r\n \r\n \r\n
\r\n \r\n \r\n\r\n {/* drawer */}\r\n \r\n\r\n {/* main content */}\r\n
\r\n {/* breadcrumb */}\r\n \r\n \r\n
\r\n\r\n {/* */}\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default MainLayout;\r\n","import { Suspense } from 'react';\r\n\r\n// project imports\r\nimport Loader from './Loader';\r\n\r\n// ==============================|| LOADABLE - LAZY LOADING ||============================== //\r\n\r\nconst Loadable = (Component) => (props) => (\r\n }>\r\n \r\n \r\n);\r\n\r\nexport default Loadable;\r\n","import PropTypes from 'prop-types';\r\nimport { useNavigate } from 'react-router-dom';\r\n\r\n// project imports\r\nimport useAuth from 'hooks/useAuth';\r\nimport { useEffect } from 'react';\r\n\r\n// ==============================|| AUTH GUARD ||============================== //\r\n\r\n/**\r\n * Authentication guard for routes\r\n * @param {PropTypes.node} children children element/node\r\n */\r\nconst AuthGuard = ({ children }) => {\r\n const { isLoggedIn } = useAuth();\r\n const navigate = useNavigate();\r\n\r\n \r\n \r\n useEffect(() => {\r\n\r\n \r\n if (!isLoggedIn) {\r\n\r\n navigate('login', { replace: true });\r\n }else{\r\n \r\n }\r\n }, [isLoggedIn, navigate]);\r\n \r\n \r\n return children;\r\n};\r\n\r\nAuthGuard.propTypes = {\r\n children: PropTypes.node\r\n};\r\n\r\nexport default AuthGuard;\r\n","import { lazy } from 'react';\r\n\r\n// project imports\r\nimport MainLayout from 'layout/MainLayout';\r\nimport Loadable from 'ui-component/Loadable';\r\nimport AuthGuard from 'utils/route-guard/AuthGuard';\r\nimport UserLimitedDialog from 'ui-component/dialogs/UserLimitedDialog';\r\n\r\n\r\n// sample page routing\r\nconst SamplePage = Loadable(lazy(() => import('views/sample-page')));\r\nconst ExpenseForm = Loadable(lazy(() => import('views/pages/forms/ExpenseForm')));\r\nconst ExpenseFormEdit = Loadable(lazy(() => import('views/pages/forms/ExpenseFormEdit')));\r\nconst ExpenseFormDetail = Loadable(lazy(() => import('views/pages/formDetails/ExpenseFormDetail')));\r\nconst AccountedFormDetail = Loadable(lazy(() => import('views/pages/formDetails/AccountedFormDetail')));\r\nconst ExpenseList = Loadable(lazy(() => import('views/pages/list/ExpenseList')));\r\nconst AccountedList = Loadable(lazy(() => import('views/pages/list/AccountedList')));\r\nconst ErrorPage = Loadable(lazy(() => import('views/pages/ErrorPage')));\r\nconst ChangePassword = Loadable(lazy(() => import('views/pages/profile/change-password')));\r\nconst UserManagement = Loadable(lazy(() => import('views/pages/profile/user-management')));\r\nconst MailLog = Loadable(lazy(() => import('views/pages/profile/mail-log')));\r\nconst Dashboard = Loadable(lazy(() => import('views/pages/dashboard/Dashboard')));\r\nconst AccountantManagement = Loadable(lazy(() => import('views/pages/profile/accountant-management')));\r\nconst AdvanceList = Loadable(lazy(() => import('views/pages/list/AdvanceList')));\r\nconst MotivationBudgetList = Loadable(lazy(() => import('views/pages/list/MotivationBudgetList')));\r\nconst AdvanceForm = Loadable(lazy(() => import('views/pages/forms/AdvanceForm')));\r\nconst AdvanceFormEdit = Loadable(lazy(() => import('views/pages/forms/AdvanceFormEdit')));\r\nconst AdvanceFormDetail = Loadable(lazy(() => import('views/pages/formDetails/AdvanceFormDetail')));\r\nconst AdvanceAccountedList = Loadable(lazy(() => import('views/pages/list/AdvanceAccountedList')));\r\n\r\n// ==============================|| MAIN ROUTING ||============================== //\r\n\r\nconst MainRoutes = {\r\n path: '/',\r\n element: (\r\n \r\n \r\n \r\n ),\r\n children: [\r\n {\r\n path: '/sample-page',\r\n element: \r\n },\r\n {\r\n path: 'expense-detail',\r\n element: \r\n },\r\n {\r\n path: 'expense-form',\r\n element: \r\n },\r\n {\r\n path: 'expense-list',\r\n element: \r\n },\r\n {\r\n path: 'accounted-list',\r\n element: \r\n },\r\n {\r\n path: 'accounted-detail',\r\n element: \r\n },\r\n {\r\n path: 'dashboard',\r\n element: \r\n },\r\n {\r\n path: 'change-password',\r\n element: \r\n },\r\n {\r\n path: 'user-management',\r\n element: \r\n },\r\n {\r\n path: 'mail-log',\r\n element: \r\n },\r\n {\r\n path: 'accountant-management',\r\n element: \r\n },\r\n {\r\n path: '/userLimited',\r\n element: \r\n },\r\n {\r\n path: 'expense-form-edit',\r\n element: \r\n },\r\n {\r\n path: 'my-approved',\r\n element: \r\n },\r\n {\r\n path: 'advance-list',\r\n element: \r\n },\r\n {\r\n path: 'my-approved-advance',\r\n element: \r\n },\r\n {\r\n path: 'motivation-budget-list',\r\n element: \r\n },\r\n {\r\n path: 'advance-form',\r\n element: \r\n },\r\n {\r\n path: 'advance-form-edit',\r\n element: \r\n },\r\n {\r\n path: 'advance-detail',\r\n element: \r\n },\r\n {\r\n path: '*',\r\n element: \r\n },\r\n {\r\n path: 'advance-accounted-list',\r\n element: \r\n },\r\n ]\r\n};\r\n\r\nexport default MainRoutes;\r\n","import PropTypes from 'prop-types';\r\nimport { useNavigate } from 'react-router-dom';\r\n\r\n// project imports\r\nimport useAuth from 'hooks/useAuth';\r\nimport config from 'config';\r\nimport { useEffect } from 'react';\r\n\r\n// ==============================|| GUEST GUARD ||============================== //\r\n\r\n/**\r\n * Guest guard for routes having no auth required\r\n * @param {PropTypes.node} children children element/node\r\n */\r\n\r\nconst GuestGuard = ({ children }) => {\r\n const { isLoggedIn } = useAuth();\r\n const navigate = useNavigate();\r\n\r\n console.log(\"1\");\r\n useEffect(() => {\r\n console.log(\"2\");\r\n if (isLoggedIn) {\r\n navigate(config.defaultPath, { replace: true });\r\n }\r\n }, [isLoggedIn, navigate]);\r\n\r\n console.log(\"3\");\r\n return children;\r\n};\r\n\r\nGuestGuard.propTypes = {\r\n children: PropTypes.node\r\n};\r\n\r\nexport default GuestGuard;\r\n","import { Outlet } from 'react-router-dom';\r\n\r\n// ==============================|| MINIMAL LAYOUT ||============================== //\r\n\r\nconst MinimalLayout = () => (\r\n <>\r\n \r\n \r\n);\r\n\r\nexport default MinimalLayout;\r\n","import PropTypes from 'prop-types';\r\nimport { motion } from 'framer-motion';\r\n\r\n// ==============================|| ANIMATION FOR CONTENT ||============================== //\r\n\r\nconst NavMotion = ({ children }) => {\r\n const motionVariants = {\r\n initial: {\r\n opacity: 0,\r\n scale: 0.99\r\n },\r\n in: {\r\n opacity: 1,\r\n scale: 1\r\n },\r\n out: {\r\n opacity: 0,\r\n scale: 1.01\r\n }\r\n };\r\n\r\n const motionTransition = {\r\n type: 'tween',\r\n ease: 'anticipate',\r\n duration: 0.4\r\n };\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n};\r\n\r\nNavMotion.propTypes = {\r\n children: PropTypes.node\r\n};\r\n\r\nexport default NavMotion;\r\n","import { lazy } from 'react';\r\n\r\n// project imports\r\nimport GuestGuard from 'utils/route-guard/GuestGuard';\r\nimport MinimalLayout from 'layout/MinimalLayout';\r\nimport NavMotion from 'layout/NavMotion';\r\nimport Loadable from 'ui-component/Loadable';\r\n\r\n// login routing\r\nconst AuthLogin = Loadable(lazy(() => import('views/pages/authentication/authentication3/Login3')));\r\nconst AuthRegister = Loadable(lazy(() => import('views/pages/authentication/authentication3/Register3')));\r\nconst AuthForgotPassword = Loadable(lazy(() => import('views/pages/authentication/authentication3/ForgotPassword3')));\r\nconst SuccessPage = Loadable(lazy(() => import('views/pages/SuccessPage')));\r\n// ==============================|| AUTH ROUTING ||============================== //\r\n\r\nconst LoginRoutes = {\r\n path: '/',\r\n element: (\r\n \r\n \r\n \r\n \r\n \r\n ),\r\n children: [\r\n {\r\n path: '/login',\r\n element: \r\n },\r\n {\r\n path: '/register',\r\n element: \r\n },\r\n {\r\n path: '/forgot',\r\n element: \r\n },\r\n {\r\n path: '/success',\r\n element: \r\n }\r\n ]\r\n};\r\n\r\nexport default LoginRoutes;\r\n","// project imports\r\nimport MinimalLayout from 'layout/MinimalLayout';\r\n\r\n// ==============================|| AUTHENTICATION ROUTING ||============================== //\r\n\r\nconst AuthenticationRoutes = {\r\n path: '/',\r\n element: ,\r\n children: []\r\n};\r\n\r\nexport default AuthenticationRoutes;\r\n","import { useRoutes } from 'react-router-dom';\r\n\r\n// routes\r\nimport MainRoutes from './MainRoutes';\r\nimport LoginRoutes from './LoginRoutes';\r\nimport AuthenticationRoutes from './AuthenticationRoutes';\r\n\r\n// ==============================|| ROUTING RENDER ||============================== //\r\n\r\nexport default function ThemeRoutes() {\r\n return useRoutes([MainRoutes, LoginRoutes, AuthenticationRoutes]);\r\n}\r\n","/**\r\n * Color intention that you want to used in your theme\r\n * @param {JsonObject} theme Theme customization object\r\n */\r\n\r\nexport default function themePalette(theme) {\r\n return {\r\n mode: theme?.customization?.navType,\r\n common: {\r\n black: theme.colors?.darkPaper\r\n },\r\n primary: {\r\n light: theme?.customization?.navType === 'dark' ? theme.colors?.darkPrimaryLight : theme.colors?.primaryLight,\r\n main: theme?.customization?.navType === 'dark' ? theme.colors?.darkPrimaryMain : theme.colors?.primaryMain,\r\n dark: theme?.customization?.navType === 'dark' ? theme.colors?.darkPrimaryDark : theme.colors?.primaryDark,\r\n 200: theme?.customization?.navType === 'dark' ? theme.colors?.darkPrimary200 : theme.colors?.primary200,\r\n 800: theme?.customization?.navType === 'dark' ? theme.colors?.darkPrimary800 : theme.colors?.primary800\r\n },\r\n secondary: {\r\n light: theme?.customization?.navType === 'dark' ? theme.colors?.darkSecondaryLight : theme.colors?.secondaryLight,\r\n main: theme?.customization?.navType === 'dark' ? theme.colors?.darkSecondaryMain : theme.colors?.secondaryMain,\r\n dark: theme?.customization?.navType === 'dark' ? theme.colors?.darkSecondaryDark : theme.colors?.secondaryDark,\r\n 200: theme?.customization?.navType === 'dark' ? theme.colors?.darkSecondary200 : theme.colors?.secondary200,\r\n 800: theme?.customization?.navType === 'dark' ? theme.colors?.darkSecondary800 : theme.colors?.secondary800\r\n },\r\n error: {\r\n light: theme.colors?.errorLight,\r\n main: theme.colors?.errorMain,\r\n dark: theme.colors?.errorDark\r\n },\r\n orange: {\r\n light: theme.colors?.orangeLight,\r\n main: theme.colors?.orangeMain,\r\n dark: theme.colors?.orangeDark\r\n },\r\n warning: {\r\n light: theme.colors?.warningLight,\r\n main: theme.colors?.warningMain,\r\n dark: theme.colors?.warningDark\r\n },\r\n success: {\r\n light: theme.colors?.successLight,\r\n 200: theme.colors?.success200,\r\n main: theme.colors?.successMain,\r\n dark: theme.colors?.successDark\r\n },\r\n grey: {\r\n 50: theme.colors?.grey50,\r\n 100: theme.colors?.grey100,\r\n 500: theme.darkTextSecondary,\r\n 600: theme.heading,\r\n 700: theme.darkTextPrimary,\r\n 900: theme.textDark\r\n },\r\n dark: {\r\n light: theme.colors?.darkTextPrimary,\r\n main: theme.colors?.darkLevel1,\r\n dark: theme.colors?.darkLevel2,\r\n 800: theme.colors?.darkBackground,\r\n 900: theme.colors?.darkPaper\r\n },\r\n text: {\r\n primary: theme.darkTextPrimary,\r\n secondary: theme.darkTextSecondary,\r\n dark: theme.textDark,\r\n hint: theme.colors?.grey100\r\n },\r\n background: {\r\n paper: theme.paper,\r\n default: theme.backgroundDefault\r\n }\r\n };\r\n}\r\n","/**\r\n * Typography used in theme\r\n * @param {JsonObject} theme theme customization object\r\n */\r\n\r\nexport default function themeTypography(theme) {\r\n return {\r\n fontFamily: theme?.customization?.fontFamily,\r\n h6: {\r\n fontWeight: 500,\r\n color: theme.heading,\r\n fontSize: '0.75rem'\r\n },\r\n h5: {\r\n fontSize: '0.875rem',\r\n color: theme.heading,\r\n fontWeight: 500\r\n },\r\n h4: {\r\n fontSize: '1rem',\r\n color: theme.heading,\r\n fontWeight: 600\r\n },\r\n h3: {\r\n fontSize: '1.25rem',\r\n color: theme.heading,\r\n fontWeight: 600\r\n },\r\n h2: {\r\n fontSize: '1.5rem',\r\n color: theme.heading,\r\n fontWeight: 700\r\n },\r\n h1: {\r\n fontSize: '2.125rem',\r\n color: theme.heading,\r\n fontWeight: 700\r\n },\r\n subtitle1: {\r\n fontSize: '0.875rem',\r\n fontWeight: 500,\r\n color: theme?.customization?.navType === 'dark' ? theme.heading : theme.textDark\r\n },\r\n subtitle2: {\r\n fontSize: '0.75rem',\r\n fontWeight: 400,\r\n color: theme.darkTextSecondary\r\n },\r\n caption: {\r\n fontSize: '0.75rem',\r\n color: theme.darkTextSecondary,\r\n fontWeight: 400\r\n },\r\n body1: {\r\n fontSize: '0.875rem',\r\n fontWeight: 400,\r\n lineHeight: '1.334em'\r\n },\r\n body2: {\r\n letterSpacing: '0em',\r\n fontWeight: 400,\r\n lineHeight: '1.5em',\r\n color: theme.darkTextPrimary\r\n },\r\n button: {\r\n textTransform: 'capitalize'\r\n },\r\n customInput: {\r\n marginTop: 1,\r\n marginBottom: 1,\r\n '& > label': {\r\n top: 23,\r\n left: 0,\r\n color: theme.grey500,\r\n '&[data-shrink=\"false\"]': {\r\n top: 5\r\n }\r\n },\r\n '& > div > input': {\r\n padding: '30.5px 14px 11.5px !important'\r\n },\r\n '& legend': {\r\n display: 'none'\r\n },\r\n '& fieldset': {\r\n top: 0\r\n }\r\n },\r\n mainContent: {\r\n backgroundColor: theme.background,\r\n width: '100%',\r\n minHeight: 'calc(100vh - 88px)',\r\n flexGrow: 1,\r\n padding: '20px',\r\n marginTop: '88px',\r\n marginRight: '20px',\r\n borderRadius: `${theme?.customization?.borderRadius}px`\r\n },\r\n menuCaption: {\r\n fontSize: '0.875rem',\r\n fontWeight: 500,\r\n color: theme.heading,\r\n padding: '6px',\r\n textTransform: 'capitalize',\r\n marginTop: '10px'\r\n },\r\n subMenuCaption: {\r\n fontSize: '0.6875rem',\r\n fontWeight: 500,\r\n color: theme.darkTextSecondary,\r\n textTransform: 'capitalize'\r\n },\r\n commonAvatar: {\r\n cursor: 'pointer',\r\n borderRadius: '8px'\r\n },\r\n smallAvatar: {\r\n width: '22px',\r\n height: '22px',\r\n fontSize: '1rem'\r\n },\r\n mediumAvatar: {\r\n width: '34px',\r\n height: '34px',\r\n fontSize: '1.2rem'\r\n },\r\n largeAvatar: {\r\n width: '44px',\r\n height: '44px',\r\n fontSize: '1.5rem'\r\n }\r\n };\r\n}\r\n","import { alpha } from '@mui/material/styles';\r\n\r\nconst createCustomShadow = (theme, color) => {\r\n const transparent = alpha(color, 0.24);\r\n return {\r\n z1: `0 1px 2px 0 ${transparent}`,\r\n z8: `0 8px 16px 0 ${transparent}`,\r\n z12: `0 12px 24px 0 ${transparent} 0 10px 20px 0 ${transparent}`,\r\n z16: `0 0 3px 0 ${transparent} 0 14px 28px -5px ${transparent}`,\r\n z20: `0 0 3px 0 ${transparent} 0 18px 36px -5px ${transparent}`,\r\n z24: `0 0 6px 0 ${transparent} 0 21px 44px 0 ${transparent}`,\r\n\r\n primary: `0px 12px 14px 0px ${alpha(theme.colors?.primaryMain, 0.3)}`,\r\n secondary: `0px 12px 14px 0px ${alpha(theme.colors?.secondaryMain, 0.3)}`,\r\n orange: `0px 12px 14px 0px ${alpha(theme.colors?.orangeMain, 0.3)}`,\r\n success: `0px 12px 14px 0px ${alpha(theme.colors?.successMain, 0.3)}`,\r\n warning: `0px 12px 14px 0px ${alpha(theme.colors?.warningMain, 0.3)}`,\r\n error: `0px 12px 14px 0px ${alpha(theme.colors?.errorMain, 0.3)}`\r\n };\r\n};\r\n\r\nexport default function customShadows(navType, theme) {\r\n return navType === 'dark' ? createCustomShadow(theme, theme.colors?.darkLevel1) : createCustomShadow(theme, theme.colors?.grey600);\r\n}\r\n","import { createTheme } from '@mui/material/styles';\r\n\r\n// assets\r\nimport colors from 'assets/scss/_themes-vars.module.scss';\r\nimport theme1 from 'assets/scss/_theme1.module.scss';\r\nimport theme2 from 'assets/scss/_theme2.module.scss';\r\nimport theme3 from 'assets/scss/_theme3.module.scss';\r\nimport theme4 from 'assets/scss/_theme4.module.scss';\r\nimport theme5 from 'assets/scss/_theme5.module.scss';\r\nimport theme6 from 'assets/scss/_theme6.module.scss';\r\n\r\n// project imports\r\nimport componentStyleOverrides from './compStyleOverride';\r\nimport themePalette from './palette';\r\nimport themeTypography from './typography';\r\nimport customShadows from './shadows';\r\n\r\n/**\r\n * Represent theme style and structure as per Material-UI\r\n * @param {JsonObject} customization customization parameter object\r\n */\r\n\r\nexport const theme = (customization) => {\r\n let color;\r\n switch (customization.presetColor) {\r\n case 'theme1':\r\n color = theme1;\r\n break;\r\n case 'theme2':\r\n color = theme2;\r\n break;\r\n case 'theme3':\r\n color = theme3;\r\n break;\r\n case 'theme4':\r\n color = theme4;\r\n break;\r\n case 'theme5':\r\n color = theme5;\r\n break;\r\n case 'theme6':\r\n color = theme6;\r\n break;\r\n case 'default':\r\n default:\r\n color = colors;\r\n }\r\n\r\n const themeOption = {\r\n colors: color,\r\n heading: '',\r\n paper: '',\r\n backgroundDefault: '',\r\n background: '',\r\n darkTextPrimary: '',\r\n darkTextSecondary: '',\r\n textDark: '',\r\n menuSelected: '',\r\n menuSelectedBack: '',\r\n divider: '',\r\n customization\r\n };\r\n\r\n switch (customization.navType) {\r\n case 'dark':\r\n themeOption.paper = color.darkLevel2;\r\n themeOption.backgroundDefault = color.darkPaper;\r\n themeOption.background = color.darkBackground;\r\n themeOption.darkTextPrimary = color.darkTextPrimary;\r\n themeOption.darkTextSecondary = color.darkTextSecondary;\r\n themeOption.textDark = color.darkTextPrimary;\r\n themeOption.menuSelected = color.darkSecondaryMain;\r\n themeOption.menuSelectedBack = color.darkSecondaryMain + 15;\r\n themeOption.divider = color.darkTextPrimary;\r\n themeOption.heading = color.darkTextTitle;\r\n break;\r\n case 'light':\r\n default:\r\n themeOption.paper = color.paper;\r\n themeOption.backgroundDefault = color.paper;\r\n themeOption.background = color.primaryLight;\r\n themeOption.darkTextPrimary = color.grey700;\r\n themeOption.darkTextSecondary = color.grey500;\r\n themeOption.textDark = color.grey900;\r\n themeOption.menuSelected = color.secondaryDark;\r\n themeOption.menuSelectedBack = color.secondaryLight;\r\n themeOption.divider = color.grey200;\r\n themeOption.heading = color.grey900;\r\n break;\r\n }\r\n\r\n const themeOptions = {\r\n direction: customization.rtlLayout ? 'rtl' : 'ltr',\r\n palette: themePalette(themeOption),\r\n mixins: {\r\n toolbar: {\r\n minHeight: '48px',\r\n padding: '16px',\r\n '@media (min-width: 600px)': {\r\n minHeight: '48px'\r\n }\r\n }\r\n },\r\n typography: themeTypography(themeOption),\r\n customShadows: customShadows(customization.navType, themeOption)\r\n };\r\n\r\n const themes = createTheme(themeOptions);\r\n themes.components = componentStyleOverrides(themeOption);\r\n\r\n return themes;\r\n};\r\n\r\nexport default theme;\r\n","export default function componentStyleOverrides(theme) {\r\n const bgColor = theme?.customization?.navType === 'dark' ? theme.colors?.darkBackground : theme.colors?.grey50;\r\n return {\r\n MuiButton: {\r\n styleOverrides: {\r\n root: {\r\n fontWeight: 500,\r\n borderRadius: '4px'\r\n }\r\n }\r\n },\r\n MuiPaper: {\r\n defaultProps: {\r\n elevation: 0\r\n },\r\n styleOverrides: {\r\n root: {\r\n backgroundImage: 'none'\r\n },\r\n rounded: {\r\n borderRadius: `${theme?.customization?.borderRadius}px`\r\n }\r\n }\r\n },\r\n MuiCardHeader: {\r\n styleOverrides: {\r\n root: {\r\n color: theme.colors?.textDark,\r\n padding: '24px'\r\n },\r\n title: {\r\n fontSize: '1.125rem'\r\n }\r\n }\r\n },\r\n MuiCardContent: {\r\n styleOverrides: {\r\n root: {\r\n padding: '24px'\r\n }\r\n }\r\n },\r\n MuiCardActions: {\r\n styleOverrides: {\r\n root: {\r\n padding: '24px'\r\n }\r\n }\r\n },\r\n MuiAlert: {\r\n styleOverrides: {\r\n root: {\r\n alignItems: 'center'\r\n },\r\n outlined: {\r\n border: '1px dashed'\r\n }\r\n }\r\n },\r\n MuiListItemButton: {\r\n styleOverrides: {\r\n root: {\r\n color: theme.darkTextPrimary,\r\n paddingTop: '10px',\r\n paddingBottom: '10px',\r\n '&.Mui-selected': {\r\n color: theme.menuSelected,\r\n backgroundColor: theme.menuSelectedBack,\r\n '&:hover': {\r\n backgroundColor: theme.menuSelectedBack\r\n },\r\n '& .MuiListItemIcon-root': {\r\n color: theme.menuSelected\r\n }\r\n },\r\n '&:hover': {\r\n backgroundColor: theme.menuSelectedBack,\r\n color: theme.menuSelected,\r\n '& .MuiListItemIcon-root': {\r\n color: theme.menuSelected\r\n }\r\n }\r\n }\r\n }\r\n },\r\n MuiListItemIcon: {\r\n styleOverrides: {\r\n root: {\r\n color: theme.darkTextPrimary,\r\n minWidth: '36px'\r\n }\r\n }\r\n },\r\n MuiListItemText: {\r\n styleOverrides: {\r\n primary: {\r\n color: theme.textDark\r\n }\r\n }\r\n },\r\n MuiInputBase: {\r\n styleOverrides: {\r\n input: {\r\n color: theme.textDark,\r\n '&::placeholder': {\r\n color: theme.darkTextSecondary,\r\n fontSize: '0.875rem'\r\n }\r\n }\r\n }\r\n },\r\n MuiOutlinedInput: {\r\n styleOverrides: {\r\n root: {\r\n background: theme?.customization?.outlinedFilled ? bgColor : 'transparent',\r\n borderRadius: `${theme?.customization?.borderRadius}px`,\r\n '& .MuiOutlinedInput-notchedOutline': {\r\n borderColor: theme?.customization?.navType === 'dark' ? theme.colors.darkTextPrimary + 28 : theme.colors?.grey400\r\n },\r\n '&:hover $notchedOutline': {\r\n borderColor: theme.colors?.primaryLight\r\n },\r\n '&.MuiInputBase-multiline': {\r\n padding: 1\r\n }\r\n },\r\n input: {\r\n fontWeight: 500,\r\n background: theme?.customization?.outlinedFilled ? bgColor : 'transparent',\r\n padding: '15.5px 14px',\r\n borderRadius: `${theme?.customization?.borderRadius}px`,\r\n '&.MuiInputBase-inputSizeSmall': {\r\n padding: '10px 14px',\r\n '&.MuiInputBase-inputAdornedStart': {\r\n paddingLeft: 0\r\n }\r\n }\r\n },\r\n inputAdornedStart: {\r\n paddingLeft: 4\r\n },\r\n notchedOutline: {\r\n borderRadius: `${theme?.customization?.borderRadius}px`\r\n }\r\n }\r\n },\r\n MuiSlider: {\r\n styleOverrides: {\r\n root: {\r\n '&.Mui-disabled': {\r\n color: theme?.customization?.navType === 'dark' ? theme.colors.darkTextPrimary + 50 : theme.colors?.grey300\r\n }\r\n },\r\n mark: {\r\n backgroundColor: theme.paper,\r\n width: '4px'\r\n },\r\n valueLabel: {\r\n color: theme?.customization?.navType === 'dark' ? theme?.colors?.primaryMain : theme?.colors?.primaryLight\r\n }\r\n }\r\n },\r\n MuiAutocomplete: {\r\n styleOverrides: {\r\n root: {\r\n '& .MuiAutocomplete-tag': {\r\n background:\r\n theme?.customization?.navType === 'dark' ? theme.colors.darkTextPrimary + 20 : theme.colors?.secondaryLight,\r\n borderRadius: 4,\r\n color: theme.textDark,\r\n '.MuiChip-deleteIcon': {\r\n color: theme?.customization?.navType === 'dark' ? theme.colors.darkTextPrimary + 80 : theme.colors?.secondary200\r\n }\r\n }\r\n },\r\n popper: {\r\n borderRadius: `${theme?.customization?.borderRadius}px`,\r\n boxShadow: '0px 8px 10px -5px rgb(0 0 0 / 20%), 0px 16px 24px 2px rgb(0 0 0 / 14%), 0px 6px 30px 5px rgb(0 0 0 / 12%)'\r\n }\r\n }\r\n },\r\n MuiDivider: {\r\n styleOverrides: {\r\n root: {\r\n borderColor: theme.divider,\r\n opacity: theme?.customization?.navType === 'dark' ? 0.2 : 1\r\n }\r\n }\r\n },\r\n MuiSelect: {\r\n styleOverrides: {\r\n select: {\r\n '&:focus': {\r\n backgroundColor: 'transparent'\r\n }\r\n }\r\n }\r\n },\r\n MuiCheckbox: {\r\n styleOverrides: {\r\n root: {\r\n /** checked not prop\r\n *\"&.Mui-checked\": {\r\n * fontSize: \"28px\"\r\n *}\r\n */\r\n }\r\n }\r\n },\r\n MuiAvatar: {\r\n styleOverrides: {\r\n root: {\r\n color: theme?.customization?.navType === 'dark' ? theme.colors?.darkLevel1 : theme.colors?.primaryDark,\r\n background: theme?.customization?.navType === 'dark' ? theme.darkTextPrimary : theme.colors?.primary200\r\n }\r\n }\r\n },\r\n MuiChip: {\r\n styleOverrides: {\r\n root: {\r\n '&.MuiChip-deletable .MuiChip-deleteIcon': {\r\n color: 'inherit'\r\n }\r\n }\r\n }\r\n },\r\n MuiTimelineContent: {\r\n styleOverrides: {\r\n root: {\r\n color: theme.textDark,\r\n fontSize: '16px'\r\n }\r\n }\r\n },\r\n MuiTreeItem: {\r\n styleOverrides: {\r\n label: {\r\n marginTop: 14,\r\n marginBottom: 14\r\n }\r\n }\r\n },\r\n MuiTimelineDot: {\r\n styleOverrides: {\r\n root: {\r\n boxShadow: 'none'\r\n }\r\n }\r\n },\r\n MuiInternalDateTimePickerTabs: {\r\n styleOverrides: {\r\n tabs: {\r\n backgroundColor: theme?.customization?.navType === 'dark' ? theme.colors?.darkPaper : theme.colors?.primaryLight,\r\n '& .MuiTabs-flexContainer': {\r\n borderColor:\r\n theme?.customization?.navType === 'dark' ? theme.colors?.darkTextPrimary + 20 : theme.colors?.primary200\r\n },\r\n '& .MuiTab-root': {\r\n color: theme?.customization?.navType === 'dark' ? theme.colors?.darkTextSecondary : theme.colors?.grey900\r\n },\r\n '& .MuiTabs-indicator': {\r\n backgroundColor: theme.colors?.primaryDark\r\n },\r\n '& .Mui-selected': {\r\n color: theme.colors?.primaryDark\r\n }\r\n }\r\n }\r\n },\r\n MuiTabs: {\r\n styleOverrides: {\r\n flexContainer: {\r\n borderBottom: '1px solid',\r\n borderColor: theme?.customization?.navType === 'dark' ? theme.colors.darkTextPrimary + 20 : theme.colors?.grey200\r\n }\r\n }\r\n },\r\n MuiDialog: {\r\n styleOverrides: {\r\n paper: {\r\n padding: '12px 0 12px 0'\r\n }\r\n }\r\n },\r\n MuiTableCell: {\r\n styleOverrides: {\r\n root: {\r\n borderColor: theme?.customization?.navType === 'dark' ? theme.colors.darkTextPrimary + 15 : theme.colors?.grey200,\r\n '&.MuiTableCell-head': {\r\n fontSize: '0.875rem',\r\n color: theme.heading,\r\n fontWeight: 500\r\n }\r\n }\r\n }\r\n },\r\n MuiTooltip: {\r\n styleOverrides: {\r\n tooltip: {\r\n color: theme?.customization?.navType === 'dark' ? theme.colors?.darkLevel1 : theme.paper,\r\n background: theme?.customization?.navType === 'dark' ? theme.colors?.grey50 : theme.colors?.grey700\r\n }\r\n }\r\n },\r\n MuiDialogTitle: {\r\n styleOverrides: {\r\n root: {\r\n fontSize: '1.25rem'\r\n }\r\n }\r\n }\r\n };\r\n}\r\n","import PropTypes from \"prop-types\";\r\nimport { useState, useEffect } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\n\r\n// third-party\r\nimport { IntlProvider } from \"react-intl\";\r\n\r\n// load locales files\r\nconst loadLocaleData = (locale) => {\r\n switch (locale) {\r\n case \"fr\":\r\n return import(\"utils/locales/fr.json\");\r\n case \"ro\":\r\n return import(\"utils/locales/ro.json\");\r\n case \"zh\":\r\n return import(\"utils/locales/zh.json\");\r\n case \"tr\":\r\n return import(\"utils/locales/tr.json\");\r\n default:\r\n return import(\"utils/locales/en.json\");\r\n }\r\n};\r\n\r\n// ==============================|| LOCALIZATION ||============================== //\r\n\r\nconst Locales = ({ children }) => {\r\n const customization = useSelector((state) => state.customization);\r\n const [messages, setMessages] = useState();\r\n\r\n useEffect(() => {\r\n loadLocaleData(customization.locale).then((d) => {\r\n setMessages(d.default);\r\n });\r\n }, [customization.locale]);\r\n\r\n return (\r\n <>\r\n {messages && (\r\n \r\n {children}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nLocales.propTypes = {\r\n children: PropTypes.node,\r\n};\r\n\r\nexport default Locales;\r\n","import PropTypes from 'prop-types';\r\nimport { useEffect } from 'react';\r\nimport { useLocation } from 'react-router-dom';\r\n\r\n// ==============================|| NAVIGATION SCROLL TO TOP ||============================== //\r\n\r\nconst NavigationScroll = ({ children }) => {\r\n const location = useLocation();\r\n const { pathname } = location;\r\n\r\n useEffect(() => {\r\n window.scrollTo({\r\n top: 0,\r\n left: 0,\r\n behavior: 'smooth'\r\n });\r\n }, [pathname]);\r\n\r\n return children || null;\r\n};\r\n\r\nNavigationScroll.propTypes = {\r\n children: PropTypes.node\r\n};\r\n\r\nexport default NavigationScroll;\r\n","import { useState, useEffect } from 'react';\r\nimport { useSelector } from 'react-redux';\r\n\r\n// material-ui\r\nimport { Alert, Button, Fade, Grow, IconButton, Slide } from '@mui/material';\r\nimport MuiSnackbar from '@mui/material/Snackbar';\r\n\r\n// assets\r\nimport CloseIcon from '@mui/icons-material/Close';\r\n\r\n// animation function\r\nfunction TransitionSlideLeft(props) {\r\n return ;\r\n}\r\n\r\nfunction TransitionSlideUp(props) {\r\n return ;\r\n}\r\n\r\nfunction TransitionSlideRight(props) {\r\n return ;\r\n}\r\n\r\nfunction TransitionSlideDown(props) {\r\n return ;\r\n}\r\n\r\nfunction GrowTransition(props) {\r\n return ;\r\n}\r\n\r\n// animation options\r\nconst transition = {\r\n SlideLeft: TransitionSlideLeft,\r\n SlideUp: TransitionSlideUp,\r\n SlideRight: TransitionSlideRight,\r\n SlideDown: TransitionSlideDown,\r\n Grow: GrowTransition,\r\n Fade\r\n};\r\n\r\n// ==============================|| SNACKBAR ||============================== //\r\n\r\nconst Snackbar = () => {\r\n const [open, setOpen] = useState(false);\r\n const snackbarInitial = useSelector((state) => state.snackbar);\r\n\r\n const handleClose = (reason) => {\r\n if (reason === 'clickaway') {\r\n return;\r\n }\r\n setOpen(false);\r\n };\r\n\r\n useEffect(() => {\r\n setOpen(snackbarInitial.open);\r\n }, [snackbarInitial.action, snackbarInitial.open]);\r\n\r\n return (\r\n <>\r\n {/* default snackbar */}\r\n {snackbarInitial.variant === 'default' && (\r\n handleClose(v)}\r\n message={snackbarInitial.message}\r\n TransitionComponent={transition[snackbarInitial.transition]}\r\n action={\r\n <>\r\n \r\n handleClose()}>\r\n \r\n \r\n \r\n }\r\n />\r\n )}\r\n\r\n {/* alert snackbar */}\r\n {snackbarInitial.variant === 'alert' && (\r\n handleClose(v)}\r\n >\r\n \r\n {snackbarInitial.actionButton !== false && (\r\n \r\n )}\r\n {snackbarInitial.close !== false && (\r\n handleClose()}>\r\n \r\n \r\n )}\r\n \r\n }\r\n >\r\n {snackbarInitial.message}\r\n \r\n \r\n )}\r\n\r\n {snackbarInitial.variant === 'onlinecount' && (\r\n handleClose(v)}\r\n >\r\n \r\n {snackbarInitial.message}\r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default Snackbar;\r\n","import { useSelector } from 'react-redux';\r\n\r\nimport { ThemeProvider } from '@mui/material/styles';\r\nimport { CssBaseline, StyledEngineProvider } from '@mui/material';\r\nimport Routes from 'routes';\r\nimport themes from 'themes';\r\nimport Locales from 'ui-component/Locales';\r\nimport NavigationScroll from 'layout/NavigationScroll';\r\nimport Snackbar from 'ui-component/extended/Snackbar';\r\nimport { JWTProvider } from 'contexts/JWTContext';\r\nimport ErrorPage from 'views/pages/ErrorPage';\r\nimport './App.css';\r\nimport { Notifications } from 'react-push-notification';\r\nimport { SnackbarProvider } from 'notistack';\r\n\r\nconst App = () => {\r\n\r\n // let theme=localStorage.getItem(\"theme\");\r\n\r\n const customization = useSelector((state) => state.customization);\r\n\r\n return (\r\n \r\n\r\n \r\n \r\n \r\n {/* RTL layout */}\r\n {/* */}\r\n \r\n \r\n \r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default App;\r\n","// project imports\r\nimport config from 'config';\r\n\r\n// action - state management\r\nimport * as actionTypes from './actions';\r\n\r\nexport const initialState = {\r\n isOpen: [], // for active default menu\r\n fontFamily: config.fontFamily,\r\n borderRadius: config.borderRadius,\r\n outlinedFilled: config.outlinedFilled,\r\n navType: config.theme,\r\n presetColor: config.presetColor,\r\n locale: config.i18n,\r\n rtlLayout: config.rtlLayout,\r\n opened: true\r\n};\r\n\r\n// ==============================|| CUSTOMIZATION REDUCER ||============================== //\r\n\r\nconst customizationReducer = (state = initialState, action) => {\r\n let id;\r\n switch (action.type) {\r\n case actionTypes.MENU_OPEN:\r\n id = action.id;\r\n return {\r\n ...state,\r\n isOpen: [id]\r\n };\r\n\r\n case actionTypes.MENU_TYPE:\r\n return {\r\n ...state,\r\n navType: action.navType\r\n };\r\n case actionTypes.PRESET_COLORS:\r\n return {\r\n ...state,\r\n presetColor: action.presetColor\r\n };\r\n case actionTypes.THEME_LOCALE:\r\n return {\r\n ...state,\r\n locale: action.locale\r\n };\r\n case actionTypes.THEME_RTL:\r\n return {\r\n ...state,\r\n rtlLayout: action.rtlLayout\r\n };\r\n case actionTypes.SET_MENU:\r\n return {\r\n ...state,\r\n opened: action.opened\r\n };\r\n case actionTypes.SET_FONT_FAMILY:\r\n return {\r\n ...state,\r\n fontFamily: action.fontFamily\r\n };\r\n case actionTypes.SET_BORDER_RADIUS:\r\n return {\r\n ...state,\r\n borderRadius: action.borderRadius\r\n };\r\n case actionTypes.SET_OUTLINED_FILLED:\r\n return {\r\n ...state,\r\n outlinedFilled: action.outlinedFilled\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport default customizationReducer;\r\n","// action - state management\r\nimport * as actionTypes from './actions';\r\n\r\nimport { filter } from 'lodash';\r\nimport { Chance } from 'chance';\r\n\r\nconst chance = new Chance();\r\n\r\nexport const initialState = {\r\n checkout: {\r\n step: 0,\r\n products: [],\r\n subtotal: 0,\r\n total: 0,\r\n discount: 0,\r\n shipping: 0,\r\n billing: null,\r\n payment: {\r\n type: 'free',\r\n method: 'cod',\r\n card: ''\r\n }\r\n }\r\n};\r\n\r\n// ==============================|| E-COMMERCE REDUCER ||============================== //\r\n\r\nconst cartReducer = (state = initialState, payload) => {\r\n let subtotal;\r\n let result;\r\n\r\n let latestProducts;\r\n let newProduct;\r\n let inCartProduct;\r\n let oldSubTotal;\r\n let amount;\r\n let difference;\r\n let newShipping;\r\n\r\n switch (payload.type) {\r\n case actionTypes.ADD_PRODUCTS:\r\n newProduct = { ...payload.product, itemId: chance.timestamp() };\r\n\r\n subtotal = newProduct?.quantity * newProduct.offerPrice;\r\n\r\n inCartProduct = filter(state.checkout.products, {\r\n id: newProduct.id,\r\n color: newProduct.color,\r\n size: newProduct.size\r\n });\r\n if (inCartProduct && inCartProduct.length > 0) {\r\n const newProducts = state.checkout.products.map((item) => {\r\n if (newProduct?.id === item.id && newProduct?.color === item.color && newProduct.size === item.size) {\r\n return { ...newProduct, quantity: newProduct.quantity + inCartProduct[0].quantity };\r\n }\r\n return item;\r\n });\r\n latestProducts = newProducts;\r\n } else {\r\n latestProducts = [...state.checkout.products, newProduct];\r\n }\r\n\r\n return {\r\n ...state,\r\n checkout: {\r\n ...state.checkout,\r\n products: latestProducts,\r\n subtotal: state.checkout.subtotal + subtotal,\r\n total: state.checkout.total + subtotal\r\n }\r\n };\r\n case actionTypes.REMOVE_PRODUCT:\r\n result = filter(state.checkout.products, { itemId: payload.id });\r\n subtotal = result[0].quantity * result[0].offerPrice;\r\n\r\n return {\r\n ...state,\r\n checkout: {\r\n ...state.checkout,\r\n products: filter(state.checkout.products, (item) => item.itemId !== payload.id),\r\n subtotal: state.checkout.subtotal - subtotal,\r\n total: state.checkout.total + -subtotal\r\n }\r\n };\r\n case actionTypes.UPDATE_QUANTITY:\r\n result = filter(state.checkout.products, { itemId: payload.id });\r\n subtotal = payload.quantity * result[0].offerPrice;\r\n oldSubTotal = 0;\r\n\r\n latestProducts = state.checkout.products.map((item) => {\r\n if (payload.id === item.itemId) {\r\n oldSubTotal = item.quantity * item.offerPrice;\r\n return { ...item, quantity: payload.quantity };\r\n }\r\n return item;\r\n });\r\n\r\n return {\r\n ...state,\r\n checkout: {\r\n ...state.checkout,\r\n products: latestProducts,\r\n subtotal: state.checkout.subtotal - oldSubTotal + subtotal,\r\n total: state.checkout.total - oldSubTotal + subtotal\r\n }\r\n };\r\n case actionTypes.SET_STEP:\r\n return {\r\n ...state,\r\n checkout: {\r\n ...state.checkout,\r\n step: payload.step\r\n }\r\n };\r\n case actionTypes.BACK_STEP:\r\n return {\r\n ...state,\r\n checkout: {\r\n ...state.checkout,\r\n step: state.checkout.step - 1\r\n }\r\n };\r\n case actionTypes.NEXT_STEP:\r\n return {\r\n ...state,\r\n checkout: {\r\n ...state.checkout,\r\n step: state.checkout.step + 1\r\n }\r\n };\r\n case actionTypes.SET_BILLING_ADDRESS:\r\n return {\r\n ...state,\r\n checkout: {\r\n ...state.checkout,\r\n billing: payload.address\r\n }\r\n };\r\n case actionTypes.SET_DISCOUNT:\r\n amount = 0;\r\n difference = 0;\r\n if (state.checkout.total > 0) {\r\n switch (payload.code) {\r\n case 'BERRY50':\r\n amount = chance.integer({ min: 1, max: state.checkout.total < 49 ? state.checkout.total : 49 });\r\n break;\r\n case 'FLAT05':\r\n amount = state.checkout.total < 5 ? state.checkout.total : 5;\r\n break;\r\n case 'SUB150':\r\n amount = state.checkout.total < 150 ? state.checkout.total : 150;\r\n break;\r\n case 'UPTO200':\r\n amount = chance.integer({ min: 1, max: state.checkout.total < 199 ? state.checkout.total : 199 });\r\n break;\r\n default:\r\n amount = 0;\r\n }\r\n }\r\n if (state.checkout.discount > 0) {\r\n difference = state.checkout.discount;\r\n }\r\n\r\n return {\r\n ...state,\r\n checkout: {\r\n ...state.checkout,\r\n discount: amount,\r\n total: state.checkout.total + difference - amount\r\n }\r\n };\r\n case actionTypes.SET_SHIPPING_CHARGE:\r\n newShipping = 0;\r\n if (state.checkout.shipping > 0 && payload.charge === 'free') {\r\n newShipping = -5;\r\n }\r\n if (payload.charge === 'fast') {\r\n newShipping = 5;\r\n }\r\n return {\r\n ...state,\r\n checkout: {\r\n ...state.checkout,\r\n shipping: payload.charge === 'fast' ? 5 : 0,\r\n total: state.checkout.total + newShipping,\r\n payment: {\r\n ...state.checkout.payment,\r\n type: payload.charge\r\n }\r\n }\r\n };\r\n case actionTypes.SET_PAYMENT_METHOD:\r\n return {\r\n ...state,\r\n checkout: {\r\n ...state.checkout,\r\n payment: {\r\n ...state.checkout.payment,\r\n method: payload.method\r\n }\r\n }\r\n };\r\n case actionTypes.SET_PAYMENT_CARD:\r\n return {\r\n ...state,\r\n checkout: {\r\n ...state.checkout,\r\n payment: {\r\n ...state.checkout.payment,\r\n card: payload.card\r\n }\r\n }\r\n };\r\n case actionTypes.RESET_CART:\r\n return initialState;\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport default cartReducer;\r\n","// third-party\r\nimport { Chance } from 'chance';\r\nimport { add, set, sub } from 'date-fns';\r\n\r\nconst chance = new Chance();\r\n\r\n// user profile data\r\nconst profileIds = {\r\n profile1: 'profile-1',\r\n profile2: 'profile-2',\r\n profile3: 'profile-3'\r\n};\r\n\r\nexport const profiles = [\r\n {\r\n id: profileIds.profile1,\r\n avatar: 'avatar-3.png',\r\n name: 'Barney Thea',\r\n time: '2 min ago'\r\n },\r\n {\r\n id: profileIds.profile2,\r\n avatar: 'avatar-1.png',\r\n name: 'Maddison Wilber',\r\n time: '1 day ago'\r\n },\r\n {\r\n id: profileIds.profile3,\r\n avatar: 'avatar-2.png',\r\n name: 'John Doe',\r\n time: 'now'\r\n }\r\n];\r\n\r\n// task comment data\r\nconst commentIds = {\r\n comment1: 'comment-1',\r\n comment2: 'comment-2',\r\n comment3: 'comment-3',\r\n comment4: 'comment-4',\r\n comment5: 'comment-5'\r\n};\r\n\r\nexport const comments = [\r\n {\r\n id: commentIds.comment1,\r\n comment: 'Comment 1',\r\n profileId: profileIds.profile1\r\n },\r\n {\r\n id: commentIds.comment2,\r\n comment: 'Comment 2',\r\n profileId: profileIds.profile2\r\n },\r\n {\r\n id: commentIds.comment3,\r\n comment: 'Comment 3',\r\n profileId: profileIds.profile3\r\n },\r\n {\r\n id: commentIds.comment4,\r\n comment: 'Comment 4',\r\n profileId: profileIds.profile2\r\n },\r\n {\r\n id: commentIds.comment5,\r\n comment: 'Comment 5',\r\n profileId: profileIds.profile3\r\n }\r\n];\r\n\r\n// items data\r\nconst itemIds = {\r\n item1: `${chance.integer({ min: 1000, max: 9999 })}`,\r\n item2: `${chance.integer({ min: 1000, max: 9999 })}`,\r\n item3: `${chance.integer({ min: 1000, max: 9999 })}`,\r\n item4: `${chance.integer({ min: 1000, max: 9999 })}`,\r\n item5: `${chance.integer({ min: 1000, max: 9999 })}`,\r\n item6: `${chance.integer({ min: 1000, max: 9999 })}`,\r\n item7: `${chance.integer({ min: 1000, max: 9999 })}`,\r\n item8: `${chance.integer({ min: 1000, max: 9999 })}`,\r\n item9: `${chance.integer({ min: 1000, max: 9999 })}`,\r\n item10: `${chance.integer({ min: 1000, max: 9999 })}`\r\n};\r\n\r\nexport const items = [\r\n {\r\n assign: profileIds.profile1,\r\n commentIds: [commentIds.comment1],\r\n description: 'Content of item 1',\r\n dueDate: sub(new Date(), { days: 12 }),\r\n id: itemIds.item1,\r\n image: 'profile-back-1.png',\r\n priority: 'low',\r\n title: 'Online fees payment & instant announcements'\r\n },\r\n {\r\n assign: profileIds.profile2,\r\n commentIds: [commentIds.comment2, commentIds.comment5],\r\n description: 'Content of item 2',\r\n dueDate: sub(new Date(), { days: 18 }),\r\n id: itemIds.item2,\r\n image: false,\r\n priority: 'high',\r\n title: 'Creation and Maintenance of Inventory Objects'\r\n },\r\n {\r\n assign: profileIds.profile3,\r\n description: 'Content of item 3',\r\n dueDate: sub(new Date(), { days: 8 }),\r\n id: itemIds.item3,\r\n image: false,\r\n priority: 'low',\r\n title: 'Update React & TypeScript version'\r\n },\r\n {\r\n assign: profileIds.profile2,\r\n commentIds: [commentIds.comment4],\r\n description: 'Content of item 4',\r\n dueDate: sub(new Date(), { days: 6 }),\r\n id: itemIds.item4,\r\n image: 'profile-back-2.png',\r\n priority: 'low',\r\n title: 'Set allowing rules for trusted applications.'\r\n },\r\n {\r\n assign: profileIds.profile2,\r\n commentIds: [commentIds.comment1, commentIds.comment2, commentIds.comment5],\r\n description: 'Content of item 5',\r\n dueDate: sub(new Date(), { days: 9 }),\r\n id: itemIds.item5,\r\n image: 'profile-back-3.png',\r\n priority: 'medium',\r\n title: 'Managing Applications Launch Control'\r\n },\r\n {\r\n assign: profileIds.profile3,\r\n commentIds: [commentIds.comment3, commentIds.comment4],\r\n description: 'Content of item 6',\r\n dueDate: set(new Date(), { hours: 10, minutes: 30 }),\r\n id: itemIds.item6,\r\n image: false,\r\n priority: 'medium',\r\n title: 'Run codemods'\r\n },\r\n {\r\n assign: profileIds.profile1,\r\n description: 'Content of item 7',\r\n dueDate: add(new Date(), { days: 5 }),\r\n id: itemIds.item7,\r\n image: 'profile-back-4.png',\r\n priority: 'low',\r\n title: 'Purchase Requisitions, Adjustments, and Transfers.'\r\n },\r\n {\r\n assign: profileIds.profile1,\r\n description: 'Content of item 8',\r\n dueDate: add(new Date(), { days: 17 }),\r\n id: itemIds.item8,\r\n image: false,\r\n priority: 'low',\r\n title: 'Attendance checking & homework details'\r\n },\r\n {\r\n assign: profileIds.profile3,\r\n commentIds: [commentIds.comment3],\r\n description: 'Content of item 9',\r\n dueDate: add(new Date(), { days: 8 }),\r\n id: itemIds.item9,\r\n image: false,\r\n priority: 'high',\r\n title: 'Admission, Staff & Schedule management'\r\n },\r\n {\r\n assign: profileIds.profile2,\r\n commentIds: [commentIds.comment5],\r\n description: 'Content of item 10',\r\n dueDate: add(new Date(), { days: 12 }),\r\n id: itemIds.item10,\r\n image: false,\r\n priority: 'low',\r\n title: 'Handling breaking changes'\r\n }\r\n];\r\n\r\n// columns data\r\nconst columnIds = {\r\n column1: 'column-1',\r\n column2: 'column-2',\r\n column3: 'column-3',\r\n column4: 'column-4'\r\n};\r\n\r\nexport const columns = [\r\n {\r\n id: columnIds.column1,\r\n title: 'New',\r\n itemIds: [itemIds.item1, itemIds.item8, itemIds.item9]\r\n },\r\n {\r\n id: columnIds.column2,\r\n title: 'Active',\r\n itemIds: [itemIds.item3, itemIds.item4, itemIds.item5]\r\n },\r\n {\r\n id: columnIds.column3,\r\n title: 'Resolved',\r\n itemIds: [itemIds.item2]\r\n },\r\n {\r\n id: columnIds.column4,\r\n title: 'Closed',\r\n itemIds: [itemIds.item6, itemIds.item7, itemIds.item10]\r\n }\r\n];\r\n\r\nexport const columnsOrder = [columnIds.column1, columnIds.column2, columnIds.column3, columnIds.column4];\r\n\r\n// user story data\r\nconst userStoryIds = {\r\n userStory1: `${chance.integer({ min: 1000, max: 9999 })}`,\r\n userStory2: `${chance.integer({ min: 1000, max: 9999 })}`,\r\n userStory3: `${chance.integer({ min: 1000, max: 9999 })}`,\r\n userStory4: `${chance.integer({ min: 1000, max: 9999 })}`\r\n};\r\n\r\nexport const userStoryOrder = [userStoryIds.userStory1, userStoryIds.userStory2, userStoryIds.userStory3, userStoryIds.userStory4];\r\n\r\nexport const userStory = [\r\n {\r\n acceptance: '',\r\n assign: profileIds.profile2,\r\n columnId: columnIds.column4,\r\n commentIds: [commentIds.comment5],\r\n description: chance.sentence(),\r\n dueDate: add(new Date(), { days: 12 }),\r\n id: userStoryIds.userStory1,\r\n priority: 'low',\r\n title: 'School Management Backend',\r\n itemIds: [itemIds.item1, itemIds.item8, itemIds.item9]\r\n },\r\n {\r\n acceptance: chance.sentence(),\r\n assign: profileIds.profile3,\r\n columnId: columnIds.column1,\r\n commentIds: [commentIds.comment3],\r\n description: chance.sentence(),\r\n dueDate: add(new Date(), { days: 8 }),\r\n id: userStoryIds.userStory2,\r\n priority: 'high',\r\n title: 'Inventory Implementation & Design',\r\n itemIds: [itemIds.item2, itemIds.item7]\r\n },\r\n {\r\n acceptance: chance.sentence({ words: 10 }),\r\n assign: profileIds.profile3,\r\n columnId: columnIds.column4,\r\n commentIds: [commentIds.comment3, commentIds.comment4],\r\n description: chance.sentence(),\r\n dueDate: set(new Date(), { hours: 10, minutes: 30 }),\r\n id: userStoryIds.userStory3,\r\n priority: 'medium',\r\n title: 'Theme migration from v4 to v5',\r\n itemIds: [itemIds.item3, itemIds.item6, itemIds.item10]\r\n },\r\n {\r\n acceptance: chance.sentence({ words: 5 }),\r\n assign: profileIds.profile1,\r\n columnId: columnIds.column3,\r\n commentIds: [commentIds.comment4],\r\n description: chance.sentence(),\r\n dueDate: sub(new Date(), { days: 8 }),\r\n id: userStoryIds.userStory4,\r\n priority: 'low',\r\n title: 'Lunch Beauty Application',\r\n itemIds: [itemIds.item4, itemIds.item5]\r\n }\r\n];\r\n\r\nexport const approvers = [];\r\n\r\nexport const approversOrder = [];\r\n","// project imports\r\nimport { columns, columnsOrder, comments, items, profiles, userStory, userStoryOrder, approvers, approversOrder } from './kanban';\r\nimport {\r\n ADD_COLUMN,\r\n EDIT_COLUMN,\r\n DELETE_COLUMN,\r\n UPDATE_COLUMN_ORDER,\r\n UPDATE_COLUMN_ITEM_ORDER,\r\n DELETE_ITEM,\r\n SELECT_ITEM,\r\n ADD_ITEM,\r\n ADD_ITEM_COMMENT,\r\n EDIT_ITEM,\r\n ADD_STORY,\r\n EDIT_STORY,\r\n UPDATE_STORY_ORDER,\r\n UPDATE_STORY_ITEM_ORDER,\r\n ADD_STORY_COMMENT,\r\n DELETE_STORY,\r\n DELETE_APPROVER,\r\n ADD_APPROVER,\r\n UPDATE_APPROVER_ORDER,\r\n SET_APPROVERS\r\n} from './actions';\r\n\r\nimport { Chance } from 'chance';\r\nconst chance = new Chance();\r\n\r\n\r\nconst initialState = {\r\n columns,\r\n columnsOrder,\r\n comments,\r\n items,\r\n profiles,\r\n selectedItem: false,\r\n userStory,\r\n userStoryOrder,\r\n approvers,\r\n approversOrder\r\n};\r\n\r\nconst kanbanReducer = (state = initialState, action) => {\r\n let newColumn;\r\n let currentColumn;\r\n let newUserStory;\r\n let currentStory;\r\n let newItems;\r\n let itemIds;\r\n\r\n switch (action.type) {\r\n case ADD_COLUMN:\r\n return {\r\n ...state,\r\n columns: [...state.columns, action.payload.column],\r\n columnsOrder: [...state.columnsOrder, action.payload.column.id]\r\n };\r\n case UPDATE_COLUMN_ORDER:\r\n return {\r\n ...state,\r\n columnsOrder: action.payload.columnsOrder\r\n };\r\n case EDIT_COLUMN:\r\n state.columns.splice(\r\n state.columns.findIndex((column) => column.id === action.payload.column.id),\r\n 1,\r\n action.payload.column\r\n );\r\n\r\n return {\r\n ...state,\r\n columns: state.columns\r\n };\r\n case DELETE_COLUMN:\r\n state.columns.splice(\r\n state.columns.findIndex((column) => column.id === action.payload.columnId),\r\n 1\r\n );\r\n\r\n state.columnsOrder.splice(\r\n state.columnsOrder.findIndex((columnId) => columnId === action.payload.columnId),\r\n 1\r\n );\r\n\r\n return {\r\n ...state,\r\n columns: state.columns,\r\n columnsOrder: state.columnsOrder\r\n };\r\n case ADD_ITEM:\r\n if (action.payload.columnId !== '0') {\r\n newColumn = state.columns.map((column) => {\r\n if (column.id === action.payload.columnId) {\r\n return {\r\n ...column,\r\n itemIds: column.itemIds ? [...column.itemIds, action.payload.item.id] : [action.payload.item.id]\r\n };\r\n }\r\n return column;\r\n });\r\n } else {\r\n newColumn = state.columns;\r\n }\r\n\r\n if (action.payload.storyId !== '0') {\r\n newUserStory = state.userStory.map((story) => {\r\n if (story.id === action.payload.storyId) {\r\n return { ...story, itemIds: story.itemIds ? [...story.itemIds, action.payload.item.id] : [action.payload.item.id] };\r\n }\r\n return story;\r\n });\r\n } else {\r\n newUserStory = state.userStory;\r\n }\r\n\r\n return {\r\n ...state,\r\n items: [...state.items, action.payload.item],\r\n columns: newColumn,\r\n userStory: newUserStory\r\n };\r\n case EDIT_ITEM:\r\n state.items.splice(\r\n state.items.findIndex((item) => item.id === action.payload.item.id),\r\n 1,\r\n action.payload.item\r\n );\r\n\r\n newUserStory = state.userStory;\r\n if (action.payload.storyId) {\r\n currentStory = state.userStory.filter((story) => story.itemIds.filter((itemId) => itemId === action.payload.item.id)[0])[0];\r\n\r\n if (currentStory !== undefined && currentStory.id !== action.payload.storyId) {\r\n newUserStory = state.userStory.map((story) => {\r\n if (story.itemIds.filter((itemId) => itemId === action.payload.item.id)[0]) {\r\n return {\r\n ...story,\r\n itemIds: story.itemIds.filter((itemId) => itemId !== action.payload.item.id)\r\n };\r\n }\r\n if (story.id === action.payload.storyId) {\r\n return {\r\n ...story,\r\n itemIds: story.itemIds ? [...story.itemIds, action.payload.item.id] : [action.payload.item.id]\r\n };\r\n }\r\n return story;\r\n });\r\n }\r\n\r\n if (currentStory === undefined) {\r\n newUserStory = state.userStory.map((story) => {\r\n if (story.id === action.payload.storyId) {\r\n return {\r\n ...story,\r\n itemIds: story.itemIds ? [...story.itemIds, action.payload.item.id] : [action.payload.item.id]\r\n };\r\n }\r\n return story;\r\n });\r\n }\r\n }\r\n\r\n newColumn = state.columns;\r\n if (action.payload.columnId) {\r\n currentColumn = state.columns.filter(\r\n (column) => column.itemIds.filter((itemId) => itemId === action.payload.item.id)[0]\r\n )[0];\r\n if (currentColumn !== undefined && currentColumn.id !== action.payload.columnId) {\r\n newColumn = state.columns.map((column) => {\r\n if (column.itemIds.filter((itemId) => itemId === action.payload.item.id)[0]) {\r\n return {\r\n ...column,\r\n itemIds: column.itemIds.filter((itemId) => itemId !== action.payload.item.id)\r\n };\r\n }\r\n if (column.id === action.payload.columnId) {\r\n return {\r\n ...column,\r\n itemIds: column.itemIds ? [...column.itemIds, action.payload.item.id] : [action.payload.item.id]\r\n };\r\n }\r\n return column;\r\n });\r\n }\r\n\r\n if (currentColumn === undefined) {\r\n newColumn = state.columns.map((column) => {\r\n if (column.id === action.payload.columnId) {\r\n return {\r\n ...column,\r\n itemIds: column.itemIds ? [...column.itemIds, action.payload.item.id] : [action.payload.item.id]\r\n };\r\n }\r\n return column;\r\n });\r\n }\r\n }\r\n\r\n return {\r\n ...state,\r\n items: state.items,\r\n columns: newColumn,\r\n userStory: newUserStory\r\n };\r\n case UPDATE_COLUMN_ITEM_ORDER:\r\n return {\r\n ...state,\r\n columns: action.payload.columns\r\n };\r\n case SELECT_ITEM:\r\n return {\r\n ...state,\r\n selectedItem: action.payload.selectedItem\r\n };\r\n case ADD_ITEM_COMMENT:\r\n newItems = state.items.map((item) => {\r\n if (item.id === action.payload.itemId) {\r\n return {\r\n ...item,\r\n commentIds: item.commentIds ? [...item.commentIds, action.payload.comment.id] : [action.payload.comment.id]\r\n };\r\n }\r\n return item;\r\n });\r\n\r\n return {\r\n ...state,\r\n items: newItems,\r\n comments: [...state.comments, action.payload.comment]\r\n };\r\n case DELETE_ITEM:\r\n newColumn = state.columns.map((column) => {\r\n itemIds = column.itemIds.filter((id) => id !== action.payload.itemId);\r\n return {\r\n ...column,\r\n itemIds\r\n };\r\n });\r\n\r\n newUserStory = state.userStory.map((story) => {\r\n itemIds = story.itemIds.filter((id) => id !== action.payload.itemId);\r\n return {\r\n ...story,\r\n itemIds\r\n };\r\n });\r\n\r\n state.items.splice(\r\n state.items.findIndex((item) => item.id === action.payload.itemId),\r\n 1\r\n );\r\n\r\n return {\r\n ...state,\r\n items: state.items,\r\n columns: newColumn,\r\n userStory: newUserStory\r\n };\r\n\r\n case ADD_STORY:\r\n return {\r\n ...state,\r\n userStory: [...state.userStory, action.payload.story],\r\n userStoryOrder: [...state.userStoryOrder, action.payload.story.id]\r\n };\r\n case EDIT_STORY:\r\n state.userStory.splice(\r\n state.userStory.findIndex((story) => story.id === action.payload.story.id),\r\n 1,\r\n action.payload.story\r\n );\r\n\r\n return {\r\n ...state,\r\n userStory: state.userStory\r\n };\r\n case UPDATE_STORY_ORDER:\r\n return {\r\n ...state,\r\n userStoryOrder: action.payload.userStoryOrder\r\n };\r\n case UPDATE_STORY_ITEM_ORDER:\r\n return {\r\n ...state,\r\n userStory: action.payload.userStory\r\n };\r\n case ADD_STORY_COMMENT:\r\n newUserStory = state.userStory.map((story) => {\r\n if (story.id === action.payload.storyId) {\r\n return {\r\n ...story,\r\n commentIds: story.commentIds ? [...story.commentIds, action.payload.comment.id] : [action.payload.comment.id]\r\n };\r\n }\r\n return story;\r\n });\r\n\r\n return {\r\n ...state,\r\n userStory: newUserStory,\r\n comments: [...state.comments, action.payload.comment]\r\n };\r\n case DELETE_STORY:\r\n state.userStory.splice(\r\n state.userStory.findIndex((story) => story.id === action.payload.storyId),\r\n 1\r\n );\r\n\r\n state.userStoryOrder.splice(\r\n state.userStoryOrder.findIndex((storyId) => storyId === action.payload.storyId),\r\n 1\r\n );\r\n\r\n return {\r\n ...state,\r\n userStory: state.userStory,\r\n userStoryOrder: state.userStoryOrder\r\n };\r\n case ADD_APPROVER:\r\n return {\r\n ...state,\r\n approvers: [...state.approvers, action.payload.approver],\r\n approversOrder: [...state.approversOrder, action.payload.approver.id]\r\n };\r\n case UPDATE_APPROVER_ORDER:\r\n return {\r\n ...state,\r\n approversOrder: action.payload.approversOrder\r\n };\r\n case DELETE_APPROVER:\r\n state.approvers.splice(\r\n state.approvers.findIndex((user) => user.id === action.payload.id),\r\n 1\r\n );\r\n\r\n state.approversOrder.splice(\r\n state.approversOrder.findIndex((id) => id === action.payload.id),\r\n 1\r\n );\r\n\r\n return {\r\n ...state,\r\n approvers: state.approvers,\r\n approversOrder: state.approversOrder\r\n };\r\n case SET_APPROVERS:\r\n action.payload.approvers.forEach(element => {\r\n element.id = `${chance.integer({ min: 1000, max: 9999 })}`\r\n });\r\n state.approvers = action.payload.approvers;\r\n state.approversOrder = action.payload.approvers.map(m => m.id);\r\n return state;\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport default kanbanReducer;\r\n","// action - state management\r\nimport * as actionTypes from \"./actions\";\r\n\r\nconst initialState = {\r\n sellerInfo: \"\",\r\n aufnrInfo: \"\",\r\n hkontInfo: \"\",\r\n};\r\n\r\n// ==============================|| EXPENSE REDUCER ||============================== //\r\n\r\nconst expenseReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.CHANGE_SELLER:\r\n return { ...state, sellerInfo: action?.payload?.sellerInfo };\r\n case actionTypes.CHANGE_AUFNR:\r\n return { ...state, aufnrInfo: action?.payload?.aufnrInfo };\r\n case actionTypes.CHANGE_HKONT:\r\n return { ...state, hkontInfo: action?.payload?.hkontInfo };\r\n case actionTypes.GETCOMPANY_INFO:\r\n return { ...state, companyInfo: action.companyInfo };\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport default expenseReducer;\r\n","import { combineReducers } from 'redux';\r\nimport { persistReducer } from 'redux-persist';\r\nimport storage from 'redux-persist/lib/storage';\r\n\r\n// reducer import\r\nimport customizationReducer from './customizationReducer';\r\nimport snackbarReducer from './snackbarReducer';\r\nimport cartReducer from './cartReducer';\r\nimport kanbanReducer from './kanbanReducer';\r\nimport expenseReducer from './expenseReducer'\r\n\r\n// ==============================|| COMBINE REDUCER ||============================== //\r\n\r\nconst reducer = combineReducers({\r\n customization: customizationReducer,\r\n snackbar: snackbarReducer,\r\n cart: persistReducer(\r\n {\r\n key: 'cart',\r\n storage,\r\n keyPrefix: 'berry-'\r\n },\r\n cartReducer\r\n ),\r\n kanban: kanbanReducer,\r\n expense: expenseReducer\r\n});\r\n\r\nexport default reducer;\r\n","import { createStore } from 'redux';\r\nimport { persistStore } from 'redux-persist';\r\nimport reducer from './reducer';\r\n\r\n// ==============================|| REDUX - MAIN STORE ||============================== //\r\n\r\nconst store = createStore(reducer);\r\nconst persister = persistStore(store);\r\n\r\nexport { store, persister };\r\n","import ReactDOM from 'react-dom';\r\n\r\n// third party\r\nimport { BrowserRouter } from 'react-router-dom';\r\nimport { Provider } from 'react-redux';\r\nimport { PersistGate } from 'redux-persist/integration/react';\r\n\r\n// load mock apis\r\n\r\n\r\n// project imports\r\nimport * as serviceWorker from 'serviceWorker';\r\nimport App from 'App';\r\nimport { store, persister } from 'store';\r\n\r\n// style + assets\r\nimport 'assets/scss/style.scss';\r\nimport config from 'config';\r\n\r\n// ==============================|| REACT DOM RENDER ||============================== //\r\n\r\nReactDOM.render(\r\n \r\n \r\n \r\n \r\n \r\n \r\n ,\r\n document.getElementById('root')\r\n);\r\n\r\n// If you want your app to work offline and load faster, you can change\r\n// unregister() to register() below. Note this comes with some pitfalls.\r\n// Learn more about service workers: https://bit.ly/CRA-PWA\r\nserviceWorker.unregister();\r\n","export default __webpack_public_path__ + \"static/media/img-error-bg.0eedc187.svg\";","export default __webpack_public_path__ + \"static/media/img-error-bg-dark.420ab717.svg\";","export default __webpack_public_path__ + \"static/media/img-error-blue.60aad3ce.svg\";","export default __webpack_public_path__ + \"static/media/img-error-text.cb32513e.svg\";","export default __webpack_public_path__ + \"static/media/img-error-purple.8b0303a8.svg\";","import { Link } from 'react-router-dom';\r\n\r\n// material-ui\r\nimport { useTheme, styled } from '@mui/material/styles';\r\nimport { Button, Card, CardContent, CardMedia, Grid, Typography } from '@mui/material';\r\n\r\n// project imports\r\nimport config from 'config';\r\nimport AnimateButton from 'ui-component/extended/AnimateButton';\r\nimport { gridSpacing } from 'store/constant';\r\n\r\n// assets\r\nimport HomeTwoToneIcon from '@mui/icons-material/HomeTwoTone';\r\n\r\nimport imageBackground from 'assets/images/maintenance/img-error-bg.svg';\r\nimport imageDarkBackground from 'assets/images/maintenance/img-error-bg-dark.svg';\r\nimport imageBlue from 'assets/images/maintenance/img-error-blue.svg';\r\nimport imageText from 'assets/images/maintenance/img-error-text.svg';\r\nimport imagePurple from 'assets/images/maintenance/img-error-purple.svg';\r\n\r\n// styles\r\nconst CardMediaWrapper = styled('div')({\r\n maxWidth: 720,\r\n margin: '0 auto',\r\n position: 'relative'\r\n});\r\n\r\nconst ErrorWrapper = styled('div')({\r\n maxWidth: 350,\r\n margin: '0 auto',\r\n textAlign: 'center'\r\n});\r\n\r\nconst ErrorCard = styled(Card)({\r\n minHeight: '100vh',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n});\r\n\r\nconst CardMediaBlock = styled('img')({\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n width: '100%',\r\n animation: '3s bounce ease-in-out infinite'\r\n});\r\n\r\nconst CardMediaBlue = styled('img')({\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n width: '100%',\r\n animation: '15s wings ease-in-out infinite'\r\n});\r\n\r\nconst CardMediaPurple = styled('img')({\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n width: '100%',\r\n animation: '12s wings ease-in-out infinite'\r\n});\r\nconst ErrorPage = () => {\r\n const theme = useTheme();\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Aradığınız sayfaya ulaşılamadı\r\n \r\n \r\n \r\n \r\n Yardım talebi oluşturabilir ya da anasayfadan işlemlerinize devam edebilirsiniz.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\nexport default ErrorPage;\r\n","const config = {\r\n // basename: only at build time to set, and Don't add '/' at end off BASENAME for breadcrumbs, also Don't put only '/' use blank('') instead,\r\n // like '/berry-material-react/react/default'\r\n basename: '',\r\n defaultPath: '/dashboard',\r\n fontFamily: `'Roboto', sans-serif`,\r\n borderRadius: 12,\r\n outlinedFilled: true,\r\n theme: 'light', // light, dark\r\n presetColor: 'theme3', // default, theme1, theme2, theme3, theme4, theme5, theme6\r\n i18n: 'tr', // 'en' - English, 'fr' - French, 'ro' - Romanian, 'zh' - Chinese\r\n rtlLayout: false,\r\n jwt: {\r\n secret: 'SECRET-KEY',\r\n timeout: '1 days'\r\n },\r\n firebase: {\r\n apiKey: 'AIzaSyBernKzdSojh_vWXBHt0aRhf5SC9VLChbM',\r\n authDomain: 'berry-material-react.firebaseapp.com',\r\n projectId: 'berry-material-react',\r\n storageBucket: 'berry-material-react.appspot.com',\r\n messagingSenderId: '901111229354',\r\n appId: '1:901111229354:web:a5ae5aa95486297d69d9d3',\r\n measurementId: 'G-MGJHSL8XW3'\r\n },\r\n auth0: {\r\n client_id: '7T4IlWis4DKHSbG8JAye4Ipk0rvXkH9V',\r\n domain: 'dev-w0-vxep3.us.auth0.com'\r\n }\r\n};\r\n\r\nexport default config;\r\n","// theme constant\r\nexport const gridSpacing = 3;\r\nexport const drawerWidth = 260;\r\nexport const appDrawerWidth = 320;\r\n","import { useContext } from 'react';\r\n\r\n// auth provider\r\n//import FirebaseContext from 'contexts/FirebaseContext';\r\nimport JWTContext from 'contexts/JWTContext';\r\n// import Auth0Context from 'contexts/Auth0Context';\r\n\r\n// ==============================|| AUTH HOOKS ||============================== //\r\n\r\nconst useAuth = () => {\r\n const context = useContext(JWTContext);\r\n\r\n if (!context) throw new Error('context must be use inside provider');\r\n\r\n return context;\r\n};\r\n\r\nexport default useAuth;\r\n"],"sourceRoot":""}