{"version":3,"sources":["assets/img/sidebar-2.jpg","assets/img/logo-white.svg","assets/img/sidebar-1.jpg","assets/img/sidebar-3.jpg","assets/img/sidebar-4.jpg","assets/img/logo.svg","variables/charts.js","assets/img/card-2.jpeg","assets/img/card-1.jpeg","assets/img/faces/avatar.jpg","assets/img/faces/card-profile1-square.jpg","assets/img/image_placeholder.jpg","assets/img/placeholder.jpg","assets/img/card-3.jpeg","assets/img/product1.jpg","assets/img/product2.jpg","assets/img/product3.jpg","assets/img/faces/marc.jpg","assets/img/default-avatar.png","assets/img/register.jpeg","assets/img/login.jpeg","assets/img/lock.jpeg","assets/img/clint-mckoy.jpg","assets/img/bg-pricing.jpeg","assets/img/flags/US.png","assets/img/flags/DE.png","assets/img/flags/AU.png","assets/img/flags/GB.png","assets/img/flags/RO.png","assets/img/flags/BR.png","assets/jss/material-dashboard-pro-react.js","assets/jss/material-dashboard-pro-react/components/buttonStyle.js","components/CustomButtons/Button.js","assets/jss/material-dashboard-pro-react/components/authNavbarStyle.js","components/Navbars/AuthNavbar.js","assets/jss/material-dashboard-pro-react/components/footerStyle.js","components/Footer/Footer.js","components/Grid/GridContainer.js","components/Grid/GridItem.js","assets/jss/material-dashboard-pro-react/components/paginationStyle.js","components/Pagination/Pagination.js","assets/jss/material-dashboard-pro-react/components/cardStyle.js","components/Card/Card.js","assets/jss/material-dashboard-pro-react/components/cardBodyStyle.js","components/Card/CardBody.js","assets/jss/material-dashboard-pro-react/buttonGroupStyle.js","assets/jss/material-dashboard-pro-react/views/buttonsStyle.js","views/Components/Buttons.js","assets/jss/material-dashboard-pro-react/components/headingStyle.js","components/Heading/Heading.js","assets/jss/material-dashboard-pro-react/components/customDropdownStyle.js","components/CustomDropdown/CustomDropdown.js","variables/general.js","views/Calendar/Calendar.js","assets/jss/material-dashboard-pro-react/components/cardHeaderStyle.js","components/Card/CardHeader.js","assets/jss/material-dashboard-pro-react/components/cardIconStyle.js","components/Card/CardIcon.js","assets/jss/material-dashboard-pro-react/components/cardFooterStyle.js","components/Card/CardFooter.js","assets/jss/material-dashboard-pro-react/views/chartsStyle.js","views/Charts/Charts.js","assets/jss/material-dashboard-pro-react/components/tableStyle.js","components/Table/Table.js","assets/jss/material-dashboard-pro-react/components/typographyStyle.js","components/Typography/Danger.js","assets/jss/material-dashboard-pro-react/views/dashboardStyle.js","assets/jss/material-dashboard-pro-react/hoverCardStyle.js","views/Dashboard/Dashboard.js","assets/jss/material-dashboard-pro-react/views/errorPageStyles.js","views/Pages/ErrorPage.js","assets/jss/material-dashboard-pro-react/components/customLinearProgressStyle.js","components/CustomLinearProgress/CustomLinearProgress.js","assets/jss/material-dashboard-pro-react/customSelectStyle.js","assets/jss/material-dashboard-pro-react/customCheckboxRadioSwitch.js","assets/jss/material-dashboard-pro-react/views/extendedFormsStyle.js","views/Forms/ExtendedForms.js","assets/jss/material-dashboard-pro-react/views/extendedTablesStyle.js","views/Tables/ExtendedTables.js","views/Maps/FullScreenMap.js","views/Maps/GoogleMaps.js","assets/jss/material-dashboard-pro-react/views/gridSystemStyle.js","views/Components/GridSystem.js","assets/jss/material-dashboard-pro-react/views/iconsStyle.js","views/Components/Icons.js","assets/jss/material-dashboard-pro-react/components/customInputStyle.js","components/CustomInput/CustomInput.js","assets/jss/material-dashboard-pro-react/components/cardAvatarStyle.js","components/Card/CardAvatar.js","assets/jss/material-dashboard-pro-react/views/lockScreenPageStyle.js","views/Pages/LockScreenPage.js","assets/jss/material-dashboard-pro-react/views/loginPageStyle.js","ultils/appSession.js","ultils/request.js","views/Pages/LoginPage.js","assets/jss/material-dashboard-pro-react/components/snackbarContentStyle.js","components/Snackbar/SnackbarContent.js","components/Snackbar/Snackbar.js","assets/jss/material-dashboard-pro-react/components/instructionStyle.js","components/Instruction/Instruction.js","assets/jss/material-dashboard-pro-react/modalStyle.js","assets/jss/material-dashboard-pro-react/views/notificationsStyle.js","views/Components/Notifications.js","assets/jss/material-dashboard-pro-react/components/navPillsStyle.js","components/NavPills/NavPills.js","assets/jss/material-dashboard-pro-react/components/accordionStyle.js","components/Accordion/Accordion.js","views/Components/Panels.js","assets/jss/material-dashboard-pro-react/views/pricingPageStyle.js","views/Pages/PricingPage.js","assets/jss/material-dashboard-pro-react/components/badgeStyle.js","components/Badge/Badge.js","assets/jss/material-dashboard-pro-react/components/timelineStyle.js","components/Timeline/Timeline.js","assets/jss/material-dashboard-pro-react/components/customTabsStyle.js","components/CustomTabs/CustomTabs.js","assets/jss/material-dashboard-pro-react/components/tasksStyle.js","components/Tasks/Tasks.js","assets/jss/material-dashboard-pro-react/components/cardTextStyle.js","components/Card/CardText.js","views/Pages/RTLSupport.js","components/ReactTable/ReactTable.js","views/Tables/ReactTables.js","assets/jss/material-dashboard-pro-react/components/infoStyle.js","components/InfoArea/InfoArea.js","assets/jss/material-dashboard-pro-react/views/registerPageStyle.js","views/Pages/RegisterPage.js","assets/jss/material-dashboard-pro-react/views/regularFormsStyle.js","views/Forms/RegularForms.js","views/Tables/RegularTables.js","assets/jss/material-dashboard-pro-react/views/sweetAlertStyle.js","views/Components/SweetAlert.js","components/Typography/Quote.js","components/Typography/Muted.js","components/Typography/Primary.js","components/Typography/Info.js","components/Typography/Success.js","components/Typography/Warning.js","views/Components/Typography.js","components/Clearfix/Clearfix.js","assets/jss/material-dashboard-pro-react/views/userProfileStyles.js","views/Pages/UserProfile.js","assets/jss/material-dashboard-pro-react/views/validationFormsStyle.js","views/Forms/ValidationForms.js","views/Widgets/Widgets.js","assets/jss/material-dashboard-pro-react/components/wizardStyle.js","components/Wizard/Wizard.js","components/CustomUpload/PictureUpload.js","views/Forms/WizardSteps/Step1.js","views/Forms/WizardSteps/Step2.js","views/Forms/WizardSteps/Step3.js","views/Pages/OrderPage.js","components/DataCategory/DataCategory.js","components/NetworkSelect/NetworkSelect.js","views/Components/Transfer/index.js","views/Pages/UserPage.js","views/Pages/DataPage.js","services/signalRService.js","variables/constant.js","views/Pages/ImportPage.js","views/Pages/DataCategoryPage.js","ultils/formater.js","views/Pages/UserPage/UserCallPage.js","views/Pages/UserPage/UserCallHistoryPage.js","views/Pages/Home.js","views/Pages/TeamPage.js","routes.js","assets/jss/material-dashboard-pro-react/layouts/authStyle.js","layouts/Auth.js","assets/jss/material-dashboard-pro-react/components/adminNavbarLinksStyle.js","components/Navbars/AdminNavbarLinks.js","assets/jss/material-dashboard-pro-react/components/adminNavbarStyle.js","components/Navbars/AdminNavbar.js","assets/jss/material-dashboard-pro-react/components/sidebarStyle.js","components/Sidebar/Sidebar.js","components/FixedPlugin/FixedPlugin.js","assets/jss/material-dashboard-pro-react/layouts/rtlStyle.js","layouts/RTL.js","components/PrivateRouter/PrivateRouter.js","assets/jss/material-dashboard-pro-react/layouts/adminStyle.js","layouts/Admin.js","components/AppBar/AppBar.js","layouts/User.js","index.js"],"names":["module","exports","Chartist","require","dailySalesChart","data","labels","series","options","lineSmooth","Interpolation","cardinal","tension","low","high","chartPadding","top","right","bottom","left","animation","draw","type","element","animate","d","begin","dur","from","path","clone","scale","translate","chartRect","height","stringify","to","easing","Svg","Easing","easeOutQuint","opacity","index","emailsSubscriptionChart","axisX","showGrid","responsiveOptions","seriesBarDistance","labelInterpolationFnc","value","completedTasksChart","roundedLineChart","showPoint","straightLinesChart","classNames","point","line","simpleBarChart","colouredLineChart","axisY","offset","multipleBarsChart","colouredLinesChart","pieChart","hexToRgb","input","replace","test","length","Error","first","second","last","toUpperCase","parseInt","transition","containerFluid","paddingRight","paddingLeft","marginRight","marginLeft","display","content","clear","container","width","defaultFont","fontFamily","fontWeight","lineHeight","primaryColor","warningColor","dangerColor","successColor","infoColor","roseColor","grayColor","boxShadow","primaryBoxShadow","infoBoxShadow","successBoxShadow","warningBoxShadow","dangerBoxShadow","roseBoxShadow","warningCardHeader","background","successCardHeader","dangerCardHeader","infoCardHeader","primaryCardHeader","roseCardHeader","defaultBoxShadow","border","borderRadius","padding","tooltip","minWidth","color","maxWidth","textAlign","fontSize","fontStyle","textShadow","textTransform","letterSpacing","wordBreak","wordSpacing","wordWrap","whiteSpace","lineBreak","title","textDecoration","marginTop","marginBottom","minHeight","cardTitle","buttonStyle","button","backgroundColor","position","margin","willChange","verticalAlign","touchAction","cursor","transform","fullWidth","primary","info","success","warning","danger","rose","white","twitter","facebook","google","linkedin","pinterest","youtube","tumblr","github","behance","dribbble","reddit","simple","transparent","disabled","pointerEvents","lg","sm","round","block","link","justIcon","useStyles","makeStyles","styles","RegularButton","React","forwardRef","props","ref","classes","children","size","className","muiClasses","rest","btnClasses","createElement","Button","Object","assign","pagesHeaderStyle","theme","appBar","borderBottom","paddingTop","zIndex","flex","appResponsive","list","listStyle","paddingBottom","listItem","float","breakpoints","down","navLink","listItemIcon","listItemText","navLinkActive","drawerPaper","transitionProperty","transitionDuration","transitionTimingFunction","visibility","overflowY","borderTop","sidebarButton","AuthNavbar","open","setOpen","useState","handleDrawerToggle","activeRoute","routeName","window","location","href","indexOf","brandText","appBarClasses","cx","List","ListItem","NavLink","Dashboard","ListItemText","disableTypography","Fingerprint","LockOpen","AppBar","Toolbar","Hidden","smDown","mdUp","aria-label","onClick","Menu","Drawer","variant","anchor","paper","onClose","ModalProps","keepMounted","footerStyle","footer","a","inlineBlock","whiteColor","Footer","fluid","rtlActive","Date","getYear","grid","GridContainer","Grid","GridItem","item","paginationStyle","pagination","paginationItem","paginationLink","marginleft","boxSizing","borderColor","Pagination","pages","map","prop","key","active","undefined","text","alert","defaultProps","cardStyle","card","flexDirection","cardPlain","cardProfile","cardBlog","cardRaised","cardBackground","backgroundPosition","backgroundSize","cardPricing","cardPricingColor","cardProduct","cardChart","cardLogin","Card","plain","profile","blog","raised","pricing","product","testimonial","chart","login","cardClasses","cardBodyStyle","cardBody","WebkitBoxFlex","cardBodyBackground","cardBodyPlain","cardBodyFormHorizontal","cardSignup","cardBodyColor","cardBodyProfile","cardBodyCalendar","CardBody","formHorizontal","signup","calendar","cardBodyClasses","buttonGroupStyle","buttonGroup","firstButton","borderTopRightRadius","borderBottomRightRadius","middleButton","lastButton","borderTopLeftRadius","borderBottomLeftRadius","buttonsStyle","cardHeader","cardContentLeft","cardContentRight","cardContentBottom","icons","socialButtonsIcons","headingStyle","heading","rightTextAlign","leftTextAlign","centerTextAlign","category","Heading","customDropdownStyle","popperClose","popperNav","manager","innerManager","justifyContent","target","dropdown","backgroundClip","menuList","popperResponsive","dropdownItem","darkHover","primaryHover","infoHover","successHover","warningHover","dangerHover","roseHover","dropdownItemRTL","dropdownDividerItem","overflow","buttonIcon","caret","borderRight","borderLeft","caretActive","caretDropup","caretRTL","dropdownHeader","noLiPadding","CustomDropdown","anchorEl","setAnchorEl","handleClose","event","contains","handleCloseMenu","param","buttonText","dropdownList","buttonProps","dropup","hoverColor","dropPlacement","innerDropDown","navDropdown","caretClasses","Boolean","dropDownMenu","MenuList","role","MenuItem","divider","Divider","style","aria-owns","aria-haspopup","currentTarget","Popper","disablePortal","placement","Grow","in","id","transformOrigin","Paper","ClickAwayListener","onClickAway","CardTravel","Extension","Build","FlightLand","today","y","getFullYear","m","getMonth","getDate","dataTable","headerRow","footerRow","dataRows","userCallLogStatus","networkList","momentLocalizer","moment","cardHeaderStyle","cardHeaderPlain","cardHeaderImage","cardHeaderContact","cardHeaderSignup","cardHeaderStats","cardHeaderIcon","cardHeaderText","CardHeader","image","contact","stats","icon","cardHeaderClasses","cardIconStyle","cardIcon","CardIcon","cardIconClasses","cardFooterStyle","cardFooter","alignItems","cardFooterProfile","cardFooterPlain","cardFooterPricing","cardFooterTestimonial","cardFooterStats","cardFooterChart","CardFooter","cardFooterClasses","chartsStyle","cardCategory","cardIconTitle","legendTitle","gray","tableStyle","table","borderSpacing","borderCollapse","tableShoppingHead","tableHeadFontSize","tableHeadCell","tableCell","tableCellTotal","tableCellAmount","tableResponsive","overflowX","tableStripedRow","tableRowHover","warningRow","dangerRow","successRow","infoRow","tableRowBody","tableRowHead","CustomTable","tableHead","tableData","tableHeaderColor","hover","colorsColls","coloredColls","customCellClasses","customClassesForCells","striped","tableShopping","customHeadCellClasses","customHeadClassesForCells","Table","TableHead","TableRow","tableRow","tableCellClasses","TableCell","TableBody","rowColor","rowColored","tableRowClasses","total","colSpan","colspan","amount","purchase","col","typographyStyle","defaultFontStyle","defaultHeaderMargins","quote","quoteText","quoteAuthor","mutedText","primaryText","infoText","successText","warningText","dangerText","dashboardStyle","cardHover","cardHeaderHover","cardHoverUnder","cardProductTitle","cardProductDesciprion","productStats","upArrowCardCategory","underChartIcons","price","errorPageStyles","contentCenter","subTitle","description","customLinearProgressStyle","root","bar","primaryBackground","warningBackground","dangerBackground","successBackground","infoBackground","roseBackground","grayBackground","CustomLinearProgress","LinearProgress","customSelectStyle","select","selectFormControl","borderBottomWidth","borderBottomColor","selectLabel","selectMenu","maxHeight","selectMenuItem","selectMenuItemSelected","selectMenuItemSelectedMultiple","selectPaper","customCheckboxRadioSwitch","checkRoot","radioRoot","labelRoot","checkboxAndRadio","checkboxAndRadioHorizontal","checked","checkedIcon","uncheckedIcon","disabledCheckboxAndRadio","label","labelHorizontal","labelHorizontalRadioCheckbox","labelLeftHorizontal","labelError","radio","radioChecked","radioUnchecked","inlineChecks","iconCheckbox","borderWidth","borderStyle","iconCheckboxChecked","iconCheckboxIcon","switchBase","switchIcon","switchIconChecked","switchBar","switchChecked","extendedFormsStyle","mrAuto","mlAuto","extendedTablesStyle","center","actionButton","imgContainer","img","tdName","tdNameAnchor","tdNameSmall","tdNumber","tdNumberSmall","tdNumberAndButtonGroup","positionAbsolute","customFont","actionButtonRound","withScriptjs","withGoogleMap","GoogleMap","defaultZoom","defaultCenter","lat","lng","defaultOptions","scrollwheel","zoomControl","featureType","stylers","saturation","lightness","hue","elementType","Marker","mapTypeId","disableDefaultUI","gridSystemStyle","iconsStyle","iframe","iframeContainer","customInputStyle","underline","underlineError","underlineSuccess","labelRootError","labelRootSuccess","formControl","whiteUnderline","whiteInput","CustomInput","formControlProps","labelText","labelProps","inputProps","error","inputRootCustomClasses","helperText","labelClasses","underlineClasses","inputClasses","formControlClasses","helpTextClasses","newInputProps","maxLength","minLength","FormControl","InputLabel","htmlFor","Input","FormHelperText","cardAvatarStyle","cardAvatar","cardAvatarProfile","cardAvatarPlain","cardAvatarTestimonial","cardAvatarTestimonialFooter","CardAvatar","testimonialFooter","cardAvatarClasses","lockScreenPageStyle","customCardClass","cardHidden","customCardFooterClass","justifyContentCenter","loginPageStyle","textCenter","customButtonClass","inputAdornment","inputAdornmentIcon","socialLine","lgCardBody","getSession","token","localStorage","getItem","userName","userNameId","userRoles","removeSession","setItem","apiCallStatusCode","apiErrorMesageMapping","statusCode","message","url","callback","xhr","XMLHttpRequest","responseType","onload","status","response","send","getJSON","err","console","ip","fetchClient","method","accept","headers","baseURL","instance","axios","create","interceptors","request","use","config","endsWith","isLogininRequest","Authorization","concat","myIp","Promise","reject","setTimeout","Failed","Message","toLocaleLowerCase","startsWith","filter","apiErr","getApiErrorMessage","snackbarContentStyle","flexWrap","top20","top40","close","iconButton","infoIcon","successIcon","warningIcon","dangerIcon","primaryIcon","roseIcon","iconMessage","SnackbarContent","action","messageClasses","IconButton","Close","iconClasses","Snack","Snackbar","place","closeNotification","anchorOriginTopCenter","anchorOriginTopRight","anchorOriginTopLeft","anchorOrigin","vertical","horizontal","ContentProps","instructionStyle","instruction","picture","Instruction","imageClassName","imageAlt","instructionClasses","pictureClasses","xs","md","src","alt","modalStyle","modalRoot","modal","up","modalHeader","modalTitle","modalCloseButton","WebkitAppearance","modalClose","modalBody","modalFooter","modalFooterCenter","instructionNoticeModal","imageNoticeModal","modalSmall","modalSmallBody","modalSmallFooterFirstButton","modalSmallFooterSecondButton","notificationsStyle","cardSubtitle","modalSectionTitle","Slide","direction","navPillsStyle","flexContainer","displayNone","fixed","horizontalDisplay","pills","pillsWithIcons","tabIcon","horizontalPills","labelContainer","contentWrapper","alignCenter","NavPills","setActive","tabs","flexContainerClasses","tabButtons","Tabs","indicator","onChange","handleChange","centered","pillsClasses","Tab","tabButton","selected","tabContent","SwipeableViews","axis","onChangeIndex","tabsGrid","contentGrid","accordionStyle","flexGrow","expansionPanel","expansionPanelExpanded","expansionPanelSummary","expansionPanelSummaryExpaned","expansionPanelSummaryContent","expansionPanelSummaryExpandIcon","expansionPanelSummaryExpandIconExpanded","expansionPanelDetails","Accordion","collapses","ExpansionPanel","expanded","panel","ExpansionPanelSummary","expandIcon","ExpandMore","ExpansionPanelDetails","pageSubcategoriesTitle","pricingPageStyle","cardTitleWhite","cardCategoryWhite","iconWhite","iconRose","marginTop30","badgeStyle","badge","timelineStyle","timeline","timelineSimple","timelineBadge","timelineSimpleBadge","badgeIcon","timelinePanel","borderLeftWidth","borderRightWidth","timelineSimplePanel","timelinePanelInverted","timelineHeading","timelineBody","timelineFooter","footerTitle","footerLine","customTabsStyle","cardTitleRTL","tabsRoot","tabRootButton","tabLabelContainer","tabLabel","tabSelected","tabWrapper","CustomTabs","setValue","headerColor","plainTabs","changeValue","scrollButtons","wrapper","tabName","tasksStyle","tableActions","tableActionButton","tableActionButtonIcon","edit","cardTextStyle","cardText","testimonialIcon","cardTestimonialDescription","newStyles","formControlMargins","gridContainer","DefaultColumnFilter","_ref","column","filterValue","preFilteredRows","setFilter","count","e","placeholder","fuzzyTextFilterFn","rows","matchSorter","keys","row","values","autoRemove","val","_ref2","columns","numberOfRows","setNumberOfRows","pageSelect","handlePageSelect","filterTypes","useMemo","fuzzyText","rowValue","String","toLowerCase","defaultColumn","Filter","getTableProps","getTableBodyProps","headerGroups","page","prepareRow","state","visibleColumns","nextPage","pageOptions","pageCount","previousPage","canPreviousPage","canNextPage","setPageSize","gotoPage","useTable","initialState","pageSize","pageIndex","useFilters","useSortBy","usePagination","pageSelectData","Array","apply","Fragment","Select","MenuProps","name","headerGroup","getHeaderGroupProps","getHeaderProps","getSortByToggleProps","classnames","isSorted","isSortedDesc","render","canFilter","i","getRowProps","cells","cell","getCellProps","infoStyle","infoArea","iconWrapper","descriptionWrapper","InfoArea","iconColor","registerPageStyle","form","socialTitle","customFormControlClasses","checkboxLabelControl","checkboxLabel","regularFormsStyle","staticFormGroup","staticFormControl","inputAdornmentIconSuccess","inputAdornmentIconError","customCardContentClass","sweetAlertStyle","typo","note","clearfix","userProfileStyles","updateProfileButton","validationFormsStyle","formCategory","registerButton","wizardStyle","wizardContainer","wizardHeader","subtitle","wizardNavigation","nav","steps","stepsAnchor","stepContent","stepContentActive","movingTab","WebkitFontSmoothing","Wizard","Component","constructor","super","wizard","createRef","this","innerWidth","currentStep","nextButton","previousButton","finishButton","movingTabStyle","allStates","navigationStepChange","bind","refreshAnimation","previousButtonClick","finishButtonClick","updateWidth","componentDidMount","addEventListener","componentWillUnmount","removeEventListener","validationState","stepId","sendState","setState","isValidated","nextButtonClick","validate","li_width","total_steps","move_distance","current","offsetWidth","index_temp","vertical_level","mobile_device","step_width","preventDefault","stepName","stepContentClasses","stepComponent","innerRef","node","previousButtonClasses","previousButtonText","nextButtonClasses","nextButtonText","finishButtonClasses","finishButtonText","withStyles","PictureUpload","file","setFile","imagePreviewUrl","setImagePreviewUrl","defaultImage","reader","FileReader","newFile","files","onloadend","result","readAsDataURL","handleImageChange","Step1","firstname","firstnameState","lastname","lastnameState","email","emailState","verifyEmail","verifyLength","change","stateName","stateNameEqualTo","justify","endAdornment","InputAdornment","Face","RecordVoiceOver","Email","choiche","Step2","handleSimple","simpleSelect","desgin","code","develop","Checkbox","tabIndex","Step3","DataCategory","onSelected","useEffect","categoryData","setIsLoading","get","then","respone","setCategoryData","catch","finally","selectedCategory","setSelectedCategory","isLoading","labelId","multiple","categoryName","NetworkSelect","selectedNetword","setselectedNetword","Tranfer","selectedUsers","onSave","selectedCategoriesId","setSelectedCategoriesId","selectedNetwork","setSelectedNetwork","Dialog","DialogTitle","DialogContent","Typography","dense","user","DialogActions","autoFocus","async","usersId","push","post","dataCategoryIds","networkIds","log","stylesForm","styles2","backdrop","cardbody","MobileNetworkSupplierList","statusCustomer","DialogBlockUser","usersTextSearch","setUsersTextSearch","setData","openLoading","setOpenLoading","handSearch","closeDialog","RoundButtons","onclick","Visibility","VisibilityOff","handleBlogUsers","query","queryString","userId","arrayFormat","blockUser","getUserListByName","dataMapTable","forEach","isActive","Backdrop","CircularProgress","SupervisorAccountIcon","defaultValue","Search","DialogEdit","openDialogEdit","setOpenDialogEdit","openDialogUpdatePass","setOpenDialogUpdatePass","dataDialogEdit","setDataDialogEdit","listUser","setListUser","handleUpdateDialog","Edit","handleUpdatePassDialog","VpnKey","UpdateUser","openDialog","handleCloseDialog","handleCloseDialogEdit","dataDialog","handleSubmit","UpdatePassword","handleCloseUpdatePass","password","errorText","setErrorText","errorField","setErrorField","setUserName","numberErr","checkHasUserName","x","split","aria-labelledby","DialogContentText","submitEdit","setPassword","dialogContent","ml20","convertToArrBuffer","s","buf","ArrayBuffer","view","Uint8Array","charCodeAt","DialogExport","openCreate","listCategory","listStatus","listIUsers","dataExport","setDataExport","dataCategoryCode","TimeStart","now","TimeEnd","IUserId","onchangeInputExport","fieldName","Datetime","closeOnSelect","dateFormat","timeFormat","_d","formData","createFormDataExport","FormData","append","format","blob","Blob","atob","URL","createObjectURL","document","fileName","setAttribute","body","appendChild","click","hubConnection","signalR","withUrl","skipNegotiation","transport","WebSockets","configureLogging","Debug","build","CALL_STATUS","marginTop20","justifyContentGrid","PreviewDialog","dataPreview","Assignment","DialogConfirm","handOK","msg","snackbarDefault","DialogTable","formatPhoneNumber","phoneNumber","slice","formatCurrency","Number","toLocaleString","currency","buttonHug","buttonHugAccess","buttonHugIcon","mb3","mb4","chipTextColor","mt2","mb1","userCallLogText","alignSelf","cod","productBuy","logStatusCode","cityName","time","address","color1","color2","color3","color4","color5","end","contents","handleSearch","setSnackbar","snackbarData","setStatus","setProductBuy","setAddress","setCod","fullName","multiline","customerId","userCallLogId","displayFlex","DisplayDataCall","dataCall","getListData","checkNumber","number","dataAll","Accepted","MissCall","Rejected","WrongPhoneNumber","Ignore","Call","PersonAdd","PhoneDisabled","PersonAddDisabled","Warning","SkipNext","maxWidth200","DialogCRUDTeam","textDialog","dataDialogCurrent","listAdmin","setListAdmin","setDataDialog","Name","TeamLeadId","Address","Id","getDataListIUsers","teamId","teamLead","listAdminResult","teamLeadName","errorFile","setErrorFile","onchangeInput","CRUDTeam","EditUser","setOpenCreate","idEdit","getDataMyTeam","UserName","Role","FirstName","LastName","IsActive","MobileNetworkSupplier","setCategoryList","handleCategoryList","getDataCurrent","getUserById","_value$mobileNetworkS","_value$dataCategory","firstName","lastName","mobileNetworkSupplier","dataCategory","getDataCategory","dataResult","toString","callApiUpdate","dashRoutes","rtlName","DashboardIcon","component","setDataCall","dataCallFollowUser","setDataCallFollowUser","getListDataFollowUser","start","tran","logStatus","missCall","wrongPhoneNumber","ignore","all","GetApp","layout","ShoppingBasket","office","age","actions","obj","find","o","Favorite","Dvr","newData","splice","ReactTable","Header","accessor","SupervisedUserCircle","setDataListStatus","userList","setUserList","showDeletedUser","setShowDeletedUser","userCreate","setUserCreate","Password","setSelectedUsers","openTransferDialog","setOpenTransferDialog","openBlogDialog","setOpenBlogDialog","openEditDialog","setOpenEditDialog","handleGetUserList","field","headerName","sortable","renderCell","displayDataCategory","dataCategoryListStr","datacategoryList","listCategoryName","categoryId","join","getUserList","DataGrid","disableColumnSelector","checkboxSelection","components","customToolbar","GridToolbarContainer","TransferWithinAStation","Settings","FormControlLabel","control","onRowSelected","isSelected","newSelectedUser","_","remove","newSelectUser","Transfer","Group","setOpenDialog","dataList","setDataList","dataMyTeam","setDataMyTeam","dataOutTeam","setDataOutTeam","setTextDialog","setRole","CategoryName","TeamLead","openDialogConfirm","setOpenDialogConfirm","idDelete","setIdDelete","setIdEdit","currentSession","handleReloadTable","getDataOutTeam","onclickEdit","onclickDelete","Delete","numberMember","handleEditRowTable","handleDeleteRowTable","handleOpenEdit","handleCloseDialogConfirm","getUserListMyTeam","editUser","deleteUser","callDeleteUser","addUser","callAddUser","getUserListOutTeam","handleOpenCreate","Status","delete","autoHideDuration","MuiAlert","severity","Storage","listDataNumberPage","setDataListDataNumberPage","totalPage","setTotalPage","setListIUsers","dataSearch","setDataSearch","numberOfPage","DataAuto","auto","createFormDataSearch","PhoneNumber","FullName","handleSubmitData","_statusCustomer$e$cal","dataCategoryName","callStatusCode","nameUpdate","lastModifiedOn","handIUserList","Backup","setFiles","dataType","setDataType","overrideStatusList","setOverrideStatusList","overrideFrom","setOverrideFrom","overrideTo","setOverrideTo","setMessage","openMess","openMessSuccess","setOpenSuccess","setDataPreview","dataListFile","setDataListFile","fileUploadRes","setFileUploadRes","isOverRide","setIsOverRide","roleAdminBase","selectedDate","setSelectedDate","handleDataList","getDataListFile","startConnection","getHubMessage","handleSendMessage","on","validateInput","importDataColumns","getImportDisplayStatus","DropzoneArea","showPreviews","maxFileSize","filesLimit","dropzoneText","clearOnUnmount","acceptedFiles","preview","getDataPreview","mineTypeExcel","includes","evt","bstr","wb","XLSX","wsname","SheetNames","ws","Sheets","sheet_to_json","header","readAsBinaryString","allTextLines","readAsText","MuiPickersUtilsProvider","locale","vi","utils","DateFnsUtils","DatePicker","openTo","views","date","ArrowForwardTwoToneIcon","submitData","Category","dataListActive","setDatalistActive","dataListVisible","setDatalistVisible","IsDeleted","openDialogTable","setOpenDialogTable","dataDialogTable","setDataDialogTable","nameCategory","setNameCategory","dataTableActive","dataTableVisible","waiting","accepted","rejected","roleback200","onclickView","handleViewRowTable","getListDataByIdCategory","tenNhaMang","VisibilityIcon","handleCloseDialogTable","customer","firstLoading","setCustomer","setFirstLoading","handerApiError","fechUserCallLogSummary","userCalLog","setUserCallLog","startCallTime","setStartCallTime","errorMessage","setErrorMessage","editMode","setEditMode","editModeCod","setEditModeCod","dataBuy","setDataBuy","area","fechNextCustomer","customerReponse","customerNext","userCallLogReponse","handleOpenConfirm","arguments","Chip","CheckCircle","Cancel","DeviceUnknown","Skeleton","align","handleEditAddress","DoneOutline","handleEditCod","startIcon","customerDto","userCallLogDto","startTime","endTime","updateUserCallLog","handleSearchData","setClassNameStatus","_statusCustomer$filte","createdOn","handleOpenDialogEdit","mini","rtlMini","history","useHistory","cardAnimaton","setCardAnimation","messageError","setMessageError","clearTimeout","getToken","jwToken","roles","issuedOn","expiresOn","setSession","process","Formik","initialValues","errors","onSubmit","setSubmitting","_ref3","touched","setFieldValue","setFieldTouched","persist","logo","TextField","InputProps","PermContactCalendar","autoComplete","Icon","avatar","Timeline","ChartistGraph","listener","pagesStyle","fullPage","adminNavbarLinksStyle","search","searchInput","searchRTL","linkText","buttonLink","searchButton","searchIcon","links","notifications","wrapperRTL","buttonLinkRTL","labelRTL","linksRTL","managerClasses","headerLinksSvg","HeaderLinks","openNotification","setOpenNotification","handleClickNotification","handleCloseNotification","openProfile","setOpenProfile","handleClickProfile","handleCloseProfile","implementation","Notifications","TransitionProps","Person","light","headerStyle","sidebarMinimize","sidebarMinimizeRTL","sidebarMiniIcon","AdminNavbar","miniActive","ViewList","MoreVert","AdminNavbarLinks","sidebarStyle","ps","drawerPaperRTL","blackBackground","blueBackground","whiteBackground","whiteAfter","drawerPaperMini","drawerMiniWidth","logoMini","logoMiniRTL","logoNormal","logoNormalRTL","logoNormalSidebarMini","logoNormalSidebarMiniRTL","userItem","itemLink","outline","itemIcon","itemIconRTL","itemText","userItemText","itemTextRTL","itemTextMini","itemTextMiniRTL","collapseList","collapseItem","collapseActive","collapseItemLink","collapseItemMini","collapseItemMiniRTL","collapseItemText","collapseItemTextRTL","collapseItemTextMiniRTL","collapseItemTextMini","userCaret","purple","blue","green","orange","red","sidebarWrapper","overflowScrolling","sidebarWrapperWithPerfectScrollbar","photo","photoRTL","avatarImg","userCollapseButton","userCollapseLinks","SidebarWrapper","navigator","platform","PerfectScrollbar","suppressScrollX","suppressScrollY","destroy","headerLinks","Sidebar","mainPanel","getCollapseStates","routes","collapse","getCollapseInitialState","createLinks","redirect","st","navLinkClasses","secondary","Collapse","unmountOnExit","innerNavLinkClasses","openAvatar","openCollapse","logoText","bgColor","userWrapperClass","logoClasses","brand","backgroundImage","onMouseOver","onMouseOut","FixedPlugin","setClasses","bg_checked","setBg_checked","bgImage","setBgImage","showImage","setShowImage","handleImageClick","classesObj","fixedClasses","handleClick","handleFixedClick","data-color","handleColorClick","handleBgColorClick","Switch","thumb","track","imagine1","imagine2","imagine3","imagine4","appStyle","mainPanelSidebarMini","PrivateRouter","isAdmin","roleCorrectFlowPath","failRole","Route","checkAuth","isTokenExpired","Redirect","pathname","softToken","mainPanelWithPerfectScrollbar","grow","menuButton","spacing","shape","fade","palette","common","inputRoot","inputInput","transitions","sectionDesktop","sectionMobile","logoImage","headerText","PrimarySearchAppBar","mobileMoreAnchorEl","setMobileMoreAnchorEl","isMenuOpen","isMobileMenuOpen","handleMobileMenuClose","handleMenuClose","menuId","renderMenu","logOut","gotoHistoryPage","gotoCallPage","inCallPage","renderMobileMenu","Badge","badgeContent","PhoneCallback","PhoneForwardedIcon","openDialogUpdate","VpnKeyIcon","aria-controls","PowerSettingsNew","appLogo","edge","AccountCircle","MenuIcon","passwordNew","passwordOld","hist","createBrowserHistory","ReactDOM","Router","mobileOpen","setMobileOpen","setMiniActive","setImage","setColor","setBgColor","setFixedClasses","setLogo","mainPanelClasses","resizeFunction","getActiveRoute","collapseActiveRoute","getRoutes","register","lock","getRoute","Container","getElementById"],"mappings":"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ACnB,gCACA/B,EDjEW,QCkEX,iCACAA,EAAS+B,EAAU,IACnB,WAGN0D,MAAO,CACL,oBAAqB,CACnBf,gBDxEa,OCyEbrB,MAAOrB,EAAU,KAGrB0D,QAAS,CACPhB,gBD5EiB,UC6EjBrB,MD9Ee,OC+EfpB,UACE,oBACAjC,EDhFe,WCiFf,gCACAA,EDlFe,WCmFf,4BACAA,EDpFe,WCqFf,UACF,4BAA6B,CAC3B0E,gBDvFe,UCwFfrB,MDzFa,OC0FbpB,UACE,0BACAjC,ED3Fa,WC4Fb,gCACAA,ED/FW,QCgGX,iCACAA,ED/Fa,WCgGb,WAGN2F,SAAU,CACRjB,gBDnGkB,UCoGlBrB,MDtGe,OCuGfpB,UACE,oBACAjC,EDvGgB,WCwGhB,gCACAA,EDzGgB,WC0GhB,4BACAA,ED3GgB,WC4GhB,UACF,kBAAmB,CACjB0E,gBD9GgB,UC+GhBrB,MDjHa,OCkHbpB,UACE,0BACAjC,EDlHc,WCmHd,gCACAA,EDvHW,QCwHX,iCACAA,EDtHc,WCuHd,WAGN4F,OAAQ,CACNlB,gBD1HgB,UC2HhBrB,MD9He,OC+HfpB,UACE,oBACAjC,ED9Hc,WC+Hd,gCACAA,EDhIc,WCiId,4BACAA,EDlIc,WCmId,UACF,kBAAmB,CACjB0E,gBDrIc,UCsIdrB,MDzIa,OC0IbpB,UACE,0BACAjC,EDzIY,WC0IZ,gCACAA,ED/IW,QCgJX,iCACAA,ED7IY,WC8IZ,WAGN6F,SAAU,CACRnB,gBDjJkB,UCkJlBrB,MDtJe,OCuJfpB,UACE,oBACAjC,EDrJgB,WCsJhB,gCACAA,EDvJgB,WCwJhB,4BACAA,EDzJgB,WC0JhB,UACF,kBAAmB,CACjB0E,gBD5JgB,UC6JhBrB,MDjKa,OCkKbpB,UACE,0BACAjC,EDhKc,WCiKd,gCACAA,EDvKW,QCwKX,iCACAA,EDpKc,WCqKd,WAGN8F,UAAW,CACTpB,gBDxKmB,UCyKnBrB,MD9Ke,OC+KfpB,UACE,oBACAjC,ED5KiB,WC6KjB,gCACAA,ED9KiB,WC+KjB,4BACAA,EDhLiB,WCiLjB,UACF,kBAAmB,CACjB0E,gBDnLiB,UCoLjBrB,MDzLa,OC0LbpB,UACE,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","file":"static/js/main.78eda7b1.chunk.js","sourcesContent":["module.exports = __webpack_public_path__ + \"static/media/sidebar-2.d30c9e30.jpg\";","module.exports = __webpack_public_path__ + \"static/media/logo-white.e0cc0c77.svg\";","module.exports = __webpack_public_path__ + \"static/media/sidebar-1.61c4c50e.jpg\";","module.exports = __webpack_public_path__ + \"static/media/sidebar-3.c963330b.jpg\";","module.exports = __webpack_public_path__ + \"static/media/sidebar-4.f34e943f.jpg\";","module.exports = __webpack_public_path__ + \"static/media/logo.7b0aebc3.svg\";","// ##############################\r\n// // // javascript library for creating charts\r\n// #############################\r\nvar Chartist = require(\"chartist\");\r\n\r\n// ##############################\r\n// // // Charts used in Dahsboard view\r\n// #############################\r\n\r\n// ##############################\r\n// // // variables used to create animation on charts\r\n// #############################\r\n\r\nvar delays = 80,\r\n durations = 500;\r\nvar delays2 = 80,\r\n durations2 = 500;\r\n\r\n// ##############################\r\n// // // Daily Sales\r\n// #############################\r\n\r\nconst dailySalesChart = {\r\n data: {\r\n labels: [\"M\", \"T\", \"W\", \"T\", \"F\", \"S\", \"S\"],\r\n series: [[12, 17, 7, 17, 23, 18, 38]]\r\n },\r\n options: {\r\n lineSmooth: Chartist.Interpolation.cardinal({\r\n tension: 0\r\n }),\r\n low: 0,\r\n high: 50, // creative tim: we recommend you to set the high sa the biggest value + something for a better look\r\n chartPadding: {\r\n top: 0,\r\n right: 0,\r\n bottom: 0,\r\n left: 0\r\n }\r\n },\r\n // for animation\r\n animation: {\r\n draw: function(data) {\r\n if (data.type === \"line\" || data.type === \"area\") {\r\n data.element.animate({\r\n d: {\r\n begin: 600,\r\n dur: 700,\r\n from: data.path\r\n .clone()\r\n .scale(1, 0)\r\n .translate(0, data.chartRect.height())\r\n .stringify(),\r\n to: data.path.clone().stringify(),\r\n easing: Chartist.Svg.Easing.easeOutQuint\r\n }\r\n });\r\n } else if (data.type === \"point\") {\r\n data.element.animate({\r\n opacity: {\r\n begin: (data.index + 1) * delays,\r\n dur: durations,\r\n from: 0,\r\n to: 1,\r\n easing: \"ease\"\r\n }\r\n });\r\n }\r\n }\r\n }\r\n};\r\n\r\n// ##############################\r\n// // // Email Subscriptions\r\n// #############################\r\n\r\nconst emailsSubscriptionChart = {\r\n data: {\r\n labels: [\r\n \"Jan\",\r\n \"Feb\",\r\n \"Mar\",\r\n \"Apr\",\r\n \"Mai\",\r\n \"Jun\",\r\n \"Jul\",\r\n \"Aug\",\r\n \"Sep\",\r\n \"Oct\",\r\n \"Nov\",\r\n \"Dec\"\r\n ],\r\n series: [[542, 443, 320, 780, 553, 453, 326, 434, 568, 610, 756, 895]]\r\n },\r\n options: {\r\n axisX: {\r\n showGrid: false\r\n },\r\n low: 0,\r\n high: 1000,\r\n chartPadding: {\r\n top: 0,\r\n right: 5,\r\n bottom: 0,\r\n left: 0\r\n }\r\n },\r\n responsiveOptions: [\r\n [\r\n \"screen and (max-width: 640px)\",\r\n {\r\n seriesBarDistance: 5,\r\n axisX: {\r\n labelInterpolationFnc: function(value) {\r\n return value[0];\r\n }\r\n }\r\n }\r\n ]\r\n ],\r\n animation: {\r\n draw: function(data) {\r\n if (data.type === \"bar\") {\r\n data.element.animate({\r\n opacity: {\r\n begin: (data.index + 1) * delays2,\r\n dur: durations2,\r\n from: 0,\r\n to: 1,\r\n easing: \"ease\"\r\n }\r\n });\r\n }\r\n }\r\n }\r\n};\r\n\r\n// ##############################\r\n// // // Completed Tasks\r\n// #############################\r\n\r\nconst completedTasksChart = {\r\n data: {\r\n labels: [\"12am\", \"3pm\", \"6pm\", \"9pm\", \"12pm\", \"3am\", \"6am\", \"9am\"],\r\n series: [[230, 750, 450, 300, 280, 240, 200, 190]]\r\n },\r\n options: {\r\n lineSmooth: Chartist.Interpolation.cardinal({\r\n tension: 0\r\n }),\r\n low: 0,\r\n high: 1000, // creative tim: we recommend you to set the high sa the biggest value + something for a better look\r\n chartPadding: {\r\n top: 0,\r\n right: 0,\r\n bottom: 0,\r\n left: 0\r\n }\r\n },\r\n animation: {\r\n draw: function(data) {\r\n if (data.type === \"line\" || data.type === \"area\") {\r\n data.element.animate({\r\n d: {\r\n begin: 600,\r\n dur: 700,\r\n from: data.path\r\n .clone()\r\n .scale(1, 0)\r\n .translate(0, data.chartRect.height())\r\n .stringify(),\r\n to: data.path.clone().stringify(),\r\n easing: Chartist.Svg.Easing.easeOutQuint\r\n }\r\n });\r\n } else if (data.type === \"point\") {\r\n data.element.animate({\r\n opacity: {\r\n begin: (data.index + 1) * delays,\r\n dur: durations,\r\n from: 0,\r\n to: 1,\r\n easing: \"ease\"\r\n }\r\n });\r\n }\r\n }\r\n }\r\n};\r\n\r\n// ##############################\r\n// // // Rounded Line Chart\r\n// #############################\r\n\r\nconst roundedLineChart = {\r\n data: {\r\n labels: [\"M\", \"T\", \"W\", \"T\", \"F\", \"S\", \"S\"],\r\n series: [[12, 17, 7, 17, 23, 18, 38]]\r\n },\r\n options: {\r\n lineSmooth: Chartist.Interpolation.cardinal({\r\n tension: 10\r\n }),\r\n axisX: {\r\n showGrid: false\r\n },\r\n low: 0,\r\n high: 50, // creative tim: we recommend you to set the high sa the biggest value + something for a better look\r\n chartPadding: {\r\n top: 0,\r\n right: 0,\r\n bottom: 0,\r\n left: 0\r\n },\r\n showPoint: false\r\n },\r\n animation: {\r\n draw: function(data) {\r\n if (data.type === \"line\" || data.type === \"area\") {\r\n data.element.animate({\r\n d: {\r\n begin: 600,\r\n dur: 700,\r\n from: data.path\r\n .clone()\r\n .scale(1, 0)\r\n .translate(0, data.chartRect.height())\r\n .stringify(),\r\n to: data.path.clone().stringify(),\r\n easing: Chartist.Svg.Easing.easeOutQuint\r\n }\r\n });\r\n } else if (data.type === \"point\") {\r\n data.element.animate({\r\n opacity: {\r\n begin: (data.index + 1) * delays,\r\n dur: durations,\r\n from: 0,\r\n to: 1,\r\n easing: \"ease\"\r\n }\r\n });\r\n }\r\n }\r\n }\r\n};\r\n\r\n// ##############################\r\n// // // Straight Lines Chart\r\n// #############################\r\n\r\nconst straightLinesChart = {\r\n data: {\r\n labels: [\"'07\", \"'08\", \"'09\", \"'10\", \"'11\", \"'12\", \"'13\", \"'14\", \"'15\"],\r\n series: [[10, 16, 8, 13, 20, 15, 20, 34, 30]]\r\n },\r\n options: {\r\n lineSmooth: Chartist.Interpolation.cardinal({\r\n tension: 0\r\n }),\r\n low: 0,\r\n high: 50, // creative tim: we recommend you to set the high sa the biggest value + something for a better look\r\n chartPadding: {\r\n top: 0,\r\n right: 0,\r\n bottom: 0,\r\n left: 0\r\n },\r\n classNames: {\r\n point: \"ct-point ct-white\",\r\n line: \"ct-line ct-white\"\r\n }\r\n },\r\n animation: {\r\n draw: function(data) {\r\n if (data.type === \"line\" || data.type === \"area\") {\r\n data.element.animate({\r\n d: {\r\n begin: 600,\r\n dur: 700,\r\n from: data.path\r\n .clone()\r\n .scale(1, 0)\r\n .translate(0, data.chartRect.height())\r\n .stringify(),\r\n to: data.path.clone().stringify(),\r\n easing: Chartist.Svg.Easing.easeOutQuint\r\n }\r\n });\r\n } else if (data.type === \"point\") {\r\n data.element.animate({\r\n opacity: {\r\n begin: (data.index + 1) * delays,\r\n dur: durations,\r\n from: 0,\r\n to: 1,\r\n easing: \"ease\"\r\n }\r\n });\r\n }\r\n }\r\n }\r\n};\r\n\r\n// ##############################\r\n// // // Simple Bar Chart\r\n// #############################\r\n\r\nconst simpleBarChart = {\r\n data: {\r\n labels: [\r\n \"Jan\",\r\n \"Feb\",\r\n \"Mar\",\r\n \"Apr\",\r\n \"Mai\",\r\n \"Jun\",\r\n \"Jul\",\r\n \"Aug\",\r\n \"Sep\",\r\n \"Oct\",\r\n \"Nov\",\r\n \"Dec\"\r\n ],\r\n series: [[542, 443, 320, 780, 553, 453, 326, 434, 568, 610, 756, 895]]\r\n },\r\n options: {\r\n seriesBarDistance: 10,\r\n axisX: {\r\n showGrid: false\r\n }\r\n },\r\n responsiveOptions: [\r\n [\r\n \"screen and (max-width: 640px)\",\r\n {\r\n seriesBarDistance: 5,\r\n axisX: {\r\n labelInterpolationFnc: function(value) {\r\n return value[0];\r\n }\r\n }\r\n }\r\n ]\r\n ],\r\n animation: {\r\n draw: function(data) {\r\n if (data.type === \"bar\") {\r\n data.element.animate({\r\n opacity: {\r\n begin: (data.index + 1) * delays2,\r\n dur: durations2,\r\n from: 0,\r\n to: 1,\r\n easing: \"ease\"\r\n }\r\n });\r\n }\r\n }\r\n }\r\n};\r\n\r\n// ##############################\r\n// // // Coloured Line Chart\r\n// #############################\r\n\r\nconst colouredLineChart = {\r\n data: {\r\n labels: [\r\n \"'06\",\r\n \"'07\",\r\n \"'08\",\r\n \"'09\",\r\n \"'10\",\r\n \"'11\",\r\n \"'12\",\r\n \"'13\",\r\n \"'14\",\r\n \"'15\"\r\n ],\r\n series: [[287, 480, 290, 554, 690, 690, 500, 752, 650, 900, 944]]\r\n },\r\n options: {\r\n lineSmooth: Chartist.Interpolation.cardinal({\r\n tension: 10\r\n }),\r\n axisY: {\r\n showGrid: true,\r\n offset: 40\r\n },\r\n axisX: {\r\n showGrid: false\r\n },\r\n low: 0,\r\n high: 1000,\r\n showPoint: true,\r\n height: \"300px\"\r\n },\r\n animation: {\r\n draw: function(data) {\r\n if (data.type === \"line\" || data.type === \"area\") {\r\n data.element.animate({\r\n d: {\r\n begin: 600,\r\n dur: 700,\r\n from: data.path\r\n .clone()\r\n .scale(1, 0)\r\n .translate(0, data.chartRect.height())\r\n .stringify(),\r\n to: data.path.clone().stringify(),\r\n easing: Chartist.Svg.Easing.easeOutQuint\r\n }\r\n });\r\n } else if (data.type === \"point\") {\r\n data.element.animate({\r\n opacity: {\r\n begin: (data.index + 1) * delays,\r\n dur: durations,\r\n from: 0,\r\n to: 1,\r\n easing: \"ease\"\r\n }\r\n });\r\n }\r\n }\r\n }\r\n};\r\n\r\n// ##############################\r\n// // // Multiple Bars Chart\r\n// #############################\r\n\r\nconst multipleBarsChart = {\r\n data: {\r\n labels: [\r\n \"Jan\",\r\n \"Feb\",\r\n \"Mar\",\r\n \"Apr\",\r\n \"Mai\",\r\n \"Jun\",\r\n \"Jul\",\r\n \"Aug\",\r\n \"Sep\",\r\n \"Oct\",\r\n \"Nov\",\r\n \"Dec\"\r\n ],\r\n series: [\r\n [542, 443, 320, 780, 553, 453, 326, 434, 568, 610, 756, 895],\r\n [412, 243, 280, 580, 453, 353, 300, 364, 368, 410, 636, 695]\r\n ]\r\n },\r\n options: {\r\n seriesBarDistance: 10,\r\n axisX: {\r\n showGrid: false\r\n },\r\n height: \"300px\"\r\n },\r\n responsiveOptions: [\r\n [\r\n \"screen and (max-width: 640px)\",\r\n {\r\n seriesBarDistance: 5,\r\n axisX: {\r\n labelInterpolationFnc: function(value) {\r\n return value[0];\r\n }\r\n }\r\n }\r\n ]\r\n ],\r\n animation: {\r\n draw: function(data) {\r\n if (data.type === \"bar\") {\r\n data.element.animate({\r\n opacity: {\r\n begin: (data.index + 1) * delays2,\r\n dur: durations2,\r\n from: 0,\r\n to: 1,\r\n easing: \"ease\"\r\n }\r\n });\r\n }\r\n }\r\n }\r\n};\r\n\r\n// ##############################\r\n// // // Coloured Lines Chart\r\n// #############################\r\n\r\nconst colouredLinesChart = {\r\n data: {\r\n labels: [\r\n \"'06\",\r\n \"'07\",\r\n \"'08\",\r\n \"'09\",\r\n \"'10\",\r\n \"'11\",\r\n \"'12\",\r\n \"'13\",\r\n \"'14\",\r\n \"'15\"\r\n ],\r\n series: [\r\n [287, 385, 490, 554, 586, 698, 695, 752, 788, 846, 944],\r\n [67, 152, 143, 287, 335, 435, 437, 539, 542, 544, 647],\r\n [23, 113, 67, 190, 239, 307, 308, 439, 410, 410, 509]\r\n ]\r\n },\r\n options: {\r\n lineSmooth: Chartist.Interpolation.cardinal({\r\n tension: 10\r\n }),\r\n axisY: {\r\n showGrid: true,\r\n offset: 40\r\n },\r\n axisX: {\r\n showGrid: false\r\n },\r\n low: 0,\r\n high: 1000,\r\n showPoint: true,\r\n height: \"300px\"\r\n },\r\n animation: {\r\n draw: function(data) {\r\n if (data.type === \"line\" || data.type === \"area\") {\r\n data.element.animate({\r\n d: {\r\n begin: 600,\r\n dur: 700,\r\n from: data.path\r\n .clone()\r\n .scale(1, 0)\r\n .translate(0, data.chartRect.height())\r\n .stringify(),\r\n to: data.path.clone().stringify(),\r\n easing: Chartist.Svg.Easing.easeOutQuint\r\n }\r\n });\r\n } else if (data.type === \"point\") {\r\n data.element.animate({\r\n opacity: {\r\n begin: (data.index + 1) * delays,\r\n dur: durations,\r\n from: 0,\r\n to: 1,\r\n easing: \"ease\"\r\n }\r\n });\r\n }\r\n }\r\n }\r\n};\r\n\r\n// ##############################\r\n// // // Pie Chart\r\n// #############################\r\n\r\nconst pieChart = {\r\n data: {\r\n labels: [\"62%\", \"32%\", \"6%\"],\r\n series: [62, 32, 6]\r\n },\r\n options: {\r\n height: \"230px\"\r\n }\r\n};\r\n\r\nmodule.exports = {\r\n // Charts used in Dahsboard view\r\n dailySalesChart,\r\n emailsSubscriptionChart,\r\n completedTasksChart,\r\n // Charts used in Charts view\r\n roundedLineChart,\r\n straightLinesChart,\r\n simpleBarChart,\r\n colouredLineChart,\r\n multipleBarsChart,\r\n colouredLinesChart,\r\n pieChart\r\n};\r\n","module.exports = __webpack_public_path__ + \"static/media/card-2.ae10829f.jpeg\";","module.exports = __webpack_public_path__ + \"static/media/card-1.6ee66b2c.jpeg\";","module.exports = __webpack_public_path__ + \"static/media/avatar.7a6bc100.jpg\";","module.exports = __webpack_public_path__ + \"static/media/card-profile1-square.3122abf4.jpg\";","module.exports = __webpack_public_path__ + \"static/media/image_placeholder.ebe9884b.jpg\";","module.exports = __webpack_public_path__ + \"static/media/placeholder.1eb7fff2.jpg\";","module.exports = __webpack_public_path__ + \"static/media/card-3.4ae4eeff.jpeg\";","module.exports = __webpack_public_path__ + \"static/media/product1.081bf019.jpg\";","module.exports = \"data:image/jpeg;base64,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\"","module.exports = __webpack_public_path__ + \"static/media/product3.a0e40011.jpg\";","module.exports = __webpack_public_path__ + \"static/media/marc.aba54d65.jpg\";","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"static/media/register.49b54380.jpeg\";","module.exports = __webpack_public_path__ + \"static/media/login.59fc83e2.jpeg\";","module.exports = __webpack_public_path__ + \"static/media/lock.35f7d126.jpeg\";","module.exports = __webpack_public_path__ + \"static/media/clint-mckoy.5b7c1cad.jpg\";","module.exports = __webpack_public_path__ + \"static/media/bg-pricing.4d2f2f4b.jpeg\";","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,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\"","/*!\r\n\r\n=========================================================\r\n* Material Dashboard PRO React - v1.9.0\r\n=========================================================\r\n\r\n* Product Page: https://www.creative-tim.com/product/material-dashboard-pro-react\r\n* Copyright 2020 Creative Tim (https://www.creative-tim.com)\r\n\r\n* Coded by Creative Tim\r\n\r\n=========================================================\r\n\r\n* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\r\n\r\n*/\r\n\r\n// ##############################\r\n// // // Function that converts from hex color to rgb color\r\n// // // Example: input = #9c27b0 => output = 156, 39, 176\r\n// // // Example: input = 9c27b0 => output = 156, 39, 176\r\n// // // Example: input = #999 => output = 153, 153, 153\r\n// // // Example: input = 999 => output = 153, 153, 153\r\n// #############################\r\nconst hexToRgb = input => {\r\n input = input + \"\";\r\n input = input.replace(\"#\", \"\");\r\n let hexRegex = /[0-9A-Fa-f]/g;\r\n if (!hexRegex.test(input) || (input.length !== 3 && input.length !== 6)) {\r\n throw new Error(\"input is not a valid hex color.\");\r\n }\r\n if (input.length === 3) {\r\n let first = input[0];\r\n let second = input[1];\r\n let last = input[2];\r\n input = first + first + second + second + last + last;\r\n }\r\n input = input.toUpperCase(input);\r\n let first = input[0] + input[1];\r\n let second = input[2] + input[3];\r\n let last = input[4] + input[5];\r\n return (\r\n parseInt(first, 16) +\r\n \", \" +\r\n parseInt(second, 16) +\r\n \", \" +\r\n parseInt(last, 16)\r\n );\r\n};\r\n\r\n// ##############################\r\n// // // Variables - Styles that are used on more than one component\r\n// #############################\r\n\r\nconst drawerWidth = 260;\r\n\r\nconst drawerMiniWidth = 80;\r\n\r\nconst transition = {\r\n transition: \"all 0.33s cubic-bezier(0.685, 0.0473, 0.346, 1)\"\r\n};\r\n\r\nconst containerFluid = {\r\n paddingRight: \"15px\",\r\n paddingLeft: \"15px\",\r\n marginRight: \"auto\",\r\n marginLeft: \"auto\",\r\n \"&:before,&:after\": {\r\n display: \"table\",\r\n content: '\" \"'\r\n },\r\n \"&:after\": {\r\n clear: \"both\"\r\n }\r\n};\r\n\r\nconst container = {\r\n paddingRight: \"15px\",\r\n paddingLeft: \"15px\",\r\n marginRight: \"auto\",\r\n marginLeft: \"auto\",\r\n \"@media (min-width: 768px)\": {\r\n width: \"750px\"\r\n },\r\n \"@media (min-width: 992px)\": {\r\n width: \"970px\"\r\n },\r\n \"@media (min-width: 1200px)\": {\r\n width: \"1170px\"\r\n },\r\n \"&:before,&:after\": {\r\n display: \"table\",\r\n content: '\" \"'\r\n },\r\n \"&:after\": {\r\n clear: \"both\"\r\n }\r\n};\r\n\r\nconst defaultFont = {\r\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n fontWeight: \"300\",\r\n lineHeight: \"1.5em\"\r\n};\r\n\r\nconst primaryColor = [\"#9c27b0\", \"#ab47bc\", \"#8e24aa\", \"#af2cc5\", \"#7b1fa2\"];\r\nconst warningColor = [\r\n \"#ff9800\",\r\n \"#ffa726\",\r\n \"#fb8c00\",\r\n \"#ffa21a\",\r\n \"#f57c00\",\r\n \"#faf2cc\",\r\n \"#fcf8e3\"\r\n];\r\nconst dangerColor = [\r\n \"#f44336\",\r\n \"#ef5350\",\r\n \"#e53935\",\r\n \"#f55a4e\",\r\n \"#d32f2f\",\r\n \"#ebcccc\",\r\n \"#f2dede\"\r\n];\r\nconst successColor = [\r\n \"#4caf50\",\r\n \"#66bb6a\",\r\n \"#43a047\",\r\n \"#5cb860\",\r\n \"#388e3c\",\r\n \"#d0e9c6\",\r\n \"#dff0d8\"\r\n];\r\nconst infoColor = [\r\n \"#00acc1\",\r\n \"#26c6da\",\r\n \"#00acc1\",\r\n \"#00d3ee\",\r\n \"#0097a7\",\r\n \"#c4e3f3\",\r\n \"#d9edf7\"\r\n];\r\nconst roseColor = [\"#e91e63\", \"#ec407a\", \"#d81b60\", \"#eb3573\", \"#c2185b\"];\r\nconst grayColor = [\r\n \"#999\",\r\n \"#777\",\r\n \"#3C4858\",\r\n \"#AAAAAA\",\r\n \"#D2D2D2\",\r\n \"#DDD\",\r\n \"#555555\",\r\n \"#333\",\r\n \"#eee\",\r\n \"#ccc\",\r\n \"#e4e4e4\",\r\n \"#E5E5E5\",\r\n \"#f9f9f9\",\r\n \"#f5f5f5\",\r\n \"#495057\",\r\n \"#e7e7e7\",\r\n \"#212121\",\r\n \"#c8c8c8\",\r\n \"#505050\"\r\n];\r\nconst blackColor = \"#000\";\r\nconst whiteColor = \"#FFF\";\r\nconst twitterColor = \"#55acee\";\r\nconst facebookColor = \"#3b5998\";\r\nconst googleColor = \"#dd4b39\";\r\nconst linkedinColor = \"#0976b4\";\r\nconst pinterestColor = \"#cc2127\";\r\nconst youtubeColor = \"#e52d27\";\r\nconst tumblrColor = \"#35465c\";\r\nconst behanceColor = \"#1769ff\";\r\nconst dribbbleColor = \"#ea4c89\";\r\nconst redditColor = \"#ff4500\";\r\n\r\nconst boxShadow = {\r\n boxShadow:\r\n \"0 10px 30px -12px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.42), 0 4px 25px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\"\r\n};\r\n\r\nconst primaryBoxShadow = {\r\n boxShadow:\r\n \"0 4px 20px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \",.4)\"\r\n};\r\nconst infoBoxShadow = {\r\n boxShadow:\r\n \"0 4px 20px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \",.4)\"\r\n};\r\nconst successBoxShadow = {\r\n boxShadow:\r\n \"0 4px 20px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \",.4)\"\r\n};\r\nconst warningBoxShadow = {\r\n boxShadow:\r\n \"0 4px 20px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \",.4)\"\r\n};\r\nconst dangerBoxShadow = {\r\n boxShadow:\r\n \"0 4px 20px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \",.4)\"\r\n};\r\nconst roseBoxShadow = {\r\n boxShadow:\r\n \"0 4px 20px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \",.4)\"\r\n};\r\n\r\nconst warningCardHeader = {\r\n background:\r\n \"linear-gradient(60deg, \" + warningColor[1] + \", \" + warningColor[2] + \")\",\r\n ...warningBoxShadow\r\n};\r\nconst successCardHeader = {\r\n background:\r\n \"linear-gradient(60deg, \" + successColor[1] + \", \" + successColor[2] + \")\",\r\n ...successBoxShadow\r\n};\r\nconst dangerCardHeader = {\r\n background:\r\n \"linear-gradient(60deg, \" + dangerColor[1] + \", \" + dangerColor[2] + \")\",\r\n ...dangerBoxShadow\r\n};\r\nconst infoCardHeader = {\r\n background:\r\n \"linear-gradient(60deg, \" + infoColor[1] + \", \" + infoColor[2] + \")\",\r\n ...infoBoxShadow\r\n};\r\nconst primaryCardHeader = {\r\n background:\r\n \"linear-gradient(60deg, \" + primaryColor[1] + \", \" + primaryColor[2] + \")\",\r\n ...primaryBoxShadow\r\n};\r\nconst roseCardHeader = {\r\n background:\r\n \"linear-gradient(60deg, \" + roseColor[1] + \", \" + roseColor[2] + \")\",\r\n ...roseBoxShadow\r\n};\r\n\r\nconst card = {\r\n display: \"inline-block\",\r\n position: \"relative\",\r\n width: \"100%\",\r\n margin: \"25px 0\",\r\n boxShadow: \"0 1px 4px 0 rgba(\" + hexToRgb(blackColor) + \", 0.14)\",\r\n borderRadius: \"6px\",\r\n color: \"rgba(\" + hexToRgb(blackColor) + \", 0.87)\",\r\n background: whiteColor\r\n};\r\n\r\nconst cardActions = {\r\n margin: \"0 20px 10px\",\r\n paddingTop: \"10px\",\r\n borderTop: \"1px solid \" + grayColor[8],\r\n height: \"auto\",\r\n ...defaultFont\r\n};\r\n\r\nconst cardHeader = {\r\n margin: \"-20px 15px 0\",\r\n borderRadius: \"3px\",\r\n padding: \"15px\"\r\n};\r\n\r\nconst defaultBoxShadow = {\r\n border: \"0\",\r\n borderRadius: \"3px\",\r\n boxShadow:\r\n \"0 10px 20px -12px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.42), 0 3px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n padding: \"10px 0\",\r\n transition: \"all 150ms ease 0s\"\r\n};\r\n\r\nconst tooltip = {\r\n padding: \"10px 15px\",\r\n minWidth: \"130px\",\r\n color: whiteColor,\r\n lineHeight: \"1.7em\",\r\n background: \"rgba(\" + hexToRgb(grayColor[6]) + \",0.9)\",\r\n border: \"none\",\r\n borderRadius: \"3px\",\r\n opacity: \"1!important\",\r\n boxShadow:\r\n \"0 8px 10px 1px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 3px 14px 2px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 5px 5px -3px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n maxWidth: \"200px\",\r\n textAlign: \"center\",\r\n fontFamily: '\"Helvetica Neue\",Helvetica,Arial,sans-serif',\r\n fontSize: \"12px\",\r\n fontStyle: \"normal\",\r\n fontWeight: \"400\",\r\n textShadow: \"none\",\r\n textTransform: \"none\",\r\n letterSpacing: \"normal\",\r\n wordBreak: \"normal\",\r\n wordSpacing: \"normal\",\r\n wordWrap: \"normal\",\r\n whiteSpace: \"normal\",\r\n lineBreak: \"auto\"\r\n};\r\n\r\nconst title = {\r\n color: grayColor[2],\r\n textDecoration: \"none\",\r\n fontWeight: \"300\",\r\n marginTop: \"30px\",\r\n marginBottom: \"25px\",\r\n minHeight: \"32px\",\r\n fontFamily: \"'Roboto', 'Helvetica', 'Arial', sans-serif\",\r\n \"& small\": {\r\n color: grayColor[1],\r\n fontSize: \"65%\",\r\n fontWeight: \"400\",\r\n lineHeight: \"1\"\r\n }\r\n};\r\n\r\nconst cardTitle = {\r\n ...title,\r\n marginTop: \"0\",\r\n marginBottom: \"3px\",\r\n minHeight: \"auto\",\r\n \"& a\": {\r\n ...title,\r\n marginTop: \".625rem\",\r\n marginBottom: \"0.75rem\",\r\n minHeight: \"auto\"\r\n }\r\n};\r\n\r\nconst cardSubtitle = {\r\n marginTop: \"-.375rem\"\r\n};\r\n\r\nconst cardLink = {\r\n \"& + $cardLink\": {\r\n marginLeft: \"1.25rem\"\r\n }\r\n};\r\n\r\nexport {\r\n hexToRgb,\r\n //variables\r\n drawerWidth,\r\n drawerMiniWidth,\r\n transition,\r\n container,\r\n containerFluid,\r\n boxShadow,\r\n card,\r\n defaultFont,\r\n primaryColor,\r\n warningColor,\r\n dangerColor,\r\n successColor,\r\n infoColor,\r\n roseColor,\r\n grayColor,\r\n blackColor,\r\n whiteColor,\r\n twitterColor,\r\n facebookColor,\r\n googleColor,\r\n linkedinColor,\r\n pinterestColor,\r\n youtubeColor,\r\n tumblrColor,\r\n behanceColor,\r\n dribbbleColor,\r\n redditColor,\r\n primaryBoxShadow,\r\n infoBoxShadow,\r\n successBoxShadow,\r\n warningBoxShadow,\r\n dangerBoxShadow,\r\n roseBoxShadow,\r\n warningCardHeader,\r\n successCardHeader,\r\n dangerCardHeader,\r\n infoCardHeader,\r\n primaryCardHeader,\r\n roseCardHeader,\r\n cardActions,\r\n cardHeader,\r\n defaultBoxShadow,\r\n tooltip,\r\n title,\r\n cardTitle,\r\n cardSubtitle,\r\n cardLink\r\n};\r\n","import {\r\n grayColor,\r\n roseColor,\r\n primaryColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n whiteColor,\r\n blackColor,\r\n twitterColor,\r\n facebookColor,\r\n googleColor,\r\n linkedinColor,\r\n pinterestColor,\r\n youtubeColor,\r\n tumblrColor,\r\n behanceColor,\r\n dribbbleColor,\r\n redditColor,\r\n hexToRgb,\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst buttonStyle = {\r\n button: {\r\n minHeight: \"auto\",\r\n minWidth: \"auto\",\r\n backgroundColor: grayColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.12)\",\r\n border: \"none\",\r\n borderRadius: \"3px\",\r\n position: \"relative\",\r\n padding: \"12px 30px\",\r\n margin: \".3125rem 1px\",\r\n fontSize: \"12px\",\r\n fontWeight: \"400\",\r\n textTransform: \"uppercase\",\r\n letterSpacing: \"0\",\r\n willChange: \"box-shadow, transform\",\r\n transition:\r\n \"box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1)\",\r\n lineHeight: \"1.42857143\",\r\n textAlign: \"center\",\r\n whiteSpace: \"nowrap\",\r\n verticalAlign: \"middle\",\r\n touchAction: \"manipulation\",\r\n cursor: \"pointer\",\r\n \"&:hover,&:focus\": {\r\n color: whiteColor,\r\n backgroundColor: grayColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.2)\",\r\n },\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n position: \"relative\",\r\n display: \"inline-block\",\r\n top: \"0\",\r\n marginTop: \"-1em\",\r\n marginBottom: \"-1em\",\r\n fontSize: \"1.1rem\",\r\n marginRight: \"4px\",\r\n verticalAlign: \"middle\",\r\n },\r\n \"& svg\": {\r\n position: \"relative\",\r\n display: \"inline-block\",\r\n top: \"0\",\r\n width: \"18px\",\r\n height: \"18px\",\r\n marginRight: \"4px\",\r\n verticalAlign: \"middle\",\r\n },\r\n \"&$justIcon\": {\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n marginTop: \"0px\",\r\n position: \"absolute\",\r\n width: \"100%\",\r\n transform: \"none\",\r\n left: \"0px\",\r\n top: \"0px\",\r\n height: \"100%\",\r\n lineHeight: \"41px\",\r\n fontSize: \"20px\",\r\n },\r\n },\r\n },\r\n fullWidth: {\r\n width: \"100%\",\r\n },\r\n primary: {\r\n backgroundColor: primaryColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: primaryColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.2)\",\r\n },\r\n },\r\n info: {\r\n backgroundColor: infoColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: infoColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.2)\",\r\n },\r\n },\r\n success: {\r\n backgroundColor: successColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: successColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.2)\",\r\n },\r\n },\r\n warning: {\r\n backgroundColor: warningColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: warningColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.2)\",\r\n },\r\n },\r\n danger: {\r\n backgroundColor: dangerColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: dangerColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.2)\",\r\n },\r\n },\r\n rose: {\r\n backgroundColor: roseColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: roseColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.2)\",\r\n },\r\n },\r\n white: {\r\n \"&,&:focus,&:hover\": {\r\n backgroundColor: whiteColor,\r\n color: grayColor[0],\r\n },\r\n },\r\n twitter: {\r\n backgroundColor: twitterColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus,&:visited\": {\r\n backgroundColor: twitterColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.2)\",\r\n },\r\n },\r\n facebook: {\r\n backgroundColor: facebookColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: facebookColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.2)\",\r\n },\r\n },\r\n google: {\r\n backgroundColor: googleColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: googleColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.2)\",\r\n },\r\n },\r\n linkedin: {\r\n backgroundColor: linkedinColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: linkedinColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.2)\",\r\n },\r\n },\r\n pinterest: {\r\n backgroundColor: pinterestColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: pinterestColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.2)\",\r\n },\r\n },\r\n youtube: {\r\n backgroundColor: youtubeColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: youtubeColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.2)\",\r\n },\r\n },\r\n tumblr: {\r\n backgroundColor: tumblrColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: tumblrColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.2)\",\r\n },\r\n },\r\n github: {\r\n backgroundColor: grayColor[7],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(grayColor[6]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(grayColor[6]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(grayColor[6]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: grayColor[7],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(grayColor[6]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(grayColor[6]) +\r\n \", 0.2)\",\r\n },\r\n },\r\n behance: {\r\n backgroundColor: behanceColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: behanceColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.2)\",\r\n },\r\n },\r\n dribbble: {\r\n backgroundColor: dribbbleColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: dribbbleColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.2)\",\r\n },\r\n },\r\n reddit: {\r\n backgroundColor: redditColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: redditColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.2)\",\r\n },\r\n },\r\n simple: {\r\n \"&,&:focus,&:hover\": {\r\n color: whiteColor,\r\n background: \"transparent\",\r\n boxShadow: \"none\",\r\n },\r\n \"&$primary\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: primaryColor[0],\r\n },\r\n },\r\n \"&$info\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: infoColor[0],\r\n },\r\n },\r\n \"&$success\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: successColor[0],\r\n },\r\n },\r\n \"&$warning\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: warningColor[0],\r\n },\r\n },\r\n \"&$rose\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: roseColor[0],\r\n },\r\n },\r\n \"&$danger\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: dangerColor[0],\r\n },\r\n },\r\n \"&$twitter\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: twitterColor,\r\n },\r\n },\r\n \"&$facebook\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: facebookColor,\r\n },\r\n },\r\n \"&$google\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: googleColor,\r\n },\r\n },\r\n \"&$linkedin\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: linkedinColor,\r\n },\r\n },\r\n \"&$pinterest\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: pinterestColor,\r\n },\r\n },\r\n \"&$youtube\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: youtubeColor,\r\n },\r\n },\r\n \"&$tumblr\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: tumblrColor,\r\n },\r\n },\r\n \"&$github\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: grayColor[7],\r\n },\r\n },\r\n \"&$behance\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: behanceColor,\r\n },\r\n },\r\n \"&$dribbble\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: dribbbleColor,\r\n },\r\n },\r\n \"&$reddit\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: redditColor,\r\n },\r\n },\r\n },\r\n transparent: {\r\n \"&,&:focus,&:hover\": {\r\n color: \"inherit\",\r\n background: \"transparent\",\r\n boxShadow: \"none\",\r\n },\r\n },\r\n disabled: {\r\n opacity: \"0.65\",\r\n pointerEvents: \"none\",\r\n },\r\n lg: {\r\n \"&$justIcon\": {\r\n \"& .fab,& .fas,& .far,& .fal,& svg,& .material-icons\": {\r\n marginTop: \"-4px\",\r\n },\r\n },\r\n padding: \"1.125rem 2.25rem\",\r\n fontSize: \"0.875rem\",\r\n lineHeight: \"1.333333\",\r\n borderRadius: \"0.2rem\",\r\n },\r\n sm: {\r\n \"&$justIcon\": {\r\n \"& .fab,& .fas,& .far,& .fal,& svg,& .material-icons\": {\r\n marginTop: \"1px\",\r\n },\r\n },\r\n padding: \"0.40625rem 1.25rem\",\r\n fontSize: \"0.6875rem\",\r\n lineHeight: \"1.5\",\r\n borderRadius: \"0.2rem\",\r\n },\r\n round: {\r\n borderRadius: \"30px\",\r\n },\r\n block: {\r\n width: \"100% !important\",\r\n },\r\n link: {\r\n \"&,&:hover,&:focus\": {\r\n backgroundColor: \"transparent\",\r\n color: grayColor[0],\r\n boxShadow: \"none\",\r\n },\r\n },\r\n justIcon: {\r\n paddingLeft: \"12px\",\r\n paddingRight: \"12px\",\r\n fontSize: \"20px\",\r\n height: \"41px\",\r\n minWidth: \"41px\",\r\n width: \"41px\",\r\n \"& .fab,& .fas,& .far,& .fal,& svg,& .material-icons\": {\r\n marginRight: \"0px\",\r\n },\r\n \"&$lg\": {\r\n height: \"57px\",\r\n minWidth: \"57px\",\r\n width: \"57px\",\r\n lineHeight: \"56px\",\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n fontSize: \"32px\",\r\n lineHeight: \"56px\",\r\n },\r\n \"& svg\": {\r\n width: \"32px\",\r\n height: \"32px\",\r\n },\r\n },\r\n \"&$sm\": {\r\n height: \"30px\",\r\n minWidth: \"30px\",\r\n width: \"30px\",\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n fontSize: \"17px\",\r\n lineHeight: \"29px\",\r\n },\r\n \"& svg\": {\r\n width: \"17px\",\r\n height: \"17px\",\r\n },\r\n },\r\n },\r\n};\r\n\r\nexport default buttonStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n\r\n// material-ui components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Button from \"@material-ui/core/Button\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/buttonStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nconst RegularButton = React.forwardRef((props, ref) => {\r\n const classes = useStyles();\r\n const {\r\n color,\r\n round,\r\n children,\r\n fullWidth,\r\n disabled,\r\n simple,\r\n size,\r\n block,\r\n link,\r\n justIcon,\r\n className,\r\n muiClasses,\r\n ...rest\r\n } = props;\r\n const btnClasses = classNames({\r\n [classes.button]: true,\r\n [classes[size]]: size,\r\n [classes[color]]: color,\r\n [classes.round]: round,\r\n [classes.fullWidth]: fullWidth,\r\n [classes.disabled]: disabled,\r\n [classes.simple]: simple,\r\n [classes.block]: block,\r\n [classes.link]: link,\r\n [classes.justIcon]: justIcon,\r\n [className]: className,\r\n });\r\n return (\r\n \r\n );\r\n});\r\n\r\nRegularButton.propTypes = {\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"rose\",\r\n \"white\",\r\n \"twitter\",\r\n \"facebook\",\r\n \"google\",\r\n \"linkedin\",\r\n \"pinterest\",\r\n \"youtube\",\r\n \"tumblr\",\r\n \"github\",\r\n \"behance\",\r\n \"dribbble\",\r\n \"reddit\",\r\n \"transparent\",\r\n ]),\r\n size: PropTypes.oneOf([\"sm\", \"lg\"]),\r\n simple: PropTypes.bool,\r\n round: PropTypes.bool,\r\n fullWidth: PropTypes.bool,\r\n disabled: PropTypes.bool,\r\n block: PropTypes.bool,\r\n link: PropTypes.bool,\r\n justIcon: PropTypes.bool,\r\n className: PropTypes.string,\r\n muiClasses: PropTypes.object,\r\n children: PropTypes.node,\r\n};\r\n\r\nexport default RegularButton;\r\n","import {\r\n container,\r\n defaultFont,\r\n primaryColor,\r\n defaultBoxShadow,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n boxShadow,\r\n drawerWidth,\r\n transition,\r\n whiteColor,\r\n grayColor,\r\n blackColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst pagesHeaderStyle = theme => ({\r\n appBar: {\r\n backgroundColor: \"transparent\",\r\n boxShadow: \"none\",\r\n borderBottom: \"0\",\r\n marginBottom: \"0\",\r\n position: \"absolute\",\r\n width: \"100%\",\r\n paddingTop: \"10px\",\r\n zIndex: \"1029\",\r\n color: grayColor[6],\r\n border: \"0\",\r\n borderRadius: \"3px\",\r\n padding: \"10px 0\",\r\n transition: \"all 150ms ease 0s\",\r\n minHeight: \"50px\",\r\n display: \"block\"\r\n },\r\n container: {\r\n ...container,\r\n minHeight: \"50px\"\r\n },\r\n flex: {\r\n flex: 1\r\n },\r\n title: {\r\n ...defaultFont,\r\n lineHeight: \"30px\",\r\n fontSize: \"18px\",\r\n borderRadius: \"3px\",\r\n textTransform: \"none\",\r\n color: whiteColor,\r\n letterSpacing: \"unset\",\r\n \"&:hover,&:focus\": {\r\n background: \"transparent\",\r\n color: whiteColor\r\n }\r\n },\r\n appResponsive: {\r\n top: \"8px\"\r\n },\r\n primary: {\r\n backgroundColor: primaryColor[0],\r\n color: whiteColor,\r\n ...defaultBoxShadow\r\n },\r\n info: {\r\n backgroundColor: infoColor[0],\r\n color: whiteColor,\r\n ...defaultBoxShadow\r\n },\r\n success: {\r\n backgroundColor: successColor[0],\r\n color: whiteColor,\r\n ...defaultBoxShadow\r\n },\r\n warning: {\r\n backgroundColor: warningColor[0],\r\n color: whiteColor,\r\n ...defaultBoxShadow\r\n },\r\n danger: {\r\n backgroundColor: dangerColor[0],\r\n color: whiteColor,\r\n ...defaultBoxShadow\r\n },\r\n list: {\r\n ...defaultFont,\r\n fontSize: \"14px\",\r\n margin: 0,\r\n marginRight: \"-15px\",\r\n paddingLeft: \"0\",\r\n listStyle: \"none\",\r\n color: whiteColor,\r\n paddingTop: \"0\",\r\n paddingBottom: \"0\"\r\n },\r\n listItem: {\r\n float: \"left\",\r\n position: \"relative\",\r\n display: \"block\",\r\n width: \"auto\",\r\n margin: \"0\",\r\n padding: \"0\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n zIndex: \"999\",\r\n width: \"100%\",\r\n paddingRight: \"15px\"\r\n }\r\n },\r\n navLink: {\r\n color: whiteColor,\r\n margin: \"0 5px\",\r\n paddingTop: \"15px\",\r\n paddingBottom: \"15px\",\r\n fontWeight: \"500\",\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n borderRadius: \"3px\",\r\n lineHeight: \"20px\",\r\n position: \"relative\",\r\n display: \"block\",\r\n padding: \"10px 15px\",\r\n textDecoration: \"none\",\r\n \"&:hover,&:focus\": {\r\n color: whiteColor,\r\n background: \"rgba(\" + hexToRgb(grayColor[17]) + \", 0.2)\"\r\n }\r\n },\r\n listItemIcon: {\r\n marginTop: \"-3px\",\r\n top: \"0px\",\r\n position: \"relative\",\r\n marginRight: \"3px\",\r\n width: \"20px\",\r\n height: \"20px\",\r\n verticalAlign: \"middle\",\r\n color: \"inherit\",\r\n display: \"inline-block\"\r\n },\r\n listItemText: {\r\n flex: \"none\",\r\n padding: \"0\",\r\n minWidth: \"0\",\r\n margin: 0,\r\n display: \"inline-block\",\r\n position: \"relative\",\r\n whiteSpace: \"nowrap\"\r\n },\r\n navLinkActive: {\r\n backgroundColor: \"rgba(\" + hexToRgb(whiteColor) + \", 0.1)\"\r\n },\r\n drawerPaper: {\r\n border: \"none\",\r\n bottom: \"0\",\r\n transitionProperty: \"top, bottom, width\",\r\n transitionDuration: \".2s, .2s, .35s\",\r\n transitionTimingFunction: \"linear, linear, ease\",\r\n ...boxShadow,\r\n width: drawerWidth,\r\n ...boxShadow,\r\n position: \"fixed\",\r\n display: \"block\",\r\n top: \"0\",\r\n height: \"100vh\",\r\n right: \"0\",\r\n left: \"auto\",\r\n visibility: \"visible\",\r\n overflowY: \"visible\",\r\n borderTop: \"none\",\r\n textAlign: \"left\",\r\n paddingRight: \"0px\",\r\n paddingLeft: \"0\",\r\n ...transition,\r\n \"&:before,&:after\": {\r\n position: \"absolute\",\r\n zIndex: \"3\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n content: '\"\"',\r\n display: \"block\",\r\n top: \"0\"\r\n },\r\n \"&:after\": {\r\n background: blackColor,\r\n opacity: \".8\"\r\n }\r\n },\r\n sidebarButton: {\r\n \"&,&:hover,&:focus\": {\r\n color: whiteColor\r\n },\r\n top: \"-2px\"\r\n }\r\n});\r\n\r\nexport default pagesHeaderStyle;\r\n","import React from \"react\";\r\nimport cx from \"classnames\";\r\nimport PropTypes from \"prop-types\";\r\nimport { NavLink } from \"react-router-dom\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport AppBar from \"@material-ui/core/AppBar\";\r\nimport Toolbar from \"@material-ui/core/Toolbar\";\r\nimport Hidden from \"@material-ui/core/Hidden\";\r\nimport Drawer from \"@material-ui/core/Drawer\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\nimport ListItemText from \"@material-ui/core/ListItemText\";\r\n\r\n// @material-ui/icons\r\nimport Dashboard from \"@material-ui/icons/Dashboard\";\r\nimport Menu from \"@material-ui/icons/Menu\";\r\nimport Fingerprint from \"@material-ui/icons/Fingerprint\";\r\nimport LockOpen from \"@material-ui/icons/LockOpen\";\r\n\r\n// core components\r\nimport Button from \"components/CustomButtons/Button\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/authNavbarStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function AuthNavbar(props) {\r\n const [open, setOpen] = React.useState(false);\r\n const handleDrawerToggle = () => {\r\n setOpen(!open);\r\n };\r\n // verifies if routeName is the one active (in browser input)\r\n const activeRoute = (routeName) => {\r\n return window.location.href.indexOf(routeName) > -1 ? true : false;\r\n };\r\n const classes = useStyles();\r\n const { color, brandText } = props;\r\n const appBarClasses = cx({\r\n [\" \" + classes[color]]: color,\r\n });\r\n var list = (\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\n \r\n \r\n \r\n \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
\r\n {list}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {list}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nAuthNavbar.propTypes = {\r\n color: PropTypes.oneOf([\"primary\", \"info\", \"success\", \"warning\", \"danger\"]),\r\n brandText: PropTypes.string,\r\n};\r\n","import {\r\n defaultFont,\r\n container,\r\n containerFluid,\r\n primaryColor,\r\n whiteColor,\r\n grayColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst footerStyle = {\r\n block: {},\r\n left: {\r\n float: \"left!important\",\r\n display: \"block\"\r\n },\r\n right: {\r\n margin: \"0\",\r\n fontSize: \"14px\",\r\n float: \"right!important\",\r\n padding: \"15px\"\r\n },\r\n footer: {\r\n bottom: \"0\",\r\n borderTop: \"1px solid \" + grayColor[15],\r\n padding: \"15px 0\",\r\n ...defaultFont,\r\n zIndex: 4\r\n },\r\n container: {\r\n zIndex: 3,\r\n ...container,\r\n position: \"relative\"\r\n },\r\n containerFluid: {\r\n zIndex: 3,\r\n ...containerFluid,\r\n position: \"relative\"\r\n },\r\n a: {\r\n color: primaryColor[0],\r\n textDecoration: \"none\",\r\n backgroundColor: \"transparent\"\r\n },\r\n list: {\r\n marginBottom: \"0\",\r\n padding: \"0\",\r\n marginTop: \"0\"\r\n },\r\n inlineBlock: {\r\n display: \"inline-block\",\r\n padding: \"0\",\r\n width: \"auto\"\r\n },\r\n whiteColor: {\r\n \"&,&:hover,&:focus\": {\r\n color: whiteColor\r\n }\r\n }\r\n};\r\nexport default footerStyle;\r\n","/*eslint-disable*/\r\nimport React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport cx from \"classnames\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/footerStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Footer(props) {\r\n const classes = useStyles();\r\n const { fluid, white, rtlActive } = props;\r\n var container = cx({\r\n [classes.container]: !fluid,\r\n [classes.containerFluid]: fluid,\r\n [classes.whiteColor]: white\r\n });\r\n var anchor =\r\n classes.a +\r\n cx({\r\n [\" \" + classes.whiteColor]: white\r\n });\r\n return (\r\n
\r\n
\r\n

\r\n © {1900 + new Date().getYear()}{\" \"}\r\n {rtlActive\r\n ? \"مصنوعة مع الحب لشبكة الإنترنت أفضل\"\r\n : \"Made with love for a better web\"}\r\n

\r\n
\r\n
\r\n );\r\n}\r\n\r\nFooter.propTypes = {\r\n fluid: PropTypes.bool,\r\n white: PropTypes.bool,\r\n rtlActive: PropTypes.bool\r\n};\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst styles = {\r\n grid: {\r\n margin: \"0 -15px\",\r\n width: \"calc(100% + 30px)\"\r\n // '&:before,&:after':{\r\n // display: 'table',\r\n // content: '\" \"',\r\n // },\r\n // '&:after':{\r\n // clear: 'both',\r\n // }\r\n }\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function GridContainer(props) {\r\n const classes = useStyles();\r\n const { children, className, ...rest } = props;\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nGridContainer.propTypes = {\r\n className: PropTypes.string,\r\n children: PropTypes.node\r\n};\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst styles = {\r\n grid: {\r\n padding: \"0 15px !important\",\r\n },\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function GridItem(props) {\r\n const classes = useStyles();\r\n const { children, className, ...rest } = props;\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nGridItem.propTypes = {\r\n className: PropTypes.string,\r\n children: PropTypes.node,\r\n};\r\n","import {\r\n grayColor,\r\n primaryColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n whiteColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst paginationStyle = {\r\n pagination: {\r\n display: \"inline-block\",\r\n paddingLeft: \"0\",\r\n margin: \"20px 0\",\r\n borderRadius: \"4px\"\r\n },\r\n paginationItem: {\r\n display: \"inline\"\r\n },\r\n paginationLink: {\r\n \":first-of-type\": {\r\n marginleft: \"0\"\r\n },\r\n letterSpacing: \"unset\",\r\n border: \"0\",\r\n borderRadius: \"30px !important\",\r\n transition: \"all .3s\",\r\n padding: \"0px 11px\",\r\n margin: \"0 3px\",\r\n minWidth: \"30px\",\r\n height: \"30px\",\r\n minHeight: \"auto\",\r\n lineHeight: \"30px\",\r\n fontWeight: \"400\",\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n background: \"transparent\",\r\n position: \"relative\",\r\n float: \"left\",\r\n textDecoration: \"none\",\r\n boxSizing: \"border-box\",\r\n \"&,&:hover,&:focus\": {\r\n color: grayColor[0]\r\n },\r\n \"&:hover,&:focus\": {\r\n zIndex: \"3\",\r\n backgroundColor: grayColor[8],\r\n borderColor: grayColor[5]\r\n },\r\n \"&:hover\": {\r\n cursor: \"pointer\"\r\n }\r\n },\r\n primary: {\r\n \"&,&:hover,&:focus\": {\r\n backgroundColor: primaryColor[0],\r\n borderColor: primaryColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 5px 0 rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.14), 0 1px 10px 0 rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.12), 0 2px 4px -1px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.2)\"\r\n },\r\n \"&:hover,&:focus\": {\r\n zIndex: \"2\",\r\n cursor: \"default\"\r\n }\r\n },\r\n info: {\r\n \"&,&:hover,&:focus\": {\r\n backgroundColor: infoColor[0],\r\n borderColor: infoColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 5px 0 rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.14), 0 1px 10px 0 rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.12), 0 2px 4px -1px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.2)\"\r\n },\r\n \"&:hover,&:focus\": {\r\n zIndex: \"2\",\r\n cursor: \"default\"\r\n }\r\n },\r\n success: {\r\n \"&,&:hover,&:focus\": {\r\n backgroundColor: successColor[0],\r\n borderColor: successColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 5px 0 rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.14), 0 1px 10px 0 rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.12), 0 2px 4px -1px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.2)\"\r\n },\r\n \"&:hover,&:focus\": {\r\n zIndex: \"2\",\r\n cursor: \"default\"\r\n }\r\n },\r\n warning: {\r\n \"&,&:hover,&:focus\": {\r\n backgroundColor: warningColor[0],\r\n borderColor: warningColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 5px 0 rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.14), 0 1px 10px 0 rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.12), 0 2px 4px -1px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.2)\"\r\n },\r\n \"&:hover,&:focus\": {\r\n zIndex: \"2\",\r\n cursor: \"default\"\r\n }\r\n },\r\n danger: {\r\n \"&,&:hover,&:focus\": {\r\n backgroundColor: dangerColor[0],\r\n borderColor: dangerColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 5px 0 rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.14), 0 1px 10px 0 rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.12), 0 2px 4px -1px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.2)\"\r\n },\r\n \"&:hover,&:focus\": {\r\n zIndex: \"2\",\r\n cursor: \"default\"\r\n }\r\n },\r\n disabled: {\r\n \"&,&:hover,&:focus\": {\r\n color: grayColor[1],\r\n cursor: \"not-allowed\",\r\n backgroundColor: whiteColor,\r\n borderColor: grayColor[5]\r\n }\r\n }\r\n};\r\n\r\nexport default paginationStyle;\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport cx from \"classnames\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Button from \"@material-ui/core/Button\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/paginationStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Pagination(props) {\r\n const classes = useStyles();\r\n const { pages, color } = props;\r\n return (\r\n
    \r\n {pages.map((prop, key) => {\r\n const paginationLink = cx({\r\n [classes.paginationLink]: true,\r\n [classes[color]]: prop.active,\r\n [classes.disabled]: prop.disabled\r\n });\r\n return (\r\n
  • \r\n {prop.onClick !== undefined ? (\r\n \r\n ) : (\r\n alert(\"you've clicked \" + prop.text)}\r\n className={paginationLink}\r\n >\r\n {prop.text}\r\n \r\n )}\r\n
  • \r\n );\r\n })}\r\n
\r\n );\r\n}\r\n\r\nPagination.defaultProps = {\r\n color: \"primary\"\r\n};\r\n\r\nPagination.propTypes = {\r\n pages: PropTypes.arrayOf(\r\n PropTypes.shape({\r\n active: PropTypes.bool,\r\n disabled: PropTypes.bool,\r\n text: PropTypes.oneOfType([\r\n PropTypes.number,\r\n PropTypes.oneOf([\"PREV\", \"NEXT\", \"...\"])\r\n ]).isRequired,\r\n onClick: PropTypes.func\r\n })\r\n ).isRequired,\r\n color: PropTypes.oneOf([\"primary\", \"info\", \"success\", \"warning\", \"danger\"])\r\n};\r\n","import {\r\n primaryColor,\r\n infoColor,\r\n successColor,\r\n dangerColor,\r\n warningColor,\r\n roseColor,\r\n whiteColor,\r\n blackColor,\r\n grayColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst cardStyle = {\r\n card: {\r\n border: \"0\",\r\n marginBottom: \"30px\",\r\n marginTop: \"30px\",\r\n borderRadius: \"6px\",\r\n color: \"rgba(\" + hexToRgb(blackColor) + \", 0.87)\",\r\n background: whiteColor,\r\n width: \"100%\",\r\n boxShadow: \"0 1px 4px 0 rgba(\" + hexToRgb(blackColor) + \", 0.14)\",\r\n position: \"relative\",\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n minWidth: \"0\",\r\n wordWrap: \"break-word\",\r\n fontSize: \".875rem\"\r\n },\r\n cardPlain: {\r\n background: \"transparent\",\r\n boxShadow: \"none\"\r\n },\r\n cardProfile: {\r\n marginTop: \"30px\",\r\n textAlign: \"center\"\r\n },\r\n cardBlog: {\r\n marginTop: \"60px\"\r\n },\r\n cardRaised: {\r\n boxShadow:\r\n \"0 16px 38px -12px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.56), 0 4px 25px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\"\r\n },\r\n cardBackground: {\r\n backgroundPosition: \"center center\",\r\n backgroundSize: \"cover\",\r\n textAlign: \"center\",\r\n \"&:after\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: '\"\"',\r\n backgroundColor: \"rgba(\" + hexToRgb(blackColor) + \", 0.56)\",\r\n borderRadius: \"6px\"\r\n },\r\n \"& small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.7) !important\"\r\n }\r\n },\r\n cardPricing: {\r\n textAlign: \"center\",\r\n \"&:after\": {\r\n backgroundColor: \"rgba(\" + hexToRgb(blackColor) + \", 0.7) !important\"\r\n },\r\n \"& ul\": {\r\n listStyle: \"none\",\r\n padding: 0,\r\n maxWidth: \"240px\",\r\n margin: \"10px auto\"\r\n },\r\n \"& ul li\": {\r\n color: grayColor[0],\r\n textAlign: \"center\",\r\n padding: \"12px 0px\",\r\n borderBottom: \"1px solid rgba(\" + hexToRgb(grayColor[0]) + \",0.3)\"\r\n },\r\n \"& ul li:last-child\": {\r\n border: 0\r\n },\r\n \"& ul li b\": {\r\n color: grayColor[2]\r\n },\r\n \"& h1\": {\r\n marginTop: \"30px\"\r\n },\r\n \"& h1 small\": {\r\n display: \"inline-flex\",\r\n height: 0,\r\n fontSize: \"18px\"\r\n },\r\n \"& h1 small:first-child\": {\r\n position: \"relative\",\r\n top: \"-17px\",\r\n fontSize: \"26px\"\r\n },\r\n \"& ul li svg, & ul li .fab,& ul li .fas,& ul li .far,& ul li .fal,& ul li .material-icons\": {\r\n position: \"relative\",\r\n top: \"7px\"\r\n }\r\n },\r\n cardPricingColor: {\r\n \"& ul li\": {\r\n color: whiteColor,\r\n borderColor: \"rgba(\" + hexToRgb(whiteColor) + \",0.3)\",\r\n \"& b, & svg,& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n color: whiteColor,\r\n fontWeight: \"700\"\r\n }\r\n }\r\n },\r\n cardProduct: {\r\n marginTop: \"30px\"\r\n },\r\n primary: {\r\n background:\r\n \"linear-gradient(60deg,\" + primaryColor[1] + \",\" + primaryColor[4] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n info: {\r\n background:\r\n \"linear-gradient(60deg,\" + infoColor[1] + \",\" + infoColor[4] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n success: {\r\n background:\r\n \"linear-gradient(60deg,\" + successColor[1] + \",\" + successColor[4] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n warning: {\r\n background:\r\n \"linear-gradient(60deg,\" + warningColor[1] + \",\" + warningColor[4] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n danger: {\r\n background:\r\n \"linear-gradient(60deg,\" + dangerColor[1] + \",\" + dangerColor[4] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n rose: {\r\n background:\r\n \"linear-gradient(60deg,\" + roseColor[1] + \",\" + roseColor[4] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n cardChart: {\r\n \"& p\": {\r\n marginTop: \"0px\",\r\n paddingTop: \"0px\"\r\n }\r\n },\r\n cardLogin: {\r\n transform: \"translate3d(\" + hexToRgb(blackColor) + \")\",\r\n transition: \"all 300ms linear\"\r\n }\r\n};\r\n\r\nexport default cardStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\n\r\n// core components\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/cardStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Card(props) {\r\n const classes = useStyles();\r\n const {\r\n className,\r\n children,\r\n plain,\r\n profile,\r\n blog,\r\n raised,\r\n background,\r\n pricing,\r\n color,\r\n product,\r\n testimonial,\r\n chart,\r\n login,\r\n ...rest\r\n } = props;\r\n const cardClasses = classNames({\r\n [classes.card]: true,\r\n [classes.cardPlain]: plain,\r\n [classes.cardProfile]: profile || testimonial,\r\n [classes.cardBlog]: blog,\r\n [classes.cardRaised]: raised,\r\n [classes.cardBackground]: background,\r\n [classes.cardPricingColor]:\r\n (pricing && color !== undefined) || (pricing && background !== undefined),\r\n [classes[color]]: color,\r\n [classes.cardPricing]: pricing,\r\n [classes.cardProduct]: product,\r\n [classes.cardChart]: chart,\r\n [classes.cardLogin]: login,\r\n [className]: className !== undefined\r\n });\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nCard.propTypes = {\r\n className: PropTypes.string,\r\n plain: PropTypes.bool,\r\n profile: PropTypes.bool,\r\n blog: PropTypes.bool,\r\n raised: PropTypes.bool,\r\n background: PropTypes.bool,\r\n pricing: PropTypes.bool,\r\n testimonial: PropTypes.bool,\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"rose\"\r\n ]),\r\n product: PropTypes.bool,\r\n chart: PropTypes.bool,\r\n login: PropTypes.bool,\r\n children: PropTypes.node\r\n};\r\n","import {\r\n whiteColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst cardBodyStyle = {\r\n cardBody: {\r\n padding: \"0.9375rem 20px\",\r\n flex: \"1 1 auto\",\r\n WebkitBoxFlex: \"1\",\r\n position: \"relative\"\r\n },\r\n cardBodyBackground: {\r\n position: \"relative\",\r\n zIndex: \"2\",\r\n minHeight: \"280px\",\r\n paddingTop: \"40px\",\r\n paddingBottom: \"40px\",\r\n maxWidth: \"440px\",\r\n margin: \"0 auto\"\r\n },\r\n cardBodyPlain: {\r\n paddingLeft: \"5px\",\r\n paddingRight: \"5px\"\r\n },\r\n cardBodyFormHorizontal: {\r\n paddingLeft: \"15px\",\r\n paddingRight: \"15px\",\r\n \"& form\": {\r\n margin: \"0\"\r\n }\r\n },\r\n cardPricing: {\r\n padding: \"15px!important\",\r\n margin: \"0px!important\"\r\n },\r\n cardSignup: {\r\n padding: \"0px 30px 0px 30px\"\r\n },\r\n cardBodyColor: {\r\n borderRadius: \"6px\",\r\n \"& h1,& h2,& h3\": {\r\n \"& small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n }\r\n }\r\n },\r\n cardBodyProfile: {\r\n marginTop: \"15px\"\r\n },\r\n cardBodyCalendar: {\r\n padding: \"0px !important\"\r\n }\r\n};\r\n\r\nexport default cardBodyStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\n\r\n// core components\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/cardBodyStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CardBody(props) {\r\n const classes = useStyles();\r\n const {\r\n className,\r\n children,\r\n background,\r\n plain,\r\n formHorizontal,\r\n pricing,\r\n signup,\r\n color,\r\n profile,\r\n calendar,\r\n ...rest\r\n } = props;\r\n const cardBodyClasses = classNames({\r\n [classes.cardBody]: true,\r\n [classes.cardBodyBackground]: background,\r\n [classes.cardBodyPlain]: plain,\r\n [classes.cardBodyFormHorizontal]: formHorizontal,\r\n [classes.cardPricing]: pricing,\r\n [classes.cardSignup]: signup,\r\n [classes.cardBodyColor]: color,\r\n [classes.cardBodyProfile]: profile,\r\n [classes.cardBodyCalendar]: calendar,\r\n [className]: className !== undefined\r\n });\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nCardBody.propTypes = {\r\n className: PropTypes.string,\r\n background: PropTypes.bool,\r\n plain: PropTypes.bool,\r\n formHorizontal: PropTypes.bool,\r\n pricing: PropTypes.bool,\r\n signup: PropTypes.bool,\r\n color: PropTypes.bool,\r\n profile: PropTypes.bool,\r\n calendar: PropTypes.bool,\r\n children: PropTypes.node\r\n};\r\n","const buttonGroupStyle = {\r\n buttonGroup: {\r\n position: \"relative\",\r\n margin: \"10px 1px\",\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\"\r\n },\r\n firstButton: {\r\n borderTopRightRadius: \"0\",\r\n borderBottomRightRadius: \"0\",\r\n margin: \"0\",\r\n position: \"relative\",\r\n float: \"left\",\r\n \"&:hover\": {\r\n zIndex: \"2\"\r\n }\r\n },\r\n middleButton: {\r\n borderRadius: \"0\",\r\n margin: \"0\",\r\n position: \"relative\",\r\n float: \"left\",\r\n \"&:hover\": {\r\n zIndex: \"2\"\r\n }\r\n },\r\n lastButton: {\r\n borderTopLeftRadius: \"0\",\r\n borderBottomLeftRadius: \"0\",\r\n margin: \"0\",\r\n \"&:hover\": {\r\n zIndex: \"2\"\r\n }\r\n }\r\n};\r\n\r\nexport default buttonGroupStyle;\r\n","import { grayColor } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nimport buttonGroupStyle from \"assets/jss/material-dashboard-pro-react/buttonGroupStyle.js\";\r\n\r\nconst buttonsStyle = {\r\n cardTitle: {\r\n marginTop: \"0\",\r\n marginBottom: \"3px\",\r\n color: grayColor[2],\r\n fontSize: \"18px\"\r\n },\r\n cardHeader: {\r\n zIndex: \"3\"\r\n },\r\n cardContentLeft: {\r\n padding: \"15px 20px 15px 0px\",\r\n position: \"relative\"\r\n },\r\n cardContentRight: {\r\n padding: \"15px 20px 15px 0px\",\r\n position: \"relative\"\r\n },\r\n cardContentBottom: {\r\n padding: \"15px 0px 0px 0px\",\r\n position: \"relative\"\r\n },\r\n marginRight: {\r\n marginRight: \"5px\"\r\n },\r\n icons: {\r\n width: \"17px\",\r\n height: \"17px\"\r\n },\r\n ...buttonGroupStyle,\r\n socialButtonsIcons: {\r\n fontSize: \"18px\",\r\n marginTop: \"-2px\",\r\n position: \"relative\"\r\n }\r\n};\r\n\r\nexport default buttonsStyle;\r\n","import React from \"react\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// @material-ui/icons\r\nimport KeyboardArrowLeft from \"@material-ui/icons/KeyboardArrowLeft\";\r\nimport KeyboardArrowRight from \"@material-ui/icons/KeyboardArrowRight\";\r\nimport PriorityHigh from \"@material-ui/icons/PriorityHigh\";\r\nimport Check from \"@material-ui/icons/Check\";\r\nimport Warning from \"@material-ui/icons/Warning\";\r\nimport Close from \"@material-ui/icons/Close\";\r\nimport Favorite from \"@material-ui/icons/Favorite\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Pagination from \"components/Pagination/Pagination.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/buttonsStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Buttons() {\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n \r\n
\r\n

Pick your Color

\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

Buttons with Label

\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

Pick your Size

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n

Pick your Style

\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

Pagination

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n

Button Group

\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\n

Social buttons

\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\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\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\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\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\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\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\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import { grayColor } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst headingStyle = {\r\n heading: {\r\n marginBottom: \"30px\"\r\n },\r\n rightTextAlign: {\r\n textAlign: \"right\"\r\n },\r\n leftTextAlign: {\r\n textAlign: \"left\"\r\n },\r\n centerTextAlign: {\r\n textAlign: \"center\"\r\n },\r\n title: {\r\n marginTop: \"10px\",\r\n color: grayColor[2],\r\n textDecoration: \"none\"\r\n },\r\n category: {\r\n margin: \"0 0 10px\"\r\n }\r\n};\r\n\r\nexport default headingStyle;\r\n","import React from \"react\";\r\nimport cx from \"classnames\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/headingStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Heading(props) {\r\n const { textAlign, category, title } = props;\r\n const classes = useStyles();\r\n const heading =\r\n classes.heading +\r\n \" \" +\r\n cx({\r\n [classes[textAlign + \"TextAlign\"]]: textAlign !== undefined,\r\n });\r\n if (title !== undefined || category !== undefined) {\r\n return (\r\n
\r\n {title !== undefined ? (\r\n

{title}

\r\n ) : null}\r\n {category !== undefined ? (\r\n

{category}

\r\n ) : null}\r\n
\r\n );\r\n }\r\n return null;\r\n}\r\n\r\nHeading.propTypes = {\r\n title: PropTypes.node,\r\n category: PropTypes.node,\r\n textAlign: PropTypes.oneOf([\"right\", \"left\", \"center\"]),\r\n};\r\n","import {\r\n defaultFont,\r\n primaryColor,\r\n primaryBoxShadow,\r\n infoColor,\r\n infoBoxShadow,\r\n successColor,\r\n successBoxShadow,\r\n warningColor,\r\n warningBoxShadow,\r\n dangerColor,\r\n dangerBoxShadow,\r\n roseColor,\r\n roseBoxShadow,\r\n whiteColor,\r\n blackColor,\r\n grayColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst customDropdownStyle = theme => ({\r\n popperClose: {\r\n pointerEvents: \"none\",\r\n display: \"none !important\"\r\n },\r\n popperNav: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n position: \"static !important\",\r\n left: \"unset !important\",\r\n top: \"unset !important\",\r\n transform: \"none !important\",\r\n willChange: \"unset !important\",\r\n \"& > div\": {\r\n boxShadow: \"none !important\",\r\n marginLeft: \"0rem\",\r\n marginRight: \"0rem\",\r\n transition: \"none !important\",\r\n marginTop: \"0px !important\",\r\n marginBottom: \"0px !important\",\r\n padding: \"0px !important\",\r\n backgroundColor: \"transparent !important\",\r\n \"& ul li\": {\r\n color: whiteColor + \" !important\",\r\n margin: \"10px 15px 0!important\",\r\n padding: \"10px 15px !important\",\r\n \"&:hover\": {\r\n backgroundColor: \"hsla(0,0%,78%,.2)\",\r\n boxShadow: \"none\"\r\n }\r\n }\r\n }\r\n }\r\n },\r\n manager: {\r\n \"& > div > button:first-child > span:first-child, & > div > a:first-child > span:first-child\": {\r\n width: \"100%\"\r\n }\r\n },\r\n innerManager: {\r\n \"& > div > button,& > div > a\": {\r\n margin: \"0px !important\",\r\n color: \"inherit !important\",\r\n padding: \"10px 20px !important\",\r\n \"& > span:first-child\": {\r\n width: \"100%\",\r\n justifyContent: \"flex-start\"\r\n }\r\n }\r\n },\r\n target: {\r\n \"& > button:first-child > span:first-child, & > a:first-child > span:first-child\": {\r\n display: \"inline-block\"\r\n },\r\n \"& $caret\": {\r\n marginLeft: \"0px\"\r\n }\r\n },\r\n dropdown: {\r\n borderRadius: \"3px\",\r\n border: \"0\",\r\n boxShadow: \"0 2px 5px 0 rgba(\" + hexToRgb(blackColor) + \", 0.26)\",\r\n top: \"100%\",\r\n zIndex: \"1000\",\r\n minWidth: \"160px\",\r\n padding: \"5px 0\",\r\n margin: \"2px 0 0\",\r\n fontSize: \"14px\",\r\n textAlign: \"left\",\r\n listStyle: \"none\",\r\n backgroundColor: whiteColor,\r\n backgroundClip: \"padding-box\"\r\n },\r\n menuList: {\r\n padding: \"0\"\r\n },\r\n popperResponsive: {\r\n zIndex: \"1200\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n zIndex: \"1640\",\r\n position: \"static\",\r\n float: \"none\",\r\n width: \"auto\",\r\n marginTop: \"0\",\r\n backgroundColor: \"transparent\",\r\n border: \"0\",\r\n boxShadow: \"none\",\r\n color: \"black\"\r\n }\r\n },\r\n dropdownItem: {\r\n ...defaultFont,\r\n fontSize: \"13px\",\r\n padding: \"10px 20px\",\r\n margin: \"0 5px\",\r\n borderRadius: \"2px\",\r\n position: \"relative\",\r\n transition: \"all 150ms linear\",\r\n display: \"block\",\r\n clear: \"both\",\r\n fontWeight: \"400\",\r\n height: \"100%\",\r\n color: grayColor[7],\r\n whiteSpace: \"nowrap\",\r\n minHeight: \"unset\"\r\n },\r\n darkHover: {\r\n \"&:hover\": {\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(grayColor[16]) +\r\n \", 0.4)\",\r\n backgroundColor: grayColor[16],\r\n color: whiteColor\r\n }\r\n },\r\n primaryHover: {\r\n \"&:hover\": {\r\n backgroundColor: primaryColor[0],\r\n color: whiteColor,\r\n ...primaryBoxShadow\r\n }\r\n },\r\n infoHover: {\r\n \"&:hover\": {\r\n backgroundColor: infoColor[0],\r\n color: whiteColor,\r\n ...infoBoxShadow\r\n }\r\n },\r\n successHover: {\r\n \"&:hover\": {\r\n backgroundColor: successColor[0],\r\n color: whiteColor,\r\n ...successBoxShadow\r\n }\r\n },\r\n warningHover: {\r\n \"&:hover\": {\r\n backgroundColor: warningColor[0],\r\n color: whiteColor,\r\n ...warningBoxShadow\r\n }\r\n },\r\n dangerHover: {\r\n \"&:hover\": {\r\n backgroundColor: dangerColor[0],\r\n color: whiteColor,\r\n ...dangerBoxShadow\r\n }\r\n },\r\n roseHover: {\r\n \"&:hover\": {\r\n backgroundColor: roseColor[0],\r\n color: whiteColor,\r\n ...roseBoxShadow\r\n }\r\n },\r\n dropdownItemRTL: {\r\n textAlign: \"right\"\r\n },\r\n dropdownDividerItem: {\r\n margin: \"5px 0\",\r\n backgroundColor: \"rgba(\" + hexToRgb(blackColor) + \", 0.12)\",\r\n height: \"1px\",\r\n overflow: \"hidden\"\r\n },\r\n buttonIcon: {\r\n width: \"20px\",\r\n height: \"20px\"\r\n },\r\n caret: {\r\n transition: \"all 150ms ease-in\",\r\n display: \"inline-block\",\r\n width: \"0\",\r\n height: \"0\",\r\n marginLeft: \"4px\",\r\n verticalAlign: \"middle\",\r\n borderTop: \"4px solid\",\r\n borderRight: \"4px solid transparent\",\r\n borderLeft: \"4px solid transparent\"\r\n },\r\n caretActive: {\r\n transform: \"rotate(180deg)\"\r\n },\r\n caretDropup: {\r\n transform: \"rotate(180deg)\"\r\n },\r\n caretRTL: {\r\n marginRight: \"4px\"\r\n },\r\n dropdownHeader: {\r\n display: \"block\",\r\n padding: \"0.1875rem 1.25rem\",\r\n fontSize: \"0.75rem\",\r\n lineHeight: \"1.428571\",\r\n color: grayColor[1],\r\n whiteSpace: \"nowrap\",\r\n fontWeight: \"inherit\",\r\n marginTop: \"10px\",\r\n minHeight: \"unset\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: \"transparent\",\r\n cursor: \"auto\"\r\n }\r\n },\r\n noLiPadding: {\r\n padding: \"0\"\r\n }\r\n});\r\n\r\nexport default customDropdownStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport MenuList from \"@material-ui/core/MenuList\";\r\nimport ClickAwayListener from \"@material-ui/core/ClickAwayListener\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport Grow from \"@material-ui/core/Grow\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\nimport Popper from \"@material-ui/core/Popper\";\r\n// core components\r\nimport Button from \"components/CustomButtons/Button.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/customDropdownStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CustomDropdown(props) {\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const classes = useStyles();\r\n const handleClick = event => {\r\n if (anchorEl && anchorEl.contains(event.target)) {\r\n setAnchorEl(null);\r\n } else {\r\n setAnchorEl(event.currentTarget);\r\n }\r\n };\r\n const handleClose = event => {\r\n if (anchorEl.contains(event.target)) {\r\n return;\r\n }\r\n setAnchorEl(null);\r\n };\r\n const handleCloseMenu = param => {\r\n setAnchorEl(null);\r\n if (props && props.onClick) {\r\n props.onClick(param);\r\n }\r\n };\r\n const {\r\n buttonText,\r\n buttonIcon,\r\n dropdownList,\r\n buttonProps,\r\n dropup,\r\n dropdownHeader,\r\n caret,\r\n hoverColor,\r\n dropPlacement,\r\n rtlActive,\r\n noLiPadding,\r\n innerDropDown,\r\n navDropdown\r\n } = props;\r\n const caretClasses = classNames({\r\n [classes.caret]: true,\r\n [classes.caretDropup]: dropup && !anchorEl,\r\n [classes.caretActive]: Boolean(anchorEl) && !dropup,\r\n [classes.caretRTL]: rtlActive\r\n });\r\n const dropdownItem = classNames({\r\n [classes.dropdownItem]: true,\r\n [classes[hoverColor + \"Hover\"]]: true,\r\n [classes.noLiPadding]: noLiPadding,\r\n [classes.dropdownItemRTL]: rtlActive\r\n });\r\n const dropDownMenu = (\r\n \r\n {dropdownHeader !== undefined ? (\r\n handleCloseMenu(dropdownHeader)}\r\n className={classes.dropdownHeader}\r\n >\r\n {dropdownHeader}\r\n \r\n ) : null}\r\n {dropdownList.map((prop, key) => {\r\n if (prop.divider) {\r\n return (\r\n handleCloseMenu(\"divider\")}\r\n className={classes.dropdownDividerItem}\r\n />\r\n );\r\n } else if (\r\n prop.props !== undefined &&\r\n prop.props[\"data-ref\"] === \"multi\"\r\n ) {\r\n return (\r\n \r\n {prop}\r\n \r\n );\r\n }\r\n return (\r\n handleCloseMenu(prop)}\r\n className={dropdownItem}\r\n >\r\n {prop}\r\n \r\n );\r\n })}\r\n \r\n );\r\n return (\r\n
\r\n
\r\n \r\n {buttonIcon !== undefined ? (\r\n \r\n ) : null}\r\n {buttonText !== undefined ? buttonText : null}\r\n {caret ? : null}\r\n \r\n
\r\n \r\n {() => (\r\n \r\n \r\n {innerDropDown ? (\r\n dropDownMenu\r\n ) : (\r\n \r\n {dropDownMenu}\r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n
\r\n );\r\n}\r\n\r\nCustomDropdown.defaultProps = {\r\n caret: true,\r\n dropup: false,\r\n hoverColor: \"primary\"\r\n};\r\n\r\nCustomDropdown.propTypes = {\r\n hoverColor: PropTypes.oneOf([\r\n \"dark\",\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"rose\"\r\n ]),\r\n buttonText: PropTypes.node,\r\n buttonIcon: PropTypes.object,\r\n dropdownList: PropTypes.array,\r\n buttonProps: PropTypes.object,\r\n dropup: PropTypes.bool,\r\n dropdownHeader: PropTypes.node,\r\n rtlActive: PropTypes.bool,\r\n caret: PropTypes.bool,\r\n dropPlacement: PropTypes.oneOf([\r\n \"bottom\",\r\n \"top\",\r\n \"right\",\r\n \"left\",\r\n \"bottom-start\",\r\n \"bottom-end\",\r\n \"top-start\",\r\n \"top-end\",\r\n \"right-start\",\r\n \"right-end\",\r\n \"left-start\",\r\n \"left-end\"\r\n ]),\r\n noLiPadding: PropTypes.bool,\r\n innerDropDown: PropTypes.bool,\r\n navDropdown: PropTypes.bool,\r\n // This is a function that returns the clicked menu item\r\n onClick: PropTypes.func\r\n};\r\n","import React from \"react\";\r\n\r\n// @material-ui/icons\r\nimport CardTravel from \"@material-ui/icons/CardTravel\";\r\nimport Extension from \"@material-ui/icons/Extension\";\r\nimport Fingerprint from \"@material-ui/icons/Fingerprint\";\r\nimport FlightLand from \"@material-ui/icons/FlightLand\";\r\nimport Build from \"@material-ui/icons/Build\";\r\n\r\n// core components\r\nimport CustomDropdown from \"components/CustomDropdown/CustomDropdown.js\";\r\n\r\n// ##############################\r\n// // // stories for RTLSupport view\r\n// #############################\r\n\r\nconst rtlStories = [\r\n {\r\n // First story\r\n inverted: true,\r\n badgeColor: \"danger\",\r\n badgeIcon: CardTravel,\r\n title: \"جهة أي\",\r\n titleColor: \"danger\",\r\n body: (\r\n

\r\n قام كل ماذا العصبة اوروبا. أي جورج العالمي أخر, كان تم أطراف القوى\r\n استبدال. أسر ميناء تكتيكاً الجديدة، كل. جُل اللا التكاليف بـ, عرفها\r\n النزاع لليابان بـ أضف. انتهت المدن الثالث من وقد.وقبل قادة إحتار عن أخر.\r\n حين ونتج أخرى قد. بالعمل بالمطالبة فقد قد. عن جنوب ومضى الشتاء.\r\n

\r\n ),\r\n footerTitle: \"مدن أن هُزم سكان, مكن.\",\r\n },\r\n {\r\n // Second story\r\n inverted: true,\r\n badgeColor: \"success\",\r\n badgeIcon: Extension,\r\n title: \"جُل حكومة\",\r\n titleColor: \"success\",\r\n body: (\r\n

\r\n عل فكانت الثقيلة بلا. شيء بخطوط بالرّغم التبرعات عن, يطول بأيدي لم كلّ.\r\n معقل الغالي واتّجه لم وتم, أن الصفحة بالمحور حول, بال مرمى الصفحات\r\n قُدُماً و. الأخذ سبتمبر العالم من ذلك. ان يبق شدّت الأبرياء, الى الربيع،\r\n والمانيا كل. ودول الأهداف التقليدي عل أضف, كلا يقوم الأخذ الآلاف بل.\r\n

\r\n ),\r\n },\r\n {\r\n // Third story\r\n inverted: true,\r\n badgeColor: \"info\",\r\n badgeIcon: Fingerprint,\r\n title: \"هذا غينيا\",\r\n titleColor: \"info\",\r\n body: (\r\n

\r\n جهة المارق والديون التقليدية في, هو وترك المجتمع بريطانيا ذلك, لمّ ما\r\n العالم، اليابان،. ٣٠ فقامت أوروبا مشاركة بعد, ٢٠٠٤ الجو مساعدة ما حدى.\r\n في عليها وبحلول معارضة بعض. عن الأرض وبداية العمليات ولم. الجو جديداً\r\n الأوروبيّون أم به،. ثم التي نتيجة الآلاف جعل, عن المارق السادس قام. ما\r\n أخر فقامت الأجل الشرق،, فصل كل وسوء الأرواح. ثم بعد وشعار بأيدي. قبل\r\n وكسبت الغالي الولايات بل, ٣٠ أمّا أخرى لأداء أضف. هو منتصف معزّزة على.\r\n بـ أفريقيا التغييرات مما, أثره،.\r\n

\r\n ),\r\n footer: (\r\n \r\n ),\r\n },\r\n];\r\n\r\n// ##############################\r\n// // // stories for Widgets view\r\n// #############################\r\n\r\nconst widgetStories = [\r\n {\r\n // First story\r\n inverted: true,\r\n badgeColor: \"danger\",\r\n badgeIcon: CardTravel,\r\n title: \"Some Title\",\r\n titleColor: \"danger\",\r\n body: (\r\n

\r\n Wifey made the best Father{\"'\"}s Day meal ever. So thankful so happy so\r\n blessed. Thank you for making my family We just had fun with the\r\n “future” theme !!! It was a fun night all together ... The always rude\r\n Kanye Show at 2am Sold Out Famous viewing @ Figueroa and 12th in\r\n downtown.\r\n

\r\n ),\r\n footerTitle: \"11 hours ago via Twitter\",\r\n },\r\n {\r\n // Second story\r\n inverted: true,\r\n badgeColor: \"success\",\r\n badgeIcon: Extension,\r\n title: \"Another One\",\r\n titleColor: \"success\",\r\n body: (\r\n

\r\n Thank God for the support of my wife and real friends. I also wanted to\r\n point out that it’s the first album to go number 1 off of streaming!!! I\r\n love you Ellen and also my number one design rule of anything I do from\r\n shoes to music to homes is that Kim has to like it....\r\n

\r\n ),\r\n },\r\n {\r\n // Third story\r\n inverted: true,\r\n badgeColor: \"info\",\r\n badgeIcon: Fingerprint,\r\n title: \"Another Title\",\r\n titleColor: \"info\",\r\n body: (\r\n
\r\n

\r\n Called I Miss the Old Kanye That’s all it was Kanye And I love you\r\n like Kanye loves Kanye Famous viewing @ Figueroa and 12th in downtown\r\n LA 11:10PM\r\n

\r\n

\r\n What if Kanye made a song about Kanye Royère doesn{\"'\"}t make a Polar\r\n bear bed but the Polar bear couch is my favorite piece of furniture we\r\n own It wasn’t any Kanyes Set on his goals Kanye\r\n

\r\n
\r\n ),\r\n footer: (\r\n \r\n ),\r\n },\r\n];\r\n\r\n// ##############################\r\n// // // stories for Timeline view\r\n// #############################\r\n\r\nconst stories = [\r\n {\r\n // First story\r\n inverted: true,\r\n badgeColor: \"danger\",\r\n badgeIcon: CardTravel,\r\n title: \"Some Title\",\r\n titleColor: \"danger\",\r\n body: (\r\n

\r\n Wifey made the best Father{\"'\"}s Day meal ever. So thankful so happy so\r\n blessed. Thank you for making my family We just had fun with the\r\n “future” theme !!! It was a fun night all together ... The always rude\r\n Kanye Show at 2am Sold Out Famous viewing @ Figueroa and 12th in\r\n downtown.\r\n

\r\n ),\r\n footerTitle: \"11 hours ago via Twitter\",\r\n },\r\n {\r\n // Second story\r\n badgeColor: \"success\",\r\n badgeIcon: Extension,\r\n title: \"Another One\",\r\n titleColor: \"success\",\r\n body: (\r\n

\r\n Thank God for the support of my wife and real friends. I also wanted to\r\n point out that it’s the first album to go number 1 off of streaming!!! I\r\n love you Ellen and also my number one design rule of anything I do from\r\n shoes to music to homes is that Kim has to like it....\r\n

\r\n ),\r\n },\r\n {\r\n // Third story\r\n inverted: true,\r\n badgeColor: \"info\",\r\n badgeIcon: Fingerprint,\r\n title: \"Another Title\",\r\n titleColor: \"info\",\r\n body: (\r\n
\r\n

\r\n Called I Miss the Old Kanye That’s all it was Kanye And I love you\r\n like Kanye loves Kanye Famous viewing @ Figueroa and 12th in downtown\r\n LA 11:10PM\r\n

\r\n

\r\n What if Kanye made a song about Kanye Royère doesn{\"'\"}t make a Polar\r\n bear bed but the Polar bear couch is my favorite piece of furniture we\r\n own It wasn’t any Kanyes Set on his goals Kanye\r\n

\r\n
\r\n ),\r\n footer: (\r\n \r\n ),\r\n },\r\n {\r\n // Fourth story\r\n badgeColor: \"warning\",\r\n badgeIcon: FlightLand,\r\n title: \"Another One\",\r\n titleColor: \"warning\",\r\n body: (\r\n

\r\n Tune into Big Boy{\"'\"}s 92.3 I{\"'\"}m about to play the first single from\r\n Cruel Winter also to Kim’s hair and makeup Lorraine jewelry and the\r\n whole style squad at Balmain and the Yeezy team. Thank you Anna for the\r\n invite thank you to the whole Vogue team\r\n

\r\n ),\r\n },\r\n];\r\n\r\n// ##############################\r\n// // // data for populating the calendar in Calendar view\r\n// #############################\r\n\r\nvar today = new Date();\r\nvar y = today.getFullYear();\r\nvar m = today.getMonth();\r\nvar d = today.getDate();\r\n\r\nconst events = [\r\n {\r\n title: \"All Day Event\",\r\n allDay: true,\r\n start: new Date(y, m, 1),\r\n end: new Date(y, m, 1),\r\n color: \"default\",\r\n },\r\n {\r\n title: \"Meeting\",\r\n start: new Date(y, m, d - 1, 10, 30),\r\n end: new Date(y, m, d - 1, 11, 30),\r\n allDay: false,\r\n color: \"green\",\r\n },\r\n {\r\n title: \"Lunch\",\r\n start: new Date(y, m, d + 7, 12, 0),\r\n end: new Date(y, m, d + 7, 14, 0),\r\n allDay: false,\r\n color: \"red\",\r\n },\r\n {\r\n title: \"Nud-pro Launch\",\r\n start: new Date(y, m, d - 2),\r\n end: new Date(y, m, d - 2),\r\n allDay: true,\r\n color: \"azure\",\r\n },\r\n {\r\n title: \"Birthday Party\",\r\n start: new Date(y, m, d + 1, 19, 0),\r\n end: new Date(y, m, d + 1, 22, 30),\r\n allDay: false,\r\n color: \"azure\",\r\n },\r\n {\r\n title: \"Click for Creative Tim\",\r\n start: new Date(y, m, 21),\r\n end: new Date(y, m, 22),\r\n color: \"orange\",\r\n },\r\n {\r\n title: \"Click for Google\",\r\n start: new Date(y, m, 21),\r\n end: new Date(y, m, 22),\r\n color: \"rose\",\r\n },\r\n];\r\n\r\n// ##############################\r\n// // // Tasks for TasksCard - see Widget view\r\n// #############################\r\n\r\nvar bugs = [\r\n 'Sign contract for \"What are conference organizers afraid of?\"',\r\n \"Lines From Great Russian Literature? Or E-mails From My Boss?\",\r\n \"Flooded: One year later, assessing what was lost and what was found when a ravaging rain swept through metro Detroit\",\r\n \"Create 4 Invisible User Experiences you Never Knew About\",\r\n];\r\nvar website = [\r\n \"Flooded: One year later, assessing what was lost and what was found when a ravaging rain swept through metro Detroit\",\r\n 'Sign contract for \"What are conference organizers afraid of?\"',\r\n];\r\nvar server = [\r\n \"Lines From Great Russian Literature? Or E-mails From My Boss?\",\r\n \"Flooded: One year later, assessing what was lost and what was found when a ravaging rain swept through metro Detroit\",\r\n 'Sign contract for \"What are conference organizers afraid of?\"',\r\n];\r\n\r\n// ##############################\r\n// // // Tasks for TasksCard - see RTLSupport view\r\n// #############################\r\n\r\nvar rtlBugs = [\r\n \"فقد لمحاكم الاندونيسية, بلاده بالتوقيع تم يبق. جعل السبب وفرنسا الصينية أي.\",\r\n \"بحث. كل مما ٢٠٠٤ شاسعة العسكري جعل السبب وفرنسا الصينية أي.\",\r\n \"تسبب أفريقيا ضرب عن, عن إنطلاق جعل السبب وفرنسا الصينية أي.\",\r\n \"قدما مليون بين عن, مرجع منتصف الأمريكية جعل السبب وفرنسا الصينية أي.\",\r\n];\r\nvar rtlWebsite = [\r\n \"قدما مليون بين عن, مرجع منتصف الأمريكية جعل السبب وفرنسا الصينية أي.\",\r\n \"قدما مليون بين عن, مرجع منتصف الأمريكية جعل السبب وفرنسا الصينية أي.\",\r\n];\r\nvar rtlServer = [\r\n \"قدما مليون بين عن, مرجع منتصف الأمريكية جعل السبب وفرنسا الصينية أي.\",\r\n \"قدما مليون بين عن, مرجع منتصف الأمريكية جعل السبب وفرنسا الصينية أي.\",\r\n \"قدما مليون بين عن, مرجع منتصف الأمريكية جعل السبب وفرنسا الصينية أي.\",\r\n];\r\n\r\n// ##############################\r\n// // // data for datatables.net in DataTables view\r\n// #############################\r\n\r\nconst dataTable = {\r\n headerRow: [\"Name\", \"Position\", \"Office\", \"Age\", \"Actions\"],\r\n footerRow: [\"Name\", \"Position\", \"Office\", \"Age\", \"Actions\"],\r\n dataRows: [\r\n [\"Tiger Nixon\", \"System Architect\", \"Edinburgh\", \"61\"],\r\n [\"Garrett Winters\", \"Accountant\", \"Tokyo\", \"63\"],\r\n [\"Ashton Cox\", \"Junior Technical Author\", \"San Francisco\", \"66\"],\r\n [\"Cedric Kelly\", \"Senior Javascript Developer\", \"Edinburgh\", \"22\"],\r\n [\"Airi Satou\", \"Accountant\", \"Tokyo\", \"33\"],\r\n [\"Brielle Williamson\", \"Integration Specialist\", \"New York\", \"61\"],\r\n [\"Herrod Chandler\", \"Sales Assistant\", \"San Francisco\", \"59\"],\r\n [\"Rhona Davidson\", \"Integration Specialist\", \"Tokyo\", \"55\"],\r\n [\"Colleen Hurst\", \"Javascript Developer\", \"San Francisco\", \"39\"],\r\n [\"Sonya Frost\", \"Software Engineer\", \"Edinburgh\", \"23\"],\r\n [\"Jena Gaines\", \"Office Manager\", \"London\", \"30\"],\r\n [\"Quinn Flynn\", \"Support Lead\", \"Edinburgh\", \"22\"],\r\n [\"Charde Marshall\", \"Regional Director\", \"San Francisco\", \"36\"],\r\n [\"Haley Kennedy\", \"Senior Marketing Designer\", \"London\", \"43\"],\r\n [\"Tatyana Fitzpatrick\", \"Regional Director\", \"London\", \"19\"],\r\n [\"Michael Silva\", \"Marketing Designer\", \"London\", \"66\"],\r\n [\"Paul Byrd\", \"Chief Financial Officer (CFO)\", \"New York\", \"64\"],\r\n [\"Gloria Little\", \"Systems Administrator\", \"New York\", \"59\"],\r\n [\"Bradley Greer\", \"Software Engineer\", \"London\", \"41\"],\r\n [\"Dai Rios\", \"Personnel Lead\", \"Edinburgh\", \"35\"],\r\n [\"Jenette Caldwell\", \"Development Lead\", \"New York\", \"30\"],\r\n [\"Yuri Berry\", \"Chief Marketing Officer (CMO)\", \"New York\", \"40\"],\r\n [\"Caesar Vance\", \"Pre-Sales Support\", \"New York\", \"21\"],\r\n [\"Doris Wilder\", \"Sales Assistant\", \"Sidney\", \"23\"],\r\n [\"Angelica Ramos\", \"Chief Executive Officer (CEO)\", \"London\", \"47\"],\r\n [\"Gavin Joyce\", \"Developer\", \"Edinburgh\", \"42\"],\r\n [\"Jennifer Chang\", \"Regional Director\", \"Singapore\", \"28\"],\r\n [\"Brenden Wagner\", \"Software Engineer\", \"San Francisco\", \"28\"],\r\n [\"Fiona Green\", \"Chief Operating Officer (COO)\", \"San Francisco\", \"48\"],\r\n [\"Shou Itou\", \"Regional Marketing\", \"Tokyo\", \"20\"],\r\n [\"Michelle House\", \"Integration Specialist\", \"Sidney\", \"37\"],\r\n [\"Suki Burks\", \"Developer\", \"London\", \"53\"],\r\n [\"Prescott Bartlett\", \"Technical Author\", \"London\", \"27\"],\r\n [\"Gavin Cortez\", \"Team Leader\", \"San Francisco\", \"22\"],\r\n [\"Martena Mccray\", \"Post-Sales support\", \"Edinburgh\", \"46\"],\r\n [\"Unity Butler\", \"Marketing Designer\", \"San Francisco\", \"47\"],\r\n [\"Howard Hatfield\", \"Office Manager\", \"San Francisco\", \"51\"],\r\n [\"Hope Fuentes\", \"Secretary\", \"San Francisco\", \"41\"],\r\n [\"Vivian Harrell\", \"Financial Controller\", \"San Francisco\", \"62\"],\r\n [\"Timothy Mooney\", \"Office Manager\", \"London\", \"37\"],\r\n [\"Jackson Bradshaw\", \"Director\", \"New York\", \"65\"],\r\n [\"Olivia Liang\", \"Support Engineer\", \"Singapore\", \"64\"],\r\n ],\r\n};\r\n\r\nconst pageConfig = {\r\n sleepMinute: 60, // Time to sleep, no action\r\n // Do it on back-end\r\n tokenExpireHours: 24, // Time need to login again.\r\n};\r\n\r\nconst userCallLogStatus = {\r\n waitting: 0,\r\n accepted: 1,\r\n rejected: 2,\r\n missCall: 3,\r\n wrongPhoneNumber: 4,\r\n ignore: 5,\r\n locked: 6,\r\n};\r\n\r\nconst networkList = [\r\n {\r\n key: 1,\r\n value: \"VIETTEL\",\r\n },\r\n {\r\n key: 2,\r\n value: \"VINAPHONE\",\r\n },\r\n {\r\n key: 3,\r\n value: \"MOBIPHONE\",\r\n },\r\n {\r\n key: 4,\r\n value: \"VIETNAMOBILE\",\r\n },\r\n {\r\n key: 5,\r\n value: \"ITELECOM\",\r\n },\r\n {\r\n key: 6,\r\n value: \"NHÀ MẠNG KHÁC\",\r\n },\r\n];\r\n\r\nexport {\r\n // data for React Big Calendar in Calendar view\r\n events,\r\n // stories for RTLSupport view\r\n rtlStories,\r\n // stories for Widgets view\r\n widgetStories,\r\n // stories for Timeline view\r\n stories,\r\n // these 3 are used to create the tasks lists in TasksCard - Widget view\r\n bugs,\r\n website,\r\n server,\r\n // these 3 are used to create the tasks lists in TasksCard - RTLSupport view\r\n rtlBugs,\r\n rtlWebsite,\r\n rtlServer,\r\n // data for datatables.net in DataTables view\r\n dataTable,\r\n pageConfig,\r\n userCallLogStatus,\r\n networkList,\r\n};\r\n","/*eslint-disable*/\r\nimport React from \"react\";\r\n// react components used to create a calendar with events on it\r\nimport { Calendar as BigCalendar, momentLocalizer } from \"react-big-calendar\";\r\n// dependency plugin for react-big-calendar\r\nimport moment from \"moment\";\r\n// react component used to create alerts\r\nimport SweetAlert from \"react-bootstrap-sweetalert\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// core components\r\nimport Heading from \"components/Heading/Heading.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/buttonStyle.js\";\r\n\r\nimport { events as calendarEvents } from \"variables/general.js\";\r\n\r\nconst localizer = momentLocalizer(moment);\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Calendar() {\r\n const classes = useStyles();\r\n const [events, setEvents] = React.useState(calendarEvents);\r\n const [alert, setAlert] = React.useState(null);\r\n const selectedEvent = event => {\r\n window.alert(event.title);\r\n };\r\n const addNewEventAlert = slotInfo => {\r\n setAlert(\r\n addNewEvent(e, slotInfo)}\r\n onCancel={() => hideAlert()}\r\n confirmBtnCssClass={classes.button + \" \" + classes.success}\r\n cancelBtnCssClass={classes.button + \" \" + classes.danger}\r\n />\r\n );\r\n };\r\n const addNewEvent = (e, slotInfo) => {\r\n var newEvents = events;\r\n newEvents.push({\r\n title: e,\r\n start: slotInfo.start,\r\n end: slotInfo.end\r\n });\r\n setAlert(null);\r\n setEvents(newEvents);\r\n };\r\n const hideAlert = () => {\r\n setAlert(null);\r\n };\r\n const eventColors = event => {\r\n var backgroundColor = \"event-\";\r\n event.color\r\n ? (backgroundColor = backgroundColor + event.color)\r\n : (backgroundColor = backgroundColor + \"default\");\r\n return {\r\n className: backgroundColor\r\n };\r\n };\r\n return (\r\n
\r\n \r\n A beautiful react component made by{\" \"}\r\n \r\n International Justice Mission\r\n \r\n . Please checkout their{\" \"}\r\n \r\n full documentation.\r\n \r\n \r\n }\r\n />\r\n {alert}\r\n \r\n \r\n \r\n \r\n selectedEvent(event)}\r\n onSelectSlot={slotInfo => addNewEventAlert(slotInfo)}\r\n eventPropGetter={eventColors}\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n","import {\r\n warningCardHeader,\r\n successCardHeader,\r\n dangerCardHeader,\r\n infoCardHeader,\r\n primaryCardHeader,\r\n roseCardHeader,\r\n whiteColor,\r\n blackColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\nconst cardHeaderStyle = {\r\n cardHeader: {\r\n padding: \"0.75rem 1.25rem\",\r\n marginBottom: \"0\",\r\n borderBottom: \"none\",\r\n background: \"transparent\",\r\n zIndex: \"3 !important\",\r\n \"&$cardHeaderPlain,&$cardHeaderImage,&$cardHeaderContact,&$cardHeaderSignup,&$cardHeaderIcon,&$cardHeaderStats,&$warningCardHeader,&$successCardHeader,&$dangerCardHeader,&$infoCardHeader,&$primaryCardHeader,&$roseCardHeader\": {\r\n margin: \"0 15px\",\r\n padding: \"0\",\r\n position: \"relative\",\r\n color: whiteColor\r\n },\r\n \"&:first-child\": {\r\n borderRadius: \"calc(.25rem - 1px) calc(.25rem - 1px) 0 0\"\r\n },\r\n \"&$warningCardHeader,&$successCardHeader,&$dangerCardHeader,&$infoCardHeader,&$primaryCardHeader,&$roseCardHeader\": {\r\n \"&:not($cardHeaderIcon):not($cardHeaderImage):not($cardHeaderText)\": {\r\n borderRadius: \"3px\",\r\n marginTop: \"-20px\",\r\n padding: \"15px\"\r\n }\r\n },\r\n \"&$cardHeaderStats svg\": {\r\n fontSize: \"36px\",\r\n lineHeight: \"56px\",\r\n textAlign: \"center\",\r\n width: \"36px\",\r\n height: \"36px\",\r\n margin: \"10px 10px 4px\"\r\n },\r\n \"&$cardHeaderStats .fab,&$cardHeaderStats .fas,&$cardHeaderStats .far,&$cardHeaderStats .fal,&$cardHeaderStats .material-icons\": {\r\n fontSize: \"36px\",\r\n lineHeight: \"56px\",\r\n width: \"56px\",\r\n height: \"56px\",\r\n textAlign: \"center\",\r\n overflow: \"unset\",\r\n marginBottom: \"1px\"\r\n },\r\n \"&$cardHeaderStats$cardHeaderIcon\": {\r\n textAlign: \"right\"\r\n },\r\n \"&$cardHeaderImage\": {\r\n marginLeft: \"15px\",\r\n marginRight: \"15px\",\r\n marginTop: \"-30px\",\r\n borderRadius: \"6px\"\r\n },\r\n \"&$cardHeaderText\": {\r\n display: \"inline-block\"\r\n }\r\n },\r\n cardHeaderPlain: {\r\n marginLeft: \"0px\",\r\n marginRight: \"0px\",\r\n \"&$cardHeaderImage\": {\r\n margin: \"0 !important\"\r\n }\r\n },\r\n cardHeaderImage: {\r\n position: \"relative\",\r\n padding: \"0\",\r\n zIndex: \"1\",\r\n \"& img\": {\r\n width: \"100%\",\r\n borderRadius: \"6px\",\r\n pointerEvents: \"none\",\r\n boxShadow:\r\n \"0 5px 15px -8px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.24), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\"\r\n },\r\n \"& a\": {\r\n display: \"block\"\r\n }\r\n },\r\n cardHeaderContact: {\r\n margin: \"0 15px\",\r\n marginTop: \"-20px\"\r\n },\r\n cardHeaderSignup: {\r\n marginLeft: \"20px\",\r\n marginRight: \"20px\",\r\n marginTop: \"-40px\",\r\n padding: \"20px 0\",\r\n width: \"100%\",\r\n marginBottom: \"15px\"\r\n },\r\n cardHeaderStats: {\r\n \"& $cardHeaderIcon\": {\r\n textAlign: \"right\"\r\n },\r\n \"& h1,& h2,& h3,& h4,& h5,& h6\": {\r\n margin: \"0 !important\"\r\n }\r\n },\r\n cardHeaderIcon: {\r\n \"&$warningCardHeader,&$successCardHeader,&$dangerCardHeader,&$infoCardHeader,&$primaryCardHeader,&$roseCardHeader\": {\r\n background: \"transparent\",\r\n boxShadow: \"none\"\r\n },\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n width: \"33px\",\r\n height: \"33px\",\r\n textAlign: \"center\",\r\n lineHeight: \"33px\"\r\n },\r\n \"& svg\": {\r\n width: \"24px\",\r\n height: \"24px\",\r\n textAlign: \"center\",\r\n lineHeight: \"33px\",\r\n margin: \"5px 4px 0px\"\r\n }\r\n },\r\n cardHeaderText: {},\r\n warningCardHeader: {\r\n color: whiteColor,\r\n \"&:not($cardHeaderText):not($cardHeaderIcon)\": {\r\n ...warningCardHeader\r\n }\r\n },\r\n successCardHeader: {\r\n color: whiteColor,\r\n \"&:not($cardHeaderText):not($cardHeaderIcon)\": {\r\n ...successCardHeader\r\n }\r\n },\r\n dangerCardHeader: {\r\n color: whiteColor,\r\n \"&:not($cardHeaderText):not($cardHeaderIcon)\": {\r\n ...dangerCardHeader\r\n }\r\n },\r\n infoCardHeader: {\r\n color: whiteColor,\r\n \"&:not($cardHeaderText):not($cardHeaderIcon)\": {\r\n ...infoCardHeader\r\n }\r\n },\r\n primaryCardHeader: {\r\n color: whiteColor,\r\n \"&:not($cardHeaderText):not($cardHeaderIcon)\": {\r\n ...primaryCardHeader\r\n }\r\n },\r\n roseCardHeader: {\r\n color: whiteColor,\r\n \"&:not($cardHeaderText):not($cardHeaderIcon)\": {\r\n ...roseCardHeader\r\n }\r\n }\r\n};\r\n\r\nexport default cardHeaderStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\n\r\n// core components\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/cardHeaderStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CardHeader(props) {\r\n const classes = useStyles();\r\n const {\r\n className,\r\n children,\r\n color,\r\n plain,\r\n image,\r\n contact,\r\n signup,\r\n stats,\r\n icon,\r\n text,\r\n ...rest\r\n } = props;\r\n const cardHeaderClasses = classNames({\r\n [classes.cardHeader]: true,\r\n [classes[color + \"CardHeader\"]]: color,\r\n [classes.cardHeaderPlain]: plain,\r\n [classes.cardHeaderImage]: image,\r\n [classes.cardHeaderContact]: contact,\r\n [classes.cardHeaderSignup]: signup,\r\n [classes.cardHeaderStats]: stats,\r\n [classes.cardHeaderIcon]: icon,\r\n [classes.cardHeaderText]: text,\r\n [className]: className !== undefined\r\n });\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nCardHeader.propTypes = {\r\n className: PropTypes.string,\r\n color: PropTypes.oneOf([\r\n \"warning\",\r\n \"success\",\r\n \"danger\",\r\n \"info\",\r\n \"primary\",\r\n \"rose\"\r\n ]),\r\n plain: PropTypes.bool,\r\n image: PropTypes.bool,\r\n contact: PropTypes.bool,\r\n signup: PropTypes.bool,\r\n stats: PropTypes.bool,\r\n icon: PropTypes.bool,\r\n text: PropTypes.bool,\r\n children: PropTypes.node\r\n};\r\n","import {\r\n warningCardHeader,\r\n successCardHeader,\r\n dangerCardHeader,\r\n infoCardHeader,\r\n primaryCardHeader,\r\n roseCardHeader,\r\n grayColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\nconst cardIconStyle = {\r\n cardIcon: {\r\n \"&$warningCardHeader,&$successCardHeader,&$dangerCardHeader,&$infoCardHeader,&$primaryCardHeader,&$roseCardHeader\": {\r\n borderRadius: \"3px\",\r\n backgroundColor: grayColor[0],\r\n padding: \"15px\",\r\n marginTop: \"-20px\",\r\n marginRight: \"15px\",\r\n float: \"left\"\r\n }\r\n },\r\n warningCardHeader,\r\n successCardHeader,\r\n dangerCardHeader,\r\n infoCardHeader,\r\n primaryCardHeader,\r\n roseCardHeader\r\n};\r\n\r\nexport default cardIconStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\n\r\n// core components\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/cardIconStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CardIcon(props) {\r\n const classes = useStyles();\r\n const { className, children, color, ...rest } = props;\r\n const cardIconClasses = classNames({\r\n [classes.cardIcon]: true,\r\n [classes[color + \"CardHeader\"]]: color,\r\n [className]: className !== undefined\r\n });\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nCardIcon.propTypes = {\r\n className: PropTypes.string,\r\n color: PropTypes.oneOf([\r\n \"warning\",\r\n \"success\",\r\n \"danger\",\r\n \"info\",\r\n \"primary\",\r\n \"rose\"\r\n ]),\r\n children: PropTypes.node\r\n};\r\n","import { grayColor } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst cardFooterStyle = {\r\n cardFooter: {\r\n padding: \"0\",\r\n paddingTop: \"10px\",\r\n margin: \"0 15px 10px\",\r\n borderRadius: \"0\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"center\",\r\n display: \"flex\",\r\n backgroundColor: \"transparent\",\r\n border: \"0\"\r\n },\r\n cardFooterProfile: {\r\n marginTop: \"-15px\"\r\n },\r\n cardFooterPlain: {\r\n paddingLeft: \"5px\",\r\n paddingRight: \"5px\",\r\n backgroundColor: \"transparent\"\r\n },\r\n cardFooterPricing: {\r\n zIndex: \"2\"\r\n },\r\n cardFooterTestimonial: {\r\n display: \"block\"\r\n },\r\n cardFooterStats: {\r\n borderTop: \"1px solid\" + grayColor[8],\r\n marginTop: \"20px\",\r\n \"& svg\": {\r\n position: \"relative\",\r\n top: \"4px\",\r\n marginRight: \"3px\",\r\n marginLeft: \"3px\",\r\n width: \"16px\",\r\n height: \"16px\"\r\n },\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n position: \"relative\",\r\n top: \"4px\",\r\n marginRight: \"3px\",\r\n marginLeft: \"3px\",\r\n fontSize: \"16px\",\r\n lineHeight: \"16px\"\r\n }\r\n },\r\n cardFooterChart: {\r\n borderTop: \"1px solid\" + grayColor[8]\r\n }\r\n};\r\n\r\nexport default cardFooterStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\n\r\n// core components\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/cardFooterStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CardFooter(props) {\r\n const classes = useStyles();\r\n const {\r\n className,\r\n children,\r\n plain,\r\n profile,\r\n pricing,\r\n testimonial,\r\n stats,\r\n chart,\r\n product,\r\n ...rest\r\n } = props;\r\n const cardFooterClasses = classNames({\r\n [classes.cardFooter]: true,\r\n [classes.cardFooterPlain]: plain,\r\n [classes.cardFooterProfile]: profile || testimonial,\r\n [classes.cardFooterPricing]: pricing,\r\n [classes.cardFooterTestimonial]: testimonial,\r\n [classes.cardFooterStats]: stats,\r\n [classes.cardFooterChart]: chart || product,\r\n [className]: className !== undefined\r\n });\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nCardFooter.propTypes = {\r\n className: PropTypes.string,\r\n plain: PropTypes.bool,\r\n profile: PropTypes.bool,\r\n pricing: PropTypes.bool,\r\n testimonial: PropTypes.bool,\r\n stats: PropTypes.bool,\r\n chart: PropTypes.bool,\r\n product: PropTypes.bool,\r\n children: PropTypes.node\r\n};\r\n","import {\r\n primaryColor,\r\n warningColor,\r\n dangerColor,\r\n successColor,\r\n infoColor,\r\n roseColor,\r\n grayColor,\r\n cardTitle\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst chartsStyle = {\r\n cardTitle,\r\n cardCategory: {\r\n margin: \"0\",\r\n color: grayColor[0]\r\n },\r\n cardIconTitle: {\r\n ...cardTitle,\r\n marginTop: \"15px\",\r\n marginBottom: \"0px\"\r\n },\r\n legendTitle: {\r\n color: grayColor[0],\r\n margin: \"10px 0 !important\",\r\n display: \"flex\"\r\n },\r\n primary: {\r\n color: primaryColor[0]\r\n },\r\n warning: {\r\n color: warningColor[0]\r\n },\r\n danger: {\r\n color: dangerColor[0]\r\n },\r\n success: {\r\n color: successColor[0]\r\n },\r\n info: {\r\n color: infoColor[0]\r\n },\r\n rose: {\r\n color: roseColor[0]\r\n },\r\n gray: {\r\n color: grayColor[0]\r\n },\r\n cardFooter: {\r\n display: \"block\"\r\n }\r\n};\r\n\r\nexport default chartsStyle;\r\n","/*eslint-disable*/\r\nimport React from \"react\";\r\n// react plugin for creating charts\r\nimport ChartistGraph from \"react-chartist\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// @material-ui/icons\r\nimport Timeline from \"@material-ui/icons/Timeline\";\r\n\r\n// core components\r\nimport Heading from \"components/Heading/Heading.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\n\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardFooter from \"components/Card/CardFooter.js\";\r\n\r\nimport {\r\n roundedLineChart,\r\n straightLinesChart,\r\n simpleBarChart,\r\n colouredLineChart,\r\n multipleBarsChart,\r\n colouredLinesChart,\r\n pieChart\r\n} from \"variables/charts.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/chartsStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Charts() {\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n A react wrapper for{\" \"}\r\n \r\n Chartist.js\r\n \r\n . Please checkout the{\" \"}\r\n \r\n full documentation of Chartist.js\r\n {\" \"}\r\n and{\" \"}\r\n \r\n full documentation of react-chartist\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

Rounded Line Chart

\r\n

Line Chart

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

Straight Lines Chart

\r\n

Line Chart with Points

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

Simple Bar Chart

\r\n

Bar Chart

\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 Coloured Line Chart - Rounded\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 Multiple Bars Chart - Bar Chart\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 Coloured Lines Chart - Rounded\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

Pie Chart

\r\n
\r\n \r\n \r\n \r\n \r\n
Legend
\r\n Apple{` `}\r\n Samsung\r\n {` `}\r\n Windows Phone\r\n {` `}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import {\r\n warningColor,\r\n primaryColor,\r\n dangerColor,\r\n successColor,\r\n infoColor,\r\n roseColor,\r\n grayColor,\r\n blackColor,\r\n defaultFont,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst tableStyle = theme => ({\r\n warning: {\r\n color: warningColor[0]\r\n },\r\n primary: {\r\n color: primaryColor[0]\r\n },\r\n danger: {\r\n color: dangerColor[0]\r\n },\r\n success: {\r\n color: successColor[0]\r\n },\r\n info: {\r\n color: infoColor[0]\r\n },\r\n rose: {\r\n color: roseColor[0]\r\n },\r\n gray: {\r\n color: grayColor[0]\r\n },\r\n right: {\r\n textAlign: \"right\"\r\n },\r\n table: {\r\n marginBottom: \"0\",\r\n width: \"100%\",\r\n maxWidth: \"100%\",\r\n backgroundColor: \"transparent\",\r\n borderSpacing: \"0\",\r\n borderCollapse: \"collapse\",\r\n overflow: \"auto\"\r\n },\r\n tableShoppingHead: {\r\n fontSize: \"0.9em !important\",\r\n textTransform: \"uppercase !important\"\r\n },\r\n tableHeadFontSize: {\r\n fontSize: \"1.25em !important\"\r\n },\r\n tableHeadCell: {\r\n color: \"rgba(\" + hexToRgb(blackColor) + \", 0.87)\",\r\n border: \"none !important\"\r\n },\r\n tableCell: {\r\n ...defaultFont,\r\n lineHeight: \"1.42857143\",\r\n padding: \"12px 8px!important\",\r\n verticalAlign: \"middle\",\r\n fontSize: \"1em\",\r\n borderBottom: \"none\",\r\n borderTop: \"1px solid \" + grayColor[5],\r\n position: \"relative\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n minHeight: \"24px\",\r\n minWidth: \"32px\"\r\n }\r\n },\r\n tableCellTotal: {\r\n fontWeight: \"500\",\r\n fontSize: \"1.25em\",\r\n paddingTop: \"14px\",\r\n textAlign: \"right\"\r\n },\r\n tableCellAmount: {\r\n fontSize: \"26px\",\r\n fontWeight: \"300\",\r\n marginTop: \"5px\",\r\n textAlign: \"right\"\r\n },\r\n tableResponsive: {\r\n // width: \"100%\",\r\n minHeight: \"0.1%\",\r\n overflowX: \"auto\"\r\n },\r\n tableStripedRow: {\r\n backgroundColor: grayColor[12]\r\n },\r\n tableRowHover: {\r\n \"&:hover\": {\r\n backgroundColor: grayColor[13]\r\n }\r\n },\r\n warningRow: {\r\n backgroundColor: warningColor[6],\r\n \"&:hover\": {\r\n backgroundColor: warningColor[5]\r\n }\r\n },\r\n dangerRow: {\r\n backgroundColor: dangerColor[6],\r\n \"&:hover\": {\r\n backgroundColor: dangerColor[5]\r\n }\r\n },\r\n successRow: {\r\n backgroundColor: successColor[6],\r\n \"&:hover\": {\r\n backgroundColor: successColor[5]\r\n }\r\n },\r\n infoRow: {\r\n backgroundColor: infoColor[6],\r\n \"&:hover\": {\r\n backgroundColor: infoColor[5]\r\n }\r\n },\r\n tableRowBody: {\r\n height: \"48px\"\r\n },\r\n tableRowHead: {\r\n height: \"56px\"\r\n }\r\n});\r\n\r\nexport default tableStyle;\r\n","import React from \"react\";\r\nimport cx from \"classnames\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Table from \"@material-ui/core/Table\";\r\nimport TableBody from \"@material-ui/core/TableBody\";\r\nimport TableCell from \"@material-ui/core/TableCell\";\r\nimport TableHead from \"@material-ui/core/TableHead\";\r\nimport TableRow from \"@material-ui/core/TableRow\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/tableStyle\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CustomTable(props) {\r\n const classes = useStyles();\r\n const {\r\n tableHead,\r\n tableData,\r\n tableHeaderColor,\r\n hover,\r\n colorsColls,\r\n coloredColls,\r\n customCellClasses,\r\n customClassesForCells,\r\n striped,\r\n tableShopping,\r\n customHeadCellClasses,\r\n customHeadClassesForCells\r\n } = props;\r\n return (\r\n
\r\n \r\n {tableHead !== undefined ? (\r\n \r\n \r\n {tableHead.map((prop, key) => {\r\n const tableCellClasses =\r\n classes.tableHeadCell +\r\n \" \" +\r\n classes.tableCell +\r\n \" \" +\r\n cx({\r\n [customHeadCellClasses[\r\n customHeadClassesForCells.indexOf(key)\r\n ]]: customHeadClassesForCells.indexOf(key) !== -1,\r\n [classes.tableShoppingHead]: tableShopping,\r\n [classes.tableHeadFontSize]: !tableShopping\r\n });\r\n return (\r\n \r\n {prop}\r\n \r\n );\r\n })}\r\n \r\n \r\n ) : null}\r\n \r\n {tableData.map((prop, key) => {\r\n var rowColor = \"\";\r\n var rowColored = false;\r\n if (prop.color !== undefined) {\r\n rowColor = prop.color;\r\n rowColored = true;\r\n prop = prop.data;\r\n }\r\n const tableRowClasses = cx({\r\n [classes.tableRowBody]: true,\r\n [classes.tableRowHover]: hover,\r\n [classes[rowColor + \"Row\"]]: rowColored,\r\n [classes.tableStripedRow]: striped && key % 2 === 0\r\n });\r\n if (prop.total) {\r\n return (\r\n \r\n \r\n \r\n Total\r\n \r\n \r\n {prop.amount}\r\n \r\n {tableHead.length - (prop.colspan - 0 + 2) > 0 ? (\r\n \r\n ) : null}\r\n \r\n );\r\n }\r\n if (prop.purchase) {\r\n return (\r\n \r\n \r\n \r\n {prop.col.text}\r\n \r\n \r\n );\r\n }\r\n return (\r\n \r\n {prop.map((prop, key) => {\r\n const tableCellClasses =\r\n classes.tableCell +\r\n \" \" +\r\n cx({\r\n [classes[colorsColls[coloredColls.indexOf(key)]]]:\r\n coloredColls.indexOf(key) !== -1,\r\n [customCellClasses[customClassesForCells.indexOf(key)]]:\r\n customClassesForCells.indexOf(key) !== -1\r\n });\r\n return (\r\n \r\n {prop}\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\nCustomTable.defaultProps = {\r\n tableHeaderColor: \"gray\",\r\n hover: false,\r\n colorsColls: [],\r\n coloredColls: [],\r\n striped: false,\r\n customCellClasses: [],\r\n customClassesForCells: [],\r\n customHeadCellClasses: [],\r\n customHeadClassesForCells: []\r\n};\r\n\r\nCustomTable.propTypes = {\r\n tableHeaderColor: PropTypes.oneOf([\r\n \"warning\",\r\n \"primary\",\r\n \"danger\",\r\n \"success\",\r\n \"info\",\r\n \"rose\",\r\n \"gray\"\r\n ]),\r\n tableHead: PropTypes.arrayOf(PropTypes.string),\r\n // Of(PropTypes.arrayOf(PropTypes.node)) || Of(PropTypes.object),\r\n tableData: PropTypes.array,\r\n hover: PropTypes.bool,\r\n coloredColls: PropTypes.arrayOf(PropTypes.number),\r\n // Of([\"warning\",\"primary\",\"danger\",\"success\",\"info\",\"rose\",\"gray\"]) - colorsColls\r\n colorsColls: PropTypes.array,\r\n customCellClasses: PropTypes.arrayOf(PropTypes.string),\r\n customClassesForCells: PropTypes.arrayOf(PropTypes.number),\r\n customHeadCellClasses: PropTypes.arrayOf(PropTypes.string),\r\n customHeadClassesForCells: PropTypes.arrayOf(PropTypes.number),\r\n striped: PropTypes.bool,\r\n // this will cause some changes in font\r\n tableShopping: PropTypes.bool\r\n};\r\n","import {\r\n defaultFont,\r\n primaryColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n grayColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst typographyStyle = {\r\n defaultFontStyle: {\r\n ...defaultFont,\r\n fontSize: \"14px\"\r\n },\r\n defaultHeaderMargins: {\r\n marginTop: \"20px\",\r\n marginBottom: \"10px\"\r\n },\r\n quote: {\r\n padding: \"10px 20px\",\r\n margin: \"0 0 20px\",\r\n fontSize: \"17.5px\",\r\n borderLeft: \"5px solid\" + grayColor[8]\r\n },\r\n quoteText: {\r\n margin: \"0 0 10px\",\r\n fontStyle: \"italic\"\r\n },\r\n quoteAuthor: {\r\n display: \"block\",\r\n fontSize: \"80%\",\r\n lineHeight: \"1.42857143\",\r\n color: grayColor[1]\r\n },\r\n mutedText: {\r\n color: grayColor[1]\r\n },\r\n primaryText: {\r\n color: primaryColor[0]\r\n },\r\n infoText: {\r\n color: infoColor[0]\r\n },\r\n successText: {\r\n color: successColor[0]\r\n },\r\n warningText: {\r\n color: warningColor[0]\r\n },\r\n dangerText: {\r\n color: dangerColor[0]\r\n }\r\n};\r\n\r\nexport default typographyStyle;\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/typographyStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Danger(props) {\r\n const classes = useStyles();\r\n const { children } = props;\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nDanger.propTypes = {\r\n children: PropTypes.node\r\n};\r\n","import {\r\n successColor,\r\n tooltip,\r\n cardTitle,\r\n grayColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nimport hoverCardStyle from \"assets/jss/material-dashboard-pro-react/hoverCardStyle.js\";\r\n\r\nconst dashboardStyle = {\r\n ...hoverCardStyle,\r\n tooltip,\r\n cardTitle: {\r\n ...cardTitle,\r\n marginTop: \"0px\",\r\n marginBottom: \"3px\"\r\n },\r\n cardIconTitle: {\r\n ...cardTitle,\r\n marginTop: \"15px\",\r\n marginBottom: \"0px\"\r\n },\r\n cardProductTitle: {\r\n ...cardTitle,\r\n marginTop: \"0px\",\r\n marginBottom: \"3px\",\r\n textAlign: \"center\"\r\n },\r\n cardCategory: {\r\n color: grayColor[0],\r\n fontSize: \"14px\",\r\n paddingTop: \"10px\",\r\n marginBottom: \"0\",\r\n marginTop: \"0\",\r\n margin: \"0\"\r\n },\r\n cardProductDesciprion: {\r\n textAlign: \"center\",\r\n color: grayColor[0]\r\n },\r\n stats: {\r\n color: grayColor[0],\r\n fontSize: \"12px\",\r\n lineHeight: \"22px\",\r\n display: \"inline-flex\",\r\n \"& svg\": {\r\n position: \"relative\",\r\n top: \"4px\",\r\n width: \"16px\",\r\n height: \"16px\",\r\n marginRight: \"3px\"\r\n },\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n position: \"relative\",\r\n top: \"4px\",\r\n fontSize: \"16px\",\r\n marginRight: \"3px\"\r\n }\r\n },\r\n productStats: {\r\n paddingTop: \"7px\",\r\n paddingBottom: \"7px\",\r\n margin: \"0\"\r\n },\r\n successText: {\r\n color: successColor[0]\r\n },\r\n upArrowCardCategory: {\r\n width: 14,\r\n height: 14\r\n },\r\n underChartIcons: {\r\n width: \"17px\",\r\n height: \"17px\"\r\n },\r\n price: {\r\n color: \"inherit\",\r\n \"& h4\": {\r\n marginBottom: \"0px\",\r\n marginTop: \"0px\"\r\n }\r\n }\r\n};\r\n\r\nexport default dashboardStyle;\r\n","const hoverCardStyle = {\r\n cardHover: {\r\n \"&:hover\": {\r\n \"& $cardHeaderHover\": {\r\n transform: \"translate3d(0, -50px, 0)\"\r\n }\r\n }\r\n },\r\n cardHeaderHover: {\r\n transition: \"all 300ms cubic-bezier(0.34, 1.61, 0.7, 1)\"\r\n },\r\n cardHoverUnder: {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n top: \"-50px\",\r\n width: \"calc(100% - 30px)\",\r\n left: \"17px\",\r\n right: \"17px\",\r\n textAlign: \"center\"\r\n }\r\n};\r\n\r\nexport default hoverCardStyle;\r\n","import React from \"react\";\r\n// react plugin for creating charts\r\nimport ChartistGraph from \"react-chartist\";\r\n// react plugin for creating vector maps\r\nimport { VectorMap } from \"react-jvectormap\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\n\r\n// @material-ui/icons\r\n// import ContentCopy from \"@material-ui/icons/ContentCopy\";\r\nimport Store from \"@material-ui/icons/Store\";\r\n// import InfoOutline from \"@material-ui/icons/InfoOutline\";\r\nimport Warning from \"@material-ui/icons/Warning\";\r\nimport DateRange from \"@material-ui/icons/DateRange\";\r\nimport LocalOffer from \"@material-ui/icons/LocalOffer\";\r\nimport Update from \"@material-ui/icons/Update\";\r\nimport ArrowUpward from \"@material-ui/icons/ArrowUpward\";\r\nimport AccessTime from \"@material-ui/icons/AccessTime\";\r\nimport Refresh from \"@material-ui/icons/Refresh\";\r\nimport Edit from \"@material-ui/icons/Edit\";\r\nimport Place from \"@material-ui/icons/Place\";\r\nimport ArtTrack from \"@material-ui/icons/ArtTrack\";\r\nimport Language from \"@material-ui/icons/Language\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Danger from \"components/Typography/Danger.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardFooter from \"components/Card/CardFooter.js\";\r\n\r\nimport {\r\n dailySalesChart,\r\n emailsSubscriptionChart,\r\n completedTasksChart,\r\n} from \"variables/charts\";\r\nimport {\r\n roundedLineChart,\r\n straightLinesChart,\r\n simpleBarChart,\r\n colouredLineChart,\r\n multipleBarsChart,\r\n colouredLinesChart,\r\n pieChart,\r\n} from \"variables/charts.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/dashboardStyle.js\";\r\nimport TrendingUpIcon from \"@material-ui/icons/TrendingUp\";\r\nimport priceImage1 from \"assets/img/card-2.jpeg\";\r\nimport priceImage2 from \"assets/img/card-3.jpeg\";\r\nimport priceImage3 from \"assets/img/card-1.jpeg\";\r\n\r\nconst us_flag = require(\"assets/img/flags/US.png\");\r\nconst de_flag = require(\"assets/img/flags/DE.png\");\r\nconst au_flag = require(\"assets/img/flags/AU.png\");\r\nconst gb_flag = require(\"assets/img/flags/GB.png\");\r\nconst ro_flag = require(\"assets/img/flags/RO.png\");\r\nconst br_flag = require(\"assets/img/flags/BR.png\");\r\n\r\nvar mapData = {\r\n AU: 760,\r\n BR: 550,\r\n CA: 120,\r\n DE: 1300,\r\n FR: 540,\r\n GB: 690,\r\n GE: 200,\r\n IN: 200,\r\n RO: 600,\r\n RU: 300,\r\n US: 2920,\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Dashboard() {\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n content_copy\r\n \r\n

Used Space

\r\n

\r\n 49/50 GB\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

Revenue

\r\n

$34,245

\r\n
\r\n \r\n
\r\n \r\n Last 24 Hours\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n info_outline\r\n \r\n

Fixed Issues

\r\n

75

\r\n
\r\n \r\n
\r\n \r\n Tracked from Github\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

Followers

\r\n

+245

\r\n
\r\n \r\n
\r\n \r\n Just Updated\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 Tỉ lệ chốt đơn theo danh mục\r\n

\r\n
\r\n \r\n \r\n \r\n ,\r\n \"USA\",\r\n \"2.920\",\r\n \"53.23%\",\r\n ],\r\n [\r\n \"us_flag\",\r\n \"Germany\",\r\n \"1.300\",\r\n \"20.43%\",\r\n ],\r\n [\r\n \"us_flag\",\r\n \"Australia\",\r\n \"760\",\r\n \"10.35%\",\r\n ],\r\n [\r\n \"us_flag\",\r\n \"United Kingdom\",\r\n \"690\",\r\n \"7.87%\",\r\n ],\r\n [\r\n \"us_flag\",\r\n \"Romania\",\r\n \"600\",\r\n \"5.94%\",\r\n ],\r\n [\r\n \"us_flag\",\r\n \"Brasil\",\r\n \"550\",\r\n \"4.34%\",\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\n
\r\n

Daily Sales

\r\n

\r\n \r\n 55%\r\n {\" \"}\r\n increase in today sales.\r\n

\r\n
\r\n \r\n
\r\n updated 4 minutes ago\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

Email Subscriptions

\r\n

Last Campaign Performance

\r\n
\r\n \r\n
\r\n campaign sent 2 days ago\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

Completed Tasks

\r\n

Last Campaign Performance

\r\n
\r\n \r\n
\r\n campaign sent 2 days ago\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Manage Listings

\r\n
\r\n \r\n \r\n \r\n \r\n e.preventDefault()}>\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 e.preventDefault()}>\r\n Cozy 5 Stars Apartment\r\n \r\n

\r\n

\r\n The place is close to Barceloneta Beach and bus stop just 2 min\r\n by walk and near to {'\"'}Naviglio{'\"'} where you can enjoy the\r\n main night life in Barcelona.\r\n

\r\n
\r\n \r\n
\r\n

$899/night

\r\n
\r\n
\r\n Barcelona, Spain\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n e.preventDefault()}>\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 e.preventDefault()}>\r\n Office Studio\r\n \r\n

\r\n

\r\n The place is close to Metro Station and bus stop just 2 min by\r\n walk and near to {'\"'}Naviglio{'\"'} where you can enjoy the\r\n night life in London, UK.\r\n

\r\n
\r\n \r\n
\r\n

$1.119/night

\r\n
\r\n
\r\n London, UK\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n e.preventDefault()}>\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 e.preventDefault()}>\r\n Beautiful Castle\r\n \r\n

\r\n

\r\n The place is close to Metro Station and bus stop just 2 min by\r\n walk and near to {'\"'}Naviglio{'\"'} where you can enjoy the main\r\n night life in Milan.\r\n

\r\n
\r\n \r\n
\r\n

$459/night

\r\n
\r\n
\r\n Milan, Italy\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import { title, whiteColor } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst errorPageStyles = () => ({\r\n contentCenter: {\r\n position: \"absolute\",\r\n top: \"50%\",\r\n left: \"50%\",\r\n zIndex: \"3\",\r\n transform: \"translate(-50%,-50%)\",\r\n textAlign: \"center\",\r\n color: whiteColor,\r\n padding: \"0 15px\",\r\n width: \"100%\",\r\n maxWidth: \"880px\"\r\n },\r\n title: {\r\n ...title,\r\n fontSize: \"13.7em\",\r\n color: whiteColor,\r\n letterSpacing: \"14px\",\r\n fontWeight: \"700\"\r\n },\r\n subTitle: {\r\n fontSize: \"2.25rem\",\r\n marginTop: \"0\",\r\n marginBottom: \"8px\"\r\n },\r\n description: {\r\n fontSize: \"1.125rem\",\r\n marginTop: \"0\",\r\n marginBottom: \"8px\"\r\n }\r\n});\r\n\r\nexport default errorPageStyles;\r\n","import React from \"react\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/errorPageStyles.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function ErrorPage() {\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n

404

\r\n

Page not found :(

\r\n

\r\n Ooooups! Looks like you got lost.\r\n

\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import {\r\n primaryColor,\r\n warningColor,\r\n dangerColor,\r\n successColor,\r\n infoColor,\r\n roseColor,\r\n grayColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst customLinearProgressStyle = {\r\n root: {\r\n height: \"4px\",\r\n marginBottom: \"20px\",\r\n overflow: \"hidden\"\r\n },\r\n bar: {\r\n height: \"4px\"\r\n },\r\n primary: {\r\n backgroundColor: primaryColor[0]\r\n },\r\n warning: {\r\n backgroundColor: warningColor[0]\r\n },\r\n danger: {\r\n backgroundColor: dangerColor[0]\r\n },\r\n success: {\r\n backgroundColor: successColor[0]\r\n },\r\n info: {\r\n backgroundColor: infoColor[0]\r\n },\r\n rose: {\r\n backgroundColor: roseColor[0]\r\n },\r\n gray: {\r\n backgroundColor: grayColor[0]\r\n },\r\n primaryBackground: {\r\n background: \"rgba(\" + hexToRgb(primaryColor[0]) + \", 0.2)\"\r\n },\r\n warningBackground: {\r\n background: \"rgba(\" + hexToRgb(warningColor[0]) + \", 0.2)\"\r\n },\r\n dangerBackground: {\r\n background: \"rgba(\" + hexToRgb(dangerColor[0]) + \", 0.2)\"\r\n },\r\n successBackground: {\r\n background: \"rgba(\" + hexToRgb(successColor[0]) + \", 0.2)\"\r\n },\r\n infoBackground: {\r\n background: \"rgba(\" + hexToRgb(infoColor[0]) + \", 0.2)\"\r\n },\r\n roseBackground: {\r\n background: \"rgba(\" + hexToRgb(roseColor[0]) + \", 0.2)\"\r\n },\r\n grayBackground: {\r\n background: \"rgba(\" + hexToRgb(grayColor[5]) + \", 0.2)\"\r\n }\r\n};\r\n\r\nexport default customLinearProgressStyle;\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport LinearProgress from \"@material-ui/core/LinearProgress\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/customLinearProgressStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CustomLinearProgress(props) {\r\n const classes = useStyles();\r\n const { color, ...rest } = props;\r\n return (\r\n \r\n );\r\n}\r\n\r\nCustomLinearProgress.defaultProps = {\r\n color: \"gray\"\r\n};\r\n\r\nCustomLinearProgress.propTypes = {\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"warning\",\r\n \"danger\",\r\n \"success\",\r\n \"info\",\r\n \"rose\",\r\n \"gray\"\r\n ])\r\n};\r\n","import {\r\n primaryColor,\r\n primaryBoxShadow,\r\n whiteColor,\r\n blackColor,\r\n grayColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst customSelectStyle = {\r\n select: {\r\n padding: \"12px 0 7px\",\r\n fontSize: \".75rem\",\r\n fontWeight: \"400\",\r\n lineHeight: \"1.42857\",\r\n textDecoration: \"none\",\r\n textTransform: \"uppercase\",\r\n color: grayColor[2],\r\n letterSpacing: \"0\",\r\n \"&:focus\": {\r\n backgroundColor: \"transparent\"\r\n },\r\n \"&[aria-owns] + input + svg\": {\r\n transform: \"rotate(180deg)\"\r\n },\r\n \"& + input + svg\": {\r\n transition: \"all 300ms linear\"\r\n }\r\n },\r\n selectFormControl: {\r\n margin: \"7px 0 17px 0 !important\",\r\n \"& > div\": {\r\n \"&:before\": {\r\n borderBottomWidth: \"1px !important\",\r\n borderBottomColor: grayColor[4] + \"!important\"\r\n },\r\n \"&:after\": {\r\n borderBottomColor: primaryColor[0] + \"!important\"\r\n }\r\n }\r\n },\r\n selectLabel: {\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n color: grayColor[2] + \" !important\",\r\n top: \"8px\"\r\n },\r\n selectMenu: {\r\n \"& > div > ul\": {\r\n border: \"0\",\r\n padding: \"5px 0\",\r\n margin: \"0\",\r\n boxShadow: \"none\",\r\n minWidth: \"100%\",\r\n borderRadius: \"4px\",\r\n boxSizing: \"border-box\",\r\n display: \"block\",\r\n fontSize: \"14px\",\r\n textAlign: \"left\",\r\n listStyle: \"none\",\r\n backgroundColor: whiteColor,\r\n backgroundClip: \"padding-box\"\r\n },\r\n \"& $selectPaper $selectMenuItemSelectedMultiple\": {\r\n backgroundColor: \"inherit\"\r\n },\r\n \"& > div + div\": {\r\n maxHeight: \"266px !important\"\r\n }\r\n },\r\n selectMenuItem: {\r\n fontSize: \"13px\",\r\n padding: \"10px 20px\",\r\n margin: \"0 5px\",\r\n borderRadius: \"2px\",\r\n transition: \"all 150ms linear\",\r\n display: \"block\",\r\n clear: \"both\",\r\n fontWeight: \"400\",\r\n lineHeight: \"2\",\r\n whiteSpace: \"nowrap\",\r\n color: grayColor[7],\r\n paddingRight: \"30px\",\r\n \"&:hover\": {\r\n backgroundColor: primaryColor[0],\r\n color: whiteColor,\r\n ...primaryBoxShadow\r\n }\r\n },\r\n selectMenuItemSelected: {\r\n backgroundColor: primaryColor[0] + \"!important\",\r\n color: whiteColor\r\n },\r\n selectMenuItemSelectedMultiple: {\r\n backgroundColor: \"transparent !important\",\r\n \"&:hover\": {\r\n backgroundColor: primaryColor[0] + \"!important\",\r\n color: whiteColor,\r\n ...primaryBoxShadow,\r\n \"&:after\": {\r\n color: whiteColor\r\n }\r\n },\r\n \"&:after\": {\r\n top: \"16px\",\r\n right: \"12px\",\r\n width: \"12px\",\r\n height: \"5px\",\r\n borderLeft: \"2px solid currentColor\",\r\n transform: \"rotate(-45deg)\",\r\n opacity: \"1\",\r\n color: grayColor[2],\r\n position: \"absolute\",\r\n content: \"''\",\r\n borderBottom: \"2px solid currentColor\",\r\n transition: \"opacity 90ms cubic-bezier(0,0,.2,.1)\"\r\n }\r\n },\r\n selectPaper: {\r\n boxSizing: \"borderBox\",\r\n borderRadius: \"4px\",\r\n padding: \"0\",\r\n minWidth: \"100%\",\r\n display: \"block\",\r\n border: \"0\",\r\n boxShadow: \"0 2px 5px 0 rgba(\" + hexToRgb(blackColor) + \", 0.26)\",\r\n backgroundClip: \"padding-box\",\r\n margin: \"2px 0 0\",\r\n fontSize: \"14px\",\r\n textAlign: \"left\",\r\n listStyle: \"none\",\r\n backgroundColor: \"transparent\",\r\n maxHeight: \"266px\"\r\n }\r\n};\r\n\r\nexport default customSelectStyle;\r\n","import {\r\n primaryColor,\r\n dangerColor,\r\n roseColor,\r\n grayColor,\r\n blackColor,\r\n whiteColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst customCheckboxRadioSwitch = {\r\n checkRoot: {\r\n padding: \"14px\",\r\n \"&:hover\": {\r\n backgroundColor: \"unset\"\r\n }\r\n },\r\n radioRoot: {\r\n padding: \"16px\",\r\n \"&:hover\": {\r\n backgroundColor: \"unset\"\r\n }\r\n },\r\n labelRoot: {\r\n marginLeft: \"-14px\"\r\n },\r\n checkboxAndRadio: {\r\n position: \"relative\",\r\n display: \"block\",\r\n marginTop: \"10px\",\r\n marginBottom: \"10px\"\r\n },\r\n checkboxAndRadioHorizontal: {\r\n position: \"relative\",\r\n display: \"block\",\r\n \"&:first-child\": {\r\n marginTop: \"10px\"\r\n },\r\n \"&:not(:first-child)\": {\r\n marginTop: \"-14px\"\r\n },\r\n marginTop: \"0\",\r\n marginBottom: \"0\"\r\n },\r\n checked: {\r\n color: primaryColor[0] + \"!important\"\r\n },\r\n checkedIcon: {\r\n width: \"20px\",\r\n height: \"20px\",\r\n border: \"1px solid rgba(\" + hexToRgb(blackColor) + \", .54)\",\r\n borderRadius: \"3px\"\r\n },\r\n uncheckedIcon: {\r\n width: \"0px\",\r\n height: \"0px\",\r\n padding: \"9px\",\r\n border: \"1px solid rgba(\" + hexToRgb(blackColor) + \", .54)\",\r\n borderRadius: \"3px\"\r\n },\r\n disabledCheckboxAndRadio: {\r\n \"& $checkedIcon,& $uncheckedIcon,& $radioChecked,& $radioUnchecked\": {\r\n borderColor: blackColor,\r\n opacity: \"0.26\",\r\n color: blackColor\r\n }\r\n },\r\n label: {\r\n cursor: \"pointer\",\r\n paddingLeft: \"0\",\r\n color: grayColor[3],\r\n fontSize: \"14px\",\r\n lineHeight: \"1.428571429\",\r\n fontWeight: \"400\",\r\n display: \"inline-flex\",\r\n transition: \"0.3s ease all\",\r\n letterSpacing: \"unset\"\r\n },\r\n labelHorizontal: {\r\n color: \"rgba(\" + hexToRgb(blackColor) + \", 0.26)\",\r\n cursor: \"pointer\",\r\n display: \"inline-flex\",\r\n fontSize: \"14px\",\r\n lineHeight: \"1.428571429\",\r\n fontWeight: \"400\",\r\n paddingTop: \"39px\",\r\n marginRight: \"0\",\r\n \"@media (min-width: 992px)\": {\r\n float: \"right\"\r\n }\r\n },\r\n labelHorizontalRadioCheckbox: {\r\n paddingTop: \"22px\"\r\n },\r\n labelLeftHorizontal: {\r\n color: \"rgba(\" + hexToRgb(blackColor) + \", 0.26)\",\r\n cursor: \"pointer\",\r\n display: \"inline-flex\",\r\n fontSize: \"14px\",\r\n lineHeight: \"1.428571429\",\r\n fontWeight: \"400\",\r\n paddingTop: \"22px\",\r\n marginRight: \"0\"\r\n },\r\n labelError: {\r\n color: dangerColor[0]\r\n },\r\n radio: {\r\n color: primaryColor[0] + \"!important\"\r\n },\r\n radioChecked: {\r\n width: \"16px\",\r\n height: \"16px\",\r\n border: \"1px solid \" + primaryColor[0],\r\n borderRadius: \"50%\"\r\n },\r\n radioUnchecked: {\r\n width: \"0px\",\r\n height: \"0px\",\r\n padding: \"7px\",\r\n border: \"1px solid rgba(\" + hexToRgb(blackColor) + \", .54)\",\r\n borderRadius: \"50%\"\r\n },\r\n inlineChecks: {\r\n marginTop: \"8px\"\r\n },\r\n iconCheckbox: {\r\n height: \"116px\",\r\n width: \"116px\",\r\n color: grayColor[0],\r\n padding: \"0\",\r\n margin: \"0 auto 20px\",\r\n \"& > span:first-child\": {\r\n borderWidth: \"4px\",\r\n borderStyle: \"solid\",\r\n borderColor: grayColor[9],\r\n textAlign: \"center\",\r\n verticalAlign: \"middle\",\r\n borderRadius: \"50%\",\r\n color: \"inherit\",\r\n transition: \"all 0.2s\"\r\n },\r\n \"&:hover\": {\r\n color: roseColor[0],\r\n \"& > span:first-child\": {\r\n borderColor: roseColor[0]\r\n }\r\n }\r\n },\r\n iconCheckboxChecked: {\r\n color: roseColor[0],\r\n \"& > span:first-child\": {\r\n borderColor: roseColor[0]\r\n }\r\n },\r\n iconCheckboxIcon: {\r\n fontSize: \"40px\",\r\n lineHeight: \"111px\"\r\n },\r\n switchBase: {\r\n color: primaryColor[0] + \"!important\"\r\n },\r\n switchIcon: {\r\n boxShadow: \"0 1px 3px 1px rgba(\" + hexToRgb(blackColor) + \", 0.4)\",\r\n color: whiteColor + \" !important\",\r\n border: \"1px solid rgba(\" + hexToRgb(blackColor) + \", .54)\"\r\n },\r\n switchIconChecked: {\r\n borderColor: primaryColor[0],\r\n transform: \"translateX(0px)!important\"\r\n },\r\n switchBar: {\r\n width: \"30px\",\r\n height: \"15px\",\r\n backgroundColor: \"rgb(\" + hexToRgb(grayColor[18]) + \")\",\r\n borderRadius: \"15px\",\r\n opacity: \"0.7!important\"\r\n },\r\n switchChecked: {\r\n \"& + $switchBar\": {\r\n backgroundColor: \"rgba(\" + hexToRgb(primaryColor[0]) + \", 1) !important\"\r\n },\r\n \"& $switchIcon\": {\r\n borderColor: primaryColor[0]\r\n }\r\n }\r\n};\r\n\r\nexport default customCheckboxRadioSwitch;\r\n","import {\r\n cardTitle,\r\n blackColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\nimport customSelectStyle from \"assets/jss/material-dashboard-pro-react/customSelectStyle.js\";\r\nimport customCheckboxRadioSwitch from \"assets/jss/material-dashboard-pro-react/customCheckboxRadioSwitch.js\";\r\n\r\nconst extendedFormsStyle = {\r\n ...customCheckboxRadioSwitch,\r\n ...customSelectStyle,\r\n cardTitle,\r\n cardIconTitle: {\r\n ...cardTitle,\r\n marginTop: \"15px\",\r\n marginBottom: \"0px\"\r\n },\r\n label: {\r\n cursor: \"pointer\",\r\n paddingLeft: \"0\",\r\n color: \"rgba(\" + hexToRgb(blackColor) + \", 0.26)\",\r\n fontSize: \"14px\",\r\n lineHeight: \"1.428571429\",\r\n fontWeight: \"400\",\r\n display: \"inline-flex\"\r\n },\r\n mrAuto: {\r\n marginRight: \"auto\"\r\n },\r\n mlAuto: {\r\n marginLeft: \"auto\"\r\n }\r\n};\r\n\r\nexport default extendedFormsStyle;\r\n","import React from \"react\";\r\n// react component plugin for creating a beautiful datetime dropdown picker\r\nimport Datetime from \"react-datetime\";\r\n// react component plugin for creating beatiful tags on an input\r\nimport TagsInput from \"react-tagsinput\";\r\n// plugin that creates slider\r\nimport Slider from \"nouislider\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport Switch from \"@material-ui/core/Switch\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\n\r\n// @material-ui/icons\r\nimport Today from \"@material-ui/icons/Today\";\r\nimport LibraryBooks from \"@material-ui/icons/LibraryBooks\";\r\nimport AvTimer from \"@material-ui/icons/AvTimer\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport CustomDropdown from \"components/CustomDropdown/CustomDropdown.js\";\r\nimport CustomLinearProgress from \"components/CustomLinearProgress/CustomLinearProgress.js\";\r\nimport ImageUpload from \"components/CustomUpload/ImageUpload.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/extendedFormsStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function ExtendedForms() {\r\n const [checkedA, setCheckedA] = React.useState(true);\r\n const [checkedB, setCheckedB] = React.useState(false);\r\n const [simpleSelect, setSimpleSelect] = React.useState(\"\");\r\n const [multipleSelect, setMultipleSelect] = React.useState([]);\r\n const [tags, setTags] = React.useState([\"pizza\", \"pasta\", \"parmesan\"]);\r\n React.useEffect(() => {\r\n if (\r\n !document\r\n .getElementById(\"sliderRegular\")\r\n .classList.contains(\"noUi-target\")\r\n ) {\r\n Slider.create(document.getElementById(\"sliderRegular\"), {\r\n start: [40],\r\n connect: [true, false],\r\n step: 1,\r\n range: { min: 0, max: 100 }\r\n });\r\n }\r\n if (\r\n !document.getElementById(\"sliderDouble\").classList.contains(\"noUi-target\")\r\n ) {\r\n Slider.create(document.getElementById(\"sliderDouble\"), {\r\n start: [20, 60],\r\n connect: [false, true, false],\r\n step: 1,\r\n range: { min: 0, max: 100 }\r\n });\r\n }\r\n return function cleanup() {};\r\n });\r\n const handleSimple = event => {\r\n setSimpleSelect(event.target.value);\r\n };\r\n const handleMultiple = event => {\r\n setMultipleSelect(event.target.value);\r\n };\r\n const handleTags = regularTags => {\r\n setTags(regularTags);\r\n };\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Datetime Picker

\r\n
\r\n \r\n Datetime Picker\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

Date Picker

\r\n
\r\n \r\n Date Picker\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

Time Picker

\r\n
\r\n \r\n Time Picker\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 Switches\r\n
\r\n setCheckedA(event.target.checked)}\r\n value=\"checkedA\"\r\n classes={{\r\n switchBase: classes.switchBase,\r\n checked: classes.switchChecked,\r\n thumb: classes.switchIcon,\r\n track: classes.switchBar\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label\r\n }}\r\n label=\"Toggle is on\"\r\n />\r\n
\r\n
\r\n setCheckedB(event.target.checked)}\r\n value=\"checkedB\"\r\n classes={{\r\n switchBase: classes.switchBase,\r\n checked: classes.switchChecked,\r\n thumb: classes.switchIcon,\r\n track: classes.switchBar\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label\r\n }}\r\n label=\"Toggle is off\"\r\n />\r\n
\r\n
\r\n \r\n Customisable Select\r\n \r\n \r\n \r\n \r\n Choose City\r\n \r\n \r\n \r\n Choose City\r\n \r\n \r\n Paris\r\n \r\n \r\n Bucharest\r\n \r\n \r\n Rome\r\n \r\n \r\n New York\r\n \r\n \r\n Miami\r\n \r\n \r\n Piatra Neamt\r\n \r\n \r\n Paris\r\n \r\n \r\n Bucharest\r\n \r\n \r\n Rome\r\n \r\n \r\n New York\r\n \r\n \r\n Miami\r\n \r\n \r\n Piatra Neamt\r\n \r\n \r\n Paris\r\n \r\n \r\n Bucharest\r\n \r\n \r\n Rome\r\n \r\n \r\n New York\r\n \r\n \r\n Miami\r\n \r\n \r\n Piatra Neamt\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Choose City\r\n \r\n \r\n \r\n Choose City\r\n \r\n \r\n Paris\r\n \r\n \r\n Bucharest\r\n \r\n \r\n Rome\r\n \r\n \r\n New York\r\n \r\n \r\n Miami\r\n \r\n \r\n Piatra Neamt\r\n \r\n \r\n Paris\r\n \r\n \r\n Bucharest\r\n \r\n \r\n Rome\r\n \r\n \r\n New York\r\n \r\n \r\n Miami\r\n \r\n \r\n Piatra Neamt\r\n \r\n \r\n Paris\r\n \r\n \r\n Bucharest\r\n \r\n \r\n Rome\r\n \r\n \r\n New York\r\n \r\n \r\n Miami\r\n \r\n \r\n Piatra Neamt\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Tags\r\n \r\n \r\n \r\n Dropdown & Dropup\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 Progress Bars\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Sliders\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Regular Image\r\n \r\n \r\n \r\n Avatar\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n","import buttonGroupStyle from \"assets/jss/material-dashboard-pro-react/buttonGroupStyle.js\";\r\nimport customCheckboxRadioSwitch from \"assets/jss/material-dashboard-pro-react/customCheckboxRadioSwitch.js\";\r\nimport {\r\n cardTitle,\r\n grayColor,\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst extendedTablesStyle = {\r\n ...customCheckboxRadioSwitch,\r\n ...buttonGroupStyle,\r\n right: {\r\n textAlign: \"right\",\r\n },\r\n center: {\r\n textAlign: \"center\",\r\n },\r\n description: {\r\n maxWidth: \"150px\",\r\n },\r\n actionButton: {\r\n margin: \"0 0 0 5px\",\r\n padding: \"5px\",\r\n \"& svg,& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n marginRight: \"0px\",\r\n },\r\n },\r\n icon: {\r\n verticalAlign: \"middle\",\r\n width: \"17px\",\r\n height: \"17px\",\r\n top: \"-1px\",\r\n position: \"relative\",\r\n },\r\n imgContainer: {\r\n width: \"120px\",\r\n maxHeight: \"160px\",\r\n overflow: \"hidden\",\r\n display: \"block\",\r\n },\r\n img: {\r\n width: \"100%\",\r\n height: \"auto\",\r\n verticalAlign: \"middle\",\r\n border: \"0\",\r\n },\r\n tdName: {\r\n minWidth: \"200px\",\r\n fontWeight: \"400\",\r\n fontSize: \"1.5em\",\r\n },\r\n tdNameAnchor: {\r\n color: grayColor[2],\r\n },\r\n tdNameSmall: {\r\n color: grayColor[0],\r\n fontSize: \"0.75em\",\r\n fontWeight: \"300\",\r\n },\r\n tdNumber: {\r\n textAlign: \"right\",\r\n minWidth: \"145px\",\r\n fontWeight: \"300\",\r\n fontSize: \"1.3em !important\",\r\n },\r\n tdNumberSmall: {\r\n marginRight: \"3px\",\r\n },\r\n tdNumberAndButtonGroup: {\r\n lineHeight: \"1 !important\",\r\n },\r\n positionAbsolute: {\r\n position: \"absolute\",\r\n right: \"0\",\r\n top: \"0\",\r\n },\r\n customFont: {\r\n fontSize: \"16px !important\",\r\n },\r\n actionButtonRound: {\r\n width: \"auto\",\r\n height: \"auto\",\r\n minWidth: \"auto\",\r\n },\r\n cardIconTitle: {\r\n ...cardTitle,\r\n marginTop: \"15px\",\r\n marginBottom: \"0px\",\r\n },\r\n};\r\n\r\nexport default extendedTablesStyle;\r\n","import React from \"react\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\n\r\n// material-ui icons\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\nimport Person from \"@material-ui/icons/Person\";\r\nimport Edit from \"@material-ui/icons/Edit\";\r\nimport Close from \"@material-ui/icons/Close\";\r\nimport Check from \"@material-ui/icons/Check\";\r\nimport Remove from \"@material-ui/icons/Remove\";\r\nimport Add from \"@material-ui/icons/Add\";\r\nimport KeyboardArrowRight from \"@material-ui/icons/KeyboardArrowRight\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/extendedTablesStyle.js\";\r\n\r\nimport product1 from \"assets/img/product1.jpg\";\r\nimport product2 from \"assets/img/product2.jpg\";\r\nimport product3 from \"assets/img/product3.jpg\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function ExtendedTables() {\r\n const [checked, setChecked] = React.useState([]);\r\n const handleToggle = value => {\r\n const currentIndex = checked.indexOf(value);\r\n const newChecked = [...checked];\r\n\r\n if (currentIndex === -1) {\r\n newChecked.push(value);\r\n } else {\r\n newChecked.splice(currentIndex, 1);\r\n }\r\n setChecked(newChecked);\r\n };\r\n const classes = useStyles();\r\n const fillButtons = [\r\n { color: \"info\", icon: Person },\r\n { color: \"success\", icon: Edit },\r\n { color: \"danger\", icon: Close }\r\n ].map((prop, key) => {\r\n return (\r\n \r\n );\r\n });\r\n const simpleButtons = [\r\n { color: \"info\", icon: Person },\r\n { color: \"success\", icon: Edit },\r\n { color: \"danger\", icon: Close }\r\n ].map((prop, key) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n });\r\n const roundButtons = [\r\n { color: \"info\", icon: Person },\r\n { color: \"success\", icon: Edit },\r\n { color: \"danger\", icon: Close }\r\n ].map((prop, key) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n });\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Simple Table

\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

Striped Table

\r\n
\r\n \r\n handleToggle(1)}\r\n checkedIcon={}\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />,\r\n \"Moleskine Agenda\",\r\n \"Office\",\r\n \"25\",\r\n \"€ 49\",\r\n \"€ 1,225\"\r\n ],\r\n [\r\n \"2\",\r\n handleToggle(2)}\r\n checkedIcon={}\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />,\r\n \"Stabilo Pen\",\r\n \"Office\",\r\n \"30\",\r\n \"€ 10\",\r\n \"€ 300\"\r\n ],\r\n [\r\n \"3\",\r\n handleToggle(3)}\r\n checkedIcon={}\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />,\r\n \"A4 Paper Pack\",\r\n \"Office\",\r\n \"50\",\r\n \"€ 10.99\",\r\n \"€ 109\"\r\n ],\r\n [\r\n \"4\",\r\n handleToggle(4)}\r\n checkedIcon={}\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />,\r\n \"Apple iPad\",\r\n \"Communication\",\r\n \"10\",\r\n \"€ 499.00\",\r\n \"€ 4,990\"\r\n ],\r\n [\r\n \"5\",\r\n handleToggle(5)}\r\n checkedIcon={}\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />,\r\n \"Apple iPhone\",\r\n \"Communication\",\r\n \"10\",\r\n \"€ 599.00\",\r\n \"€ 5,999\"\r\n ],\r\n { total: true, colspan: \"5\", amount: \"€12,999\" }\r\n ]}\r\n customCellClasses={[classes.center, classes.right, classes.right]}\r\n customClassesForCells={[0, 5, 6]}\r\n customHeadCellClasses={[\r\n classes.center,\r\n classes.right,\r\n classes.right\r\n ]}\r\n customHeadClassesForCells={[0, 5, 6]}\r\n />\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

Shopping Cart Table

\r\n
\r\n \r\n \r\n \"...\"\r\n
,\r\n \r\n \r\n Spring Jacket\r\n \r\n
\r\n \r\n by Dolce&Gabbana\r\n \r\n
,\r\n \"Red\",\r\n \"M\",\r\n \r\n 549\r\n ,\r\n \r\n 1{` `}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
,\r\n \r\n 549\r\n ,\r\n \r\n ],\r\n [\r\n
\r\n \"...\"\r\n
,\r\n \r\n \r\n Short Pants{\" \"}\r\n \r\n
\r\n by Pucci\r\n
,\r\n \"Purple\",\r\n \"M\",\r\n \r\n 499\r\n ,\r\n \r\n 2{` `}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
,\r\n \r\n 998\r\n ,\r\n \r\n ],\r\n [\r\n
\r\n \"...\"\r\n
,\r\n \r\n \r\n Pencil Skirt\r\n \r\n
\r\n by Valentino\r\n
,\r\n \"White\",\r\n \"XL\",\r\n \r\n 799\r\n ,\r\n \r\n 1{` `}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
,\r\n \r\n 799\r\n ,\r\n \r\n ],\r\n {\r\n total: true,\r\n colspan: \"5\",\r\n amount: (\r\n \r\n 2,346\r\n \r\n )\r\n },\r\n {\r\n purchase: true,\r\n colspan: \"6\",\r\n col: {\r\n colspan: 2,\r\n text: (\r\n \r\n )\r\n }\r\n }\r\n ]}\r\n tableShopping\r\n customHeadCellClasses={[\r\n classes.center,\r\n classes.description,\r\n classes.description,\r\n classes.right,\r\n classes.right,\r\n classes.right\r\n ]}\r\n customHeadClassesForCells={[0, 2, 3, 4, 5, 6]}\r\n customCellClasses={[\r\n classes.tdName,\r\n classes.customFont,\r\n classes.customFont,\r\n classes.tdNumber,\r\n classes.tdNumber + \" \" + classes.tdNumberAndButtonGroup,\r\n classes.tdNumber\r\n ]}\r\n customClassesForCells={[1, 2, 3, 4, 5, 6]}\r\n />\r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n","import React from \"react\";\r\nimport {\r\n withScriptjs,\r\n withGoogleMap,\r\n GoogleMap,\r\n Marker\r\n} from \"react-google-maps\";\r\n\r\nconst CustomSkinMap = withScriptjs(\r\n withGoogleMap(() => (\r\n \r\n \r\n \r\n ))\r\n);\r\n\r\nexport default function FullScreenMap() {\r\n return (\r\n }\r\n containerElement={
}\r\n mapElement={
}\r\n />\r\n );\r\n}\r\n","import React from \"react\";\r\n// react components used to create a google map\r\nimport {\r\n withScriptjs,\r\n withGoogleMap,\r\n GoogleMap,\r\n Marker\r\n} from \"react-google-maps\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\nimport Map from \"@material-ui/icons/Map\";\r\nimport AddLocation from \"@material-ui/icons/AddLocation\";\r\nimport Place from \"@material-ui/icons/Place\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\n\r\nimport { cardTitle } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst styles = {\r\n cardIconTitle: {\r\n ...cardTitle,\r\n marginTop: \"15px\",\r\n marginBottom: \"0px\"\r\n }\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nconst SatelliteMap = withScriptjs(\r\n withGoogleMap(() => (\r\n \r\n \r\n \r\n ))\r\n);\r\n\r\nconst RegularMap = withScriptjs(\r\n withGoogleMap(() => (\r\n \r\n \r\n \r\n ))\r\n);\r\n\r\nconst CustomSkinMap = withScriptjs(\r\n withGoogleMap(() => (\r\n \r\n \r\n \r\n ))\r\n);\r\n\r\nexport default function GoogleMaps() {\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Satellite Map

\r\n
\r\n \r\n }\r\n containerElement={\r\n \r\n }\r\n mapElement={
}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Regular Map

\r\n
\r\n \r\n }\r\n containerElement={\r\n \r\n }\r\n mapElement={
}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n Custom Skin & Settings Map\r\n

\r\n
\r\n \r\n }\r\n containerElement={\r\n \r\n }\r\n mapElement={
}\r\n />\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { grayColor } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst gridSystemStyle = {\r\n title: {\r\n color: grayColor[2],\r\n textDecoration: \"none\"\r\n }\r\n};\r\n\r\nexport default gridSystemStyle;\r\n","import React from \"react\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/gridSystemStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function GridSystem() {\r\n const classes = useStyles();\r\n return (\r\n
\r\n

\r\n XS Grid Always Horizontal\r\n

\r\n \r\n \r\n \r\n \r\n {`xs={4}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`xs={4}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`xs={4}`}\r\n \r\n \r\n \r\n \r\n

\r\n SM Grid Collapsed at 768px\r\n

\r\n \r\n \r\n \r\n \r\n {`sm={4}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`sm={4}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`sm={4}`}\r\n \r\n \r\n \r\n \r\n

\r\n MD Grid Collapsed at 992px\r\n

\r\n \r\n \r\n \r\n \r\n {`md={4}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`md={4}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`md={4}`}\r\n \r\n \r\n \r\n \r\n

\r\n LG Grid Collapsed at 1200px\r\n

\r\n \r\n \r\n \r\n \r\n {`lg={4}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`lg={4}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`lg={4}`}\r\n \r\n \r\n \r\n \r\n

\r\n Mixed Grid Showing different sizes on different screens\r\n

\r\n \r\n \r\n \r\n \r\n {`sm={6} lg={3}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`sm={6} lg={3}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`sm={6} lg={3}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`sm={6} lg={3}`}\r\n \r\n \r\n \r\n \r\n

\r\n Offset Grid Adding some space when needed\r\n

\r\n \r\n \r\n \r\n \r\n {`md={3}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`md={3}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`md={3}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {`md={4}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {`md={4}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {`md={6}`}\r\n \r\n \r\n \r\n \r\n

Paragraphs

\r\n \r\n \r\n \r\n \r\n

Some Title Here

\r\n

\r\n One morning, when Gregor Samsa woke from troubled dreams, he\r\n found himself transformed in his bed into a horrible vermin. He\r\n lay on his armour-like back, and if he lifted his head a little\r\n he could see his brown belly, slightly domed and divided by\r\n arches into stiff sections. The bedding was hardly able to cover\r\n it and seemed ready to slide off any moment. His many legs,\r\n pitifully thin compared with the size of the rest of him, waved\r\n about helplessly as he looked. {'\"'}What{\"'\"}s happened to me?\r\n {'\"'} he thought.\r\n

\r\n
\r\n \r\n

Another Title Here

\r\n

\r\n One morning, when Gregor Samsa woke from troubled dreams, he\r\n found himself transformed in his bed into a horrible vermin. He\r\n lay on his armour-like back, and if he lifted his head a little\r\n he could see his brown belly, slightly domed and divided by\r\n arches into stiff sections. The bedding was hardly able to cover\r\n it and seemed ready to slide off any moment. His many legs,\r\n pitifully thin compared with the size of the rest of him, waved\r\n about helplessly as he looked. {'\"'}What{\"'\"}s happened to me?\r\n {'\"'} he thought.\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n

Some Title Here

\r\n

\r\n One morning, when Gregor Samsa woke from troubled dreams, he\r\n found himself transformed in his bed into a horrible vermin. He\r\n lay on his armour-like back, and if he lifted his head a little\r\n he could see his brown belly, slightly domed and divided by\r\n arches into stiff sections. The bedding was hardly able to cover\r\n it and seemed ready to slide off any moment.\r\n

\r\n
\r\n \r\n

Another Title Here

\r\n

\r\n One morning, when Gregor Samsa woke from troubled dreams, he\r\n found himself transformed in his bed into a horrible vermin. He\r\n lay on his armour-like back, and if he lifted his head a little\r\n he could see his brown belly, slightly domed and divided by\r\n arches into stiff sections. The bedding was hardly able to cover\r\n it and seemed ready to slide off any moment.\r\n

\r\n
\r\n \r\n

Another Title Here

\r\n

\r\n One morning, when Gregor Samsa woke from troubled dreams, he\r\n found himself transformed in his bed into a horrible vermin. He\r\n lay on his armour-like back, and if he lifted his head a little\r\n he could see his brown belly, slightly domed and divided by\r\n arches into stiff sections. The bedding was hardly able to cover\r\n it and seemed ready to slide off any moment.\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n

Some Title Here

\r\n

\r\n One morning, when Gregor Samsa woke from troubled dreams, he\r\n found himself transformed in his bed into a horrible vermin. He\r\n lay on his armour-like back, and if he lifted his head a little\r\n he could see his brown belly, slightly domed and divided by\r\n arches into stiff sections. The bedding was hardly able to cover\r\n it and seemed ready to slide off any moment.\r\n

\r\n
\r\n \r\n

Another Title Here

\r\n

\r\n One morning, when Gregor Samsa woke from troubled dreams, he\r\n found himself transformed in his bed into a horrible vermin. He\r\n lay on his armour-like back, and if he lifted his head a little\r\n he could see his brown belly, slightly domed and divided by\r\n arches into stiff sections. The bedding was hardly able to cover\r\n it and seemed ready to slide off any moment. One morning, when\r\n Gregor Samsa woke from troubled dreams, he found himself\r\n transformed in his bed into a horrible vermin. He lay on his\r\n armour-like back, and if he lifted his head a little he could\r\n see his brown belly, slightly domed and divided by arches into\r\n stiff sections. The bedding was hardly able to cover it and\r\n seemed ready to slide off any moment.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import { boxShadow } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst iconsStyle = {\r\n iframe: {\r\n width: \"100%\",\r\n height: \"500px\",\r\n border: \"0\",\r\n ...boxShadow\r\n },\r\n iframeContainer: {\r\n margin: \"0 -20px 0\"\r\n }\r\n};\r\n\r\nexport default iconsStyle;\r\n","/*eslint-disable*/\r\nimport React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Hidden from \"@material-ui/core/Hidden\";\r\n\r\n// core components\r\nimport Heading from \"components/Heading/Heading.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/iconsStyle\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Icons() {\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n Handcrafted by our friends from{\" \"}\r\n \r\n Google\r\n \r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n

Your browser does not support iframes.

\r\n \r\n
\r\n \r\n \r\n
\r\n The icons are visible on Desktop mode inside an iframe. Since\r\n the iframe is not working on Mobile and Tablets please visit\r\n the icons on their original page on Google. Check the\r\n \r\n Material Icons\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import {\r\n primaryColor,\r\n dangerColor,\r\n successColor,\r\n defaultFont,\r\n whiteColor,\r\n grayColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst customInputStyle = {\r\n disabled: {\r\n \"&:before\": {\r\n borderColor: \"transparent !important\"\r\n }\r\n },\r\n underline: {\r\n \"&:hover:not($disabled):before,&:before\": {\r\n borderColor: grayColor[4] + \"!important\",\r\n borderWidth: \"1px !important\"\r\n },\r\n \"&:after\": {\r\n borderColor: primaryColor[0]\r\n },\r\n \"& + p\": {\r\n fontWeight: \"300\"\r\n }\r\n },\r\n underlineError: {\r\n \"&:after\": {\r\n borderColor: dangerColor[0]\r\n }\r\n },\r\n underlineSuccess: {\r\n \"&:after\": {\r\n borderColor: successColor[0]\r\n }\r\n },\r\n labelRoot: {\r\n ...defaultFont,\r\n color: grayColor[3] + \" !important\",\r\n fontWeight: \"400\",\r\n fontSize: \"14px\",\r\n lineHeight: \"1.42857\",\r\n top: \"10px\",\r\n letterSpacing: \"unset\",\r\n \"& + $underline\": {\r\n marginTop: \"0px\"\r\n }\r\n },\r\n labelRootError: {\r\n color: dangerColor[0] + \" !important\"\r\n },\r\n labelRootSuccess: {\r\n color: successColor[0] + \" !important\"\r\n },\r\n formControl: {\r\n margin: \"0 0 17px 0\",\r\n paddingTop: \"27px\",\r\n position: \"relative\",\r\n verticalAlign: \"unset\",\r\n \"& svg,& .fab,& .far,& .fal,& .fas,& .material-icons\": {\r\n color: grayColor[14]\r\n }\r\n },\r\n whiteUnderline: {\r\n \"&:hover:not($disabled):before,&:before\": {\r\n backgroundColor: whiteColor\r\n },\r\n \"&:after\": {\r\n backgroundColor: whiteColor\r\n }\r\n },\r\n input: {\r\n color: grayColor[14],\r\n height: \"unset\",\r\n \"&,&::placeholder\": {\r\n fontSize: \"14px\",\r\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n fontWeight: \"400\",\r\n lineHeight: \"1.42857\",\r\n opacity: \"1\"\r\n },\r\n \"&::placeholder\": {\r\n color: grayColor[3]\r\n }\r\n },\r\n whiteInput: {\r\n \"&,&::placeholder\": {\r\n color: whiteColor,\r\n opacity: \"1\"\r\n }\r\n }\r\n};\r\n\r\nexport default customInputStyle;\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport FormHelperText from \"@material-ui/core/FormHelperText\";\r\nimport Input from \"@material-ui/core/Input\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/customInputStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CustomInput(props) {\r\n const classes = useStyles();\r\n const {\r\n formControlProps,\r\n labelText,\r\n id,\r\n labelProps,\r\n inputProps,\r\n error,\r\n white,\r\n inputRootCustomClasses,\r\n success,\r\n helperText,\r\n } = props;\r\n\r\n const labelClasses = classNames({\r\n [\" \" + classes.labelRootError]: error,\r\n [\" \" + classes.labelRootSuccess]: success && !error,\r\n });\r\n const underlineClasses = classNames({\r\n [classes.underlineError]: error,\r\n [classes.underlineSuccess]: success && !error,\r\n [classes.underline]: true,\r\n [classes.whiteUnderline]: white,\r\n });\r\n const marginTop = classNames({\r\n [inputRootCustomClasses]: inputRootCustomClasses !== undefined,\r\n });\r\n const inputClasses = classNames({\r\n [classes.input]: true,\r\n [classes.whiteInput]: white,\r\n });\r\n var formControlClasses;\r\n if (formControlProps !== undefined) {\r\n formControlClasses = classNames(\r\n formControlProps.className,\r\n classes.formControl\r\n );\r\n } else {\r\n formControlClasses = classes.formControl;\r\n }\r\n var helpTextClasses = classNames({\r\n [classes.labelRootError]: error,\r\n [classes.labelRootSuccess]: success && !error,\r\n });\r\n let newInputProps = {\r\n maxLength:\r\n inputProps && inputProps.maxLength ? inputProps.maxLength : undefined,\r\n minLength:\r\n inputProps && inputProps.minLength ? inputProps.minLength : undefined,\r\n };\r\n return (\r\n \r\n {labelText !== undefined ? (\r\n \r\n {labelText}\r\n \r\n ) : null}\r\n \r\n {helperText !== undefined ? (\r\n \r\n {helperText}\r\n \r\n ) : null}\r\n \r\n );\r\n}\r\n\r\nCustomInput.propTypes = {\r\n labelText: PropTypes.node,\r\n labelProps: PropTypes.object,\r\n id: PropTypes.string,\r\n inputProps: PropTypes.object,\r\n formControlProps: PropTypes.object,\r\n inputRootCustomClasses: PropTypes.string,\r\n error: PropTypes.bool,\r\n success: PropTypes.bool,\r\n white: PropTypes.bool,\r\n helperText: PropTypes.node,\r\n};\r\n","import {\r\n blackColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst cardAvatarStyle = {\r\n cardAvatar: {\r\n \"&$cardAvatarProfile img,&$cardAvatarTestimonial img\": {\r\n width: \"100%\",\r\n height: \"auto\"\r\n }\r\n },\r\n cardAvatarProfile: {\r\n maxWidth: \"130px\",\r\n maxHeight: \"130px\",\r\n margin: \"-50px auto 0\",\r\n borderRadius: \"50%\",\r\n overflow: \"hidden\",\r\n padding: \"0\",\r\n boxShadow:\r\n \"0 16px 38px -12px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.56), 0 4px 25px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n \"&$cardAvatarPlain\": {\r\n marginTop: \"0\"\r\n }\r\n },\r\n cardAvatarPlain: {},\r\n cardAvatarTestimonial: {\r\n margin: \"-50px auto 0\",\r\n maxWidth: \"100px\",\r\n maxHeight: \"100px\",\r\n borderRadius: \"50%\",\r\n overflow: \"hidden\",\r\n padding: \"0\",\r\n boxShadow:\r\n \"0 16px 38px -12px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.56), 0 4px 25px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n \"&$cardAvatarPlain\": {\r\n marginTop: \"0\"\r\n }\r\n },\r\n cardAvatarTestimonialFooter: {\r\n marginBottom: \"-50px\",\r\n marginTop: \"10px\"\r\n }\r\n};\r\n\r\nexport default cardAvatarStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\n// core components\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/cardAvatarStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CardAvatar(props) {\r\n const classes = useStyles();\r\n const {\r\n children,\r\n className,\r\n plain,\r\n profile,\r\n testimonial,\r\n testimonialFooter,\r\n ...rest\r\n } = props;\r\n const cardAvatarClasses = classNames({\r\n [classes.cardAvatar]: true,\r\n [classes.cardAvatarProfile]: profile,\r\n [classes.cardAvatarPlain]: plain,\r\n [classes.cardAvatarTestimonial]: testimonial,\r\n [classes.cardAvatarTestimonialFooter]: testimonialFooter,\r\n [className]: className !== undefined\r\n });\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nCardAvatar.propTypes = {\r\n children: PropTypes.node.isRequired,\r\n className: PropTypes.string,\r\n profile: PropTypes.bool,\r\n plain: PropTypes.bool,\r\n testimonial: PropTypes.bool,\r\n testimonialFooter: PropTypes.bool\r\n};\r\n","import {\r\n cardTitle,\r\n container,\r\n whiteColor,\r\n blackColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst lockScreenPageStyle = theme => ({\r\n cardTitle,\r\n container: {\r\n ...container,\r\n zIndex: \"4\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n paddingBottom: \"100px\"\r\n }\r\n },\r\n customCardClass: {\r\n width: \"240px\",\r\n margin: \"60px auto 0\",\r\n color: whiteColor,\r\n display: \"block\",\r\n transform: \"translate3d(\" + hexToRgb(blackColor) + \")\",\r\n transition: \"all 300ms linear\"\r\n },\r\n cardHidden: {\r\n opacity: \"0\",\r\n transform: \"translate3d(0, -60px, 0)\"\r\n },\r\n cardAvatar: {\r\n maxWidth: \"90px\",\r\n maxHeight: \"90px\",\r\n marginTop: \"-45px\"\r\n },\r\n customCardFooterClass: {\r\n border: \"none\",\r\n paddingTop: \"0\"\r\n },\r\n justifyContentCenter: {\r\n justifyContent: \"center !important\"\r\n }\r\n});\r\n\r\nexport default lockScreenPageStyle;\r\n","import React from \"react\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// core components\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardAvatar from \"components/Card/CardAvatar.js\";\r\nimport CardFooter from \"components/Card/CardFooter.js\";\r\n\r\nimport avatar from \"assets/img/faces/avatar.jpg\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/lockScreenPageStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function LockScreenPage() {\r\n const [cardAnimaton, setCardAnimation] = React.useState(\"cardHidden\");\r\n React.useEffect(() => {\r\n let id = setTimeout(function() {\r\n setCardAnimation(\"\");\r\n }, 700);\r\n // Specify how to clean up after this effect:\r\n return function cleanup() {\r\n window.clearTimeout(id);\r\n };\r\n });\r\n const classes = useStyles();\r\n return (\r\n
\r\n
\r\n \r\n \r\n e.preventDefault()}>\r\n \"...\"\r\n \r\n \r\n \r\n

Tania Andrew

\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n","import {\r\n container,\r\n cardTitle,\r\n whiteColor,\r\n grayColor,\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst loginPageStyle = (theme) => ({\r\n container: {\r\n ...container,\r\n zIndex: \"4\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n paddingBottom: \"100px\",\r\n },\r\n },\r\n cardTitle: {\r\n ...cardTitle,\r\n color: whiteColor,\r\n },\r\n textCenter: {\r\n textAlign: \"center\",\r\n },\r\n justifyContentCenter: {\r\n justifyContent: \"center !important\",\r\n },\r\n customButtonClass: {\r\n \"&,&:focus,&:hover\": {\r\n color: whiteColor,\r\n },\r\n marginLeft: \"5px\",\r\n marginRight: \"5px\",\r\n },\r\n inputAdornment: {\r\n marginRight: \"18px\",\r\n },\r\n inputAdornmentIcon: {\r\n color: grayColor[6],\r\n },\r\n cardHidden: {\r\n opacity: \"0\",\r\n transform: \"translate3d(0, -60px, 0)\",\r\n },\r\n cardHeader: {\r\n margin: \"10px 20px\",\r\n padding: \"20px 0px 0px 0px\",\r\n },\r\n socialLine: {\r\n padding: \"0.9375rem 0\",\r\n },\r\n lgCardBody: {\r\n padding: \"0px 20px 0px 20px\",\r\n },\r\n});\r\n\r\nexport default loginPageStyle;\r\n","import moment from \"moment\";\r\n\r\nexport const checkAuth = () => {\r\n let isTokenExpired = true;\r\n const expiresOn = localStorage.getItem(\"expiresOn\");\r\n if (expiresOn) {\r\n isTokenExpired = moment(expiresOn) < moment();\r\n }\r\n\r\n return (\r\n localStorage.getItem(\"jwToken\") &&\r\n localStorage.getItem(\"userName\") &&\r\n localStorage.getItem(\"userNameId\") &&\r\n localStorage.getItem(\"userRoles\") &&\r\n !isTokenExpired\r\n );\r\n};\r\n\r\nexport const setSession = ({\r\n jwToken,\r\n userName,\r\n userNameId,\r\n roles,\r\n issuedOn,\r\n expiresOn,\r\n}) => {\r\n localStorage.setItem(\"jwToken\", jwToken);\r\n localStorage.setItem(\"userName\", userName);\r\n localStorage.setItem(\"userNameId\", userNameId);\r\n localStorage.setItem(\"userRoles\", roles);\r\n localStorage.setItem(\"issuedOn\", issuedOn);\r\n localStorage.setItem(\"expiresOn\", expiresOn);\r\n};\r\n\r\nexport const getSession = () => {\r\n return {\r\n token: localStorage.getItem(\"jwToken\"),\r\n userName: localStorage.getItem(\"userName\"),\r\n userNameId: localStorage.getItem(\"userNameId\"),\r\n userRoles: localStorage.getItem(\"userRoles\"),\r\n };\r\n};\r\n\r\nexport const removeSession = () => {\r\n localStorage.setItem(\"jwToken\", \"\");\r\n localStorage.setItem(\"userName\", \"\");\r\n localStorage.setItem(\"userNameId\", \"\");\r\n localStorage.setItem(\"userRoles\", \"\");\r\n localStorage.setItem(\"issuedOn\", \"\");\r\n localStorage.setItem(\"expiresOn\", \"\");\r\n};\r\n\r\nexport const isAdminstrator = () => {\r\n // Basic,Moderator,SuperAdmin,Admin\r\n const roles = localStorage.getItem(\"userRoles\");\r\n return roles.includes(\"Admin\");\r\n};\r\n","import axios from \"axios\";\r\nimport { removeSession } from \"./appSession\";\r\n\r\nexport const apiCallStatusCode = {\r\n UNKNOWN: -1,\r\n NETWORK_ERROR: 0,\r\n REQUEST_TIME_OUT: 1,\r\n UNAUTHORIZED: 401,\r\n FORBIDDEN: 403,\r\n PAGE_NOT_FOUND: 404,\r\n INTERNAL_SERVER_ERROR: 500,\r\n SERVER_UNAVAILABLE: 503,\r\n};\r\n\r\n// Todo translate to Japaness\r\nexport const apiErrorMesageMapping = [\r\n {\r\n statusCode: apiCallStatusCode.UNKNOWN,\r\n message: \"Xảy ra lỗi không xác định.\",\r\n },\r\n {\r\n statusCode: apiCallStatusCode.NETWORK_ERROR,\r\n message: \"Mất kết nối đến máy chủ vui lòng kiểm tra.\",\r\n },\r\n {\r\n statusCode: apiCallStatusCode.REQUEST_TIME_OUT,\r\n message: \"Máy chủ không có phản hồi vui lòng thử lại.\",\r\n },\r\n {\r\n statusCode: apiCallStatusCode.UNAUTHORIZED,\r\n message: \"Phiên làm việc hết hạn, vui lòng Đăng nhập lại\",\r\n },\r\n {\r\n statusCode: apiCallStatusCode.FORBIDDEN,\r\n message: \"Bạn không có quyền thao tác.\",\r\n },\r\n {\r\n statusCode: apiCallStatusCode.PAGE_NOT_FOUND,\r\n message: \"Không tìm thấy trang.\",\r\n },\r\n {\r\n statusCode: apiCallStatusCode.INTERNAL_SERVER_ERROR,\r\n message: \"Có lỗi xảy ra phía máy chủ.\",\r\n },\r\n {\r\n statusCode: apiCallStatusCode.SERVER_UNAVAILABLE,\r\n message: \"Máy chủ không sẵn sàng.\",\r\n },\r\n];\r\n\r\nexport const getApiErrorMessage = (err) => {\r\n let statusCode = apiCallStatusCode.UNKNOWN;\r\n if (err.response) {\r\n // Request made and server responded (5xx, 4xx)\r\n statusCode = err.response.status;\r\n if (statusCode === 403) {\r\n setTimeout(() => {\r\n removeSession();\r\n window.location.href = \"/auth/login-page\"\r\n }, 1000)\r\n return {\r\n statusCode,\r\n message: \"Phiên làm việc hết hạn, vui lòng Đăng nhập lại\",\r\n };\r\n }\r\n\r\n // Error from back-end\r\n if (statusCode === 500 && err.response.data && err.response.data.Failed) {\r\n return {\r\n statusCode,\r\n message: err.response.data.Message || err.response.data.message,\r\n };\r\n } else {\r\n return {\r\n statusCode,\r\n message: err.response.data.message,\r\n };\r\n }\r\n } else if (err.request) {\r\n // The request was made but no response was received\r\n if (err.message === \"Network Error\")\r\n statusCode = apiCallStatusCode.NETWORK_ERROR;\r\n if (err.message.toLocaleLowerCase().startsWith(\"timeout of\"))\r\n statusCode = apiCallStatusCode.REQUEST_TIME_OUT;\r\n } else {\r\n // Unhandle exception.\r\n statusCode = apiCallStatusCode.UNKNOWN;\r\n }\r\n const apiError = apiErrorMesageMapping.filter(\r\n (apiErr) => apiErr.statusCode === statusCode\r\n )[0];\r\n\r\n return apiError;\r\n};\r\n\r\nconst isLogininRequest = (url) => url && url.endsWith(\"/identity/token\");\r\n\r\nconst getJSON = function (url, callback) {\r\n var xhr = new XMLHttpRequest();\r\n xhr.open('GET', url, true);\r\n xhr.responseType = 'json';\r\n\r\n xhr.onload = function () {\r\n\r\n var status = xhr.status;\r\n if (status == 200) {\r\n callback(null, xhr.response);\r\n } else {\r\n callback(status);\r\n }\r\n };\r\n\r\n xhr.send();\r\n};\r\ngetJSON('https://api.ipify.org?format=json', function (err, data) {\r\n if (err != null) {\r\n console.error(err);\r\n } else {\r\n localStorage.setItem(\"myId\", data.ip);\r\n }\r\n});\r\n\r\nconst fetchClient = (url) => {\r\n const isDevelopmentEnv = process.env.NODE_ENV === \"development\";\r\n const defaultOptions = {\r\n url,\r\n method: \"get\",\r\n accept: \"*/*\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n // Todo replace with production enpoint\r\n baseURL: isDevelopmentEnv\r\n ? \"https://localhost:44377/api/\"\r\n : \"http://tuvanbanhang.com/api/\",\r\n };\r\n // Create instance\r\n const instance = axios.create(defaultOptions);\r\n // instance.defaults.timeout = 900;\r\n\r\n // Set the AUTH token for any request\r\n instance.interceptors.request.use((config) => {\r\n if (!isLogininRequest(config.url)) {\r\n const token = localStorage.getItem(\"jwToken\");\r\n config.headers.Authorization = token ? `Bearer ${token}` : \"\";\r\n }\r\n const myIp = localStorage.getItem(\"myId\");\r\n config.headers.myIp = myIp;\r\n return config;\r\n });\r\n\r\n instance.interceptors.response.use(\r\n (response) => {\r\n // Clear error when the next call api success\r\n return response;\r\n },\r\n (err) => {\r\n return Promise.reject(getApiErrorMessage(err));\r\n }\r\n );\r\n\r\n return instance;\r\n};\r\n\r\nexport default fetchClient();\r\n","import React, { useState } from \"react\";\r\nimport { Formik } from \"formik\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\n\r\n// @material-ui/icons\r\nimport { PermContactCalendar } from \"@material-ui/icons\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport CardFooter from \"components/Card/CardFooter.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/loginPageStyle.js\";\r\nimport fetchClient from \"../../ultils/request\";\r\nimport { setSession } from \"../../ultils/appSession\";\r\nimport { FormControl, Snackbar, TextField } from \"@material-ui/core\";\r\nimport MuiAlert from \"@material-ui/lab/Alert\";\r\nimport logo from \"../../assets/img/logo.svg\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function LoginPage() {\r\n let history = useHistory();\r\n const [cardAnimaton, setCardAnimation] = React.useState(\"cardHidden\");\r\n const [messageError, setMessageError] = useState(\"\");\r\n React.useEffect(() => {\r\n let id = setTimeout(function () {\r\n setCardAnimation(\"\");\r\n }, 700);\r\n // Specify how to clean up after this effect:\r\n return function cleanup() {\r\n window.clearTimeout(id);\r\n };\r\n });\r\n\r\n const getToken = async ({ userName, password }) => {\r\n try {\r\n const result = await fetchClient.post(\"/identity/token\", {\r\n userName,\r\n password,\r\n });\r\n\r\n const { data } = result.data;\r\n setSession(data);\r\n\r\n history.push(\"/dashboard\");\r\n } catch (e) {\r\n console.error(\"error\", e);\r\n setMessageError(e.message);\r\n }\r\n };\r\n\r\n const classes = useStyles();\r\n\r\n console.log(\"process.env\", process.env);\r\n return (\r\n
\r\n \r\n \r\n {\r\n console.log(\"values\", values);\r\n const errors = {};\r\n if (!values.userName) {\r\n errors.userName = \"Bạn chưa nhập tên đăng nhập.\";\r\n }\r\n\r\n if (!values.password) {\r\n errors.password = \"Bạn chưa nhập mật khẩu.\";\r\n }\r\n return errors;\r\n }}\r\n onSubmit={async (values, { setSubmitting }) => {\r\n // post data to server\r\n await getToken(values);\r\n\r\n setSubmitting(false);\r\n }}\r\n >\r\n {({\r\n values: { userName, password },\r\n errors,\r\n touched,\r\n handleSubmit,\r\n setFieldValue,\r\n setFieldTouched,\r\n }) => {\r\n const onChange = (e) => {\r\n e.persist();\r\n setFieldValue(e.target.name, e.target.value);\r\n setFieldTouched(e.target.name, true, false);\r\n };\r\n\r\n return (\r\n \r\n \r\n \"Page\r\n
\r\n

Đăng nhập

\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 lock_outline\r\n \r\n \r\n ),\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n Đăng nhập\r\n \r\n \r\n
\r\n );\r\n }}\r\n \r\n
\r\n
\r\n {messageError && (\r\n {\r\n setMessageError(\"\");\r\n }}\r\n >\r\n {messageError}\r\n \r\n )}\r\n
\r\n );\r\n}\r\n","import {\r\n defaultFont,\r\n primaryBoxShadow,\r\n infoBoxShadow,\r\n successBoxShadow,\r\n warningBoxShadow,\r\n dangerBoxShadow,\r\n roseBoxShadow,\r\n whiteColor,\r\n blackColor,\r\n primaryColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n roseColor,\r\n grayColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst snackbarContentStyle = {\r\n root: {\r\n ...defaultFont,\r\n flexWrap: \"unset\",\r\n position: \"relative\",\r\n padding: \"20px 15px\",\r\n lineHeight: \"20px\",\r\n marginBottom: \"20px\",\r\n fontSize: \"14px\",\r\n backgroundColor: \"white\",\r\n color: grayColor[6],\r\n borderRadius: \"3px\",\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(whiteColor) +\r\n \", 0.28), 0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(whiteColor) +\r\n \", 0.2)\"\r\n },\r\n top20: {\r\n top: \"20px\"\r\n },\r\n top40: {\r\n top: \"40px\"\r\n },\r\n info: {\r\n backgroundColor: infoColor[3],\r\n color: whiteColor,\r\n ...infoBoxShadow\r\n },\r\n success: {\r\n backgroundColor: successColor[3],\r\n color: whiteColor,\r\n ...successBoxShadow\r\n },\r\n warning: {\r\n backgroundColor: warningColor[3],\r\n color: whiteColor,\r\n ...warningBoxShadow\r\n },\r\n danger: {\r\n backgroundColor: dangerColor[3],\r\n color: whiteColor,\r\n ...dangerBoxShadow\r\n },\r\n primary: {\r\n backgroundColor: primaryColor[3],\r\n color: whiteColor,\r\n ...primaryBoxShadow\r\n },\r\n rose: {\r\n backgroundColor: roseColor[3],\r\n color: whiteColor,\r\n ...roseBoxShadow\r\n },\r\n message: {\r\n padding: \"0\",\r\n display: \"block\",\r\n maxWidth: \"89%\"\r\n },\r\n close: {\r\n width: \"11px\",\r\n height: \"11px\"\r\n },\r\n iconButton: {\r\n width: \"24px\",\r\n height: \"24px\",\r\n padding: \"0\"\r\n },\r\n icon: {\r\n width: \"38px\",\r\n height: \"38px\",\r\n display: \"block\",\r\n left: \"15px\",\r\n position: \"absolute\",\r\n marginTop: \"-39px\",\r\n fontSize: \"20px\",\r\n backgroundColor: whiteColor,\r\n padding: \"9px\",\r\n borderRadius: \"50%\",\r\n maxWidth: \"38px\",\r\n boxShadow:\r\n \"0 10px 30px -12px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.42), 0 4px 25px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\"\r\n },\r\n infoIcon: {\r\n color: successColor[3]\r\n },\r\n successIcon: {\r\n color: successColor[3]\r\n },\r\n warningIcon: {\r\n color: warningColor[3]\r\n },\r\n dangerIcon: {\r\n color: dangerColor[3]\r\n },\r\n primaryIcon: {\r\n color: primaryColor[3]\r\n },\r\n roseIcon: {\r\n color: roseColor[3]\r\n },\r\n iconMessage: {\r\n paddingLeft: \"50px\",\r\n display: \"block\"\r\n }\r\n};\r\n\r\nexport default snackbarContentStyle;\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport cx from \"classnames\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Snack from \"@material-ui/core/SnackbarContent\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\n\r\n// @material-ui/icons\r\nimport Close from \"@material-ui/icons/Close\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/snackbarContentStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function SnackbarContent(props) {\r\n const classes = useStyles();\r\n const { message, color, close, icon } = props;\r\n var action = [];\r\n const messageClasses = cx({\r\n [classes.iconMessage]: icon !== undefined\r\n });\r\n if (close !== undefined) {\r\n action = [\r\n \r\n \r\n \r\n ];\r\n }\r\n const iconClasses = cx({\r\n [classes.icon]: classes.icon,\r\n [classes.infoIcon]: color === \"info\",\r\n [classes.successIcon]: color === \"success\",\r\n [classes.warningIcon]: color === \"warning\",\r\n [classes.dangerIcon]: color === \"danger\",\r\n [classes.primaryIcon]: color === \"primary\",\r\n [classes.roseIcon]: color === \"rose\"\r\n });\r\n return (\r\n \r\n {icon !== undefined ? : null}\r\n {message}\r\n
\r\n }\r\n classes={{\r\n root: classes.root + \" \" + classes[color],\r\n message: classes.message\r\n }}\r\n action={action}\r\n />\r\n );\r\n}\r\n\r\nSnackbarContent.defaultProps = {\r\n color: \"info\"\r\n};\r\n\r\nSnackbarContent.propTypes = {\r\n message: PropTypes.node.isRequired,\r\n color: PropTypes.oneOf([\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"primary\",\r\n \"rose\"\r\n ]),\r\n close: PropTypes.bool,\r\n icon: PropTypes.object\r\n};\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport cx from \"classnames\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Snack from \"@material-ui/core/Snackbar\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\n\r\n// @material-ui/icons\r\nimport Close from \"@material-ui/icons/Close\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/snackbarContentStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Snackbar(props) {\r\n const classes = useStyles();\r\n const { message, color, close, icon, place, open } = props;\r\n var action = [];\r\n const messageClasses = cx({\r\n [classes.iconMessage]: icon !== undefined\r\n });\r\n if (close !== undefined) {\r\n action = [\r\n props.closeNotification()}\r\n >\r\n \r\n \r\n ];\r\n }\r\n const iconClasses = cx({\r\n [classes.icon]: classes.icon,\r\n [classes.infoIcon]: color === \"info\",\r\n [classes.successIcon]: color === \"success\",\r\n [classes.warningIcon]: color === \"warning\",\r\n [classes.dangerIcon]: color === \"danger\",\r\n [classes.primaryIcon]: color === \"primary\",\r\n [classes.roseIcon]: color === \"rose\"\r\n });\r\n return (\r\n \r\n {icon !== undefined ? : null}\r\n {message}\r\n
\r\n }\r\n action={action}\r\n ContentProps={{\r\n classes: {\r\n root: classes.root + \" \" + classes[color],\r\n message: classes.message\r\n }\r\n }}\r\n />\r\n );\r\n}\r\n\r\nSnackbar.defaultProps = {\r\n color: \"info\"\r\n};\r\n\r\nSnackbar.propTypes = {\r\n message: PropTypes.node.isRequired,\r\n color: PropTypes.oneOf([\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"primary\",\r\n \"rose\"\r\n ]),\r\n close: PropTypes.bool,\r\n icon: PropTypes.object,\r\n place: PropTypes.oneOf([\"tl\", \"tr\", \"tc\", \"br\", \"bl\", \"bc\"]),\r\n open: PropTypes.bool,\r\n closeNotification: PropTypes.func\r\n};\r\n","const instructionStyle = {\r\n instruction: {},\r\n picture: {},\r\n image: {\r\n width: \"100%\",\r\n height: \"auto\",\r\n borderRadius: \"6px\",\r\n display: \"block\",\r\n maxWidth: \"100%\"\r\n }\r\n};\r\n\r\nexport default instructionStyle;\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport cx from \"classnames\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/instructionStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Instruction(props) {\r\n const classes = useStyles();\r\n const { title, text, image, className, imageClassName, imageAlt } = props;\r\n const instructionClasses = cx({\r\n [classes.instruction]: true,\r\n [className]: className !== undefined\r\n });\r\n const pictureClasses = cx({\r\n [classes.picture]: true,\r\n [imageClassName]: imageClassName !== undefined\r\n });\r\n return (\r\n
\r\n \r\n \r\n {title}\r\n

{text}

\r\n
\r\n \r\n
\r\n {imageAlt}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nInstruction.defaultProps = {\r\n imageAlt: \"...\"\r\n};\r\n\r\nInstruction.propTypes = {\r\n title: PropTypes.node.isRequired,\r\n text: PropTypes.node.isRequired,\r\n image: PropTypes.string.isRequired,\r\n imageAlt: PropTypes.string,\r\n className: PropTypes.string,\r\n imageClassName: PropTypes.string\r\n};\r\n","import { grayColor } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst modalStyle = theme => ({\r\n modalRoot: {\r\n overflow: \"auto\",\r\n alignItems: \"unset\",\r\n justifyContent: \"unset\"\r\n },\r\n modal: {\r\n [theme.breakpoints.up(\"sm\")]: {\r\n maxWidth: \"500px\",\r\n margin: \"auto\"\r\n },\r\n borderRadius: \"6px\",\r\n marginTop: \"100px !important\",\r\n overflow: \"visible\",\r\n maxHeight: \"unset\",\r\n position: \"relative\",\r\n height: \"fit-content\"\r\n },\r\n modalHeader: {\r\n borderBottom: \"none\",\r\n paddingTop: \"24px\",\r\n paddingRight: \"24px\",\r\n paddingBottom: \"0\",\r\n paddingLeft: \"24px\",\r\n minHeight: \"16.43px\"\r\n },\r\n modalTitle: {\r\n margin: \"0\",\r\n lineHeight: \"1.42857143\"\r\n },\r\n modalCloseButton: {\r\n color: grayColor[0],\r\n marginTop: \"-12px\",\r\n WebkitAppearance: \"none\",\r\n padding: \"0\",\r\n cursor: \"pointer\",\r\n background: \"0 0\",\r\n border: \"0\",\r\n fontSize: \"inherit\",\r\n opacity: \".9\",\r\n textShadow: \"none\",\r\n fontWeight: \"700\",\r\n lineHeight: \"1\",\r\n float: \"right\"\r\n },\r\n modalClose: {\r\n width: \"16px\",\r\n height: \"16px\"\r\n },\r\n modalBody: {\r\n paddingTop: \"24px\",\r\n paddingRight: \"24px\",\r\n paddingBottom: \"16px\",\r\n paddingLeft: \"24px\",\r\n position: \"relative\",\r\n overflow: \"visible\"\r\n },\r\n modalFooter: {\r\n padding: \"15px\",\r\n textAlign: \"right\",\r\n paddingTop: \"0\",\r\n margin: \"0\"\r\n },\r\n modalFooterCenter: {\r\n marginLeft: \"auto\",\r\n marginRight: \"auto\"\r\n },\r\n instructionNoticeModal: {\r\n marginBottom: \"25px\"\r\n },\r\n imageNoticeModal: {\r\n maxWidth: \"150px\"\r\n },\r\n modalSmall: {\r\n width: \"300px\"\r\n },\r\n modalSmallBody: {\r\n paddingTop: \"0\"\r\n },\r\n modalSmallFooterFirstButton: {\r\n margin: \"0\",\r\n paddingLeft: \"16px\",\r\n paddingRight: \"16px\",\r\n width: \"auto\"\r\n },\r\n modalSmallFooterSecondButton: {\r\n marginBottom: \"0\",\r\n marginLeft: \"5px\"\r\n }\r\n});\r\n\r\nexport default modalStyle;\r\n","import {\r\n defaultFont,\r\n grayColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\nimport modalStyle from \"assets/jss/material-dashboard-pro-react/modalStyle.js\";\r\n\r\nconst notificationsStyle = theme => ({\r\n cardTitle: {\r\n marginTop: \"0\",\r\n marginBottom: \"3px\",\r\n color: grayColor[2],\r\n fontSize: \"18px\"\r\n },\r\n cardHeader: {\r\n zIndex: \"3\"\r\n },\r\n cardSubtitle: {\r\n ...defaultFont,\r\n color: grayColor[0],\r\n fontSize: \"14px\",\r\n margin: \"0 0 10px\"\r\n },\r\n center: {\r\n textAlign: \"center\"\r\n },\r\n right: {\r\n textAlign: \"right\"\r\n },\r\n left: {\r\n textAlign: \"left\"\r\n },\r\n marginRight: {\r\n marginRight: \"5px\"\r\n },\r\n modalSectionTitle: {\r\n marginTop: \"30px\"\r\n },\r\n ...modalStyle(theme)\r\n});\r\n\r\nexport default notificationsStyle;\r\n","/*eslint-disable*/\r\nimport React from \"react\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Slide from \"@material-ui/core/Slide\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\n\r\n// @material-ui/icons\r\nimport AddAlert from \"@material-ui/icons/AddAlert\";\r\nimport Close from \"@material-ui/icons/Close\";\r\n\r\n// core components\r\nimport Heading from \"components/Heading/Heading.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport SnackbarContent from \"components/Snackbar/SnackbarContent.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Snackbar from \"components/Snackbar/Snackbar.js\";\r\nimport Instruction from \"components/Instruction/Instruction.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/notificationsStyle.js\";\r\n\r\nimport noticeModal1 from \"assets/img/card-1.jpeg\";\r\nimport noticeModal2 from \"assets/img/card-2.jpeg\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nconst Transition = React.forwardRef(function Transition(props, ref) {\r\n return ;\r\n});\r\n\r\nexport default function Notifications() {\r\n const classes = useStyles();\r\n const [tl, setTL] = React.useState(false);\r\n const [tc, setTC] = React.useState(false);\r\n const [tr, setTR] = React.useState(false);\r\n const [bl, setBL] = React.useState(false);\r\n const [bc, setBC] = React.useState(false);\r\n const [br, setBR] = React.useState(false);\r\n const [classicModal, setClassicModal] = React.useState(false);\r\n const [noticeModal, setNoticeModal] = React.useState(false);\r\n const [smallModal, setSmallModal] = React.useState(false);\r\n React.useEffect(() => {\r\n // Specify how to clean up after this effect:\r\n return function cleanup() {\r\n // to stop the warning of calling setState of unmounted component\r\n var id = window.setTimeout(null, 0);\r\n while (id--) {\r\n window.clearTimeout(id);\r\n }\r\n };\r\n });\r\n const showNotification = place => {\r\n switch (place) {\r\n case \"tl\":\r\n if (!tl) {\r\n setTL(true);\r\n setTimeout(function() {\r\n setTL(false);\r\n }, 6000);\r\n }\r\n break;\r\n case \"tc\":\r\n if (!tc) {\r\n setTC(true);\r\n setTimeout(function() {\r\n setTC(false);\r\n }, 6000);\r\n }\r\n break;\r\n case \"tr\":\r\n if (!tr) {\r\n setTR(true);\r\n setTimeout(function() {\r\n setTR(false);\r\n }, 6000);\r\n }\r\n break;\r\n case \"bl\":\r\n if (!bl) {\r\n setBL(true);\r\n setTimeout(function() {\r\n setBL(false);\r\n }, 6000);\r\n }\r\n break;\r\n case \"bc\":\r\n if (!bc) {\r\n setBC(true);\r\n setTimeout(function() {\r\n setBC(false);\r\n }, 6000);\r\n }\r\n break;\r\n case \"br\":\r\n if (!br) {\r\n setBR(true);\r\n setTimeout(function() {\r\n setBR(false);\r\n }, 6000);\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n };\r\n return (\r\n
\r\n \r\n Handcrafted by our friends from{\" \"}\r\n \r\n Material UI\r\n {\" \"}\r\n and styled by{\" \"}\r\n \r\n Creative Tim\r\n \r\n . Please checkout the{\" \"}\r\n \r\n full documentation\r\n \r\n .\r\n \r\n }\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n

Notifications Style

\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

Notification states

\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 Notifications Places\r\n

\r\n

\r\n Click to view notifications\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n showNotification(\"tl\")}\r\n >\r\n Top Left\r\n \r\n setTL(false)}\r\n close\r\n />\r\n \r\n \r\n showNotification(\"tc\")}\r\n >\r\n Top Center\r\n \r\n setTC(false)}\r\n close\r\n />\r\n \r\n \r\n showNotification(\"tr\")}\r\n >\r\n Top Right\r\n \r\n setTR(false)}\r\n close\r\n />\r\n \r\n \r\n \r\n \r\n showNotification(\"bl\")}\r\n >\r\n Bottom Left\r\n \r\n setBL(false)}\r\n close\r\n />\r\n \r\n \r\n showNotification(\"bc\")}\r\n >\r\n Bottom Center\r\n \r\n setBC(false)}\r\n close\r\n />\r\n \r\n \r\n showNotification(\"br\")}\r\n >\r\n Bottom Right\r\n \r\n setBR(false)}\r\n close\r\n />\r\n \r\n \r\n \r\n \r\n \r\n

Modal

\r\n
\r\n setClassicModal(true)}\r\n >\r\n Classic modal\r\n \r\n setClassicModal(false)}\r\n aria-labelledby=\"classic-modal-slide-title\"\r\n aria-describedby=\"classic-modal-slide-description\"\r\n >\r\n \r\n setClassicModal(false)}\r\n >\r\n \r\n \r\n

Modal title

\r\n \r\n \r\n

\r\n Far far away, behind the word mountains, far from the\r\n countries Vokalia and Consonantia, there live the\r\n blind texts. Separated they live in Bookmarksgrove\r\n right at the coast of the Semantics, a large language\r\n ocean. A small river named Duden flows by their place\r\n and supplies it with the necessary regelialia. It is a\r\n paradisematic country, in which roasted parts of\r\n sentences fly into your mouth. Even the all-powerful\r\n Pointing has no control about the blind texts it is an\r\n almost unorthographic life One day however a small\r\n line of blind text by the name of Lorem Ipsum decided\r\n to leave for the far World of Grammar.\r\n

\r\n \r\n \r\n \r\n setClassicModal(false)}\r\n color=\"danger\"\r\n simple\r\n >\r\n Close\r\n \r\n \r\n \r\n setNoticeModal(true)}\r\n >\r\n Notice Modal\r\n \r\n setNoticeModal(false)}\r\n aria-labelledby=\"notice-modal-slide-title\"\r\n aria-describedby=\"notice-modal-slide-description\"\r\n >\r\n \r\n setNoticeModal(false)}\r\n >\r\n \r\n \r\n

Notice Modal

\r\n \r\n \r\n \r\n The first step is to create an account at{\" \"}\r\n \r\n Creative Tim\r\n \r\n . You can choose a social network or go for the\r\n classic version, whatever works best for you.\r\n \r\n }\r\n image={noticeModal1}\r\n className={classes.instructionNoticeModal}\r\n imageClassName={classes.imageNoticeModal}\r\n />\r\n \r\n The first step is to create an account at{\" \"}\r\n \r\n Creative Tim\r\n \r\n . You can choose a social network or go for the\r\n classic version, whatever works best for you.\r\n \r\n }\r\n image={noticeModal2}\r\n className={classes.instructionNoticeModal}\r\n imageClassName={classes.imageNoticeModal}\r\n />\r\n

\r\n If you have more questions, don{\"'\"}t hesitate to\r\n contact us or send us a tweet @creativetim. We{\"'\"}\r\n re here to help!\r\n

\r\n \r\n \r\n setNoticeModal(false)}\r\n color=\"info\"\r\n round\r\n >\r\n Sounds Good\r\n \r\n \r\n \r\n setSmallModal(true)}\r\n >\r\n Small alert modal\r\n \r\n setSmallModal(false)}\r\n aria-labelledby=\"small-modal-slide-title\"\r\n aria-describedby=\"small-modal-slide-description\"\r\n >\r\n \r\n setSmallModal(false)}\r\n >\r\n \r\n \r\n \r\n \r\n
Are you sure you want to do this?
\r\n \r\n \r\n setSmallModal(false)}\r\n color=\"transparent\"\r\n className={classes.modalSmallFooterFirstButton}\r\n >\r\n Never Mind\r\n \r\n setSmallModal(false)}\r\n color=\"success\"\r\n simple\r\n className={\r\n classes.modalSmallFooterFirstButton +\r\n \" \" +\r\n classes.modalSmallFooterSecondButton\r\n }\r\n >\r\n Yes\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","import {\r\n roseColor,\r\n primaryColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n whiteColor,\r\n blackColor,\r\n grayColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst navPillsStyle = theme => ({\r\n root: {\r\n marginTop: \"20px\",\r\n paddingLeft: \"0\",\r\n marginBottom: \"0\",\r\n overflow: \"visible !important\"\r\n },\r\n flexContainer: {\r\n [theme.breakpoints.down(\"xs\")]: {\r\n display: \"flex\",\r\n flexWrap: \"wrap\"\r\n }\r\n },\r\n displayNone: {\r\n display: \"none !important\"\r\n },\r\n fixed: {\r\n overflow: \"visible !important\"\r\n },\r\n horizontalDisplay: {\r\n display: \"block\"\r\n },\r\n pills: {\r\n float: \"left\",\r\n position: \"relative\",\r\n display: \"block\",\r\n padding: \"10px 15px\",\r\n color: grayColor[6],\r\n height: \"auto\",\r\n opacity: \"1\",\r\n margin: \"0 5px\",\r\n fontSize: \"12px\",\r\n maxWidth: \"100%\",\r\n minWidth: \"100px\",\r\n minHeight: \"48px\",\r\n textAlign: \"center\",\r\n transition: \"all .3s\",\r\n fontWeight: \"500\",\r\n lineHeight: \"24px\",\r\n borderRadius: \"30px\",\r\n textTransform: \"uppercase\",\r\n letterSpacing: \"initial\"\r\n },\r\n pillsWithIcons: {\r\n borderRadius: \"4px\"\r\n },\r\n tabIcon: {\r\n width: \"30px\",\r\n height: \"30px\",\r\n display: \"block\",\r\n margin: \"15px 0 !important\"\r\n },\r\n horizontalPills: {\r\n width: \"100%\",\r\n float: \"none !important\",\r\n \"& + button\": {\r\n margin: \"10px 0\"\r\n }\r\n },\r\n labelContainer: {\r\n padding: \"0!important\",\r\n color: \"inherit\"\r\n },\r\n label: {\r\n lineHeight: \"24px\",\r\n textTransform: \"uppercase\",\r\n fontSize: \"12px\",\r\n fontWeight: \"500\",\r\n position: \"relative\",\r\n display: \"block\",\r\n color: \"inherit\"\r\n },\r\n contentWrapper: {\r\n marginTop: \"20px\"\r\n },\r\n primary: {\r\n \"&,&:hover\": {\r\n color: whiteColor,\r\n backgroundColor: primaryColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.4)\"\r\n }\r\n },\r\n info: {\r\n \"&,&:hover\": {\r\n color: whiteColor,\r\n backgroundColor: infoColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.4)\"\r\n }\r\n },\r\n success: {\r\n \"&,&:hover\": {\r\n color: whiteColor,\r\n backgroundColor: successColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.12)\"\r\n }\r\n },\r\n warning: {\r\n \"&,&:hover\": {\r\n color: whiteColor,\r\n backgroundColor: warningColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.4)\"\r\n }\r\n },\r\n danger: {\r\n \"&,&:hover\": {\r\n color: whiteColor,\r\n backgroundColor: dangerColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.4)\"\r\n }\r\n },\r\n rose: {\r\n \"&,&:hover\": {\r\n color: whiteColor,\r\n backgroundColor: roseColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.4)\"\r\n }\r\n },\r\n alignCenter: {\r\n alignItems: \"center\",\r\n justifyContent: \"center\"\r\n }\r\n});\r\n\r\nexport default navPillsStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\nimport SwipeableViews from \"react-swipeable-views\";\r\n\r\n// material-ui components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Tab from \"@material-ui/core/Tab\";\r\nimport Tabs from \"@material-ui/core/Tabs\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/navPillsStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function NavPills(props) {\r\n const [active, setActive] = React.useState(props.active);\r\n const handleChange = (event, active) => {\r\n setActive(active);\r\n };\r\n const handleChangeIndex = index => {\r\n setActive(index);\r\n };\r\n const classes = useStyles();\r\n const { tabs, direction, color, horizontal, alignCenter } = props;\r\n const flexContainerClasses = classNames({\r\n [classes.flexContainer]: true,\r\n [classes.horizontalDisplay]: horizontal !== undefined\r\n });\r\n const tabButtons = (\r\n \r\n {tabs.map((prop, key) => {\r\n var icon = {};\r\n if (prop.tabIcon !== undefined) {\r\n icon[\"icon\"] = ;\r\n }\r\n const pillsClasses = classNames({\r\n [classes.pills]: true,\r\n [classes.horizontalPills]: horizontal !== undefined,\r\n [classes.pillsWithIcons]: prop.tabIcon !== undefined\r\n });\r\n return (\r\n \r\n );\r\n })}\r\n \r\n );\r\n const tabContent = (\r\n
\r\n \r\n {tabs.map((prop, key) => {\r\n return (\r\n
\r\n {prop.tabContent}\r\n
\r\n );\r\n })}\r\n \r\n
\r\n );\r\n return horizontal !== undefined ? (\r\n \r\n {tabButtons}\r\n {tabContent}\r\n \r\n ) : (\r\n
\r\n {tabButtons}\r\n {tabContent}\r\n
\r\n );\r\n}\r\n\r\nNavPills.defaultProps = {\r\n active: 0,\r\n color: \"primary\"\r\n};\r\n\r\nNavPills.propTypes = {\r\n // index of the default active pill\r\n active: PropTypes.number,\r\n tabs: PropTypes.arrayOf(\r\n PropTypes.shape({\r\n tabButton: PropTypes.string,\r\n tabIcon: PropTypes.object,\r\n tabContent: PropTypes.node\r\n })\r\n ).isRequired,\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"warning\",\r\n \"danger\",\r\n \"success\",\r\n \"info\",\r\n \"rose\"\r\n ]),\r\n direction: PropTypes.string,\r\n horizontal: PropTypes.shape({\r\n tabsGrid: PropTypes.object,\r\n contentGrid: PropTypes.object\r\n }),\r\n alignCenter: PropTypes.bool\r\n};\r\n","import {\r\n primaryColor,\r\n grayColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst accordionStyle = theme => ({\r\n root: {\r\n flexGrow: 1,\r\n marginBottom: \"20px\"\r\n },\r\n expansionPanel: {\r\n boxShadow: \"none\",\r\n \"&:before\": {\r\n display: \"none !important\"\r\n }\r\n },\r\n expansionPanelExpanded: {\r\n margin: \"0 !important\"\r\n },\r\n expansionPanelSummary: {\r\n minHeight: \"auto !important\",\r\n backgroundColor: \"transparent\",\r\n borderBottom: \"1px solid \" + grayColor[5],\r\n padding: \"25px 10px 5px 0px\",\r\n borderTopLeftRadius: \"3px\",\r\n borderTopRightRadius: \"3px\",\r\n color: grayColor[2],\r\n \"&:hover\": {\r\n color: primaryColor[0]\r\n }\r\n },\r\n expansionPanelSummaryExpaned: {\r\n color: primaryColor[0],\r\n \"& $expansionPanelSummaryExpandIcon\": {\r\n [theme.breakpoints.up(\"md\")]: {\r\n top: \"auto !important\"\r\n },\r\n transform: \"rotate(180deg)\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n top: \"10px !important\"\r\n }\r\n }\r\n },\r\n expansionPanelSummaryContent: {\r\n margin: \"0 !important\"\r\n },\r\n expansionPanelSummaryExpandIcon: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n top: \"auto !important\"\r\n },\r\n transform: \"rotate(0deg)\",\r\n color: \"inherit\",\r\n position: \"absolute\",\r\n right: \"20px\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n top: \"10px !important\"\r\n }\r\n },\r\n expansionPanelSummaryExpandIconExpanded: {},\r\n title: {\r\n fontSize: \"15px\",\r\n fontWeight: \"bolder\",\r\n marginTop: \"0\",\r\n marginBottom: \"0\",\r\n color: \"inherit\"\r\n },\r\n expansionPanelDetails: {\r\n padding: \"15px 0px 5px\"\r\n }\r\n});\r\n\r\nexport default accordionStyle;\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport ExpansionPanel from \"@material-ui/core/ExpansionPanel\";\r\nimport ExpansionPanelSummary from \"@material-ui/core/ExpansionPanelSummary\";\r\nimport ExpansionPanelDetails from \"@material-ui/core/ExpansionPanelDetails\";\r\n\r\n// @material-ui/icons\r\nimport ExpandMore from \"@material-ui/icons/ExpandMore\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/accordionStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Accordion(props) {\r\n const [active, setActive] = React.useState(props.active);\r\n const handleChange = panel => (event, expanded) => {\r\n setActive(expanded ? panel : -1);\r\n };\r\n const classes = useStyles();\r\n const { collapses } = props;\r\n return (\r\n
\r\n {collapses.map((prop, key) => {\r\n return (\r\n \r\n }\r\n classes={{\r\n root: classes.expansionPanelSummary,\r\n expanded: classes.expansionPanelSummaryExpaned,\r\n content: classes.expansionPanelSummaryContent,\r\n expandIcon: classes.expansionPanelSummaryExpandIcon\r\n }}\r\n >\r\n

{prop.title}

\r\n \r\n \r\n {prop.content}\r\n \r\n \r\n );\r\n })}\r\n
\r\n );\r\n}\r\n\r\nAccordion.defaultProps = {\r\n active: -1\r\n};\r\n\r\nAccordion.propTypes = {\r\n // index of the default active collapse\r\n active: PropTypes.number,\r\n collapses: PropTypes.arrayOf(\r\n PropTypes.shape({\r\n title: PropTypes.string,\r\n content: PropTypes.node\r\n })\r\n ).isRequired\r\n};\r\n","import React from \"react\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// @material-ui/icons\r\nimport Dashboard from \"@material-ui/icons/Dashboard\";\r\nimport Schedule from \"@material-ui/icons/Schedule\";\r\nimport Info from \"@material-ui/icons/Info\";\r\nimport LocationOn from \"@material-ui/icons/LocationOn\";\r\nimport Gavel from \"@material-ui/icons/Gavel\";\r\nimport HelpOutline from \"@material-ui/icons/HelpOutline\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport NavPills from \"components/NavPills/NavPills.js\";\r\nimport Accordion from \"components/Accordion/Accordion.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\n\r\nimport { cardTitle } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst styles = {\r\n cardTitle,\r\n pageSubcategoriesTitle: {\r\n color: \"#3C4858\",\r\n textDecoration: \"none\",\r\n textAlign: \"center\"\r\n },\r\n cardCategory: {\r\n margin: \"0\",\r\n color: \"#999999\"\r\n }\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Panels() {\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n

\r\n Navigation Pills - Horizontal Tabs\r\n

\r\n
\r\n \r\n \r\n

\r\n Collaboratively administrate empowered markets via\r\n plug-and-play networks. Dynamically procrastinate B2C\r\n users after installed base benefits.\r\n

\r\n
\r\n

\r\n Dramatically visualize customer directed convergence\r\n without revolutionary ROI. Collaboratively\r\n administrate empowered markets via plug-and-play\r\n networks. Dynamically procrastinate B2C users after\r\n installed base benefits.\r\n

\r\n
\r\n

This is very nice.

\r\n \r\n )\r\n },\r\n {\r\n tabButton: \"Settings\",\r\n tabContent: (\r\n \r\n

\r\n Efficiently unleash cross-media information without\r\n cross-media value. Quickly maximize timely\r\n deliverables for real-time schemas.\r\n

\r\n
\r\n

\r\n Dramatically maintain clicks-and-mortar solutions\r\n without functional solutions.\r\n

\r\n
\r\n )\r\n },\r\n {\r\n tabButton: \"Options\",\r\n tabContent: (\r\n \r\n

\r\n Completely synergize resource taxing relationships via\r\n premier niche markets. Professionally cultivate\r\n one-to-one customer service with robust ideas.{\" \"}\r\n

\r\n
\r\n

\r\n Dynamically innovate resource-leveling customer\r\n service for state of the art customer service.\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 Navigation Pills - Vertical Tabs\r\n

\r\n
\r\n \r\n \r\n

\r\n Collaboratively administrate empowered markets via\r\n plug-and-play networks. Dynamically procrastinate B2C\r\n users after installed base benefits.\r\n

\r\n
\r\n

\r\n Dramatically visualize customer directed convergence\r\n without revolutionary ROI. Collaboratively\r\n administrate empowered markets via plug-and-play\r\n networks. Dynamically procrastinate B2C users after\r\n installed base benefits.\r\n

\r\n
\r\n

This is very nice.

\r\n \r\n )\r\n },\r\n {\r\n tabButton: \"Settings\",\r\n tabContent: (\r\n \r\n

\r\n Efficiently unleash cross-media information without\r\n cross-media value. Quickly maximize timely\r\n deliverables for real-time schemas.\r\n

\r\n
\r\n

\r\n Dramatically maintain clicks-and-mortar solutions\r\n without functional solutions.\r\n

\r\n
\r\n )\r\n },\r\n {\r\n tabButton: \"Options\",\r\n tabContent: (\r\n \r\n

\r\n Completely synergize resource taxing relationships via\r\n premier niche markets. Professionally cultivate\r\n one-to-one customer service with robust ideas.{\" \"}\r\n

\r\n
\r\n

\r\n Dynamically innovate resource-leveling customer\r\n service for state of the art customer service.\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

Collapsible Accordion

\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n

\r\n Navigation Pills Icons - Vertical Tabs\r\n

\r\n
\r\n \r\n \r\n

\r\n Collaboratively administrate empowered markets via\r\n plug-and-play networks. Dynamically procrastinate B2C\r\n users after installed base benefits.\r\n

\r\n
\r\n

\r\n Dramatically visualize customer directed convergence\r\n without revolutionary ROI. Collaboratively\r\n administrate empowered markets via plug-and-play\r\n networks. Dynamically procrastinate B2C users after\r\n installed base benefits.\r\n

\r\n
\r\n

\r\n Dramatically visualize customer directed convergence\r\n without revolutionary ROI. Collaboratively\r\n administrate empowered markets via plug-and-play\r\n networks. Dynamically procrastinate B2C users after\r\n installed base benefits.\r\n

\r\n \r\n )\r\n },\r\n {\r\n tabButton: \"Schedule\",\r\n tabIcon: Schedule,\r\n tabContent: (\r\n \r\n

\r\n Efficiently unleash cross-media information without\r\n cross-media value. Quickly maximize timely\r\n deliverables for real-time schemas.\r\n

\r\n
\r\n

\r\n Dramatically maintain clicks-and-mortar solutions\r\n without functional solutions. Dramatically visualize\r\n customer directed convergence without revolutionary\r\n ROI. Collaboratively administrate empowered markets\r\n via plug-and-play networks. Dynamically procrastinate\r\n B2C users after installed base benefits.\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

Page Subcategories

\r\n
\r\n \r\n \r\n

\r\n Description about product\r\n

\r\n

\r\n More information here\r\n

\r\n
\r\n \r\n Collaboratively administrate empowered markets via\r\n plug-and-play networks. Dynamically procrastinate B2C\r\n users after installed base benefits.\r\n
\r\n
\r\n Dramatically visualize customer directed convergence\r\n without revolutionary ROI.\r\n
\r\n \r\n )\r\n },\r\n {\r\n tabButton: \"Location\",\r\n tabIcon: LocationOn,\r\n tabContent: (\r\n \r\n \r\n

\r\n Location of the product\r\n

\r\n

\r\n More information here\r\n

\r\n
\r\n \r\n Efficiently unleash cross-media information without\r\n cross-media value. Quickly maximize timely deliverables\r\n for real-time schemas.\r\n
\r\n
\r\n Dramatically maintain clicks-and-mortar solutions without\r\n functional solutions.\r\n
\r\n
\r\n )\r\n },\r\n {\r\n tabButton: \"Legal Info\",\r\n tabIcon: Gavel,\r\n tabContent: (\r\n \r\n \r\n

\r\n Legal info of the product\r\n

\r\n

\r\n More information here\r\n

\r\n
\r\n \r\n Completely synergize resource taxing relationships via\r\n premier niche markets. Professionally cultivate one-to-one\r\n customer service with robust ideas.\r\n
\r\n
\r\n Dynamically innovate resource-leveling customer service\r\n for state of the art customer service.\r\n
\r\n
\r\n )\r\n },\r\n {\r\n tabButton: \"Help Center\",\r\n tabIcon: HelpOutline,\r\n tabContent: (\r\n \r\n \r\n

Help center

\r\n

\r\n More information here\r\n

\r\n
\r\n \r\n From the seamless transition of glass and metal to the\r\n streamlined profile, every detail was carefully considered\r\n to enhance your experience. So while its display is\r\n larger, the phone feels just right.\r\n
\r\n
\r\n Another Text. The first thing you notice when you hold the\r\n phone is how great it feels in your hand. The cover glass\r\n curves down around the sides to meet the anodized aluminum\r\n enclosure in a remarkable, simplified design.\r\n
\r\n
\r\n )\r\n }\r\n ]}\r\n />\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import {\r\n container,\r\n defaultFont,\r\n cardTitle,\r\n roseColor,\r\n whiteColor,\r\n grayColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst pricingPageStyle = theme => ({\r\n container: {\r\n ...container,\r\n zIndex: \"4\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n paddingBottom: \"100px\"\r\n }\r\n },\r\n title: {\r\n ...defaultFont,\r\n color: whiteColor,\r\n marginTop: \"5vh\",\r\n marginBottom: \"30px\",\r\n textAlign: \"center\"\r\n },\r\n description: {\r\n fontSize: \"18px\",\r\n color: whiteColor,\r\n textAlign: \"center\"\r\n },\r\n cardTitleWhite: {\r\n ...cardTitle,\r\n color: whiteColor + \" !important\"\r\n },\r\n cardCategory: {\r\n color: grayColor[0],\r\n marginTop: \"10px\"\r\n },\r\n cardCategoryWhite: {\r\n color: whiteColor,\r\n marginTop: \"10px\"\r\n },\r\n icon: {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.76)\",\r\n margin: \"10px auto 0\",\r\n width: \"130px\",\r\n height: \"130px\",\r\n border: \"1px solid \" + grayColor[11],\r\n borderRadius: \"50%\",\r\n lineHeight: \"174px\",\r\n \"& svg\": {\r\n width: \"55px\",\r\n height: \"55px\"\r\n },\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n width: \"55px\",\r\n fontSize: \"55px\"\r\n }\r\n },\r\n iconWhite: {\r\n color: whiteColor\r\n },\r\n iconRose: {\r\n color: roseColor[0]\r\n },\r\n marginTop30: {\r\n marginTop: \"30px\"\r\n }\r\n});\r\n\r\nexport default pricingPageStyle;\r\n","import React from \"react\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\n\r\n// @material-ui/icons\r\n// import Weekend from \"@material-ui/icons/Weekend\";\r\nimport Home from \"@material-ui/icons/Home\";\r\nimport Business from \"@material-ui/icons/Business\";\r\nimport AccountBalance from \"@material-ui/icons/AccountBalance\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/pricingPageStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function PricingPage() {\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n

Pick the best plan for you

\r\n
\r\n You have Free Unlimited Updates and Premium Support on each package.\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
Freelancer
\r\n
\r\n weekend\r\n
\r\n \r\n FREE\r\n \r\n

\r\n This is good if your company size is between 2 and 10 Persons.\r\n

\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
SMALL COMPANY
\r\n
\r\n \r\n
\r\n

\r\n $29\r\n

\r\n

\r\n This is good if your company size is between 2 and 10 Persons.\r\n

\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
MEDIUM COMPANY
\r\n
\r\n \r\n
\r\n \r\n $69\r\n \r\n

\r\n This is good if your company size is between 11 and 99 Persons.\r\n

\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
ENTERPRISE
\r\n
\r\n \r\n
\r\n \r\n $159\r\n \r\n

\r\n This is good if your company size is 99+ persons.\r\n

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import {\r\n primaryColor,\r\n warningColor,\r\n dangerColor,\r\n successColor,\r\n infoColor,\r\n roseColor,\r\n grayColor,\r\n whiteColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst badgeStyle = {\r\n badge: {\r\n borderRadius: \"12px\",\r\n padding: \"5px 12px\",\r\n textTransform: \"uppercase\",\r\n fontSize: \"10px\",\r\n fontWeight: \"700\",\r\n lineHeight: \"1\",\r\n color: whiteColor,\r\n textAlign: \"center\",\r\n verticalAlign: \"baseline\",\r\n display: \"inline-block\"\r\n },\r\n primary: {\r\n backgroundColor: primaryColor[0]\r\n },\r\n warning: {\r\n backgroundColor: warningColor[0]\r\n },\r\n danger: {\r\n backgroundColor: dangerColor[0]\r\n },\r\n success: {\r\n backgroundColor: successColor[0]\r\n },\r\n info: {\r\n backgroundColor: infoColor[0]\r\n },\r\n rose: {\r\n backgroundColor: roseColor[0]\r\n },\r\n gray: {\r\n backgroundColor: grayColor[0]\r\n }\r\n};\r\n\r\nexport default badgeStyle;\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/badgeStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Badge(props) {\r\n const { color, children } = props;\r\n const classes = useStyles();\r\n return (\r\n {children}\r\n );\r\n}\r\n\r\nBadge.propTypes = {\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"warning\",\r\n \"danger\",\r\n \"success\",\r\n \"info\",\r\n \"rose\",\r\n \"gray\"\r\n ]),\r\n children: PropTypes.node\r\n};\r\n","import {\r\n infoColor,\r\n primaryColor,\r\n successColor,\r\n dangerColor,\r\n warningColor,\r\n whiteColor,\r\n blackColor,\r\n grayColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\nconst timelineStyle = theme => ({\r\n timeline: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n \"&:before\": {\r\n left: \"5% !important\"\r\n }\r\n },\r\n listStyle: \"none\",\r\n padding: \"20px 0 20px\",\r\n position: \"relative\",\r\n marginTop: \"30px\",\r\n \"&:before\": {\r\n top: \"50px\",\r\n bottom: \"0\",\r\n position: \"absolute\",\r\n content: '\" \"',\r\n width: \"3px\",\r\n backgroundColor: grayColor[11],\r\n left: \"50%\",\r\n marginLeft: \"-1px\"\r\n }\r\n },\r\n timelineSimple: {\r\n marginTop: \"30px\",\r\n padding: \"0 0 20px\",\r\n \"&:before\": {\r\n left: \"5%\"\r\n }\r\n },\r\n item: {\r\n marginBottom: \"20px\",\r\n position: \"relative\",\r\n \"&:before,&:after\": {\r\n content: '\" \"',\r\n display: \"table\"\r\n },\r\n \"&:after\": {\r\n clear: \"both\"\r\n }\r\n },\r\n timelineBadge: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n left: \"5% !important\"\r\n },\r\n color: whiteColor,\r\n width: \"50px\",\r\n height: \"50px\",\r\n lineHeight: \"51px\",\r\n fontSize: \"1.4em\",\r\n textAlign: \"center\",\r\n position: \"absolute\",\r\n top: \"16px\",\r\n left: \"50%\",\r\n marginLeft: \"-24px\",\r\n zIndex: \"100\",\r\n borderTopRightRadius: \"50%\",\r\n borderTopLeftRadius: \"50%\",\r\n borderBottomRightRadius: \"50%\",\r\n borderBottomLeftRadius: \"50%\"\r\n },\r\n timelineSimpleBadge: {\r\n left: \"5%\"\r\n },\r\n info: {\r\n backgroundColor: infoColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.4)\"\r\n },\r\n success: {\r\n backgroundColor: successColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.4)\"\r\n },\r\n danger: {\r\n backgroundColor: dangerColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.4)\"\r\n },\r\n warning: {\r\n backgroundColor: warningColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.4)\"\r\n },\r\n primary: {\r\n backgroundColor: primaryColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.4)\"\r\n },\r\n badgeIcon: {\r\n width: \"24px\",\r\n height: \"51px\"\r\n },\r\n timelinePanel: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n float: \"right !important\",\r\n width: \"86% !important\",\r\n \"&:before\": {\r\n borderLeftWidth: \"0 !important\",\r\n borderRightWidth: \"15px !important\",\r\n left: \"-15px !important\",\r\n right: \"auto !important\"\r\n },\r\n \"&:after\": {\r\n borderLeftWidth: \"0 !important\",\r\n borderRightWidth: \"14px !important\",\r\n left: \"-14px !important\",\r\n right: \"auto !important\"\r\n }\r\n },\r\n width: \"45%\",\r\n float: \"left\",\r\n padding: \"20px\",\r\n marginBottom: \"20px\",\r\n position: \"relative\",\r\n boxShadow: \"0 1px 4px 0 rgba(\" + hexToRgb(blackColor) + \", 0.14)\",\r\n borderRadius: \"6px\",\r\n color: \"rgba(\" + hexToRgb(blackColor) + \", 0.87)\",\r\n background: whiteColor,\r\n \"&:before\": {\r\n position: \"absolute\",\r\n top: \"26px\",\r\n right: \"-15px\",\r\n display: \"inline-block\",\r\n borderTop: \"15px solid transparent\",\r\n borderLeft: \"15px solid \" + grayColor[10],\r\n borderRight: \"0 solid \" + grayColor[10],\r\n borderBottom: \"15px solid transparent\",\r\n content: '\" \"'\r\n },\r\n \"&:after\": {\r\n position: \"absolute\",\r\n top: \"27px\",\r\n right: \"-14px\",\r\n display: \"inline-block\",\r\n borderTop: \"14px solid transparent\",\r\n borderLeft: \"14px solid \" + whiteColor,\r\n borderRight: \"0 solid \" + whiteColor,\r\n borderBottom: \"14px solid transparent\",\r\n content: '\" \"'\r\n }\r\n },\r\n timelineSimplePanel: {\r\n width: \"86%\"\r\n },\r\n timelinePanelInverted: {\r\n [theme.breakpoints.up(\"sm\")]: {\r\n float: \"right\",\r\n backgroundColor: whiteColor,\r\n \"&:before\": {\r\n borderLeftWidth: \"0\",\r\n borderRightWidth: \"15px\",\r\n left: \"-15px\",\r\n right: \"auto\"\r\n },\r\n \"&:after\": {\r\n borderLeftWidth: \"0\",\r\n borderRightWidth: \"14px\",\r\n left: \"-14px\",\r\n right: \"auto\"\r\n }\r\n }\r\n },\r\n timelineHeading: {\r\n marginBottom: \"15px\"\r\n },\r\n timelineBody: {\r\n fontSize: \"14px\",\r\n lineHeight: \"21px\"\r\n },\r\n timelineFooter: {\r\n zIndex: \"1000\",\r\n position: \"relative\",\r\n float: \"left\"\r\n },\r\n footerTitle: {\r\n color: grayColor[7],\r\n fontWeight: \"400\",\r\n margin: \"10px 0px 0px\"\r\n },\r\n footerLine: {\r\n marginTop: \"10px\",\r\n marginBottom: \"5px\"\r\n }\r\n});\r\n\r\nexport default timelineStyle;\r\n","import React from \"react\";\r\nimport cx from \"classnames\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// core components\r\nimport Badge from \"components/Badge/Badge.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/timelineStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Timeline(props) {\r\n const classes = useStyles();\r\n const { stories, simple } = props;\r\n const timelineClass =\r\n classes.timeline +\r\n \" \" +\r\n cx({\r\n [classes.timelineSimple]: simple\r\n });\r\n return (\r\n
    \r\n {stories.map((prop, key) => {\r\n const panelClasses =\r\n classes.timelinePanel +\r\n \" \" +\r\n cx({\r\n [classes.timelinePanelInverted]: prop.inverted || simple,\r\n [classes.timelineSimplePanel]: simple\r\n });\r\n const timelineBadgeClasses =\r\n classes.timelineBadge +\r\n \" \" +\r\n classes[prop.badgeColor] +\r\n \" \" +\r\n cx({\r\n [classes.timelineSimpleBadge]: simple\r\n });\r\n return (\r\n
  • \r\n {prop.badgeIcon ? (\r\n
    \r\n \r\n
    \r\n ) : null}\r\n
    \r\n {prop.title ? (\r\n
    \r\n {prop.title}\r\n
    \r\n ) : null}\r\n
    {prop.body}
    \r\n {prop.footerTitle ? (\r\n
    {prop.footerTitle}
    \r\n ) : null}\r\n {prop.footer ?
    : null}\r\n {prop.footer ? (\r\n
    {prop.footer}
    \r\n ) : null}\r\n
    \r\n
  • \r\n );\r\n })}\r\n
\r\n );\r\n}\r\n\r\nTimeline.propTypes = {\r\n stories: PropTypes.arrayOf(PropTypes.object).isRequired,\r\n simple: PropTypes.bool\r\n};\r\n","import {\r\n whiteColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst customTabsStyle = {\r\n cardTitle: {\r\n float: \"left\",\r\n padding: \"10px 10px 10px 0px\",\r\n lineHeight: \"24px\"\r\n },\r\n cardTitleRTL: {\r\n float: \"right\",\r\n padding: \"10px 0px 10px 10px !important\"\r\n },\r\n displayNone: {\r\n display: \"none !important\"\r\n },\r\n tabsRoot: {\r\n minHeight: \"unset !important\",\r\n \"& $tabRootButton\": {\r\n fontSize: \"0.875rem\"\r\n }\r\n },\r\n tabRootButton: {\r\n minHeight: \"unset !important\",\r\n minWidth: \"unset !important\",\r\n width: \"unset !important\",\r\n height: \"unset !important\",\r\n maxWidth: \"unset !important\",\r\n maxHeight: \"unset !important\",\r\n padding: \"10px 15px\",\r\n borderRadius: \"3px\",\r\n lineHeight: \"24px\",\r\n border: \"0 !important\",\r\n color: whiteColor + \" !important\",\r\n marginLeft: \"4px\",\r\n \"&:last-child\": {\r\n marginLeft: \"0px\"\r\n }\r\n },\r\n tabLabelContainer: {\r\n padding: \"0px\"\r\n },\r\n tabLabel: {\r\n fontWeight: \"500\",\r\n fontSize: \"12px\"\r\n },\r\n tabSelected: {\r\n backgroundColor: \"rgba(\" + hexToRgb(whiteColor) + \", 0.2)\",\r\n transition: \"0.2s background-color 0.1s\"\r\n },\r\n tabWrapper: {\r\n display: \"inline-block\",\r\n minHeight: \"unset !important\",\r\n minWidth: \"unset !important\",\r\n width: \"unset !important\",\r\n height: \"unset !important\",\r\n maxWidth: \"unset !important\",\r\n maxHeight: \"unset !important\",\r\n fontSize: \"12px\",\r\n lineHeight: \"24px\",\r\n fontWeight: \"500\",\r\n \"& > svg,& > .fab,& > .fas,& > .far,& > .fal,& > .material-icons\": {\r\n verticalAlign: \"middle\",\r\n margin: \"-1px 5px 0 0 !important\"\r\n }\r\n }\r\n};\r\n\r\nexport default customTabsStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n\r\n// material-ui components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Tabs from \"@material-ui/core/Tabs\";\r\nimport Tab from \"@material-ui/core/Tab\";\r\n// core components\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/customTabsStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CustomTabs(props) {\r\n const [value, setValue] = React.useState(props.value);\r\n const handleChange = (event, value) => {\r\n setValue(value);\r\n };\r\n const classes = useStyles();\r\n const { headerColor, plainTabs, tabs, title, rtlActive } = props;\r\n const cardTitle = classNames({\r\n [classes.cardTitle]: true,\r\n [classes.cardTitleRTL]: rtlActive\r\n });\r\n return (\r\n \r\n \r\n {title !== undefined ?
{title}
: null}\r\n \r\n {tabs.map((prop, key) => {\r\n var icon = {};\r\n if (prop.tabIcon) {\r\n icon = {\r\n icon: \r\n };\r\n }\r\n return (\r\n \r\n );\r\n })}\r\n \r\n
\r\n \r\n {tabs.map((prop, key) => {\r\n if (key === value) {\r\n return
{prop.tabContent}
;\r\n }\r\n return null;\r\n })}\r\n
\r\n
\r\n );\r\n}\r\n\r\nCustomTabs.defaultProps = {\r\n value: 0\r\n};\r\n\r\nCustomTabs.propTypes = {\r\n // the default opened tab - index starts at 0\r\n value: PropTypes.number,\r\n // function for changing the value\r\n // note, if you pass this function,\r\n // the default function that changes the tabs will no longer work,\r\n // so you need to create the changing functionality as well\r\n changeValue: PropTypes.func,\r\n headerColor: PropTypes.oneOf([\r\n \"warning\",\r\n \"success\",\r\n \"danger\",\r\n \"info\",\r\n \"primary\",\r\n \"rose\"\r\n ]),\r\n title: PropTypes.string,\r\n tabs: PropTypes.arrayOf(\r\n PropTypes.shape({\r\n tabName: PropTypes.string.isRequired,\r\n tabIcon: PropTypes.object,\r\n tabContent: PropTypes.node.isRequired\r\n })\r\n ),\r\n rtlActive: PropTypes.bool,\r\n plainTabs: PropTypes.bool\r\n};\r\n","import {\r\n defaultFont,\r\n primaryColor,\r\n dangerColor,\r\n grayColor,\r\n tooltip\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\nimport customCheckboxRadioSwitch from \"assets/jss/material-dashboard-pro-react/customCheckboxRadioSwitch.js\";\r\n\r\nconst tasksStyle = {\r\n ...customCheckboxRadioSwitch,\r\n table: {\r\n marginBottom: \"0\"\r\n },\r\n tableRow: {\r\n position: \"relative\",\r\n borderBottom: \"1px solid \" + grayColor[5]\r\n },\r\n tableActions: {\r\n border: \"none\",\r\n padding: \"12px 8px !important\",\r\n verticalAlign: \"middle\"\r\n },\r\n tableCell: {\r\n ...defaultFont,\r\n padding: \"0\",\r\n verticalAlign: \"middle\",\r\n border: \"none\",\r\n lineHeight: \"1.42857143\",\r\n fontSize: \"14px\"\r\n },\r\n tableActionButton: {\r\n width: \"27px\",\r\n height: \"27px\",\r\n padding: \"0\"\r\n },\r\n tableActionButtonIcon: {\r\n width: \"17px\",\r\n height: \"17px\"\r\n },\r\n edit: {\r\n backgroundColor: \"transparent\",\r\n color: primaryColor[0],\r\n boxShadow: \"none\"\r\n },\r\n close: {\r\n backgroundColor: \"transparent\",\r\n color: dangerColor[0],\r\n boxShadow: \"none\"\r\n },\r\n tooltip\r\n};\r\nexport default tasksStyle;\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport classnames from \"classnames\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport Table from \"@material-ui/core/Table\";\r\nimport TableRow from \"@material-ui/core/TableRow\";\r\nimport TableBody from \"@material-ui/core/TableBody\";\r\nimport TableCell from \"@material-ui/core/TableCell\";\r\n// @material-ui/icons\r\nimport Edit from \"@material-ui/icons/Edit\";\r\nimport Close from \"@material-ui/icons/Close\";\r\nimport Check from \"@material-ui/icons/Check\";\r\n// core components\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/tasksStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Tasks(props) {\r\n const classes = useStyles();\r\n const [checked, setChecked] = React.useState([...props.checkedIndexes]);\r\n const handleToggle = value => {\r\n const currentIndex = checked.indexOf(value);\r\n const newChecked = [...checked];\r\n if (currentIndex === -1) {\r\n newChecked.push(value);\r\n } else {\r\n newChecked.splice(currentIndex, 1);\r\n }\r\n setChecked(newChecked);\r\n };\r\n const { tasksIndexes, tasks, rtlActive } = props;\r\n const tableCellClasses = classnames(classes.tableCell, {\r\n [classes.tableCellRTL]: rtlActive\r\n });\r\n return (\r\n \r\n \r\n {tasksIndexes.map(value => (\r\n \r\n \r\n handleToggle(value)}\r\n checkedIcon={}\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.root\r\n }}\r\n />\r\n \r\n {tasks[value]}\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\nTasks.propTypes = {\r\n tasksIndexes: PropTypes.arrayOf(PropTypes.number),\r\n tasks: PropTypes.arrayOf(PropTypes.node),\r\n rtlActive: PropTypes.bool,\r\n checkedIndexes: PropTypes.array\r\n};\r\n","import {\r\n warningCardHeader,\r\n successCardHeader,\r\n dangerCardHeader,\r\n infoCardHeader,\r\n primaryCardHeader,\r\n roseCardHeader,\r\n grayColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst cardTextStyle = {\r\n cardText: {\r\n float: \"none\",\r\n display: \"inline-block\",\r\n marginRight: \"0\",\r\n borderRadius: \"3px\",\r\n backgroundColor: grayColor[0],\r\n padding: \"15px\",\r\n marginTop: \"-20px\"\r\n },\r\n warningCardHeader,\r\n successCardHeader,\r\n dangerCardHeader,\r\n infoCardHeader,\r\n primaryCardHeader,\r\n roseCardHeader\r\n};\r\n\r\nexport default cardTextStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\n\r\n// core components\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/cardTextStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CardText(props) {\r\n const classes = useStyles();\r\n const { className, children, color, ...rest } = props;\r\n const cardTextClasses = classNames({\r\n [classes.cardText]: true,\r\n [classes[color + \"CardHeader\"]]: color,\r\n [className]: className !== undefined\r\n });\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nCardText.propTypes = {\r\n className: PropTypes.string,\r\n color: PropTypes.oneOf([\r\n \"warning\",\r\n \"success\",\r\n \"danger\",\r\n \"info\",\r\n \"primary\",\r\n \"rose\"\r\n ]),\r\n children: PropTypes.node\r\n};\r\n","import React from \"react\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\n// @material-ui/icons\r\n// import Weekend from \"@material-ui/icons/Weekend\";\r\nimport Home from \"@material-ui/icons/Home\";\r\nimport BugReport from \"@material-ui/icons/BugReport\";\r\nimport Code from \"@material-ui/icons/Code\";\r\nimport Cloud from \"@material-ui/icons/Cloud\";\r\nimport FormatQuote from \"@material-ui/icons/FormatQuote\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport Timeline from \"components/Timeline/Timeline.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport CustomTabs from \"components/CustomTabs/CustomTabs.js\";\r\nimport Tasks from \"components/Tasks/Tasks.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport CardAvatar from \"components/Card/CardAvatar.js\";\r\nimport CardText from \"components/Card/CardText.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardFooter from \"components/Card/CardFooter.js\";\r\n\r\nimport {\r\n rtlStories,\r\n rtlBugs,\r\n rtlWebsite,\r\n rtlServer\r\n} from \"variables/general.js\";\r\n\r\nimport image from \"assets/img/faces/card-profile1-square.jpg\";\r\n\r\nimport {\r\n cardTitle,\r\n roseColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst styles = {\r\n cardTitle,\r\n cardTitleWhite: {\r\n ...cardTitle,\r\n color: \"#FFFFFF\",\r\n marginTop: \"0\"\r\n },\r\n cardCategoryWhite: {\r\n margin: \"0\",\r\n color: \"rgba(255, 255, 255, 0.8)\",\r\n fontSize: \".875rem\"\r\n },\r\n cardCategory: {\r\n color: \"#999999\",\r\n marginTop: \"10px\"\r\n },\r\n icon: {\r\n color: \"#333333\",\r\n margin: \"10px auto 0\",\r\n width: \"130px\",\r\n height: \"130px\",\r\n border: \"1px solid #E5E5E5\",\r\n borderRadius: \"50%\",\r\n lineHeight: \"174px\",\r\n \"& svg\": {\r\n width: \"55px\",\r\n height: \"55px\"\r\n },\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n width: \"55px\",\r\n fontSize: \"55px\"\r\n }\r\n },\r\n iconRose: {\r\n color: roseColor\r\n },\r\n marginTop30: {\r\n marginTop: \"30px\"\r\n },\r\n testimonialIcon: {\r\n marginTop: \"30px\",\r\n \"& svg\": {\r\n width: \"40px\",\r\n height: \"40px\"\r\n }\r\n },\r\n cardTestimonialDescription: {\r\n fontStyle: \"italic\",\r\n color: \"#999999\"\r\n }\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function RTLSupport() {\r\n const classes = useStyles();\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
\r\n \r\n \r\n )\r\n },\r\n {\r\n tabName: \"السفن\",\r\n tabIcon: Code,\r\n tabContent: (\r\n \r\n )\r\n },\r\n {\r\n tabName: \"فصل.\",\r\n tabIcon: Cloud,\r\n tabContent: (\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 $29\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 weekend\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\n
أليك طومسون@
\r\n \r\n e.preventDefault()}>\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","/*eslint-disable*/\r\nimport React from \"react\";\r\nimport {\r\n useTable,\r\n useFilters,\r\n useAsyncDebounce,\r\n useSortBy,\r\n usePagination\r\n} from \"react-table\";\r\nimport classnames from \"classnames\";\r\n// A great library for fuzzy filtering/sorting items\r\nimport matchSorter from \"match-sorter\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport Switch from \"@material-ui/core/Switch\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\n// core components\r\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/customSelectStyle.js\";\r\n\r\nconst newStyles = {\r\n ...styles,\r\n formControlMargins: {\r\n margin: \"3px 0 !important\"\r\n },\r\n gridContainer: {\r\n justifyContent: \"center\"\r\n }\r\n};\r\n\r\nconst useStyles = makeStyles(newStyles);\r\n\r\n// Define a default UI for filtering\r\nfunction DefaultColumnFilter({\r\n column: { filterValue, preFilteredRows, setFilter }\r\n}) {\r\n const count = preFilteredRows.length;\r\n\r\n return (\r\n {\r\n setFilter(e.target.value || undefined); // Set undefined to remove the filter entirely\r\n },\r\n placeholder: `Search ${count} records...`\r\n }}\r\n />\r\n );\r\n}\r\n\r\nfunction fuzzyTextFilterFn(rows, id, filterValue) {\r\n return matchSorter(rows, filterValue, { keys: [row => row.values[id]] });\r\n}\r\n\r\n// Let the table remove the filter if the string is empty\r\nfuzzyTextFilterFn.autoRemove = val => !val;\r\n\r\n// Our table component\r\nfunction Table({ columns, data }) {\r\n const [numberOfRows, setNumberOfRows] = React.useState(10);\r\n const [pageSelect, handlePageSelect] = React.useState(0);\r\n const classes = useStyles();\r\n const filterTypes = React.useMemo(\r\n () => ({\r\n // Add a new fuzzyTextFilterFn filter type.\r\n fuzzyText: fuzzyTextFilterFn,\r\n // Or, override the default text filter to use\r\n // \"startWith\"\r\n text: (rows, id, filterValue) => {\r\n return rows.filter(row => {\r\n const rowValue = row.values[id];\r\n return rowValue !== undefined\r\n ? String(rowValue)\r\n .toLowerCase()\r\n .startsWith(String(filterValue).toLowerCase())\r\n : true;\r\n });\r\n }\r\n }),\r\n []\r\n );\r\n\r\n const defaultColumn = React.useMemo(\r\n () => ({\r\n // Let's set up our default Filter UI\r\n Filter: DefaultColumnFilter\r\n }),\r\n []\r\n );\r\n\r\n const {\r\n getTableProps,\r\n getTableBodyProps,\r\n headerGroups,\r\n page,\r\n prepareRow,\r\n state,\r\n visibleColumns,\r\n nextPage,\r\n pageOptions,\r\n pageCount,\r\n previousPage,\r\n canPreviousPage,\r\n canNextPage,\r\n setPageSize,\r\n gotoPage\r\n } = useTable(\r\n {\r\n columns,\r\n data,\r\n defaultColumn, // Be sure to pass the defaultColumn option\r\n filterTypes,\r\n initialState: { pageSize: 10, pageIndex: 0 }\r\n },\r\n useFilters, // useFilters!\r\n useSortBy,\r\n usePagination\r\n );\r\n\r\n // We don't want to render all of the rows for this example, so cap\r\n // it for this use case\r\n // const firstPageRows = rows.slice(0, 10);\r\n let pageSelectData = Array.apply(null, Array(pageOptions.length)).map(\r\n function() {}\r\n );\r\n let numberOfRowsData = [5, 10, 20, 25, 50, 100];\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n
\r\n previousPage()}\r\n disabled={!canPreviousPage}\r\n className=\"-btn\"\r\n >\r\n Previous\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {\r\n gotoPage(event.target.value);\r\n handlePageSelect(event.target.value);\r\n }}\r\n inputProps={{\r\n name: \"pageSelect\",\r\n id: \"page-select\"\r\n }}\r\n >\r\n {pageSelectData.map((prop, key) => {\r\n return (\r\n \r\n Page {key + 1}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n {\r\n setPageSize(event.target.value);\r\n setNumberOfRows(event.target.value);\r\n }}\r\n inputProps={{\r\n name: \"numberOfRows\",\r\n id: \"number-of-rows\"\r\n }}\r\n >\r\n {numberOfRowsData.map(prop => {\r\n return (\r\n \r\n {prop} rows\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n nextPage()}\r\n disabled={!canNextPage}\r\n className=\"-btn\"\r\n >\r\n Next\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {headerGroups.map(headerGroup => (\r\n \r\n {headerGroup.headers.map((column, key) => (\r\n \r\n
\r\n {column.render(\"Header\")}\r\n
\r\n {/* Render the columns filter UI */}\r\n
\r\n {headerGroup.headers.length - 1 === key\r\n ? null\r\n : column.canFilter\r\n ? column.render(\"Filter\")\r\n : null}\r\n
\r\n \r\n ))}\r\n
\r\n ))}\r\n \r\n \r\n {page.map((row, i) => {\r\n prepareRow(row);\r\n return (\r\n \r\n {row.cells.map(cell => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n );\r\n })}\r\n \r\n
\r\n {cell.render(\"Cell\")}\r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\n// Define a custom filter filter function!\r\nfunction filterGreaterThan(rows, id, filterValue) {\r\n return rows.filter(row => {\r\n const rowValue = row.values[id];\r\n return rowValue >= filterValue;\r\n });\r\n}\r\n\r\n// This is an autoRemove method on the filter function that\r\n// when given the new filter value and returns true, the filter\r\n// will be automatically removed. Normally this is just an undefined\r\n// check, but here, we want to remove the filter if it's not a number\r\nfilterGreaterThan.autoRemove = val => typeof val !== \"number\";\r\n\r\nexport default Table;\r\n","import React from \"react\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\nimport Dvr from \"@material-ui/icons/Dvr\";\r\nimport Favorite from \"@material-ui/icons/Favorite\";\r\nimport Close from \"@material-ui/icons/Close\";\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport ReactTable from \"components/ReactTable/ReactTable.js\";\r\n\r\nimport { dataTable } from \"variables/general.js\";\r\n\r\nimport { cardTitle } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst styles = {\r\n cardIconTitle: {\r\n ...cardTitle,\r\n marginTop: \"15px\",\r\n marginBottom: \"0px\"\r\n }\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function ReactTables() {\r\n const [data, setData] = React.useState(\r\n dataTable.dataRows.map((prop, key) => {\r\n return {\r\n id: key,\r\n name: prop[0],\r\n position: prop[1],\r\n office: prop[2],\r\n age: prop[3],\r\n actions: (\r\n // we've added some custom button actions\r\n
\r\n {/* use this button to add a like kind of action */}\r\n {\r\n let obj = data.find(o => o.id === key);\r\n alert(\r\n \"You've clicked LIKE button on \\n{ \\nName: \" +\r\n obj.name +\r\n \", \\nposition: \" +\r\n obj.position +\r\n \", \\noffice: \" +\r\n obj.office +\r\n \", \\nage: \" +\r\n obj.age +\r\n \"\\n}.\"\r\n );\r\n }}\r\n color=\"info\"\r\n className=\"like\"\r\n >\r\n \r\n {\" \"}\r\n {/* use this button to add a edit kind of action */}\r\n {\r\n let obj = data.find(o => o.id === key);\r\n alert(\r\n \"You've clicked EDIT button on \\n{ \\nName: \" +\r\n obj.name +\r\n \", \\nposition: \" +\r\n obj.position +\r\n \", \\noffice: \" +\r\n obj.office +\r\n \", \\nage: \" +\r\n obj.age +\r\n \"\\n}.\"\r\n );\r\n }}\r\n color=\"warning\"\r\n className=\"edit\"\r\n >\r\n \r\n {\" \"}\r\n {/* use this button to remove the data row */}\r\n {\r\n var newData = data;\r\n newData.find((o, i) => {\r\n if (o.id === key) {\r\n // here you should add some custom code so you can delete the data\r\n // from this component and from your server as well\r\n newData.splice(i, 1);\r\n return true;\r\n }\r\n return false;\r\n });\r\n setData([...newData]);\r\n }}\r\n color=\"danger\"\r\n className=\"remove\"\r\n >\r\n \r\n {\" \"}\r\n
\r\n )\r\n };\r\n })\r\n );\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

React Table

\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import {\r\n primaryColor,\r\n warningColor,\r\n dangerColor,\r\n successColor,\r\n infoColor,\r\n roseColor,\r\n grayColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst infoStyle = {\r\n infoArea: {\r\n maxWidth: \"360px\",\r\n margin: \"0 auto\",\r\n padding: \"0px\"\r\n },\r\n iconWrapper: {\r\n float: \"left\",\r\n marginTop: \"24px\",\r\n marginRight: \"10px\"\r\n },\r\n primary: {\r\n color: primaryColor[0]\r\n },\r\n warning: {\r\n color: warningColor[0]\r\n },\r\n danger: {\r\n color: dangerColor[0]\r\n },\r\n success: {\r\n color: successColor[0]\r\n },\r\n info: {\r\n color: infoColor[0]\r\n },\r\n rose: {\r\n color: roseColor[0]\r\n },\r\n gray: {\r\n color: grayColor[0]\r\n },\r\n icon: {\r\n width: \"36px\",\r\n height: \"36px\"\r\n },\r\n descriptionWrapper: {\r\n color: grayColor[0],\r\n overflow: \"hidden\"\r\n },\r\n title: {\r\n color: grayColor[2],\r\n margin: \"30px 0 15px\",\r\n textDecoration: \"none\",\r\n fontSize: \"18px\"\r\n },\r\n description: {\r\n color: grayColor[0],\r\n overflow: \"hidden\",\r\n marginTop: \"0px\",\r\n fontSize: \"14px\"\r\n }\r\n};\r\n\r\nexport default infoStyle;\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/infoStyle\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function InfoArea(props) {\r\n const classes = useStyles();\r\n const { title, description, iconColor } = props;\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{title}

\r\n

{description}

\r\n
\r\n
\r\n );\r\n}\r\n\r\nInfoArea.defaultProps = {\r\n iconColor: \"gray\"\r\n};\r\n\r\nInfoArea.propTypes = {\r\n icon: PropTypes.object.isRequired,\r\n title: PropTypes.string.isRequired,\r\n description: PropTypes.string.isRequired,\r\n iconColor: PropTypes.oneOf([\r\n \"primary\",\r\n \"warning\",\r\n \"danger\",\r\n \"success\",\r\n \"info\",\r\n \"rose\",\r\n \"gray\"\r\n ])\r\n};\r\n","import {\r\n container,\r\n cardTitle,\r\n blackColor,\r\n hexToRgb,\r\n grayColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nimport customCheckboxRadioSwitch from \"assets/jss/material-dashboard-pro-react/customCheckboxRadioSwitch.js\";\r\n\r\nconst registerPageStyle = {\r\n ...customCheckboxRadioSwitch,\r\n cardTitle: {\r\n ...cardTitle,\r\n textAlign: \"center\"\r\n },\r\n container: {\r\n ...container,\r\n position: \"relative\",\r\n zIndex: \"3\"\r\n // paddingTop: \"23vh\"\r\n },\r\n cardSignup: {\r\n borderRadius: \"6px\",\r\n boxShadow:\r\n \"0 16px 24px 2px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 6px 30px 5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n marginBottom: \"100px\",\r\n padding: \"40px 0px\",\r\n marginTop: \"15vh\"\r\n },\r\n center: {\r\n textAlign: \"center\"\r\n },\r\n right: {\r\n textAlign: \"right\"\r\n },\r\n left: {\r\n textAlign: \"left\"\r\n },\r\n form: {\r\n padding: \"0 20px\",\r\n position: \"relative\"\r\n },\r\n socialTitle: {\r\n fontSize: \"18px\"\r\n },\r\n inputAdornment: {\r\n marginRight: \"18px\",\r\n position: \"relative\"\r\n },\r\n inputAdornmentIcon: {\r\n color: grayColor[6]\r\n },\r\n customFormControlClasses: {\r\n margin: \"0 12px\"\r\n },\r\n checkboxLabelControl: {\r\n margin: \"0\"\r\n },\r\n checkboxLabel: {\r\n fontSize: \"0.875rem\",\r\n marginLeft: \"6px\",\r\n color: \"rgba(\" + hexToRgb(blackColor) + \", 0.26)\"\r\n }\r\n};\r\n\r\nexport default registerPageStyle;\r\n","import React from \"react\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\n\r\n// @material-ui/icons\r\nimport Timeline from \"@material-ui/icons/Timeline\";\r\nimport Code from \"@material-ui/icons/Code\";\r\nimport Group from \"@material-ui/icons/Group\";\r\nimport Face from \"@material-ui/icons/Face\";\r\nimport Email from \"@material-ui/icons/Email\";\r\n// import LockOutline from \"@material-ui/icons/LockOutline\";\r\nimport Check from \"@material-ui/icons/Check\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\r\nimport InfoArea from \"components/InfoArea/InfoArea.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/registerPageStyle\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function RegisterPage() {\r\n const [checked, setChecked] = React.useState([]);\r\n const handleToggle = value => {\r\n const currentIndex = checked.indexOf(value);\r\n const newChecked = [...checked];\r\n\r\n if (currentIndex === -1) {\r\n newChecked.push(value);\r\n } else {\r\n newChecked.splice(currentIndex, 1);\r\n }\r\n setChecked(newChecked);\r\n };\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n \r\n

Register

\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

or be classical

\r\n
\r\n
\r\n \r\n \r\n \r\n ),\r\n placeholder: \"First Name...\"\r\n }}\r\n />\r\n \r\n \r\n \r\n ),\r\n placeholder: \"Email...\"\r\n }}\r\n />\r\n \r\n \r\n lock_outline\r\n \r\n \r\n ),\r\n placeholder: \"Password...\"\r\n }}\r\n />\r\n handleToggle(1)}\r\n checkedIcon={\r\n \r\n }\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />\r\n }\r\n label={\r\n \r\n I agree to the{\" \"}\r\n terms and conditions.\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","import {\r\n cardTitle,\r\n successColor,\r\n dangerColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\nimport customCheckboxRadioSwitch from \"assets/jss/material-dashboard-pro-react/customCheckboxRadioSwitch.js\";\r\n\r\nconst regularFormsStyle = {\r\n ...customCheckboxRadioSwitch,\r\n cardIconTitle: {\r\n ...cardTitle,\r\n marginTop: \"15px\",\r\n marginBottom: \"0px\"\r\n },\r\n staticFormGroup: {\r\n marginLeft: \"0\",\r\n marginRight: \"0\",\r\n paddingBottom: \"10px\",\r\n margin: \"8px 0 0 0\",\r\n position: \"relative\",\r\n \"&:before,&:after\": {\r\n display: \"table\",\r\n content: '\" \"'\r\n },\r\n \"&:after\": {\r\n clear: \"both\"\r\n }\r\n },\r\n staticFormControl: {\r\n marginBottom: \"0\",\r\n paddingTop: \"8px\",\r\n paddingBottom: \"8px\",\r\n minHeight: \"34px\"\r\n },\r\n inputAdornment: {\r\n marginRight: \"8px\",\r\n position: \"relative\"\r\n },\r\n inputAdornmentIconSuccess: {\r\n color: successColor[0] + \"!important\"\r\n },\r\n inputAdornmentIconError: {\r\n color: dangerColor[0] + \"!important\"\r\n }\r\n};\r\n\r\nexport default regularFormsStyle;\r\n","import React from \"react\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport Radio from \"@material-ui/core/Radio\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\n\r\n// @material-ui/icons\r\nimport MailOutline from \"@material-ui/icons/MailOutline\";\r\nimport Check from \"@material-ui/icons/Check\";\r\nimport Clear from \"@material-ui/icons/Clear\";\r\nimport Contacts from \"@material-ui/icons/Contacts\";\r\nimport FiberManualRecord from \"@material-ui/icons/FiberManualRecord\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport CardText from \"components/Card/CardText.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/regularFormsStyle\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function RegularForms() {\r\n const [checked, setChecked] = React.useState([24, 22]);\r\n const [selectedEnabled, setSelectedEnabled] = React.useState(\"b\");\r\n const [selectedValue, setSelectedValue] = React.useState(null);\r\n const handleChange = event => {\r\n setSelectedValue(event.target.value);\r\n };\r\n const handleChangeEnabled = event => {\r\n setSelectedEnabled(event.target.value);\r\n };\r\n const handleToggle = value => {\r\n const currentIndex = checked.indexOf(value);\r\n const newChecked = [...checked];\r\n\r\n if (currentIndex === -1) {\r\n newChecked.push(value);\r\n } else {\r\n newChecked.splice(currentIndex, 1);\r\n }\r\n setChecked(newChecked);\r\n };\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Stacked Form

\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n handleToggle(2)}\r\n checkedIcon={}\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"Subscribe to newsletter\"\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

Horizontal Form

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n Email\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Password\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n handleToggle(1)}\r\n checkedIcon={\r\n \r\n }\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"Remember me\"\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

Form Elements

\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n With Help\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Password\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Placeholder\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Disabled\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Static control\r\n \r\n \r\n \r\n
\r\n

\r\n hello@creative-tim.com\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n Checkboxes and radios\r\n \r\n \r\n \r\n \r\n handleToggle(3)}\r\n checkedIcon={\r\n \r\n }\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"First Checkbox\"\r\n />\r\n
\r\n \r\n handleToggle(4)}\r\n checkedIcon={\r\n \r\n }\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"Second Checkbox\"\r\n />\r\n
\r\n \r\n \r\n }\r\n checkedIcon={\r\n \r\n }\r\n classes={{\r\n checked: classes.radio,\r\n root: classes.radioRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"First Radio\"\r\n />\r\n
\r\n \r\n \r\n }\r\n checkedIcon={\r\n \r\n }\r\n classes={{\r\n checked: classes.radio,\r\n root: classes.radioRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"Second Radio\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n Inline checkboxes\r\n \r\n \r\n \r\n
\r\n handleToggle(10)}\r\n checkedIcon={\r\n \r\n }\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"a\"\r\n />\r\n handleToggle(11)}\r\n checkedIcon={\r\n \r\n }\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"b\"\r\n />\r\n handleToggle(12)}\r\n checkedIcon={\r\n \r\n }\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"c\"\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

Input Variants

\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n Custom Checkboxes & Radios\r\n \r\n \r\n \r\n \r\n handleToggle(21)}\r\n checkedIcon={\r\n \r\n }\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"Unchecked\"\r\n />\r\n \r\n \r\n handleToggle(22)}\r\n checked={checked.indexOf(22) !== -1 ? true : false}\r\n checkedIcon={\r\n \r\n }\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"Checked\"\r\n />\r\n \r\n \r\n \r\n }\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n disabled: classes.disabledCheckboxAndRadio,\r\n root: classes.labelRoot\r\n }}\r\n label=\"Disabled Unchecked\"\r\n />\r\n \r\n \r\n \r\n }\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n disabled: classes.disabledCheckboxAndRadio,\r\n root: classes.labelRoot\r\n }}\r\n label=\"Disabled Checked\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n }\r\n checkedIcon={\r\n \r\n }\r\n classes={{\r\n checked: classes.radio,\r\n root: classes.radioRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"First Radio\"\r\n />\r\n \r\n \r\n \r\n }\r\n checkedIcon={\r\n \r\n }\r\n classes={{\r\n checked: classes.radio,\r\n root: classes.radioRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"Second Radio\"\r\n />\r\n \r\n \r\n \r\n }\r\n checkedIcon={\r\n \r\n }\r\n classes={{\r\n checked: classes.radio,\r\n disabled: classes.disabledCheckboxAndRadio,\r\n root: classes.radioRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"Second Radio\"\r\n />\r\n \r\n \r\n \r\n }\r\n checkedIcon={\r\n \r\n }\r\n classes={{\r\n checked: classes.radio,\r\n disabled: classes.disabledCheckboxAndRadio,\r\n root: classes.radioRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label: classes.label,\r\n root: classes.labelRoot\r\n }}\r\n label=\"Second Radio\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n Input with success\r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n }}\r\n success\r\n />\r\n \r\n \r\n \r\n \r\n \r\n Input with error\r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n }}\r\n error\r\n />\r\n \r\n \r\n \r\n \r\n \r\n Column sizing\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","import React from \"react\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// material-ui icons\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\n\r\nimport { cardTitle } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst styles = {\r\n customCardContentClass: {\r\n paddingLeft: \"0\",\r\n paddingRight: \"0\"\r\n },\r\n cardIconTitle: {\r\n ...cardTitle,\r\n marginTop: \"15px\",\r\n marginBottom: \"0px\"\r\n }\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function RegularTables() {\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Simple Table

\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 Table on Plain Background\r\n - Here is a subtitle for this table\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

Regular Table with Colors

\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import { grayColor } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nimport buttonStyle from \"assets/jss/material-dashboard-pro-react/components/buttonStyle.js\";\r\n\r\nconst sweetAlertStyle = {\r\n cardTitle: {\r\n marginTop: \"0\",\r\n marginBottom: \"3px\",\r\n color: grayColor[2],\r\n fontSize: \"18px\"\r\n },\r\n center: {\r\n textAlign: \"center\"\r\n },\r\n right: {\r\n textAlign: \"right\"\r\n },\r\n left: {\r\n textAlign: \"left\"\r\n },\r\n ...buttonStyle\r\n};\r\n\r\nexport default sweetAlertStyle;\r\n","/*eslint-disable*/\r\nimport React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n// react component used to create sweet alerts\r\nimport SweetAlert from \"react-bootstrap-sweetalert\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// core components\r\nimport Heading from \"components/Heading/Heading.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/sweetAlertStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function SweetAlertPage() {\r\n const classes = useStyles();\r\n const [alert, setAlert] = React.useState(null);\r\n const [inputValue, setInputValue] = React.useState(null);\r\n const basicAlert = () => {\r\n setAlert(\r\n hideAlert()}\r\n onCancel={() => hideAlert()}\r\n confirmBtnCssClass={classes.button + \" \" + classes.success}\r\n />\r\n );\r\n };\r\n const titleAndTextAlert = () => {\r\n setAlert(\r\n hideAlert()}\r\n onCancel={() => hideAlert()}\r\n confirmBtnCssClass={classes.button + \" \" + classes.info}\r\n >\r\n It{\"'\"}s pretty, isn{\"'\"}t it?\r\n \r\n );\r\n };\r\n const successAlert = () => {\r\n setAlert(\r\n hideAlert()}\r\n onCancel={() => hideAlert()}\r\n confirmBtnCssClass={classes.button + \" \" + classes.success}\r\n >\r\n You clicked the button!\r\n \r\n );\r\n };\r\n const htmlAlert = () => {\r\n setAlert(\r\n hideAlert()}\r\n onCancel={() => hideAlert()}\r\n confirmBtnCssClass={classes.button + \" \" + classes.success}\r\n >\r\n You can use bold text,{\" \"}\r\n \r\n links\r\n {\" \"}\r\n and other HTML tags\r\n \r\n );\r\n };\r\n const warningWithConfirmMessage = () => {\r\n setAlert(\r\n successDelete()}\r\n onCancel={() => hideAlert()}\r\n confirmBtnCssClass={classes.button + \" \" + classes.success}\r\n cancelBtnCssClass={classes.button + \" \" + classes.danger}\r\n confirmBtnText=\"Yes, delete it!\"\r\n cancelBtnText=\"Cancel\"\r\n showCancel\r\n >\r\n You will not be able to recover this imaginary file!\r\n \r\n );\r\n };\r\n const warningWithConfirmAndCancelMessage = () => {\r\n setAlert(\r\n successDelete()}\r\n onCancel={() => cancelDetele()}\r\n confirmBtnCssClass={classes.button + \" \" + classes.success}\r\n cancelBtnCssClass={classes.button + \" \" + classes.danger}\r\n confirmBtnText=\"Yes, delete it!\"\r\n cancelBtnText=\"Cancel\"\r\n showCancel\r\n >\r\n You will not be able to recover this imaginary file!\r\n \r\n );\r\n };\r\n const autoCloseAlert = () => {\r\n setAlert(\r\n hideAlert()}\r\n showConfirm={false}\r\n >\r\n I will close in 2 seconds.\r\n \r\n );\r\n setTimeout(hideAlert, 2000);\r\n };\r\n const inputAlert = () => {\r\n setAlert(\r\n {\r\n inputConfirmAlertNext(e);\r\n }}\r\n onCancel={() => hideAlert()}\r\n confirmBtnCssClass={classes.button + \" \" + classes.info}\r\n cancelBtnCssClass={classes.button + \" \" + classes.danger}\r\n />\r\n );\r\n };\r\n // const inputConfirmAlert = e => {\r\n // console.log(e);\r\n // setInputValue(e);\r\n // setAlert(null);\r\n // console.log(inputValue,alert);\r\n // setTimeout(() => {\r\n // inputConfirmAlertNext();\r\n // }, 5000);\r\n // };\r\n const inputConfirmAlertNext = e => {\r\n setAlert(e);\r\n setTimeout(() => {\r\n setAlert(\r\n hideAlert()}\r\n onCancel={() => hideAlert()}\r\n confirmBtnCssClass={classes.button + \" \" + classes.info}\r\n title={\r\n

\r\n You entered: {e}\r\n

\r\n }\r\n />\r\n );\r\n }, 200);\r\n };\r\n const successDelete = () => {\r\n setAlert(\r\n hideAlert()}\r\n onCancel={() => hideAlert()}\r\n confirmBtnCssClass={classes.button + \" \" + classes.success}\r\n >\r\n Your imaginary file has been deleted.\r\n \r\n );\r\n };\r\n const cancelDetele = () => {\r\n setAlert(\r\n hideAlert()}\r\n onCancel={() => hideAlert()}\r\n confirmBtnCssClass={classes.button + \" \" + classes.success}\r\n >\r\n Your imaginary file is safe :)\r\n \r\n );\r\n };\r\n const hideAlert = () => {\r\n setAlert(null);\r\n };\r\n return (\r\n
\r\n \r\n A beautiful plugin, that replace the classic alert, Handcrafted by\r\n our friend{\" \"}\r\n \r\n Daniel Jorgensen\r\n \r\n . Please check out the{\" \"}\r\n \r\n full documentation.\r\n \r\n .\r\n \r\n }\r\n />\r\n {alert}\r\n \r\n \r\n \r\n \r\n
\r\n
Basic example
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
A title with a text under
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
A success message
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
Custom HTML description
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n A warning message, with a function attached to the {'\"'}\r\n Confirm{'\"'}\r\n 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 ...and by passing a parameter, you can execute something else\r\n for {'\"'}Cancel{'\"'}\r\n
\r\n \r\n Try me!\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
A message with auto close timer set to 2 seconds
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
Modal window with input field
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/typographyStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Quote(props) {\r\n const classes = useStyles();\r\n const { text, author } = props;\r\n return (\r\n
\r\n

{text}

\r\n {author}\r\n
\r\n );\r\n}\r\n\r\nQuote.propTypes = {\r\n text: PropTypes.node,\r\n author: PropTypes.node\r\n};\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/typographyStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Muted(props) {\r\n const classes = useStyles();\r\n const { children } = props;\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nMuted.propTypes = {\r\n children: PropTypes.node\r\n};\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/typographyStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Primary(props) {\r\n const classes = useStyles();\r\n const { children } = props;\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nPrimary.propTypes = {\r\n children: PropTypes.node\r\n};\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/typographyStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Info(props) {\r\n const classes = useStyles();\r\n const { children } = props;\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nInfo.propTypes = {\r\n children: PropTypes.node\r\n};\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/typographyStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Success(props) {\r\n const classes = useStyles();\r\n const { children } = props;\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nSuccess.propTypes = {\r\n children: PropTypes.node\r\n};\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/typographyStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Warning(props) {\r\n const classes = useStyles();\r\n const { children } = props;\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nWarning.propTypes = {\r\n children: PropTypes.node\r\n};\r\n","import React from \"react\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// core components\r\nimport Quote from \"components/Typography/Quote.js\";\r\nimport Muted from \"components/Typography/Muted.js\";\r\nimport Primary from \"components/Typography/Primary.js\";\r\nimport Info from \"components/Typography/Info.js\";\r\nimport Success from \"components/Typography/Success.js\";\r\nimport Warning from \"components/Typography/Warning.js\";\r\nimport Danger from \"components/Typography/Danger.js\";\r\nimport Heading from \"components/Heading/Heading.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\n\r\nconst styles = {\r\n typo: {\r\n paddingLeft: \"25%\",\r\n marginBottom: \"40px\",\r\n position: \"relative\",\r\n },\r\n note: {\r\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n bottom: \"10px\",\r\n color: \"#c0c1c2\",\r\n display: \"block\",\r\n fontWeight: \"400\",\r\n fontSize: \"13px\",\r\n lineHeight: \"13px\",\r\n left: \"0\",\r\n marginLeft: \"20px\",\r\n position: \"absolute\",\r\n width: \"260px\",\r\n },\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Typography() {\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n \r\n
\r\n
Header 1
\r\n

The Life of Material Dashboard

\r\n
\r\n
\r\n
Header 2
\r\n

The Life of Material Dashboard

\r\n
\r\n
\r\n
Header 3
\r\n

The Life of Material Dashboard

\r\n
\r\n
\r\n
Header 4
\r\n

The Life of Material Dashboard

\r\n
\r\n
\r\n
Header 5
\r\n
The Life of Material Dashboard
\r\n
\r\n
\r\n
Header 6
\r\n
The Life of Material Dashboard
\r\n
\r\n
\r\n
Paragraph
\r\n

\r\n I will be the leader of a company that ends up being worth\r\n billions of dollars, because I got the answers. I understand\r\n culture. I am the nucleus. I think that’s a responsibility that I\r\n have, to push possibilities, to show people, this is the level\r\n that things could be at.\r\n

\r\n
\r\n
\r\n
Quote
\r\n \r\n
\r\n
\r\n
Muted Text
\r\n \r\n I will be the leader of a company that ends up being worth\r\n billions of dollars, because I got the answers...\r\n \r\n
\r\n
\r\n
Primary Text
\r\n \r\n I will be the leader of a company that ends up being worth\r\n billions of dollars, because I got the answers...\r\n \r\n
\r\n
\r\n
Info Text
\r\n \r\n I will be the leader of a company that ends up being worth\r\n billions of dollars, because I got the answers...\r\n \r\n
\r\n
\r\n
Success Text
\r\n \r\n I will be the leader of a company that ends up being worth\r\n billions of dollars, because I got the answers...\r\n \r\n
\r\n
\r\n
Warning Text
\r\n \r\n I will be the leader of a company that ends up being worth\r\n billions of dollars, because I got the answers...\r\n \r\n
\r\n
\r\n
Danger Text
\r\n \r\n I will be the leader of a company that ends up being worth\r\n billions of dollars, because I got the answers...\r\n \r\n
\r\n
\r\n
Small Tag
\r\n

\r\n Header with small subtitle\r\n
\r\n \r\n Use {'\"'}small{'\"'} tag for the headers\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React from \"react\";\r\n\r\n// mterial-ui components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nconst styles = {\r\n clearfix: {\r\n \"&:after,&:before\": {\r\n display: \"table\",\r\n content: '\" \"'\r\n },\r\n \"&:after\": {\r\n clear: \"both\"\r\n }\r\n }\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Clearfix() {\r\n const classes = useStyles();\r\n return
\r\n \r\n \r\n setSelectedCategoriesId(value)}\r\n />\r\n setSelectedNetwork(value)} />\r\n \r\n \r\n \r\n \r\n \r\n Lưu thông tin\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { useState, useEffect } from \"react\";\r\nimport queryString from 'query-string';\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport Search from \"@material-ui/icons/Search\";\r\n// Dialog\r\nimport {\r\n FormHelperText,\r\n MenuItem,\r\n Select,\r\n InputLabel,\r\n FormControl,\r\n DialogTitle,\r\n DialogContentText,\r\n DialogContent,\r\n DialogActions,\r\n Dialog,\r\n Grid,\r\n Checkbox,\r\n FormControlLabel,\r\n} from \"@material-ui/core\";\r\nimport { TransferWithinAStation, PersonAdd, VisibilityOff, Visibility, Settings, Edit, VpnKey } from \"@material-ui/icons\";\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/extendedTablesStyle.js\";\r\nimport styles2 from \"assets/jss/material-dashboard-pro-react/views/extendedFormsStyle.js\";\r\nimport Backdrop from \"@material-ui/core/Backdrop\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport { DataGrid, GridToolbarContainer } from \"@material-ui/data-grid\";\r\nimport SupervisorAccountIcon from \"@material-ui/icons/SupervisorAccount\";\r\nimport _ from \"lodash\";\r\nimport Transfer from \"../Components/Transfer/index.js\";\r\n\r\nimport fetchClient from \"../../ultils/request\";\r\nimport CustomInput from \"components/CustomInput/CustomInput\";\r\nimport { getSession } from \"../../ultils/appSession\";\r\n\r\nconst stylesForm = {\r\n ...styles,\r\n ...styles2,\r\n backdrop: {\r\n zIndex: 10000,\r\n color: \"#fff\",\r\n },\r\n cardbody: {\r\n height: 550,\r\n },\r\n};\r\n\r\nconst MobileNetworkSupplierList = [\r\n {\r\n key: 1,\r\n value: \"VIETTEL\",\r\n },\r\n {\r\n key: 2,\r\n value: \"VINAPHONE\",\r\n },\r\n {\r\n key: 3,\r\n value: \"MOBIPHONE\",\r\n },\r\n {\r\n key: 4,\r\n value: \"VIETNAMOBILE\",\r\n },\r\n {\r\n key: 5,\r\n value: \"ITELECOM\",\r\n },\r\n {\r\n key: 6,\r\n value: \"NHÀ MẠNG KHÁC\",\r\n },\r\n];\r\nconst statusCustomer = [\r\n {\r\n key: 0,\r\n value: \"Chưa gọi\",\r\n },\r\n {\r\n key: 1,\r\n value: \"Đồng ý\",\r\n },\r\n {\r\n key: 2,\r\n value: \"Từ chối\",\r\n },\r\n {\r\n key: 3,\r\n value: \"Không bắt máy\",\r\n },\r\n {\r\n key: 4,\r\n value: \"Số điện thoại sai\",\r\n },\r\n {\r\n key: 5,\r\n value: \"Bỏ qua\",\r\n },\r\n {\r\n key: 6,\r\n value: \"Khóa\",\r\n },\r\n];\r\nconst useStyles = makeStyles(stylesForm);\r\nexport default function UserPage() {\r\n const classes = useStyles();\r\n const currentSession = getSession();\r\n const role = currentSession.userRoles == \"Admin\" ? \"User\" : \"Admin\";\r\n const [listStatus, setDataListStatus] = useState([]);\r\n const [listCategory, setCategoryList] = useState([]);\r\n const [openCreate, setOpenCreate] = useState(false);\r\n const [errorText, setErrorText] = useState({});\r\n const [errorFile, setErrorFile] = useState({});\r\n const [userList, setUserList] = useState([]);\r\n const [showDeletedUser, setShowDeletedUser] = useState(false);\r\n const [userCreate, setUserCreate] = useState({\r\n UserName: \"\",\r\n Password: \"\",\r\n FirstName: \"\",\r\n LastName: \"\",\r\n Role: role,\r\n IsActive: \"\",\r\n Email: \"\",\r\n MobileNetworkSupplier: [],\r\n DataCategory: [],\r\n });\r\n const [openLoading, setOpenLoading] = useState(false);\r\n const [selectedUsers, setSelectedUsers] = useState([]);\r\n const [openTransferDialog, setOpenTransferDialog] = useState(false);\r\n const [openBlogDialog, setOpenBlogDialog] = useState(false);\r\n const [openEditDialog, setOpenEditDialog] = useState(false);\r\n\r\n\r\n\r\n useEffect(() => {\r\n setDataListStatus(statusCustomer);\r\n handleCategoryList();\r\n if (userList.length === 0) {\r\n handleGetUserList();\r\n }\r\n }, []);\r\n\r\n const customToolbar = () => (\r\n \r\n {\r\n setOpenTransferDialog(!openTransferDialog);\r\n }}\r\n >\r\n \r\n Chuyển vùng dữ liệu, mạng ({selectedUsers.length})\r\n \r\n \r\n \r\n \r\n setShowDeletedUser(!showDeletedUser)}\r\n inputProps={{ \"aria-label\": \"primary checkbox\" }}\r\n />\r\n }\r\n label=\"User đã xóa\"\r\n />\r\n \r\n );\r\n\r\n const columns = [\r\n // {\r\n // field: \"fullName\",\r\n // headerName: \"Họ tên\",\r\n // description: \"This column has a value getter and is not sortable.\",\r\n // sortable: false,\r\n // width: 180,\r\n // valueGetter: (params) => {\r\n // console.log(\"params\", params);\r\n // return `${params.getValue(\"firstName\") || \"\"} ${params.getValue(\"lastName\") || \"\"}`\r\n // },\r\n // },\r\n {\r\n field: \"userName\",\r\n headerName: \"Tên đăng nhập\",\r\n sortable: true,\r\n width: 180,\r\n },\r\n {\r\n field: \"mobileNetworkSupplier\",\r\n headerName: \"Nhà mạng\",\r\n width: 180,\r\n sortable: true,\r\n },\r\n {\r\n field: \"dataCategory\",\r\n headerName: \"Vùng dữ liệu\",\r\n width: 180,\r\n renderCell: (param) => displayDataCategory(param),\r\n },\r\n {\r\n field: \"isActive\",\r\n headerName: \"Trạng thái\",\r\n width: 150,\r\n renderCell: (param) => (param ? \"Đang hoạt động\" : \"Dừng hoạt động\"),\r\n },\r\n ];\r\n\r\n const displayDataCategory = (dataCategoryListStr) => {\r\n if (!dataCategoryListStr || !dataCategoryListStr.value) return null;\r\n const datacategoryList = dataCategoryListStr.value.split(\",\");\r\n let listCategoryName = [];\r\n for (let index = 0; index < datacategoryList.length; index++) {\r\n const categoryId = datacategoryList[index];\r\n const category = listCategory.filter((item) => item.key == categoryId);\r\n if (category && category.length > 0) {\r\n listCategoryName.push(category[0].value);\r\n } else {\r\n listCategoryName.push(`(${categoryId})`);\r\n }\r\n }\r\n\r\n return listCategoryName.join(\", \");\r\n };\r\n\r\n const handleGetUserList = () => {\r\n setOpenLoading(true);\r\n getUserList()\r\n .then((response) => {\r\n setOpenLoading(false);\r\n if (response.data) {\r\n setUserList(response.data);\r\n }\r\n })\r\n .catch((err) => {\r\n console.error(err)\r\n setOpenLoading(false);\r\n });\r\n };\r\n\r\n const getUserList = async () => {\r\n const currentSession = getSession();\r\n if (currentSession.userRoles != \"Admin\") {\r\n return await fetchClient.get(\"/users/iUser\");\r\n } else {\r\n return fetchClient.get(\"/users/iUser-my-team\");\r\n }\r\n };\r\n\r\n const getDataCategory = async () => {\r\n try {\r\n const result = await fetchClient.get(\"/category/categoryActive/\");\r\n if (result) {\r\n return result;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n };\r\n\r\n const getUserListByStatus = () => {\r\n if (!userList || userList.length === 0) return [];\r\n return userList.filter((item) => item.isActive && !showDeletedUser);\r\n };\r\n\r\n const handleDisableUser = (user) => { };\r\n\r\n const handleCategoryList = () => {\r\n getDataCategory().then((data) => {\r\n if (data) {\r\n var dataResult = data.data || [];\r\n var listCategory = [];\r\n dataResult.map((data) => {\r\n listCategory.push({\r\n key: data.id,\r\n value: data.categoryName,\r\n });\r\n });\r\n setCategoryList(listCategory);\r\n }\r\n });\r\n };\r\n\r\n const handleCloseDialog = () => {\r\n setOpenCreate(false);\r\n setUserCreate({\r\n UserName: \"\",\r\n Password: \"\",\r\n FirstName: \"\",\r\n LastName: \"\",\r\n Role: role,\r\n IsActive: \"\",\r\n Email: \"\",\r\n MobileNetworkSupplier: [],\r\n DataCategory: [],\r\n });\r\n setErrorText({});\r\n setErrorFile({});\r\n };\r\n\r\n const handleSubmit = async () => {\r\n const formData = new FormData();\r\n if (validate()) {\r\n setOpenLoading(true);\r\n formData.append(\"FirstName\", userCreate.FirstName);\r\n formData.append(\"LastName\", userCreate.LastName);\r\n formData.append(\"Email\", userCreate.Email);\r\n formData.append(\"UserName\", userCreate.UserName);\r\n formData.append(\"IsActive\", Boolean(userCreate.IsActive));\r\n formData.append(\"Role\", userCreate.Role);\r\n formData.append(\"Password\", userCreate.Password);\r\n formData.append(\"ConfirmPassword\", userCreate.Password);\r\n formData.append(\"DataCategory\", userCreate.DataCategory);\r\n formData.append(\r\n \"MobileNetworkSupplier\",\r\n userCreate.MobileNetworkSupplier\r\n );\r\n console.log(\"userCreate\", userCreate);\r\n try {\r\n const result = await fetchClient.post(\r\n \"/identity/register-user\",\r\n formData,\r\n {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n },\r\n }\r\n );\r\n if (result) {\r\n setOpenLoading(false);\r\n handleCloseDialog();\r\n getUserList();\r\n return result;\r\n }\r\n } catch (error) {\r\n setOpenLoading(false);\r\n console.log(error);\r\n }\r\n }\r\n };\r\n function validateEmail(email) {\r\n const re = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n return re.test(String(email).toLowerCase());\r\n }\r\n const validate = () => {\r\n var error = {};\r\n var helperText = {};\r\n var numberErr = 0;\r\n const {\r\n FirstName,\r\n LastName,\r\n Email,\r\n UserName,\r\n IsActive,\r\n Role,\r\n Password,\r\n DataCategory,\r\n MobileNetworkSupplier,\r\n } = userCreate;\r\n\r\n if (!FirstName) {\r\n numberErr++;\r\n error.FirstName = true;\r\n helperText.FirstName = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n if (!LastName) {\r\n numberErr++;\r\n error.LastName = true;\r\n helperText.LastName = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n if (!Email) {\r\n numberErr++;\r\n error.Email = true;\r\n helperText.Email = \"Đây là trường bắt buộc\";\r\n }\r\n if (Email && !validateEmail(Email)) {\r\n numberErr++;\r\n error.Email = true;\r\n helperText.Email = \"Không đúng định dạng email\";\r\n }\r\n\r\n if (!UserName) {\r\n numberErr++;\r\n error.UserName = true;\r\n helperText.UserName = \"Đây là trường bắt buộc\";\r\n }\r\n if (UserName && UserName.length < 6) {\r\n numberErr++;\r\n error.UserName = true;\r\n helperText.UserName = \"Độ dài tối thiểu là 6\";\r\n }\r\n\r\n if (IsActive.toString() === \"\") {\r\n numberErr++;\r\n error.IsActive = true;\r\n helperText.IsActive = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n if (Role.toString() === \"\") {\r\n numberErr++;\r\n error.Role = true;\r\n helperText.Role = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n if (!Password) {\r\n numberErr++;\r\n error.Password = true;\r\n helperText.Password = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n if (Password && Password.length < 6) {\r\n numberErr++;\r\n error.Password = true;\r\n helperText.Password = \"Độ dài tối thiểu là 6\";\r\n }\r\n if (Password && Password.length >= 6) {\r\n var regExpAZ = /[A-Z]/g;\r\n var regExpaz = /[a-z]/g;\r\n if (!regExpAZ.test(Password) || !regExpaz.test(Password)) {\r\n numberErr++;\r\n error.Password = true;\r\n helperText.Password = \"Mật khẩu phải bao gồm cả chữ hoa và chữ thường\";\r\n }\r\n }\r\n\r\n if (!DataCategory.length) {\r\n numberErr++;\r\n error.DataCategory = true;\r\n helperText.DataCategory = \"Đây là trường bắt buộc\";\r\n }\r\n if (!MobileNetworkSupplier.length) {\r\n numberErr++;\r\n error.MobileNetworkSupplier = true;\r\n helperText.MobileNetworkSupplier = \"Đây là trường bắt buộc\";\r\n }\r\n setErrorText(helperText);\r\n setErrorFile(error);\r\n\r\n return !numberErr;\r\n };\r\n\r\n const onchangeInput = (fieldName, value) => {\r\n setUserCreate({ ...userCreate, [fieldName]: value });\r\n };\r\n\r\n const onRowSelected = (param) => {\r\n const { data = {} } = param;\r\n if (param.isSelected) {\r\n const newSelectedUser = [...selectedUsers];\r\n newSelectedUser.push(data);\r\n setSelectedUsers(newSelectedUser);\r\n } else {\r\n _.remove(selectedUsers, (item) => item.id == data.id);\r\n const newSelectUser = [...selectedUsers];\r\n setSelectedUsers(newSelectUser);\r\n }\r\n };\r\n\r\n const transferSuccess = () => {\r\n setSelectedUsers([]);\r\n getUserList()\r\n .then((response) => {\r\n if (response.data) {\r\n setUserList(response.data);\r\n }\r\n })\r\n .catch((err) => console.error(err));\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

Danh sách nhân viên

\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n setOpenCreate(false)}\r\n aria-labelledby=\"responsive-dialog-title\"\r\n >\r\n \r\n {\" Đăng ký tài khoản\"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n onchangeInput(\"UserName\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.UserName ? errorText.UserName : \"\"}\r\n error={errorFile.UserName}\r\n />\r\n \r\n \r\n \r\n \r\n Loại tài khoản\r\n \r\n onchangeInput(\"Role\", e.target.value)}\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n error={errorFile.Role}\r\n disabled\r\n >\r\n {/* \r\n Loại tài khoản\r\n */}\r\n \r\n User\r\n \r\n \r\n Admin\r\n \r\n \r\n \r\n {errorText.Role ? errorText.Role : \"\"}\r\n \r\n \r\n \r\n \r\n onchangeInput(\"Email\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.Email ? errorText.Email : \"\"}\r\n error={errorFile.Email}\r\n />\r\n \r\n \r\n \r\n onchangeInput(\"Password\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.Password ? errorText.Password : \"\"}\r\n error={errorFile.Password}\r\n />\r\n \r\n \r\n \r\n onchangeInput(\"FirstName\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.FirstName ? errorText.FirstName : \"\"}\r\n error={errorFile.FirstName}\r\n />\r\n \r\n \r\n \r\n onchangeInput(\"LastName\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.LastName ? errorText.LastName : \"\"}\r\n error={errorFile.LastName}\r\n />\r\n \r\n \r\n \r\n \r\n Trạng Thái\r\n \r\n \r\n onchangeInput(\"IsActive\", e.target.value)\r\n }\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n error={errorFile.IsActive}\r\n >\r\n \r\n Trạng Thái\r\n \r\n \r\n Không hoạt động\r\n \r\n \r\n Hoạt động\r\n \r\n \r\n \r\n {errorText.IsActive ? errorText.IsActive : \"\"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Giới hạn mạng điện thoại\r\n \r\n \r\n onchangeInput(\"MobileNetworkSupplier\", e.target.value)\r\n }\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n error={errorFile.MobileNetworkSupplier}\r\n >\r\n \r\n Giới hạn mạng điện thoại\r\n \r\n {MobileNetworkSupplierList &&\r\n MobileNetworkSupplierList.map((e, i) => {\r\n return (\r\n \r\n {e.value}\r\n \r\n );\r\n })}\r\n \r\n \r\n {errorText.MobileNetworkSupplier ? errorText.MobileNetworkSupplier : \"\"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Giới hạn dữ liệu\r\n \r\n \r\n onchangeInput(\"DataCategory\", e.target.value)\r\n }\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n error={errorFile.DataCategory}\r\n >\r\n \r\n Giới hạn dữ liệu\r\n \r\n {listCategory &&\r\n listCategory.map((e, i) => {\r\n return (\r\n \r\n {e.value}\r\n \r\n );\r\n })}\r\n \r\n \r\n {errorText.DataCategory ? errorText.DataCategory : \"\"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n setOpenTransferDialog(false)}\r\n onSave={() => {\r\n transferSuccess();\r\n setOpenTransferDialog(false);\r\n }}\r\n />\r\n setOpenBlogDialog(false)}\r\n >\r\n setOpenEditDialog(false)}\r\n >\r\n
\r\n
\r\n );\r\n}\r\n\r\nconst DialogBlockUser = (props) => {\r\n\r\n const [usersTextSearch, setUsersTextSearch] = useState(\"\");\r\n const [data, setData] = useState([]);\r\n const { open, classes, handleClose } = props\r\n const [openLoading, setOpenLoading] = useState(false);\r\n\r\n const getUserListByName = async () => {\r\n try {\r\n let result;\r\n const currentSession = getSession();\r\n if (currentSession.userRoles != \"Admin\") {\r\n result = await fetchClient.get(`/users/iUserByUserName/?userName=${usersTextSearch}`);\r\n }\r\n else {\r\n result = await fetchClient.get(`/users/iUser-my-team/?userName=${usersTextSearch}`);\r\n }\r\n if (result) {\r\n return result;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n };\r\n useEffect(() => {\r\n handSearch();\r\n }, [open])\r\n\r\n const closeDialog = () => {\r\n setUsersTextSearch(\"\");\r\n handleClose();\r\n }\r\n\r\n const RoundButtons = (props) => {\r\n const { block, onclick } = props\r\n return (\r\n <>\r\n {block ? \r\n \r\n :\r\n \r\n \r\n }\r\n \r\n );\r\n };\r\n\r\n const blockUser = async (id, status) => {\r\n var query = queryString.stringify({ userId: id, status: status }, { arrayFormat: 'comma' });\r\n return await fetchClient.post(`/users/block-user/?${query}`);\r\n };\r\n\r\n const handleBlogUsers = (id, status) => {\r\n blockUser(id, status).then((result) => {\r\n if (result) {\r\n handSearch();\r\n }\r\n }\r\n\r\n );\r\n };\r\n\r\n const handSearch = () => {\r\n setOpenLoading(true)\r\n getUserListByName().then((response) => {\r\n try {\r\n if (response) {\r\n var dataTable = response.data;\r\n var dataMapTable = [];\r\n dataTable.forEach((e) => {\r\n dataMapTable.push([\r\n e.userName,\r\n e.email,\r\n e.isActive ?\r\n

Đang hoạt động

:

Dừng hoạt động

,\r\n handleBlogUsers(e.id, !e.isActive)}\r\n block={e.isActive}\r\n >\r\n ]);\r\n });\r\n setData(dataMapTable);\r\n setOpenLoading(false)\r\n }\r\n } catch (error) {\r\n setOpenLoading(false)\r\n console.log(error)\r\n }\r\n });\r\n };\r\n return (\r\n \r\n \r\n Chuyển trạng thái của nhân viên\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Danh sách nhân viên

\r\n
\r\n \r\n \r\n \r\n \r\n setUsersTextSearch(e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\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\nconst DialogEdit = (props) => {\r\n\r\n const [usersTextSearch, setUsersTextSearch] = useState(\"\");\r\n const [data, setData] = useState([]);\r\n const { open, classes, handleClose } = props\r\n const [openLoading, setOpenLoading] = useState(false);\r\n const [openDialogEdit, setOpenDialogEdit] = useState(false);\r\n const [openDialogUpdatePass, setOpenDialogUpdatePass] = useState(false);\r\n const [dataDialogEdit, setDataDialogEdit] = useState({});\r\n const [listUser, setListUser] = useState([]);\r\n\r\n const getUserListByName = async () => {\r\n try {\r\n let result;\r\n const currentSession = getSession();\r\n if (currentSession.userRoles != \"Admin\") {\r\n result = await fetchClient.get(`/users/iUserByUserName/?userName=${usersTextSearch}`);\r\n }\r\n else {\r\n result = await fetchClient.get(`/users/iUser-my-team/?userName=${usersTextSearch}`);\r\n }\r\n if (result) {\r\n return result;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n };\r\n useEffect(() => {\r\n handSearch();\r\n }, [open])\r\n\r\n const closeDialog = () => {\r\n setUsersTextSearch(\"\");\r\n handleClose();\r\n }\r\n\r\n const handleSubmitEdit = async (id, userName) => {\r\n var query = queryString.stringify({ userId: id, userName: userName }, { arrayFormat: 'comma' });\r\n return await fetchClient.post(`/identity/edit-username/?${query}`);\r\n };\r\n\r\n const handleSubmitEditPass = async (id, password) => {\r\n var query = queryString.stringify({ userId: id, password: password }, { arrayFormat: 'comma' });\r\n return await fetchClient.post(`/identity/reset-password-admin/?${query}`);\r\n };\r\n\r\n const handleUpdateDialog = (e) => {\r\n setOpenDialogEdit(true);\r\n setDataDialogEdit(e)\r\n\r\n }\r\n\r\n const handleUpdatePassDialog = (e) => {\r\n setOpenDialogUpdatePass(true);\r\n setDataDialogEdit(e)\r\n\r\n }\r\n const handleCloseDialogEdit = () => {\r\n setOpenDialogEdit(false);\r\n setDataDialogEdit({})\r\n }\r\n\r\n const handleCloseUpdatePass = () => {\r\n setOpenDialogUpdatePass(false);\r\n setDataDialogEdit({})\r\n }\r\n\r\n const handSearch = () => {\r\n setOpenLoading(true)\r\n getUserListByName().then((response) => {\r\n try {\r\n if (response) {\r\n var dataTable = response.data;\r\n setListUser(response.data)\r\n var dataMapTable = [];\r\n dataTable.forEach((e) => {\r\n dataMapTable.push([\r\n e.userName,\r\n e.email,\r\n <>\r\n handleUpdateDialog(e)}\r\n color=\"success\"\r\n >\r\n \r\n \r\n handleUpdatePassDialog(e)}\r\n color=\"danger\"\r\n >\r\n \r\n \r\n \r\n ]);\r\n });\r\n setData(dataMapTable);\r\n setOpenLoading(false)\r\n }\r\n } catch (error) {\r\n setOpenLoading(false)\r\n console.log(error)\r\n }\r\n });\r\n };\r\n return (\r\n \r\n \r\n Thay đổi thông tin đăng nhập\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Danh sách nhân viên

\r\n
\r\n \r\n \r\n \r\n \r\n setUsersTextSearch(e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\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\nconst UpdateUser = (props) => {\r\n const { openDialog, handleCloseDialog, dataDialog, handleSubmit, listUser, handSearch } = props\r\n const [errorText, setErrorText] = useState({});\r\n const [errorField, setErrorField] = useState({});\r\n const [userName, setUserName] = useState();\r\n\r\n\r\n useEffect(() => {\r\n if (dataDialog) {\r\n setUserName(dataDialog.userName)\r\n }\r\n }, [openDialog])\r\n\r\n const closeDialog = () => {\r\n setErrorText({});\r\n setErrorField({});\r\n setUserName();\r\n handleCloseDialog();\r\n }\r\n\r\n const submitEdit = () => {\r\n if (validate()) {\r\n handleSubmit(dataDialog.id, userName).then((result) => {\r\n if (result && result.data) {\r\n handSearch();\r\n closeDialog();\r\n }\r\n })\r\n }\r\n }\r\n\r\n const validate = () => {\r\n var error = {};\r\n var helperText = {};\r\n var numberErr = 0;\r\n\r\n\r\n if (!userName) {\r\n numberErr++;\r\n error.userName = true;\r\n helperText.userName = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n if (userName && userName.length < 6) {\r\n numberErr++;\r\n error.userName = true;\r\n helperText.userName = \"Độ dài tối thiểu là 6\";\r\n }\r\n\r\n var checkHasUserName = listUser.filter(x => x.id != dataDialog.id && x.userName == userName).length;\r\n if (userName && userName.length > 6 && checkHasUserName > 0) {\r\n numberErr++;\r\n error.userName = true;\r\n helperText.userName = \"Tên này đã tồn tại\";\r\n }\r\n if (userName && userName.length > 6 && userName.split(\" \").length > 1) {\r\n numberErr++;\r\n error.userName = true;\r\n helperText.userName = \"Tên không được chưa kí tự khoảng trắng\";\r\n }\r\n\r\n setErrorText(helperText);\r\n setErrorField(error);\r\n return !numberErr;\r\n };\r\n\r\n\r\n return (\r\n \r\n Sửa tên đăng nhập cho {dataDialog.userName}\r\n \r\n \r\n \r\n \r\n \r\n \r\n setUserName(e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.userName ? errorText.userName : \"\"}\r\n error={errorField.userName}\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\nconst UpdatePassword = (props) => {\r\n const { openDialog, handleCloseDialog, dataDialog, handleSubmit, listUser, handSearch } = props\r\n const [errorText, setErrorText] = useState({});\r\n const [errorField, setErrorField] = useState({});\r\n const [password, setPassword] = useState();\r\n\r\n\r\n const closeDialog = () => {\r\n setErrorText({});\r\n setErrorField({});\r\n setPassword();\r\n handleCloseDialog();\r\n }\r\n\r\n const submitEdit = () => {\r\n if (validate()) {\r\n handleSubmit(dataDialog.id, password).then((result) => {\r\n if (result && result.data) {\r\n handSearch();\r\n closeDialog();\r\n }\r\n })\r\n }\r\n }\r\n\r\n const validate = () => {\r\n var error = {};\r\n var helperText = {};\r\n var numberErr = 0;\r\n\r\n\r\n if (!password) {\r\n numberErr++;\r\n error.password = true;\r\n helperText.password = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n if (password && password.length < 6) {\r\n numberErr++;\r\n error.password = true;\r\n helperText.password = \"Độ dài tối thiểu là 6\";\r\n }\r\n if (password && password.length >= 6) {\r\n var regExpAZ = /[A-Z]/g;\r\n var regExpaz = /[a-z]/g;\r\n if (!regExpAZ.test(password) || !regExpaz.test(password)) {\r\n numberErr++;\r\n error.password = true;\r\n helperText.password = \"Mật khẩu phải bao gồm cả chữ hoa và chữ thường\";\r\n }\r\n }\r\n\r\n setErrorText(helperText);\r\n setErrorField(error);\r\n return !numberErr;\r\n };\r\n\r\n\r\n return (\r\n \r\n Sửa mật khẩu cho {dataDialog.userName}\r\n \r\n \r\n \r\n \r\n \r\n \r\n setPassword(e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.password ? errorText.password : \"\"}\r\n error={errorField.password}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n}","import React, { useEffect, useState } from \"react\";\r\nimport moment from \"moment\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\n\r\n// Dialog\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\n\r\n// Date\r\nimport Datetime from \"react-datetime\";\r\nimport Backdrop from \"@material-ui/core/Backdrop\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\n\r\nimport { cardTitle } from \"assets/jss/material-dashboard-pro-react.js\";\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/extendedFormsStyle.js\";\r\nimport fetchClient from \"../../ultils/request\";\r\n\r\nconst stylesForm = {\r\n ...styles,\r\n cardIconTitle: {\r\n ...cardTitle,\r\n marginTop: \"15px\",\r\n marginBottom: \"0px\",\r\n },\r\n dialogContent: {\r\n height: 390,\r\n maxHeight: \"70%\",\r\n },\r\n ml20: {\r\n marginLeft: 20,\r\n },\r\n backdrop: {\r\n zIndex: 10000,\r\n color: \"#fff\",\r\n },\r\n};\r\n\r\nconst useStyles = makeStyles(stylesForm);\r\nconst valueAll = 1000;\r\n\r\nconst convertToArrBuffer = (s) => {\r\n var buf = new ArrayBuffer(s.length);\r\n var view = new Uint8Array(buf);\r\n for (var i = 0; i != s.length; ++i) view[i] = s.charCodeAt(i) & 0xff;\r\n return buf;\r\n};\r\n\r\nexport default function DataPage() {\r\n const [data, setData] = useState([]);\r\n const [listDataNumberPage, setDataListDataNumberPage] = useState([]);\r\n const [listStatus, setDataListStatus] = useState([]);\r\n const [listCategory, setCategoryList] = useState([]);\r\n const [totalPage, setTotalPage] = useState([]);\r\n const [listIUsers, setListIUsers] = useState([]);\r\n const [dataSearch, setDataSearch] = useState({\r\n numberOfPage: \"10\",\r\n page: \"1\",\r\n dataCategoryCode: [],\r\n status: [],\r\n DataAuto: \"\",\r\n auto: 1,\r\n });\r\n const [openLoading, setOpenLoading] = useState(false);\r\n\r\n const [openCreate, setOpenCreate] = useState(false);\r\n\r\n const classes = useStyles();\r\n\r\n var statusCustomer = [\r\n {\r\n key: 0,\r\n value: \"Chưa gọi\",\r\n },\r\n {\r\n key: 1,\r\n value: \"Đồng ý\",\r\n },\r\n {\r\n key: 2,\r\n value: \"Từ chối\",\r\n },\r\n {\r\n key: 3,\r\n value: \"Không bắt máy\",\r\n },\r\n {\r\n key: 4,\r\n value: \"Số điện thoại sai\",\r\n },\r\n {\r\n key: 5,\r\n value: \"Bỏ qua\",\r\n },\r\n {\r\n key: 6,\r\n value: \"Khóa\",\r\n },\r\n ];\r\n\r\n const handleSubmitData = async () => {\r\n try {\r\n const formData = createFormDataSearch();\r\n const result = await fetchClient.post(\"/users/\", formData, {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n },\r\n });\r\n if (result) {\r\n return result.data;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n };\r\n\r\n const handleExportDataSeach = async () => {\r\n setOpenLoading(true);\r\n try {\r\n const formData = createFormDataSearch();\r\n const result = await fetchClient.post(\"/users/export\", formData, {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n },\r\n });\r\n if (result) {\r\n var blob = new Blob([convertToArrBuffer(atob(result.data))], {\r\n type:\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\",\r\n });\r\n\r\n const url = URL.createObjectURL(blob);\r\n const link = document.createElement(\"a\");\r\n link.href = url;\r\n\r\n const fileName =\r\n \"TeleSale_Customer_Export_\" +\r\n moment(Date.now()).format(\"MM-DD-YYYY_HH-mm-ss\");\r\n link.setAttribute(\"download\", fileName); //or any other extension\r\n document.body.appendChild(link);\r\n link.click();\r\n }\r\n setOpenLoading(false);\r\n } catch (e) {\r\n console.log(e);\r\n setOpenLoading(false);\r\n }\r\n };\r\n\r\n const createFormDataSearch = () => {\r\n const formData = new FormData();\r\n if (dataSearch.numberOfPage && Number(dataSearch.numberOfPage)) {\r\n formData.append(\"NumberOfPage\", Number(dataSearch.numberOfPage));\r\n }\r\n if (dataSearch.page && Number(dataSearch.page)) {\r\n formData.append(\"Page\", Number(dataSearch.page));\r\n }\r\n if (\r\n dataSearch.dataCategoryCode &&\r\n dataSearch.dataCategoryCode.length > 0 &&\r\n dataSearch.dataCategoryCode.indexOf(valueAll) == -1\r\n ) {\r\n formData.append(\"DataCategoryCode\", dataSearch.dataCategoryCode);\r\n }\r\n if (\r\n dataSearch.status &&\r\n dataSearch.status.length > 0 &&\r\n dataSearch.status.indexOf(valueAll) == -1\r\n ) {\r\n formData.append(\"Status\", dataSearch.status);\r\n }\r\n if (data.PhoneNumber != \"\" && dataSearch.auto == 1) {\r\n formData.append(\"PhoneNumber\", dataSearch.DataAuto);\r\n }\r\n if (dataSearch.FullName != \"\" && dataSearch.auto == 2) {\r\n formData.append(\"FullName\", dataSearch.DataAuto);\r\n }\r\n return formData;\r\n };\r\n\r\n const getDataCategory = async () => {\r\n try {\r\n const result = await fetchClient.get(\"/category/categoryActive/\");\r\n if (result) {\r\n return result;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n };\r\n\r\n const getDataListIUsers = async () => {\r\n try {\r\n const result = await fetchClient.get(\"/users/iUser\");\r\n if (result) {\r\n return result;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n };\r\n\r\n const handleCloseDialog = () => {\r\n setOpenCreate(false);\r\n };\r\n\r\n const handleSearch = () => {\r\n setOpenLoading(true);\r\n handleSubmitData().then((data) => {\r\n var dataTable = [];\r\n if (data) {\r\n dataTable = data.data;\r\n setTotalPage(data.totalPage);\r\n var dataMapTable = [];\r\n dataTable.forEach((e) => {\r\n dataMapTable.push([\r\n e.id,\r\n e.fullName,\r\n e.phoneNumber,\r\n e.address,\r\n e.productBuy,\r\n e.dataCategoryName,\r\n e.product,\r\n e.cod,\r\n statusCustomer[e.callStatusCode]?.value,\r\n e.nameUpdate ? e.nameUpdate : \"---\",\r\n e.lastModifiedOn ? moment(e.lastModifiedOn).format(\"MM-DD-YYYY HH:mm:ss\") : \"---\",\r\n ]);\r\n });\r\n setData(dataMapTable);\r\n }\r\n setOpenLoading(false);\r\n });\r\n };\r\n\r\n const handleCategoryList = () => {\r\n getDataCategory().then((data) => {\r\n if (data) {\r\n var dataResult = data.data || [];\r\n var listCategory = [];\r\n dataResult.map((data) => {\r\n listCategory.push({\r\n key: data.id,\r\n value: data.categoryName,\r\n });\r\n });\r\n setCategoryList(listCategory);\r\n }\r\n });\r\n };\r\n\r\n const handIUserList = () => {\r\n getDataListIUsers().then((data) => {\r\n if (data) {\r\n var dataResult = data.data || [];\r\n var listIUsers = [];\r\n dataResult.map((data) => {\r\n listIUsers.push({\r\n key: data.id,\r\n value: data.userName,\r\n });\r\n });\r\n setListIUsers(listIUsers);\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n setDataListDataNumberPage([10, 20, 50, 100, 5000, 1000]);\r\n setDataListStatus(statusCustomer);\r\n handleCategoryList();\r\n handIUserList();\r\n handleSearch();\r\n }, []);\r\n\r\n const onchangeInput = (fieldName, value) => {\r\n setDataSearch({ ...dataSearch, [fieldName]: 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 \r\n \r\n Hiển thị\r\n \r\n \r\n onchangeInput(\"numberOfPage\", e.target.value)\r\n }\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n >\r\n {listDataNumberPage &&\r\n listDataNumberPage.map((e, i) => {\r\n return (\r\n \r\n {e}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n onchangeInput(\"page\", e.target.value),\r\n endAdornment: (\r\n \r\n /{totalPage}\r\n \r\n ),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\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 Loại data\r\n \r\n \r\n onchangeInput(\"dataCategoryCode\", e.target.value)\r\n }\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n >\r\n \r\n Loại data\r\n \r\n \r\n Tất cả\r\n \r\n {listCategory &&\r\n listCategory.map((e, i) => {\r\n return (\r\n \r\n {e.value}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Trạng Thái\r\n \r\n \r\n onchangeInput(\"status\", e.target.value)\r\n }\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n >\r\n \r\n Trạng Thái\r\n \r\n \r\n Tất cả\r\n \r\n {listStatus &&\r\n listStatus.map((e, i) => {\r\n return (\r\n \r\n {e.value}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Tìm kiếm\r\n \r\n \r\n onchangeInput(\"auto\", e.target.value)\r\n }\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n >\r\n \r\n Số điện thoại\r\n \r\n \r\n Tên khách hàng\r\n \r\n \r\n \r\n \r\n \r\n \r\n onchangeInput(\"DataAuto\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\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 setOpenCreate(true)}\r\n >\r\n Tạo báo cáo chi tiết\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Bảng dữ liệu

\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n );\r\n}\r\n\r\nconst DialogExport = (props) => {\r\n const {\r\n openCreate,\r\n listCategory,\r\n listStatus,\r\n handleCloseDialog,\r\n classes,\r\n listIUsers,\r\n setOpenLoading,\r\n } = props;\r\n\r\n const [dataExport, setDataExport] = useState({\r\n dataCategoryCode: [],\r\n status: [],\r\n TimeStart: Date.now(),\r\n TimeEnd: Date.now(),\r\n IUserId: [],\r\n });\r\n\r\n const closeDialog = () => {\r\n setDataExport({\r\n dataCategoryCode: [],\r\n status: [],\r\n TimeStart: Date.now(),\r\n TimeEnd: Date.now(),\r\n IUserId: [],\r\n });\r\n handleCloseDialog();\r\n };\r\n\r\n const createFormDataExport = () => {\r\n const formData = new FormData();\r\n if (\r\n dataExport.dataCategoryCode &&\r\n dataExport.dataCategoryCode.length > 0 &&\r\n dataExport.dataCategoryCode.indexOf(valueAll) == -1\r\n ) {\r\n formData.append(\"DataCategoryCode\", dataExport.dataCategoryCode);\r\n }\r\n if (\r\n dataExport.status &&\r\n dataExport.status.length > 0 &&\r\n dataExport.status.indexOf(valueAll) == -1\r\n ) {\r\n formData.append(\"Status\", dataExport.status);\r\n }\r\n if (\r\n dataExport.IUserId &&\r\n dataExport.IUserId.length > 0 &&\r\n dataExport.IUserId.indexOf(valueAll) == -1\r\n ) {\r\n formData.append(\"IUserId\", dataExport.IUserId);\r\n }\r\n if (dataExport.TimeStart != \"\" && dataExport.TimeStart != \"undefine\") {\r\n formData.append(\r\n \"TimeStart\",\r\n moment(dataExport.TimeStart).format(\"MM-DD-YYYY HH:mm:ss\")\r\n );\r\n }\r\n if (dataExport.TimeEnd != \"\" && dataExport.TimeEnd != \"undefine\") {\r\n formData.append(\r\n \"TimeEnd\",\r\n moment(dataExport.TimeEnd).format(\"MM-DD-YYYY HH:mm:ss\")\r\n );\r\n }\r\n return formData;\r\n };\r\n\r\n const handleExportDataExport = async () => {\r\n try {\r\n setOpenLoading(true);\r\n const formData = createFormDataExport();\r\n const result = await fetchClient.post(\"/users/export\", formData, {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n },\r\n });\r\n if (result) {\r\n var blob = new Blob([convertToArrBuffer(atob(result.data))], {\r\n type:\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\",\r\n });\r\n\r\n const url = URL.createObjectURL(blob);\r\n const link = document.createElement(\"a\");\r\n link.href = url;\r\n\r\n const fileName =\r\n \"TeleSale_Customer_Export_\" +\r\n moment(Date.now()).format(\"MM-DD-YYYY_HH-mm-ss\");\r\n link.setAttribute(\"download\", fileName); //or any other extension\r\n document.body.appendChild(link);\r\n link.click();\r\n }\r\n setOpenLoading(false);\r\n } catch (e) {\r\n console.log(e);\r\n setOpenLoading(false);\r\n }\r\n };\r\n const onchangeInputExport = (fieldName, value) => {\r\n setDataExport({ ...dataExport, [fieldName]: value });\r\n };\r\n\r\n return (\r\n closeDialog()}\r\n aria-labelledby=\"responsive-dialog-title\"\r\n >\r\n \r\n {\"Tạo báo cáo chi tiết\"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Thời gian bắt đầu\r\n \r\n
\r\n \r\n onchangeInputExport(\"TimeStart\", e._d)}\r\n />\r\n \r\n
\r\n \r\n \r\n Thời gian kết thúc\r\n \r\n
\r\n \r\n onchangeInputExport(\"TimeEnd\", e._d)}\r\n />\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n Loại data\r\n \r\n \r\n onchangeInputExport(\"dataCategoryCode\", e.target.value)\r\n }\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n >\r\n \r\n Loại data\r\n \r\n \r\n Tất cả\r\n \r\n {listCategory &&\r\n listCategory.map((e, i) => {\r\n return (\r\n \r\n {e.value}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Trạng Thái\r\n \r\n \r\n onchangeInputExport(\"status\", e.target.value)\r\n }\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n >\r\n \r\n Trạng Thái\r\n \r\n \r\n Tất cả\r\n \r\n {listStatus &&\r\n listStatus.map((e, i) => {\r\n return (\r\n \r\n {e.value}\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 Tài khoản\r\n \r\n \r\n onchangeInputExport(\"IUserId\", e.target.value)\r\n }\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n >\r\n \r\n Tài khoản\r\n \r\n \r\n Tất cả\r\n \r\n {listIUsers &&\r\n listIUsers.map((e, i) => {\r\n return (\r\n \r\n {e.value}\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","// services/signalRService.js\r\nimport * as signalR from \"@microsoft/signalr\";\r\n\r\nconst isDevelopmentEnv = process.env.NODE_ENV === \"development\";\r\n// Todo move to global config\r\nconst baseURL = isDevelopmentEnv\r\n ? \"https://localhost:44377\"\r\n : \"http://tuvanbanhang.com\";\r\n\r\nconst hubConnection = new signalR.HubConnectionBuilder()\r\n .withUrl(baseURL + \"/hub/import-data\", { skipNegotiation: true, transport: signalR.HttpTransportType.WebSockets }) // The URL to your SignalR hub\r\n .configureLogging(signalR.LogLevel.Debug)\r\n .build();\r\n\r\nexport const startConnection = async () => {\r\n try {\r\n await hubConnection.start();\r\n console.log(\"SignalR Connected!\");\r\n } catch (err) {\r\n console.error(\"Error connecting to SignalR:\", err);\r\n }\r\n};\r\n\r\nexport const addMessageListener = (callback) => {\r\n hubConnection.on(\"ImportData\", callback);\r\n};\r\n\r\nexport const sendMessage = async (user, message) => {\r\n await hubConnection.invoke(\"SendMessage\", user, message);\r\n};\r\n\r\nexport const getHubMessage = (message) => {\r\n const info = message.split(\",\");\r\n return {\r\n code: info[0],\r\n message: info[1],\r\n data: info[2]\r\n };\r\n}\r\n","export const CALL_STATUS = [\r\n { code: 0, label: 'Đang đợi' },\r\n { code: 1, label: 'Đồng ý' },\r\n { code: 2, label: 'Không đồng ý mua' },\r\n { code: 3, label: 'Không nghe máy' },\r\n { code: 4, label: 'Không liên lạc được' },\r\n { code: 5, label: 'Bỏ qua' },\r\n { code: 6, label: 'Khóa' }];\r\n\r\n// Waitting = 0,\r\n// Accepted = 1,\r\n// Rejected = 2,\r\n// MissCall = 3,\r\n// WrongPhoneNumber = 4,\r\n// Ignore = 5,\r\n// Locked = 6,","import React, { useState, useEffect } from \"react\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport moment from \"moment\";\r\n\r\n// material-ui icons\r\nimport { CloudUploadTwoTone, History } from \"@material-ui/icons\";\r\nimport Close from \"@material-ui/icons/Close\";\r\nimport { DropzoneArea } from \"material-ui-dropzone\";\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\nimport ArrowForwardTwoToneIcon from '@material-ui/icons/ArrowForwardTwoTone';\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport { FormControl, Snackbar, NativeSelect, Divider, TextField, Grid } from \"@material-ui/core\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport MuiAlert from \"@material-ui/lab/Alert\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Backdrop from \"@material-ui/core/Backdrop\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport { DataGrid, GridToolbarContainer } from \"@material-ui/data-grid\";\r\n\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport FormHelperText from \"@material-ui/core/FormHelperText\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/extendedTablesStyle.js\";\r\nimport styles2 from \"assets/jss/material-dashboard-pro-react/views/extendedFormsStyle.js\";\r\n\r\nimport * as XLSX from \"xlsx\";\r\nimport { startConnection, addMessageListener, sendMessage, getHubMessage } from '../../services/signalRService';\r\n\r\nimport fetchClient from \"../../ultils/request\";\r\nimport { getSession } from \"../../ultils/appSession\";\r\nimport { CALL_STATUS } from \"variables/constant\";\r\nimport DateFnsUtils from \"@date-io/date-fns\";\r\nimport { vi } from \"date-fns/locale\";\r\nimport { MuiPickersUtilsProvider, DatePicker } from \"@material-ui/pickers\";\r\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\n\r\nconst stylesForm = {\r\n ...styles,\r\n ...styles2,\r\n marginTop20: {\r\n marginTop: \"20px\",\r\n },\r\n justifyContentGrid: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n },\r\n backdrop: {\r\n zIndex: 10000,\r\n color: \"#fff\",\r\n },\r\n errorText: {\r\n color: \"red\",\r\n },\r\n center: {\r\n justifyContent: \"center\",\r\n },\r\n textCenter: {\r\n textAlign: \"center\",\r\n },\r\n};\r\n\r\nconst useStyles = makeStyles(stylesForm);\r\n\r\n\r\nexport default function ImportPage() {\r\n const classes = useStyles();\r\n const [files, setFiles] = useState();\r\n const [dataType, setDataType] = useState();\r\n const [overrideStatusList, setOverrideStatusList] = useState([]);\r\n const [overrideFrom, setOverrideFrom] = useState(null);\r\n const [overrideTo, setOverrideTo] = useState(null);\r\n const [message, setMessage] = useState();\r\n const [openMess, setOpen] = useState(false);\r\n const [openMessSuccess, setOpenSuccess] = useState(false);\r\n const [listCategory, setCategoryList] = useState([]);\r\n const [dataPreview, setDataPreview] = useState([]);\r\n const [openLoading, setOpenLoading] = useState(false);\r\n const [openDialog, setOpenDialog] = useState(false);\r\n const [dataListFile, setDataListFile] = useState([]);\r\n const [fileUploadRes, setFileUploadRes] = useState([]);\r\n const [openDialogConfirm, setOpenDialogConfirm] = useState(false);\r\n const [idDelete, setIdDelete] = useState();\r\n const [errorText, setErrorText] = useState({});\r\n const [errorFile, setErrorFile] = useState({});\r\n const [isOverRide, setIsOverRide] = useState(false);\r\n const currentSession = getSession();\r\n const roleAdminBase = currentSession.userRoles == \"Admin\" ? true : false;\r\n const submitData = async () => {\r\n try {\r\n const formData = new FormData();\r\n formData.append(\"files\", files);\r\n formData.append(\"typeData\", dataType);\r\n formData.append(\"isOverRide\", isOverRide);\r\n\r\n if (overrideFrom) {\r\n formData.append(\"overrideFrom\", moment(overrideFrom).format(\"MM/YYYY\"));\r\n }\r\n if (overrideTo) {\r\n formData.append(\"overrideTo\", moment(overrideTo).format(\"MM/YYYY\"));\r\n }\r\n formData.append(\"overrideStatusList\", overrideStatusList);\r\n const result = await fetchClient.post(\"/importdatas\", formData, {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n },\r\n });\r\n if (result) {\r\n return result;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n };\r\n\r\n const [selectedDate, setSelectedDate] = useState({});\r\n\r\n const handleDateChange = (date) => {\r\n setSelectedDate(date);\r\n };\r\n\r\n const handleSubmitData = () => {\r\n if (validateInput()) {\r\n setOpenLoading(true);\r\n submitData().then((data) => {\r\n if (data) {\r\n setOpenSuccess(true);\r\n setOpenLoading(false);\r\n setMessage(\"Tải thành công\");\r\n handleDataList();\r\n setFiles(null);\r\n } else {\r\n setOpen(true);\r\n setOpenLoading(false);\r\n setMessage(\"Tải thất bại\");\r\n }\r\n });\r\n }\r\n };\r\n\r\n const getDataCategory = async () => {\r\n try {\r\n const result = await fetchClient.get(\"/category/categoryActive/\");\r\n if (result) {\r\n return result;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n };\r\n\r\n const handleCategoryList = () => {\r\n getDataCategory().then((data) => {\r\n if (data) {\r\n var dataResult = data.data || [];\r\n var listCategory = [];\r\n dataResult.map((data) => {\r\n listCategory.push({\r\n key: data.id,\r\n value: data.categoryName,\r\n });\r\n });\r\n setCategoryList(listCategory);\r\n }\r\n });\r\n };\r\n\r\n const getDataListFile = async () => {\r\n setOpenLoading(true);\r\n try {\r\n const result = await fetchClient.get(\"/importdatas\");\r\n if (result) {\r\n setOpenLoading(false);\r\n return result;\r\n }\r\n } catch (e) {\r\n setOpenLoading(false);\r\n console.log(e);\r\n }\r\n };\r\n const onclickDelete = (id) => {\r\n setOpenDialogConfirm(true);\r\n setIdDelete(id);\r\n };\r\n\r\n const handleDataList = () => {\r\n getDataListFile().then((result) => {\r\n if (result && result.data) {\r\n setFileUploadRes(result.data);\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n handleCategoryList();\r\n handleDataList();\r\n startConnection();\r\n addMessageListener((user, message) => {\r\n // Handle incoming messages\r\n console.log(getHubMessage(message));\r\n handleSendMessage();\r\n \r\n });\r\n // setTimeout(() => handleSendMessage(), 10000);\r\n }, []);\r\n\r\n const handleSendMessage = () => {\r\n handleDataList();\r\n };\r\n\r\n\r\n const validateInput = () => {\r\n var error = {};\r\n var helperText = {};\r\n let err = 0;\r\n if (!files || files.length < 1 || files == \"undefined\") {\r\n err++;\r\n error.files = true;\r\n helperText.files = \"Đây là trường bắt buộc\";\r\n }\r\n if (!dataType || dataType == \"undefined\" || dataType == \"\") {\r\n err++;\r\n error.dataType = true;\r\n helperText.dataType = \"Đây là trường bắt buộc\";\r\n }\r\n setErrorText(helperText);\r\n setErrorFile(error);\r\n return !err;\r\n };\r\n\r\n const simpleButtons = [{ color: \"danger\", icon: Close }].map((prop, key) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n });\r\n\r\n const getDataPreview = () => {\r\n const mineTypeExcel = [\r\n \"application/xhtml+xml\",\r\n \"application/vnd.ms-excel\",\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\",\r\n ];\r\n try {\r\n if (files) {\r\n const reader = new FileReader();\r\n if (mineTypeExcel.includes(files.type)) {\r\n reader.onload = (evt) => {\r\n const bstr = evt.target.result;\r\n const wb = XLSX.read(bstr, { type: \"binary\" });\r\n const wsname = wb.SheetNames[0];\r\n const ws = wb.Sheets[wsname];\r\n const data = XLSX.utils.sheet_to_json(ws, { header: 1 });\r\n const dataTable = data.slice(1, 11);\r\n setDataPreview(dataTable);\r\n };\r\n reader.readAsBinaryString(files);\r\n } else {\r\n reader.onload = async (e) => {\r\n const allText = e.target.result;\r\n var allTextLines = allText.split(/\\r\\n|\\n/);\r\n var data = [];\r\n for (var i = 0; i < allTextLines.length; i++) {\r\n data.push(allTextLines[i].split(\",\"));\r\n }\r\n const dataTable = data.slice(1, 11);\r\n setDataPreview(dataTable);\r\n };\r\n reader.readAsText(files);\r\n }\r\n\r\n return true;\r\n }\r\n\r\n return false;\r\n } catch (error) {\r\n return false;\r\n }\r\n };\r\n\r\n const preview = () => {\r\n var result = getDataPreview();\r\n setOpenDialog(result);\r\n };\r\n\r\n const handleCloseDialog = () => {\r\n setOpenDialog(false);\r\n setDataPreview([]);\r\n };\r\n\r\n const handleDelete = async () => {\r\n try {\r\n setOpenLoading(true);\r\n const result = await fetchClient.delete(`/importdatas/?id=${idDelete}`);\r\n if (result.status == 200) {\r\n setOpenSuccess(true);\r\n setOpenLoading(false);\r\n setMessage(\"Xóa thành công\");\r\n handleCloseDialogConfirm();\r\n handleDataList();\r\n } else {\r\n setOpen(true);\r\n setOpenLoading(false);\r\n setMessage(\"Xóa thất bại\");\r\n }\r\n } catch (e) {\r\n setOpenLoading(false);\r\n console.log(e);\r\n }\r\n };\r\n const handleCloseDialogConfirm = () => {\r\n setOpenDialogConfirm(false);\r\n };\r\n\r\n const importDataColumns = [\r\n {\r\n field: \"id\",\r\n headerName: \"Id\",\r\n sortable: true,\r\n width: 100,\r\n },\r\n {\r\n field: \"fileName\",\r\n headerName: \"File\",\r\n sortable: true,\r\n width: 300,\r\n },\r\n {\r\n field: \"createdOn\",\r\n headerName: \"Ngày tải\",\r\n sortable: true,\r\n width: 180,\r\n renderCell: (value) => moment(value).format(\"MM-DD-YYYY\"),\r\n },\r\n {\r\n field: \"duplicationRecord\",\r\n headerName: \"KH bị trùng\",\r\n sortable: true,\r\n width: 200,\r\n },\r\n {\r\n field: \"totalRecordInstalled\",\r\n headerName: \"KH mới\",\r\n sortable: true,\r\n width: 200,\r\n },\r\n {\r\n field: \"overrideRecord\",\r\n headerName: \"KH ghi đè\",\r\n sortable: true,\r\n width: 200,\r\n },\r\n {\r\n field: \"importStatus\",\r\n headerName: \"Trạng thái\",\r\n sortable: false,\r\n renderCell: (field) => getImportDisplayStatus(field.value),\r\n width: 200,\r\n },\r\n ];\r\n\r\n const getImportDisplayStatus = (status) => {\r\n switch (status) {\r\n case 0:\r\n return \r\n case 1:\r\n return \r\n case 2:\r\n return \"Đã xử lý\"\r\n case 3:\r\n return \"Có lỗi\";\r\n default:\r\n return \"Không rõ\";\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n {roleAdminBase ? \"Tài khoản của bạn không có quyền xem trang này !\" :\r\n
\r\n \r\n \r\n \r\n \r\n \r\n setFiles(files[0])}\r\n showPreviews={false}\r\n maxFileSize={209715200}\r\n filesLimit={1}\r\n dropzoneText=\"Kéo, thả file hoặc click vào đây để tải file lên.\"\r\n clearOnUnmount\r\n fullWidth\r\n acceptedFiles={[\r\n \"application/xhtml+xml\",\r\n \"application/vnd.ms-excel\",\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\",\r\n \".csv\",\r\n ]}\r\n />\r\n \r\n {errorText.files ? errorText.files : \"\"}\r\n \r\n {files && (\r\n \r\n Xem trước 10 bản ghi\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Loại dữ liệu\r\n \r\n setDataType(e.target.value)}\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n >\r\n {listCategory &&\r\n listCategory.map((e, i) => {\r\n return (\r\n \r\n {e.value}\r\n \r\n );\r\n })}\r\n \r\n \r\n {errorText.dataType ? errorText.dataType : \"\"}\r\n \r\n \r\n \r\n \r\n setIsOverRide(event.target.checked)}\r\n name=\"isOverRide\"\r\n color=\"secondary\"\r\n />\r\n }\r\n label=\"Ghi đè thông tin\"\r\n />\r\n \r\n {isOverRide && (\r\n <>\r\n \r\n \r\n Trạng thái ghi đè\r\n \r\n setOverrideStatusList(e.target.value)}\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n >\r\n {\r\n CALL_STATUS.map((e, i) => {\r\n return (\r\n \r\n {e.label}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n setOverrideFrom(date)}\r\n />\r\n \r\n setOverrideTo(date)}\r\n />\r\n )\r\n }\r\n \r\n Upload\r\n \r\n \r\n \r\n \r\n\r\n {/* Table data */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n Bảng danh sách file tải lê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 setOpen(false);\r\n setMessage(\"\");\r\n }}\r\n >\r\n {message}\r\n \r\n {\r\n setOpenSuccess(false);\r\n setMessage(\"\");\r\n }}\r\n >\r\n {message}\r\n \r\n \r\n \r\n
}\r\n \r\n );\r\n}\r\n\r\nconst PreviewDialog = (props) => {\r\n const { openDialog, handleCloseDialog, dataPreview, classes } = props;\r\n return (\r\n \r\n \r\n Xem trước file tải lên\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Bảng dữ liệu

\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\nconst DialogConfirm = (props) => {\r\n const { open, handleClose, handOK, msg, classes } = props;\r\n return (\r\n \r\n \r\n \r\n \r\n {msg}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import React, { useState, useEffect } from \"react\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// material-ui icons\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\nimport Person from \"@material-ui/icons/Person\";\r\nimport Edit from \"@material-ui/icons/Edit\";\r\nimport Close from \"@material-ui/icons/Close\";\r\nimport VisibilityIcon from '@material-ui/icons/Visibility';\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\n\r\nimport Backdrop from \"@material-ui/core/Backdrop\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport fetchClient from \"../../ultils/request\";\r\n\r\n\r\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport FormHelperText from \"@material-ui/core/FormHelperText\";\r\nimport Snackbar from \"@material-ui/core/Snackbar\";\r\nimport MuiAlert from \"@material-ui/lab/Alert\";\r\nimport { getSession } from \"../../ultils/appSession\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/extendedTablesStyle.js\";\r\nconst stylesForm = {\r\n ...styles,\r\n errorText: {\r\n color: 'red'\r\n },\r\n backdrop: {\r\n zIndex: 10000,\r\n color: \"#fff\",\r\n },\r\n};\r\n\r\n\r\nconst useStyles = makeStyles(stylesForm);\r\nconst snackbarDefault = {\r\n open: false,\r\n msg: '',\r\n status: 'success'\r\n}\r\n\r\nexport default function DataCategoryPage() {\r\n const classes = useStyles();\r\n const currentSession = getSession();\r\n const roleAdminBase = currentSession.userRoles == \"Admin\" ? true : false;\r\n const [openDialog, setOpenDialog] = useState(false);\r\n const [textDialog, setTextDialog] = useState(false);\r\n const [errorText, setErrorText] = useState({});\r\n const [errorFile, setErrorFile] = useState({});\r\n const [snackbarData, setSnackbar] = useState(snackbarDefault);\r\n const [dataListActive, setDatalistActive] = useState([]);\r\n const [dataListVisible, setDatalistVisible] = useState([]);\r\n const [dataDialog, setDataDialog] = useState({\r\n CategoryName: '',\r\n IsDeleted: '',\r\n Id: '',\r\n });\r\n\r\n const [openLoading, setOpenLoading] = useState(false);\r\n const [openDialogTable, setOpenDialogTable] = useState(false);\r\n const [dataDialogTable, setDataDialogTable] = useState(false);\r\n const [nameCategory, setNameCategory] = useState('');\r\n\r\n const validate = () => {\r\n var error = {};\r\n var helperText = {};\r\n var numberErr = 0;\r\n const {\r\n CategoryName,\r\n IsDeleted,\r\n } = dataDialog;\r\n\r\n if (CategoryName === \"\") {\r\n numberErr++;\r\n error.CategoryName = true;\r\n helperText.CategoryName = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n if (IsDeleted === \"\") {\r\n numberErr++;\r\n error.IsDeleted = true;\r\n helperText.IsDeleted = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n setErrorText(helperText);\r\n setErrorFile(error);\r\n\r\n return !numberErr;\r\n };\r\n\r\n useEffect(() => {\r\n getListData();\r\n }, [])\r\n\r\n\r\n const handleOpenCreate = () => {\r\n setOpenDialog(true)\r\n setTextDialog('Thêm')\r\n }\r\n const handleOpenEdit = () => {\r\n setOpenDialog(true)\r\n setTextDialog('Sửa')\r\n\r\n }\r\n const handleCloseDialogTable = () => {\r\n setOpenDialogTable(false)\r\n setDataDialogTable([])\r\n }\r\n\r\n const getListData = async () => {\r\n try {\r\n const result = await fetchClient(\"/category/category-customer\");\r\n if (result.data) {\r\n var dataTableActive = []\r\n var dataTableVisible = []\r\n result.data.forEach(e => {\r\n if (e.active) {\r\n dataTableActive.push([\r\n e.id,\r\n e.categoryName,\r\n e.waiting,\r\n e.accepted,\r\n e.rejected,\r\n
\r\n
\r\n {e.missCall}\r\n
\r\n {e.missCall > 0 && !roleAdminBase && }\r\n
,\r\n e.all,\r\n handleEditRowTable(e)}\r\n onclickView={() => handleViewRowTable(e.id, e.categoryName)}\r\n >\r\n ])\r\n } else {\r\n dataTableVisible.push([\r\n e.id,\r\n e.categoryName,\r\n e.waiting,\r\n e.accepted,\r\n e.rejected,\r\n e.missCall,\r\n e.all,\r\n handleEditRowTable(e)}\r\n onclickView={() => handleViewRowTable(e.id, e.categoryName)}\r\n >\r\n ])\r\n }\r\n\r\n\r\n });\r\n setDatalistActive(dataTableActive)\r\n setDatalistVisible(dataTableVisible)\r\n return result;\r\n }\r\n } catch (error) {\r\n setOpenLoading(false);\r\n console.log(error);\r\n }\r\n\r\n }\r\n const handleCloseDialog = () => {\r\n setOpenDialog(false);\r\n setDataDialog({\r\n CategoryName: \"\",\r\n Status: \"\",\r\n Id: '',\r\n });\r\n setErrorFile({})\r\n setErrorText({})\r\n };\r\n\r\n const handleEditRowTable = (e) => {\r\n handleOpenEdit()\r\n setDataDialog({ ...dataDialog, Id: e.id, CategoryName: e.categoryName, IsDeleted: !e.active })\r\n }\r\n const handleViewRowTable = (id, name) => {\r\n //todo Detail\r\n getListDataByIdCategory(id)\r\n .then((data) => {\r\n if (data) {\r\n setOpenDialogTable(true);\r\n setNameCategory(name)\r\n }\r\n })\r\n }\r\n\r\n const getListDataByIdCategory = async (id) => {\r\n try {\r\n const result = await fetchClient(`/category/detail/?id=${id}`);\r\n if (result.data) {\r\n var dataTable = []\r\n result.data.forEach(e => {\r\n dataTable.push([\r\n e.tenNhaMang,\r\n e.waiting,\r\n e.accepted,\r\n e.rejected,\r\n e.missCall,\r\n e.all,\r\n ])\r\n })\r\n\r\n setDataDialogTable(dataTable);\r\n return result;\r\n }\r\n } catch (error) {\r\n setOpenLoading(false);\r\n console.log(error);\r\n }\r\n\r\n }\r\n\r\n const handleSubmit = async () => {\r\n const formData = new FormData();\r\n if (validate()) {\r\n setOpenLoading(true);\r\n formData.append(\"CategoryName\", dataDialog.CategoryName);\r\n formData.append(\"IsDeleted\", Boolean(dataDialog.IsDeleted));\r\n if (dataDialog.Id !== \"\") {\r\n formData.append(\"Id\", dataDialog.Id);\r\n }\r\n try {\r\n const result = await fetchClient.post(\r\n \"/category/\",\r\n formData,\r\n {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n },\r\n }\r\n );\r\n if (result) {\r\n setOpenLoading(false);\r\n handleCloseDialog();\r\n setSnackbar({\r\n ...snackbarData,\r\n open: true,\r\n status: 'success',\r\n msg: 'Thành công'\r\n })\r\n getListData();\r\n return result;\r\n }\r\n } catch (error) {\r\n setOpenLoading(false);\r\n setSnackbar({\r\n ...snackbarData,\r\n open: true,\r\n status: 'error',\r\n msg: 'Thất bại'\r\n })\r\n console.log(error);\r\n }\r\n }\r\n };\r\n const roleback200 = async (id) => {\r\n setOpenLoading(true);\r\n try {\r\n const result = await fetchClient.post(\r\n `/category/roleback200?id=${id}`,\r\n );\r\n if (result) {\r\n setOpenLoading(false);\r\n setSnackbar({\r\n ...snackbarData,\r\n open: true,\r\n status: 'success',\r\n msg: 'Đã cập nhập thành công'\r\n })\r\n getListData();\r\n return result;\r\n }\r\n } catch (error) {\r\n setOpenLoading(false);\r\n setSnackbar({\r\n ...snackbarData,\r\n open: true,\r\n status: 'error',\r\n msg: 'Cập nhập thất bại'\r\n })\r\n console.log(error);\r\n }\r\n\r\n };\r\n\r\n\r\n const onchangeInput = (fieldName, value) => {\r\n setDataDialog({ ...dataDialog, [fieldName]: value });\r\n };\r\n\r\n const RoundButtons = (props) => {\r\n const { onclickEdit, onclickView } = props\r\n return (\r\n <>\r\n \r\n \r\n \r\n {!roleAdminBase && \r\n \r\n }\r\n \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

Bảng danh mục hoạt động

\r\n
\r\n \r\n {!roleAdminBase && \r\n \r\n Thêm danh mục\r\n \r\n \r\n }\r\n \r\n \r\n
\r\n
\r\n {!roleAdminBase && \r\n \r\n \r\n \r\n \r\n \r\n

Bảng danh mục không hoạt động

\r\n
\r\n \r\n \r\n \r\n
\r\n
}\r\n\r\n \r\n \r\n {textDialog} danh mục\r\n \r\n \r\n \r\n \r\n \r\n \r\n onchangeInput(\"CategoryName\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.CategoryName ? errorText.CategoryName : \"\"}\r\n error={errorFile.CategoryName}\r\n />\r\n \r\n \r\n \r\n \r\n Trạng thái\r\n \r\n onchangeInput(\"IsDeleted\", e.target.value)}\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n error={errorFile.IsDeleted}\r\n >\r\n \r\n Không hoạt động\r\n \r\n \r\n Hoạt động\r\n \r\n \r\n \r\n {errorText.IsDeleted ? errorText.IsDeleted : \"\"}\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 setSnackbar(snackbarDefault)\r\n }}\r\n >\r\n {snackbarData.msg}\r\n \r\n\r\n
\r\n );\r\n}\r\n\r\nconst DialogTable = (props) => {\r\n const { openDialog, handleCloseDialog, name, data, classes } = props\r\n return (\r\n \r\n \r\n Chi tiết danh mục {name}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Bảng chi tiết danh mục

\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}","export const formatPhoneNumber = (phoneNumber) => {\r\n if (!phoneNumber) return phoneNumber;\r\n if (phoneNumber.length < 10) return phoneNumber;\r\n return `${phoneNumber.slice(0, 3)}.${phoneNumber.slice(\r\n 3,\r\n 6\r\n )}.${phoneNumber.slice(6, 10)}`;\r\n};\r\n\r\nexport const formatCurrency = (amount) => {\r\n if (!amount) return amount;\r\n\r\n return Number(amount).toLocaleString(\"it-IT\", {\r\n style: \"currency\",\r\n currency: \"vnd\",\r\n });\r\n};\r\n","import React, { useState, useEffect } from \"react\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\nimport {\r\n CheckCircle,\r\n Cancel,\r\n PhoneDisabled,\r\n DeviceUnknown,\r\n SkipNext,\r\n} from \"@material-ui/icons\";\r\n// core components\r\nimport Edit from \"@material-ui/icons/Edit\";\r\nimport DoneOutline from \"@material-ui/icons/DoneOutline\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport { Chip, Grid, Typography } from \"@material-ui/core\";\r\nimport { Skeleton } from \"@material-ui/lab\";\r\nimport { formatCurrency, formatPhoneNumber } from \"../../../ultils/formater\";\r\nimport moment from \"moment\";\r\nimport CardHeader from \"components/Card/CardHeader\";\r\nimport cx from \"classnames\";\r\nimport fetchClient from \"../../../ultils/request\";\r\nimport { userCallLogStatus } from \"../../../variables/general\";\r\n\r\nimport {\r\n roseColor,\r\n primaryColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n blackColor,\r\n hexToRgb,\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\nimport { Snackbar } from \"@material-ui/core\";\r\nimport MuiAlert from \"@material-ui/lab/Alert\";\r\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\r\n\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport DeleteForever from \"@material-ui/icons/DeleteForever\";\r\nimport FormHelperText from \"@material-ui/core/FormHelperText\";\r\nimport Backdrop from \"@material-ui/core/Backdrop\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\n\r\nconst styles = {\r\n buttonHug: {\r\n fontSize: \"16px\",\r\n marginBottom: \"16px\",\r\n },\r\n buttonHugAccess: {\r\n fontSize: \"12px\",\r\n marginBottom: \"12px\",\r\n },\r\n buttonHugIcon: {\r\n width: \"24px\",\r\n height: \"24px\",\r\n },\r\n mb3: {\r\n marginBottom: \"8px\",\r\n },\r\n mb4: {\r\n marginBottom: \"12px\",\r\n color: '#56af39',\r\n },\r\n\r\n primary: {\r\n backgroundColor: primaryColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: primaryColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.2)\",\r\n },\r\n },\r\n info: {\r\n backgroundColor: infoColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: infoColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.2)\",\r\n },\r\n },\r\n success: {\r\n backgroundColor: successColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: successColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.2)\",\r\n },\r\n },\r\n warning: {\r\n backgroundColor: warningColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: warningColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.2)\",\r\n },\r\n },\r\n danger: {\r\n backgroundColor: dangerColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: dangerColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.2)\",\r\n },\r\n },\r\n rose: {\r\n backgroundColor: roseColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: roseColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.2)\",\r\n },\r\n },\r\n chipTextColor: {\r\n color: \"white\",\r\n },\r\n mt2: {\r\n marginTop: \"8px\",\r\n },\r\n mb1: {\r\n marginBottom: 4,\r\n },\r\n center: {\r\n justifyContent: \"center\",\r\n },\r\n textCenter: {\r\n textAlign: \"center\",\r\n fontSize: 16,\r\n fontWeight: 500,\r\n color: 'black',\r\n },\r\n backdrop: {\r\n zIndex: 10000,\r\n color: \"#fff\",\r\n },\r\n};\r\n\r\nconst userCallLogText = ['Đang đợi', \"Đồng ý\", 'Không đồng ý mua', \"Không nghe máy\", 'Không liên lạc được', 'Bỏ qua', 'Khóa'];\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function UserCallPage() {\r\n useEffect(() => {\r\n if (!customer.id && firstLoading) {\r\n fetchClient(\"/v1/customerdata\")\r\n .then((respone) => {\r\n setCustomer(respone.data);\r\n setFirstLoading(false);\r\n })\r\n .catch(handerApiError);\r\n }\r\n });\r\n\r\n useEffect(() => {\r\n fechUserCallLogSummary();\r\n }, [])\r\n\r\n const [customer, setCustomer] = useState({});\r\n\r\n const [userCalLog, setUserCallLog] = useState({});\r\n\r\n const [startCallTime, setStartCallTime] = useState(moment());\r\n\r\n const [errorMessage, setErrorMessage] = useState(\"\");\r\n\r\n const [editMode, setEditMode] = useState(false);\r\n\r\n const [editModeCod, setEditModeCod] = useState(false);\r\n\r\n const [openLoading, setOpenLoading] = useState(false);\r\n\r\n const [firstLoading, setFirstLoading] = useState(true);\r\n\r\n const [openDialogConfirm, setOpenDialogConfirm] = useState(false);\r\n const [dataBuy, setDataBuy] = useState({\r\n callStatusCode: '',\r\n area: \"\"\r\n }\r\n );\r\n\r\n const fechNextCustomer = async () => {\r\n try {\r\n setCustomer({});\r\n const customerReponse = await fetchClient(\"/v1/customerdata\");\r\n const { data: customerNext } = customerReponse;\r\n setCustomer(customerNext);\r\n } catch (error) {\r\n handerApiError(error);\r\n }\r\n };\r\n\r\n const updateUserCallLog = async (logStatus, area = \"\") => {\r\n try {\r\n var productBuy = area != \"\" ? area : customer.productBuy;\r\n const customerDto = {\r\n ...customer,\r\n callStatusCode: logStatus,\r\n productBuy: productBuy,\r\n };\r\n const userCallLogDto = {\r\n logStatusCode: logStatus,\r\n startTime: startCallTime,\r\n endTime: moment(),\r\n };\r\n\r\n await fetchClient.post(\"/v1/customerdata\", {\r\n customerDto,\r\n userCallLogDto,\r\n });\r\n\r\n fechNextCustomer();\r\n fechUserCallLogSummary();\r\n setStartCallTime(moment());\r\n\r\n handleCloseDialogConfirm();\r\n } catch (error) {\r\n handerApiError(error);\r\n handleCloseDialogConfirm();\r\n } finally {\r\n setTimeout(() => {\r\n setOpenLoading(false);\r\n }, 1000);\r\n }\r\n };\r\n\r\n const fechUserCallLogSummary = async () => {\r\n try {\r\n setUserCallLog({});\r\n const userCallLogReponse = await fetchClient.post(\r\n \"v1/UserCallLogs/getsumary\", {\r\n }\r\n );\r\n const { data } = userCallLogReponse;\r\n setUserCallLog(data);\r\n } catch (error) {\r\n handerApiError(error);\r\n }\r\n };\r\n\r\n const handerApiError = (error) => {\r\n console.log(error);\r\n setErrorMessage(error.message);\r\n };\r\n\r\n const handleUpdateUserCallLog = async () => {\r\n setOpenLoading(true);\r\n await updateUserCallLog(dataBuy.callStatusCode, dataBuy.area);\r\n };\r\n const handleOpenConfirm = async (callStatusCode, area = \"\") => {\r\n setOpenDialogConfirm(true);\r\n setDataBuy({ ...dataBuy, callStatusCode: callStatusCode, area: area })\r\n };\r\n\r\n const handleEditAddress = (value) => {\r\n setCustomer({ ...customer, address: value });\r\n };\r\n const handleEditCod = (value) => {\r\n setCustomer({ ...customer, cod: value });\r\n };\r\n const handleCloseDialogConfirm = () => {\r\n setOpenDialogConfirm(false);\r\n setDataBuy({})\r\n };\r\n\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {userCalLog.userId ? (\r\n <>\r\n }\r\n label={\r\n <>\r\n {userCalLog.accept}\r\n \r\n }\r\n className={cx(classes.success, classes.chipTextColor)}\r\n size=\"small\"\r\n />\r\n }\r\n label={\r\n <>\r\n {userCalLog.reject}\r\n \r\n }\r\n className={classes.danger}\r\n size=\"small\"\r\n />\r\n }\r\n label={\r\n <>\r\n {userCalLog.missCall}\r\n \r\n }\r\n className={classes.rose}\r\n size=\"small\"\r\n />\r\n }\r\n label={\r\n <>\r\n {userCalLog.wrongPhoneNumber}\r\n \r\n }\r\n className={classes.warning}\r\n size=\"small\"\r\n />\r\n }\r\n label={\r\n <>\r\n {userCalLog.ignore}\r\n \r\n }\r\n // className={classes.warning}\r\n size=\"small\"\r\n />\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {customer.id ? (\r\n <>\r\n \r\n \r\n {formatPhoneNumber(customer.phoneNumber)} \r\n {customer.tenNhaMang}\r\n \r\n \r\n \r\n {customer.fullName}\r\n \r\n {!editMode ? (\r\n \r\n {customer.address}\r\n setEditMode(true)}\r\n />\r\n \r\n ) : (\r\n \r\n \r\n handleEditAddress(e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n />\r\n \r\n \r\n setEditMode(false)}\r\n />\r\n \r\n \r\n )}\r\n \r\n {customer.product}\r\n \r\n\r\n {!editModeCod ? (\r\n \r\n {formatCurrency(customer.cod)}\r\n setEditModeCod(true)}\r\n />\r\n \r\n ) : (\r\n \r\n \r\n handleEditCod(e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n />\r\n \r\n \r\n setEditModeCod(false)}\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 onClick={() =>\r\n handleOpenConfirm(\r\n userCallLogStatus.accepted,\r\n \"Đồng ý nam\"\r\n )\r\n }\r\n >\r\n Đồng ý nam\r\n \r\n \r\n \r\n \r\n handleOpenConfirm(\r\n userCallLogStatus.accepted,\r\n \"Đồng ý nữ\"\r\n )\r\n }\r\n >\r\n Đồng ý nữ\r\n \r\n \r\n \r\n \r\n handleOpenConfirm(\r\n userCallLogStatus.accepted,\r\n \"Đồng ý Hà Nội\"\r\n )\r\n }\r\n >\r\n Đồng ý Hà Nội\r\n \r\n \r\n \r\n \r\n\r\n \r\n }\r\n onClick={() =>\r\n handleOpenConfirm(userCallLogStatus.rejected)\r\n }\r\n >\r\n Không đồng ý mua\r\n \r\n \r\n \r\n }\r\n onClick={() =>\r\n handleOpenConfirm(userCallLogStatus.missCall)\r\n }\r\n >\r\n Không nghe máy\r\n \r\n \r\n \r\n }\r\n onClick={() =>\r\n handleOpenConfirm(userCallLogStatus.wrongPhoneNumber)\r\n }\r\n >\r\n Không liên lạc được\r\n \r\n \r\n \r\n }\r\n onClick={() =>\r\n handleOpenConfirm(userCallLogStatus.ignore)\r\n }\r\n >\r\n Bỏ qua\r\n \r\n \r\n \r\n \r\n \r\n {errorMessage && (\r\n {\r\n setErrorMessage(\"\");\r\n }}\r\n >\r\n \r\n {errorMessage}\r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n\r\nconst DialogConfirm = (props) => {\r\n const { open, handleClose, handOK, msg, classes } = props;\r\n return (\r\n \r\n \r\n \r\n \r\n {msg}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};","import React, { useState, useEffect } from \"react\";\r\nimport moment from \"moment\";\r\nimport { formatCurrency, formatPhoneNumber } from \"../../../ultils/formater\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\nimport Dvr from \"@material-ui/icons/Dvr\";\r\nimport Favorite from \"@material-ui/icons/Favorite\";\r\nimport Close from \"@material-ui/icons/Close\";\r\nimport Edit from \"@material-ui/icons/Edit\";\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport Search from \"@material-ui/icons/Search\";\r\n\r\nimport CustomInput from \"components/CustomInput/CustomInput\";\r\n\r\nimport Backdrop from \"@material-ui/core/Backdrop\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\n\r\nimport { cardTitle } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\n\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\n\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\n\r\nimport Snackbar from \"@material-ui/core/Snackbar\";\r\nimport MuiAlert from \"@material-ui/lab/Alert\";\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/extendedTablesStyle.js\";\r\n\r\nimport queryString from 'query-string';\r\nimport fetchClient from \"../../../ultils/request\";\r\n\r\n\r\nconst stylesForm = {\r\n ...styles,\r\n cardIconTitle: {\r\n ...cardTitle,\r\n marginTop: \"15px\",\r\n marginBottom: \"0px\",\r\n },\r\n backdrop: {\r\n zIndex: 10000,\r\n color: \"#fff\",\r\n },\r\n button: {\r\n alignSelf: 'center',\r\n },\r\n name: {\r\n fontSize: '20px',\r\n fontWeight: 700,\r\n color: 'darkmagenta',\r\n },\r\n phoneNumber: {\r\n fontSize: '20px',\r\n fontWeight: 700,\r\n color: '#f10000',\r\n },\r\n cod: {\r\n fontSize: '20px',\r\n fontWeight: 700,\r\n color: '#56af39',\r\n },\r\n productBuy: {\r\n fontSize: '20px',\r\n fontWeight: 700,\r\n color: '#56af39',\r\n },\r\n logStatusCode: {\r\n fontSize: '16px',\r\n fontWeight: 700,\r\n },\r\n cityName: {\r\n fontSize: '16px',\r\n fontWeight: 700,\r\n },\r\n time: {\r\n color: '#0347c3',\r\n fontSize: '12px',\r\n fontWeight: 400,\r\n },\r\n product: {\r\n color: '#020202',\r\n fontSize: '14px',\r\n fontWeight: 400,\r\n },\r\n address: {\r\n color: '#0347c3',\r\n fontSize: '14px',\r\n fontWeight: 400,\r\n },\r\n color1: {\r\n color: '#4caf50',\r\n },\r\n color2: {\r\n color: '#f44336',\r\n },\r\n color3: {\r\n color: '#e91e63',\r\n },\r\n color4: {\r\n color: '#ff9800',\r\n },\r\n color5: {\r\n color: '#999',\r\n },\r\n end: {\r\n textAlign: 'end'\r\n },\r\n contents: {\r\n maxHeight: '72vh',\r\n overflowY: 'auto',\r\n }\r\n};\r\n\r\nvar statusCustomer = [\r\n {\r\n key: 1,\r\n value: \"Đồng ý\",\r\n },\r\n {\r\n key: 2,\r\n value: \"Từ chối\",\r\n },\r\n {\r\n key: 3,\r\n value: \"Không bắt máy\",\r\n },\r\n {\r\n key: 4,\r\n value: \"Số điện thoại sai\",\r\n },\r\n {\r\n key: 5,\r\n value: \"Bỏ qua\",\r\n }\r\n];\r\n\r\nconst useStyles = makeStyles(stylesForm);\r\nconst snackbarDefault = {\r\n open: false,\r\n msg: '',\r\n status: 'success'\r\n}\r\n\r\nexport default function UserCallHistoryPage() {\r\n const classes = useStyles();\r\n const [usersTextSearch, setUsersTextSearch] = useState(\"\");\r\n const [data, setData] = useState([]);\r\n const [openLoading, setOpenLoading] = useState(false);\r\n const [openDialogEdit, setOpenDialogEdit] = useState(false);\r\n const [dataDialogEdit, setDataDialogEdit] = useState({});\r\n const [snackbarData, setSnackbar] = useState(snackbarDefault);\r\n\r\n\r\n const handleSearchData = async () => {\r\n try {\r\n const result = await fetchClient(`/v1/UserCallLogs/my-customer/?PhoneNumber=${usersTextSearch}`);\r\n if (result) {\r\n return result;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n handleSearch();\r\n }, [])\r\n\r\n const handleSearch = () => {\r\n setOpenLoading(true);\r\n handleSearchData().then((data) => {\r\n var dataTable = [];\r\n if (data) {\r\n dataTable = data.data;\r\n // var dataMapTable = [];\r\n // dataTable.forEach((e) => {\r\n // dataMapTable.push([\r\n // e.fullName,\r\n // e.phoneNumber,\r\n // e.productBuy,\r\n // statusCustomer.filter(x => x.key == e.logStatusCode)[0]?.value,\r\n // e.createdOn ? moment(e.createdOn).format(\"MM-DD-YYYY HH:mm:ss\") : \"---\",\r\n // \r\n // ]);\r\n // });\r\n // setData(dataMapTable);\r\n setData(dataTable);\r\n }\r\n setOpenLoading(false);\r\n });\r\n };\r\n\r\n const handleSubmitEdit = async (customerId, userCallLogId, statusCode, productBuy, address, cod) => {\r\n var query = queryString.stringify({\r\n customerId: customerId,\r\n userCallLogId: userCallLogId,\r\n statusCode: statusCode,\r\n productBuy: productBuy,\r\n address: address,\r\n cod: cod,\r\n }, { arrayFormat: 'comma' });\r\n return await fetchClient.post(`/v1/UserCallLogs/edit-my-customer/?${query}`);\r\n };\r\n\r\n\r\n const handleCloseDialogEdit = () => {\r\n setOpenDialogEdit(false);\r\n setDataDialogEdit({})\r\n }\r\n\r\n const handleOpenDialogEdit = (value) => {\r\n setOpenDialogEdit(true)\r\n setDataDialogEdit(value)\r\n }\r\n const setClassNameStatus = (status) => {\r\n\r\n var className = \"\"\r\n switch (status) {\r\n case 1:\r\n className = classes.color1\r\n break;\r\n case 2:\r\n className = classes.color2\r\n break;\r\n case 3:\r\n className = classes.color3\r\n break;\r\n case 4:\r\n className = classes.color4\r\n break;\r\n case 5:\r\n className = classes.color5\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n return className\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n

Lịch sử cuộc gọi

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n setUsersTextSearch(e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\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

Danh sách dữ liệu

\r\n
\r\n */}\r\n {/* */}\r\n
\r\n {data.length > 0 && data.map((e) =>\r\n \r\n \r\n \r\n \r\n \r\n

{e.fullName}

\r\n

{e.productBuy}

\r\n
\r\n \r\n {statusCustomer.filter(x => x.key == e.logStatusCode)[0]?.value}\r\n
\r\n {e.createdOn ? moment(e.createdOn).format(\"MM-DD-YYYY HH:mm:ss\") : \"---\"}\r\n
\r\n \r\n

{formatPhoneNumber(e.phoneNumber)}

\r\n
\r\n \r\n

{formatCurrency(e.cod)}

\r\n
\r\n \r\n

{e.product}

\r\n
\r\n \r\n

{e.address}

\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 setSnackbar(snackbarDefault)\r\n }}\r\n >\r\n {snackbarData.msg}\r\n \r\n\r\n
\r\n );\r\n}\r\nconst UpdateUser = (props) => {\r\n const { openDialog, handleCloseDialog, dataDialog, handleSubmit,\r\n handleSearch, classes, setSnackbar, snackbarData, setOpenLoading } = props\r\n const [status, setStatus] = useState(0);\r\n const [productBuy, setProductBuy] = useState(\"Body mist C28\");\r\n const [address, setAddress] = useState(\"Miền Bắc\");\r\n const [cod, setCod] = useState(0);\r\n\r\n\r\n useEffect(() => {\r\n if (dataDialog) {\r\n setStatus(dataDialog.logStatusCode)\r\n setAddress(dataDialog.address)\r\n setCod(dataDialog.cod)\r\n if (dataDialog.productBuy) {\r\n setProductBuy(dataDialog.productBuy)\r\n }\r\n }\r\n }, [openDialog])\r\n\r\n const closeDialog = () => {\r\n setStatus();\r\n handleCloseDialog();\r\n }\r\n\r\n const submitEdit = () => {\r\n try {\r\n setOpenLoading(true);\r\n handleSubmit(dataDialog.customerId, dataDialog.userCallLogId, status, productBuy, address, cod).then((result) => {\r\n if (result && result.data) {\r\n setOpenLoading(false);\r\n handleSearch();\r\n closeDialog();\r\n setSnackbar({\r\n ...snackbarData,\r\n open: true,\r\n status: 'success',\r\n msg: 'Thành công'\r\n })\r\n }\r\n })\r\n } catch (error) {\r\n setOpenLoading(false);\r\n setSnackbar({\r\n ...snackbarData,\r\n open: true,\r\n status: 'error',\r\n msg: 'Thất bại'\r\n })\r\n console.log(error);\r\n }\r\n\r\n }\r\n\r\n return (\r\n \r\n Sửa trạng thái cho {dataDialog.fullName}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Trạng Thái\r\n \r\n \r\n setStatus(e.target.value)\r\n }\r\n >\r\n \r\n Trạng Thái\r\n \r\n {statusCustomer &&\r\n statusCustomer.map((e, i) => {\r\n return (\r\n \r\n {e.value}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n {status == 1 && \r\n \r\n \r\n Sản phẩm\r\n \r\n \r\n setProductBuy(e.target.value)\r\n }\r\n >\r\n \r\n Body mist C28\r\n \r\n \r\n Body mist C34\r\n \r\n \r\n Bleu Chanel 100ml\r\n \r\n \r\n CoCo chanel 100ml\r\n \r\n\r\n \r\n \r\n }\r\n \r\n \r\n setCod(e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n />\r\n \r\n \r\n \r\n setAddress(e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n}","import React, { useState, useEffect } from \"react\";\r\nimport moment from \"moment\";\r\nimport queryString from 'query-string';\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// @material-ui/icons\r\nimport Call from \"@material-ui/icons/Call\";\r\nimport PersonAdd from \"@material-ui/icons/PersonAdd\";\r\nimport PhoneDisabled from \"@material-ui/icons/PhoneDisabled\";\r\nimport PersonAddDisabled from \"@material-ui/icons/PersonAddDisabled\";\r\nimport Warning from \"@material-ui/icons/Warning\";\r\nimport Search from \"@material-ui/icons/Search\";\r\nimport GetApp from \"@material-ui/icons/GetApp\";\r\nimport SkipNext from \"@material-ui/icons/SkipNext\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Danger from \"components/Typography/Danger.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardFooter from \"components/Card/CardFooter.js\";\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\n\r\nimport Datetime from \"react-datetime\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\n\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/dashboardStyle.js\";\r\nimport Backdrop from \"@material-ui/core/Backdrop\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport fetchClient from \"../../ultils/request\";\r\n\r\nconst stylesForm = {\r\n ...styles,\r\n errorText: {\r\n color: \"red\",\r\n },\r\n backdrop: {\r\n zIndex: 10000,\r\n color: \"#fff\",\r\n },\r\n displayFlex: {\r\n display: 'flex'\r\n },\r\n};\r\nvar today = {\r\n TimeStart: moment(Date.now()).format(\"YYYY/MM/DD 00:00:00\"),\r\n TimeEnd: moment(Date.now()).format(\"YYYY/MM/DD 23:59:59\"),\r\n}\r\n\r\nconst useStyles = makeStyles(stylesForm);\r\nconst statusCall = {\r\n Waitting: 0,\r\n Accepted: 1,\r\n Rejected: 2,\r\n MissCall: 3,\r\n WrongPhoneNumber: 4,\r\n Ignore: 5,\r\n Locked: 6,\r\n};\r\nexport default function Home() {\r\n const classes = useStyles();\r\n const [openLoading, setOpenLoading] = useState(false);\r\n\r\n\r\n const [dataExport, setDataExport] = useState(today);\r\n\r\n const [dataCall, setDataCall] = useState({\r\n Accepted: 0,\r\n Rejected: 0,\r\n MissCall: 0,\r\n WrongPhoneNumber: 0,\r\n WrongPhoneNumber: 0,\r\n Ignore: 0,\r\n });\r\n const [dataCallFollowUser, setDataCallFollowUser] = useState([]);\r\n\r\n useEffect(() => {\r\n getListData(today.TimeStart, today.TimeEnd);\r\n getListDataFollowUser();\r\n }, []);\r\n\r\n const getListData = async (start, end) => {\r\n try {\r\n var query = queryString.stringify({\r\n TimeStart: start,\r\n TimeEnd: end\r\n }, { arrayFormat: 'comma' });\r\n const result = await fetchClient(`/v1/UserCallLogs/getAllByTime/?${query}`);\r\n if (result.data) {\r\n var data = result.data;\r\n var tran = {};\r\n data.forEach((e) => {\r\n tran[e.logStatus] = e.count;\r\n });\r\n setDataCall(tran);\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n };\r\n const getListDataFollowUser = async () => {\r\n try {\r\n setOpenLoading(true);\r\n var query = queryString.stringify(dataExport, { arrayFormat: 'comma' });\r\n const result = await fetchClient(`/v1/UserCallLogs/getCallFollowUsers/?${query}`);\r\n setOpenLoading(false);\r\n if (result.data) {\r\n var data = result.data;\r\n var dataTable = [];\r\n data.forEach((e) => {\r\n dataTable.push([\r\n e.userName,\r\n e.accept,\r\n e.reject,\r\n e.missCall,\r\n e.wrongPhoneNumber,\r\n e.ignore,\r\n e.all,\r\n ]);\r\n });\r\n setDataCallFollowUser(dataTable);\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n setOpenLoading(false);\r\n }\r\n };\r\n\r\n const convertToArrBuffer = (s) => {\r\n var buf = new ArrayBuffer(s.length);\r\n var view = new Uint8Array(buf);\r\n for (var i = 0; i != s.length; ++i) view[i] = s.charCodeAt(i) & 0xff;\r\n return buf;\r\n };\r\n\r\n const ExportListDataFollowUser = async () => {\r\n try {\r\n setOpenLoading(true);\r\n var query = queryString.stringify(dataExport, { arrayFormat: 'comma' });\r\n const result = await fetchClient(`/v1/UserCallLogs/getCallFollowUsers/?${query}&Export=True`);\r\n if (result.data) {\r\n var blob = new Blob([convertToArrBuffer(atob(result.data))], {\r\n type:\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\",\r\n });\r\n\r\n const url = URL.createObjectURL(blob);\r\n const link = document.createElement(\"a\");\r\n link.href = url;\r\n\r\n const fileName =\r\n \"TeleSale_User_Export_\" +\r\n moment(Date.now()).format(\"MM-DD-YYYY_HH-mm-ss\");\r\n link.setAttribute(\"download\", fileName); //or any other extension\r\n document.body.appendChild(link);\r\n link.click();\r\n setOpenLoading(false);\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n setOpenLoading(false);\r\n }\r\n };\r\n\r\n const onchangeInputExport = (fieldName, value) => {\r\n if (value) {\r\n value = moment(value).format(\"YYYY/MM/DD HH:mm:ss\")\r\n }\r\n setDataExport({ ...dataExport, [fieldName]: value });\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

Thống kê theo nhân viên

\r\n
\r\n \r\n \r\n \r\n \r\n Thời gian bắt đầu\r\n \r\n \r\n onchangeInputExport(\"TimeStart\", e._d)}\r\n />\r\n \r\n \r\n \r\n \r\n Thời gian kết thúc\r\n \r\n \r\n onchangeInputExport(\"TimeEnd\", e._d)}\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\nconst DisplayDataCall = (props) => {\r\n const { title, dataCall, classes, getListData } = props\r\n\r\n const checkNumber = (number) => {\r\n\r\n return Number(number) || 0\r\n\r\n }\r\n const dataAll = checkNumber(dataCall.Accepted) + checkNumber(dataCall.MissCall)\r\n + checkNumber(dataCall.Rejected) + checkNumber(dataCall.WrongPhoneNumber) + checkNumber(dataCall.Ignore)\r\n\r\n const [dataExport, setDataExport] = useState({\r\n TimeStart: moment(Date.now()).format(\"YYYY/MM/DD 00:00:00\"),\r\n TimeEnd: moment(Date.now()).format(\"YYYY/MM/DD 23:59:59\"),\r\n });\r\n\r\n const onchangeInputExport = (fieldName, value) => {\r\n if (value) {\r\n value = moment(value).format(\"YYYY/MM/DD HH:mm:ss\")\r\n }\r\n setDataExport({ ...dataExport, [fieldName]: value });\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n

{title}

\r\n
\r\n \r\n \r\n \r\n \r\n Thời gian bắt đầu\r\n \r\n \r\n onchangeInputExport(\"TimeStart\", e._d)}\r\n />\r\n \r\n \r\n \r\n \r\n Thời gian kết thúc\r\n \r\n \r\n onchangeInputExport(\"TimeEnd\", e._d)}\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

Tổng số cuộc gọi

\r\n

\r\n {checkNumber(dataAll)}\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

Số lượng khách đồng ý

\r\n

{checkNumber(dataCall.Accepted)}

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n Số lượng khách không bắt máy\r\n

\r\n

{checkNumber(dataCall.MissCall)}

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

Số lượng khách từ chối

\r\n

{checkNumber(dataCall.Rejected)}

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n Số lượng không liên lạc được\r\n

\r\n

{checkNumber(dataCall.WrongPhoneNumber)}

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n Số lượng bỏ qua\r\n

\r\n

{checkNumber(dataCall.Ignore)}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
)\r\n}","import React, { useState, useEffect } from \"react\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport queryString from 'query-string';\r\n\r\n// material-ui icons\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\nimport Person from \"@material-ui/icons/Person\";\r\nimport Edit from \"@material-ui/icons/Edit\";\r\nimport Close from \"@material-ui/icons/Close\";\r\nimport Delete from \"@material-ui/icons/Delete\";\r\nimport VisibilityIcon from '@material-ui/icons/Visibility';\r\nimport Add from \"@material-ui/icons/Add\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\n\r\nimport Backdrop from \"@material-ui/core/Backdrop\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\n\r\n\r\n\r\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport FormHelperText from \"@material-ui/core/FormHelperText\";\r\nimport Snackbar from \"@material-ui/core/Snackbar\";\r\nimport MuiAlert from \"@material-ui/lab/Alert\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/extendedTablesStyle.js\";\r\nimport styles2 from \"assets/jss/material-dashboard-pro-react/views/extendedFormsStyle.js\";\r\n\r\nimport fetchClient from \"../../ultils/request\";\r\nimport { getSession } from \"../../ultils/appSession\";\r\nconst stylesForm = {\r\n ...styles,\r\n ...styles2,\r\n errorText: {\r\n color: 'red'\r\n },\r\n backdrop: {\r\n zIndex: 10000,\r\n color: \"#fff\",\r\n },\r\n maxWidth200: {\r\n maxWidth: 200,\r\n },\r\n};\r\n\r\nconst MobileNetworkSupplierList = [\r\n {\r\n key: 1,\r\n value: \"VIETTEL\",\r\n },\r\n {\r\n key: 2,\r\n value: \"VINAPHONE\",\r\n },\r\n {\r\n key: 3,\r\n value: \"MOBIPHONE\",\r\n },\r\n {\r\n key: 4,\r\n value: \"VIETNAMOBILE\",\r\n },\r\n {\r\n key: 5,\r\n value: \"ITELECOM\",\r\n },\r\n {\r\n key: 6,\r\n value: \"NHÀ MẠNG KHÁC\",\r\n },\r\n];\r\n\r\nconst useStyles = makeStyles(stylesForm);\r\nconst snackbarDefault = {\r\n open: false,\r\n msg: '',\r\n status: 'success'\r\n}\r\n\r\nexport default function TeamPage() {\r\n const classes = useStyles();\r\n const [openLoading, setOpenLoading] = useState(false);\r\n const [snackbarData, setSnackbar] = useState(snackbarDefault);\r\n const [openDialog, setOpenDialog] = useState(false);\r\n const [dataList, setDataList] = useState([]);\r\n const [dataMyTeam, setDataMyTeam] = useState([]);\r\n const [dataOutTeam, setDataOutTeam] = useState([]);\r\n const [textDialog, setTextDialog] = useState(false);\r\n const [role, setRole] = useState(\"\");\r\n const [dataDialog, setDataDialog] = useState({\r\n CategoryName: '',\r\n TeamLead: '',\r\n Id: '',\r\n });\r\n\r\n const [listCategory, setCategoryList] = useState([]);\r\n\r\n const [openDialogConfirm, setOpenDialogConfirm] = useState(false);\r\n const [idDelete, setIdDelete] = useState();\r\n\r\n const [openCreate, setOpenCreate] = useState(false);\r\n const [idEdit, setIdEdit] = useState(false);\r\n\r\n useEffect(() => {\r\n const currentSession = getSession();\r\n if (currentSession.userRoles !== \"Admin\") {\r\n getListData();\r\n } else {\r\n handleCategoryList();\r\n }\r\n setRole(currentSession.userRoles)\r\n }, [])\r\n\r\n useEffect(() => {\r\n if (listCategory.length > 0) {\r\n handleReloadTable();\r\n }\r\n }, [listCategory])\r\n\r\n const handleReloadTable = () => {\r\n getDataOutTeam();\r\n getDataMyTeam();\r\n }\r\n\r\n\r\n const getDataCategory = async () => {\r\n try {\r\n const result = await fetchClient.get(\"/category/categoryActive/\");\r\n if (result) {\r\n return result;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n };\r\n\r\n const handleCategoryList = () => {\r\n getDataCategory().then((data) => {\r\n if (data) {\r\n var dataResult = data.data || [];\r\n var listCategory = [];\r\n dataResult.map((data) => {\r\n listCategory.push({\r\n key: data.id.toString(),\r\n value: data.categoryName,\r\n });\r\n });\r\n setCategoryList(listCategory);\r\n }\r\n });\r\n };\r\n\r\n const RoundButtons = (props) => {\r\n const { onclickEdit, onclickDelete } = props\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 const getListData = async () => {\r\n try {\r\n const result = await fetchClient(\"/team/\");\r\n if (result && result.data) {\r\n var dataTable = []\r\n result.data.forEach(e => {\r\n dataTable.push([\r\n e.name,\r\n e.teamLeadName,\r\n e.numberMember,\r\n handleEditRowTable(e)}\r\n onclickDelete={() => handleDeleteRowTable(e.teamId)}\r\n >\r\n ])\r\n });\r\n setDataList(dataTable)\r\n return result;\r\n }\r\n } catch (error) {\r\n setOpenLoading(false);\r\n console.log(error);\r\n }\r\n\r\n }\r\n\r\n const handleEditRowTable = (value) => {\r\n handleOpenEdit();\r\n setDataDialog(value);\r\n }\r\n\r\n const handleDeleteRowTable = (id) => {\r\n setOpenDialogConfirm(true);\r\n setIdDelete(id);\r\n }\r\n\r\n\r\n const handleDelete = async () => {\r\n try {\r\n setOpenLoading(true);\r\n const result = await fetchClient.delete(`/team/?id=${idDelete}`);\r\n if (result.status == 200) {\r\n setOpenLoading(false);\r\n getListData();\r\n setSnackbar({\r\n ...snackbarData,\r\n open: true,\r\n status: 'success',\r\n msg: 'Thành công'\r\n })\r\n handleCloseDialogConfirm();\r\n } else {\r\n setOpenLoading(false);\r\n setSnackbar({\r\n ...snackbarData,\r\n open: true,\r\n status: 'error',\r\n msg: 'Không thành công'\r\n })\r\n }\r\n } catch (e) {\r\n setOpenLoading(false);\r\n console.log(e);\r\n }\r\n };\r\n\r\n const handleCloseDialogConfirm = () => {\r\n setOpenDialogConfirm(false);\r\n };\r\n\r\n\r\n const handleOpenCreate = () => {\r\n setOpenDialog(true);\r\n setTextDialog('Thêm');\r\n }\r\n const handleOpenEdit = () => {\r\n setOpenDialog(true);\r\n setTextDialog('Sửa');\r\n\r\n }\r\n\r\n const handleCloseDialog = () => {\r\n setOpenDialog(false);\r\n setDataDialog({\r\n CategoryName: \"\",\r\n Status: \"\",\r\n Id: '',\r\n });\r\n };\r\n\r\n const getUserListMyTeam = async () => {\r\n return await fetchClient.get(\"/users/iUser-my-team\");\r\n };\r\n\r\n const getDataMyTeam = () => {\r\n getUserListMyTeam().then((result) => {\r\n var dataTable = result.data;\r\n if (!dataTable) {\r\n setSnackbar({\r\n ...snackbarData,\r\n open: true,\r\n status: 'error',\r\n msg: 'Bạn đang không quản lý nhóm nào'\r\n })\r\n return;\r\n }\r\n var dataMapTable = [];\r\n dataTable && dataTable.forEach((e) => {\r\n dataMapTable.push([\r\n e.userName,\r\n e.email,\r\n e.mobileNetworkSupplier,\r\n displayDataCategory(e.dataCategory),\r\n e.isActive ?\r\n

Đang hoạt động

:

Dừng hoạt động

,\r\n <>\r\n \r\n \r\n \r\n ]);\r\n })\r\n setDataMyTeam(dataMapTable)\r\n })\r\n }\r\n\r\n\r\n const displayDataCategory = (dataCategoryListStr) => {\r\n if (!dataCategoryListStr) return null;\r\n const datacategoryList = dataCategoryListStr.split(\",\");\r\n let listCategoryName = [];\r\n for (let index = 0; index < datacategoryList.length; index++) {\r\n const categoryId = datacategoryList[index];\r\n const category = listCategory.filter((item) => item.key == categoryId);\r\n if (category && category.length > 0) {\r\n listCategoryName.push(category[0].value);\r\n } else {\r\n listCategoryName.push(`(${categoryId})`);\r\n }\r\n }\r\n\r\n return listCategoryName.join(\", \");\r\n };\r\n const editUser = (value) => {\r\n // Todo Edit\r\n setIdEdit(value)\r\n setOpenCreate(true)\r\n }\r\n\r\n const callDeleteUser = async (id) => {\r\n return await fetchClient.post(`/team/delete/?userId=${id}`);\r\n };\r\n\r\n const deleteUser = (id) => {\r\n callDeleteUser(id).then((result) => {\r\n handleReloadTable();\r\n })\r\n }\r\n\r\n const getUserListOutTeam = async () => {\r\n return await fetchClient.get(\"/users/list-user-role/?roleName=Basic\");\r\n };\r\n\r\n const callAddUser = async (id) => {\r\n try {\r\n return await fetchClient.post(`/team/add/?userId=${id}`);\r\n } catch (error) {\r\n setSnackbar({\r\n ...snackbarData,\r\n open: true,\r\n status: 'error',\r\n msg: 'Bạn không thể thêm tài khoản này vào nhóm'\r\n })\r\n }\r\n };\r\n\r\n const addUser = (id) => {\r\n callAddUser(id).then((result) => {\r\n if (result) {\r\n handleReloadTable();\r\n\r\n }\r\n })\r\n }\r\n\r\n const getDataOutTeam = () => {\r\n getUserListOutTeam().then((result) => {\r\n if (result) {\r\n var dataTable = result.data;\r\n var dataMapTable = [];\r\n dataTable && dataTable.forEach((e) => {\r\n dataMapTable.push([\r\n e.userName,\r\n e.email,\r\n e.mobileNetworkSupplier,\r\n displayDataCategory(e.dataCategory),\r\n e.isActive ?\r\n

Đang hoạt động

:

Dừng hoạt động

,\r\n \r\n ]);\r\n })\r\n setDataOutTeam(dataMapTable)\r\n }\r\n })\r\n }\r\n return (\r\n \r\n \r\n \r\n \r\n\r\n {role !== \"Admin\" && \r\n \r\n \r\n \r\n \r\n \r\n

Bảng danh sách nhóm

\r\n
\r\n \r\n \r\n \r\n Thêm nhóm\r\n \r\n \r\n \r\n \r\n
\r\n
}\r\n {role == \"Admin\" && \r\n \r\n \r\n \r\n \r\n \r\n

Bảng danh sách thành viên trong nhóm

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
}\r\n {role == \"Admin\" && \r\n \r\n \r\n \r\n \r\n \r\n

Bảng danh sách thành viên chưa có nhóm

\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 setSnackbar(snackbarDefault)\r\n }}\r\n >\r\n {snackbarData.msg}\r\n \r\n
\r\n );\r\n}\r\n\r\n\r\nconst DialogCRUDTeam = (props) => {\r\n const { openDialog, handleCloseDialog, textDialog,\r\n classes, setOpenLoading, setSnackbar, snackbarData, getListData, dataDialogCurrent } = props;\r\n const [listAdmin, setListAdmin] = useState([])\r\n const [listUser, setListUser] = useState([])\r\n const [dataDialog, setDataDialog] = useState({\r\n Name: '',\r\n TeamLeadId: '',\r\n Address: '',\r\n Id: ''\r\n });\r\n\r\n useEffect(() => {\r\n getDataListIUsers();\r\n if (openDialog) {\r\n setDataDialog({\r\n Id: dataDialogCurrent.teamId,\r\n Name: dataDialogCurrent.name,\r\n TeamLeadId: dataDialogCurrent.teamLead,\r\n Address: dataDialogCurrent.address,\r\n })\r\n }\r\n\r\n }, [openDialog])\r\n\r\n const getDataListIUsers = async () => {\r\n try {\r\n const result = await fetchClient.get(\"/users/list-user-role/?roleName=Admin\");\r\n if (result) {\r\n if (result.data) {\r\n var data = result.data;\r\n var listAdminResult = [];\r\n data.forEach(e => {\r\n listAdminResult.push({\r\n userId: e.userId,\r\n userName: e.userName,\r\n })\r\n });\r\n if (dataDialogCurrent.teamLead) {\r\n listAdminResult.push({\r\n userId: dataDialogCurrent.teamLead,\r\n userName: dataDialogCurrent.teamLeadName,\r\n })\r\n }\r\n\r\n setListAdmin(listAdminResult);\r\n }\r\n return result;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n };\r\n\r\n const [errorText, setErrorText] = useState({});\r\n const [errorFile, setErrorFile] = useState({});\r\n\r\n\r\n const CRUDTeam = async () => {\r\n const formData = new FormData();\r\n if (dataDialog.Id) {\r\n formData.append(\"Id\", dataDialog.Id);\r\n formData.append(\"TeamLeadIdOld\", dataDialogCurrent.teamLead);\r\n }\r\n formData.append(\"Name\", dataDialog.Name);\r\n formData.append(\"TeamLeadId\", dataDialog.TeamLeadId);\r\n formData.append(\"Address\", dataDialog.Address);\r\n\r\n return await fetchClient.post(\"/team/crud-team/\", formData,\r\n {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n },\r\n }\r\n );\r\n }\r\n\r\n const handleSubmit = async () => {\r\n if (validate()) {\r\n setOpenLoading(true);\r\n try {\r\n CRUDTeam().then((result) => {\r\n if (result) {\r\n setOpenLoading(false);\r\n handleCloseDialog();\r\n setSnackbar({\r\n ...snackbarData,\r\n open: true,\r\n status: 'success',\r\n msg: 'Thành công'\r\n })\r\n getListData();\r\n return result;\r\n }\r\n })\r\n } catch (error) {\r\n setOpenLoading(false);\r\n setSnackbar({\r\n ...snackbarData,\r\n open: true,\r\n status: 'error',\r\n msg: 'Thất bại'\r\n })\r\n console.log(error);\r\n }\r\n }\r\n };\r\n const validate = () => {\r\n var error = {};\r\n var helperText = {};\r\n var numberErr = 0;\r\n const {\r\n Name,\r\n TeamLeadId,\r\n Address,\r\n } = dataDialog;\r\n\r\n if (Name === \"\") {\r\n numberErr++;\r\n error.Name = true;\r\n helperText.Name = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n if (TeamLeadId === \"\") {\r\n numberErr++;\r\n error.TeamLeadId = true;\r\n helperText.TeamLeadId = \"Đây là trường bắt buộc\";\r\n }\r\n if (Address === \"\") {\r\n numberErr++;\r\n error.Address = true;\r\n helperText.Address = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n setErrorText(helperText);\r\n setErrorFile(error);\r\n\r\n return !numberErr;\r\n };\r\n\r\n const onchangeInput = (fieldName, value) => {\r\n setDataDialog({ ...dataDialog, [fieldName]: value });\r\n };\r\n\r\n return (\r\n \r\n {textDialog} nhóm\r\n \r\n \r\n \r\n \r\n \r\n \r\n onchangeInput(\"Name\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.Name ? errorText.Name : \"\"}\r\n error={errorFile.Name}\r\n />\r\n \r\n \r\n \r\n \r\n TeamLead\r\n \r\n onchangeInput(\"TeamLeadId\", e.target.value)}\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n error={errorFile.TeamLeadId}\r\n >\r\n {listAdmin.length > 0 &&\r\n listAdmin.map((e) =>\r\n \r\n {e.userName}\r\n \r\n )\r\n\r\n }\r\n \r\n \r\n {errorText.TeamLeadId ? errorText.TeamLeadId : \"\"}\r\n \r\n \r\n \r\n \r\n \r\n onchangeInput(\"Address\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.Address ? errorText.Address : \"\"}\r\n error={errorFile.Address}\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\nconst DialogConfirm = (props) => {\r\n const { open, handleClose, handOK, msg, classes } = props;\r\n return (\r\n \r\n \r\n \r\n \r\n {msg}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst EditUser = (props) => {\r\n\r\n const { setOpenCreate, openCreate, idEdit, classes, setOpenLoading, getDataMyTeam } = props\r\n const [data, setData] = useState({\r\n Id: \"\",\r\n UserName: \"\",\r\n Role: \"\",\r\n FirstName: \"\",\r\n LastName: \"\",\r\n IsActive: \"\",\r\n MobileNetworkSupplier: [],\r\n DataCategory: [],\r\n });\r\n\r\n const [listCategory, setCategoryList] = useState([]);\r\n const [errorText, setErrorText] = useState({});\r\n const [errorFile, setErrorFile] = useState({});\r\n\r\n useEffect(() => {\r\n if (openCreate) {\r\n handleCategoryList();\r\n getDataCurrent();\r\n }\r\n }, [openCreate])\r\n\r\n const getDataCurrent = () => {\r\n getUserById().then((result) => {\r\n var value = result.data;\r\n setData({\r\n Id: value.id,\r\n UserName: value.userName,\r\n FirstName: value.firstName,\r\n LastName: value.lastName,\r\n IsActive: value.isActive,\r\n MobileNetworkSupplier: value.mobileNetworkSupplier?.split(\",\") || [],\r\n DataCategory: value.dataCategory?.split(\",\") || [],\r\n })\r\n })\r\n }\r\n\r\n const validate = () => {\r\n var error = {};\r\n var helperText = {};\r\n var numberErr = 0;\r\n const {\r\n FirstName,\r\n LastName,\r\n UserName,\r\n IsActive,\r\n DataCategory,\r\n MobileNetworkSupplier,\r\n } = data;\r\n\r\n if (!FirstName) {\r\n numberErr++;\r\n error.FirstName = true;\r\n helperText.FirstName = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n if (!LastName) {\r\n numberErr++;\r\n error.LastName = true;\r\n helperText.LastName = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n if (!UserName) {\r\n numberErr++;\r\n error.UserName = true;\r\n helperText.UserName = \"Đây là trường bắt buộc\";\r\n }\r\n if (UserName && UserName.length < 6) {\r\n numberErr++;\r\n error.UserName = true;\r\n helperText.UserName = \"Độ dài tối thiểu là 6\";\r\n }\r\n\r\n if (IsActive.toString() === \"\") {\r\n numberErr++;\r\n error.IsActive = true;\r\n helperText.IsActive = \"Đây là trường bắt buộc\";\r\n }\r\n if (!DataCategory.length) {\r\n numberErr++;\r\n error.DataCategory = true;\r\n helperText.DataCategory = \"Đây là trường bắt buộc\";\r\n }\r\n if (!MobileNetworkSupplier.length) {\r\n numberErr++;\r\n error.MobileNetworkSupplier = true;\r\n helperText.MobileNetworkSupplier = \"Đây là trường bắt buộc\";\r\n }\r\n setErrorText(helperText);\r\n setErrorFile(error);\r\n\r\n return !numberErr;\r\n };\r\n\r\n\r\n const getDataCategory = async () => {\r\n try {\r\n const result = await fetchClient.get(\"/category/categoryActive/\");\r\n if (result) {\r\n return result;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n };\r\n\r\n const handleCategoryList = () => {\r\n getDataCategory().then((data) => {\r\n if (data) {\r\n var dataResult = data.data || [];\r\n var listCategory = [];\r\n dataResult.map((data) => {\r\n listCategory.push({\r\n key: data.id.toString(),\r\n value: data.categoryName,\r\n });\r\n });\r\n setCategoryList(listCategory);\r\n }\r\n });\r\n };\r\n\r\n\r\n const onchangeInput = (fieldName, value) => {\r\n setData({ ...data, [fieldName]: value });\r\n };\r\n\r\n\r\n const callApiUpdate = async () => {\r\n const formData = new FormData();\r\n if (validate()) {\r\n setOpenLoading(true);\r\n formData.append(\"Id\", data.Id);\r\n formData.append(\"FirstName\", data.FirstName);\r\n formData.append(\"LastName\", data.LastName);\r\n formData.append(\"UserName\", data.UserName);\r\n formData.append(\"IsActive\", data.IsActive);\r\n formData.append(\"DataCategory\", data.DataCategory);\r\n formData.append(\r\n \"MobileNetworkSupplier\",\r\n data.MobileNetworkSupplier\r\n );\r\n try {\r\n const result = await fetchClient.post(\r\n \"/identity/edit-user\",\r\n formData,\r\n {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n },\r\n }\r\n );\r\n if (result) {\r\n setOpenLoading(false);\r\n handleCloseDialog();\r\n return result;\r\n }\r\n } catch (error) {\r\n setOpenLoading(false);\r\n console.log(error);\r\n }\r\n }\r\n }\r\n\r\n const handleSubmit = () => {\r\n callApiUpdate().then((result) => {\r\n if (result) {\r\n getDataMyTeam();\r\n handleCloseDialog();\r\n }\r\n })\r\n\r\n }\r\n const handleCloseDialog = () => {\r\n setData({\r\n UserName: \"\",\r\n Role: \"\",\r\n FirstName: \"\",\r\n LastName: \"\",\r\n IsActive: \"\",\r\n MobileNetworkSupplier: [],\r\n DataCategory: [],\r\n })\r\n setOpenCreate(false)\r\n }\r\n\r\n const getUserById = async () => {\r\n try {\r\n const result = await fetchClient.get(`/users/iUserById/?Id=${idEdit}`);\r\n if (result) {\r\n return result;\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n };\r\n\r\n return (\r\n \r\n {\" Chỉnh sửa tài khoản\"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n onchangeInput(\"UserName\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.UserName ? errorText.UserName : \"\"}\r\n error={errorFile.UserName}\r\n />\r\n \r\n \r\n \r\n \r\n Trạng Thái\r\n \r\n \r\n onchangeInput(\"IsActive\", e.target.value)\r\n }\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n error={errorFile.IsActive}\r\n >\r\n \r\n Trạng Thái\r\n \r\n \r\n Không hoạt động\r\n \r\n \r\n Hoạt động\r\n \r\n \r\n \r\n {errorText.IsActive ? errorText.IsActive : \"\"}\r\n \r\n \r\n \r\n \r\n \r\n onchangeInput(\"FirstName\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.FirstName ? errorText.FirstName : \"\"}\r\n error={errorFile.FirstName}\r\n />\r\n \r\n \r\n \r\n onchangeInput(\"LastName\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.LastName ? errorText.LastName : \"\"}\r\n error={errorFile.LastName}\r\n />\r\n \r\n\r\n \r\n \r\n \r\n Giới hạn mạng điện thoại\r\n \r\n \r\n onchangeInput(\"MobileNetworkSupplier\", e.target.value)\r\n }\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n error={errorFile.MobileNetworkSupplier}\r\n >\r\n \r\n Giới hạn mạng điện thoại\r\n \r\n {MobileNetworkSupplierList &&\r\n MobileNetworkSupplierList.map((e, i) => {\r\n return (\r\n \r\n {e.value}\r\n \r\n );\r\n })}\r\n \r\n \r\n {errorText.MobileNetworkSupplier ? errorText.MobileNetworkSupplier : \"\"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Giới hạn dữ liệu\r\n \r\n \r\n onchangeInput(\"DataCategory\", e.target.value)\r\n }\r\n MenuProps={{ className: classes.selectMenu }}\r\n classes={{ select: classes.select }}\r\n error={errorFile.DataCategory}\r\n >\r\n \r\n Giới hạn dữ liệu\r\n \r\n {listCategory &&\r\n listCategory.map((e, i) => {\r\n return (\r\n \r\n {e.value}\r\n \r\n );\r\n })}\r\n \r\n \r\n {errorText.DataCategory ? errorText.DataCategory : \"\"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n}","import Buttons from \"views/Components/Buttons.js\";\r\nimport Calendar from \"views/Calendar/Calendar.js\";\r\nimport Charts from \"views/Charts/Charts.js\";\r\nimport Dashboard from \"views/Dashboard/Dashboard.js\";\r\nimport ErrorPage from \"views/Pages/ErrorPage.js\";\r\nimport ExtendedForms from \"views/Forms/ExtendedForms.js\";\r\nimport ExtendedTables from \"views/Tables/ExtendedTables.js\";\r\nimport FullScreenMap from \"views/Maps/FullScreenMap.js\";\r\nimport GoogleMaps from \"views/Maps/GoogleMaps.js\";\r\nimport GridSystem from \"views/Components/GridSystem.js\";\r\nimport Icons from \"views/Components/Icons.js\";\r\nimport LockScreenPage from \"views/Pages/LockScreenPage.js\";\r\nimport LoginPage from \"views/Pages/LoginPage.js\";\r\nimport Notifications from \"views/Components/Notifications.js\";\r\nimport Panels from \"views/Components/Panels.js\";\r\nimport PricingPage from \"views/Pages/PricingPage.js\";\r\nimport RTLSupport from \"views/Pages/RTLSupport.js\";\r\nimport ReactTables from \"views/Tables/ReactTables.js\";\r\nimport RegisterPage from \"views/Pages/RegisterPage.js\";\r\nimport RegularForms from \"views/Forms/RegularForms.js\";\r\nimport RegularTables from \"views/Tables/RegularTables.js\";\r\nimport SweetAlert from \"views/Components/SweetAlert.js\";\r\nimport TimelinePage from \"views/Pages/Timeline.js\";\r\nimport Typography from \"views/Components/Typography.js\";\r\nimport UserProfile from \"views/Pages/UserProfile.js\";\r\nimport ValidationForms from \"views/Forms/ValidationForms.js\";\r\nimport VectorMap from \"views/Maps/VectorMap.js\";\r\nimport Widgets from \"views/Widgets/Widgets.js\";\r\nimport Wizard from \"views/Forms/Wizard.js\";\r\nimport OrderPage from \"views/Pages/OrderPage\";\r\nimport UserPage from \"views/Pages/UserPage\";\r\nimport DataPage from \"views/Pages/DataPage\";\r\nimport ImportPage from \"views/Pages/ImportPage\";\r\nimport DataCategoryPage from \"views/Pages/DataCategoryPage\";\r\nimport UserCallPage from \"views/Pages/UserPage/UserCallPage\";\r\nimport UserCallHistoryPage from \"views/Pages/UserPage/UserCallHistoryPage\";\r\nimport Home from \"views/Pages/Home\";\r\nimport TeamPage from \"views/Pages/TeamPage\";\r\n\r\n// @material-ui/icons\r\nimport Apps from \"@material-ui/icons/Apps\";\r\nimport DashboardIcon from \"@material-ui/icons/Dashboard\";\r\nimport {\r\n ShoppingBasket,\r\n SupervisedUserCircle,\r\n Backup,\r\n Storage,\r\n Category,\r\n Group,\r\n} from \"@material-ui/icons\";\r\nimport DateRange from \"@material-ui/icons/DateRange\";\r\nimport GridOn from \"@material-ui/icons/GridOn\";\r\nimport Image from \"@material-ui/icons/Image\";\r\nimport Place from \"@material-ui/icons/Place\";\r\nimport Timeline from \"@material-ui/icons/Timeline\";\r\nimport WidgetsIcon from \"@material-ui/icons/Widgets\";\r\n\r\nvar dashRoutes = [\r\n {\r\n path: \"/dashboard\",\r\n name: \"Tổng quan\",\r\n rtlName: \"لوحة القيادة\",\r\n icon: DashboardIcon,\r\n component: Home,\r\n layout: \"/admin\",\r\n },\r\n {\r\n path: \"/don-hang\",\r\n name: \"Đơn hàng\",\r\n icon: ShoppingBasket,\r\n component: OrderPage,\r\n layout: \"/admin\",\r\n },\r\n {\r\n path: \"/nhan-vien\",\r\n name: \"Nhân viên\",\r\n icon: SupervisedUserCircle,\r\n component: UserPage,\r\n layout: \"/admin\",\r\n },\r\n {\r\n path: \"/team\",\r\n name: \"Quản lý nhóm\",\r\n icon: Group,\r\n component: TeamPage,\r\n layout: \"/admin\",\r\n },\r\n {\r\n path: \"/quan-ly-du-lieu\",\r\n name: \"Quản lý dữ liệu\",\r\n icon: Storage,\r\n component: DataPage,\r\n layout: \"/admin\",\r\n },\r\n {\r\n path: \"/nhap-du-lieu\",\r\n name: \"Nhập dữ liệu\",\r\n icon: Backup,\r\n component: ImportPage,\r\n layout: \"/admin\",\r\n },\r\n {\r\n path: \"/danh-muc-du-lieu\",\r\n name: \"Danh mục dữ liệu\",\r\n icon: Category,\r\n component: DataCategoryPage,\r\n layout: \"/admin\",\r\n },\r\n {\r\n path: \"/goi\",\r\n name: \"Gọi khách hàng\",\r\n icon: Category,\r\n component: UserCallPage,\r\n layout: \"/user\",\r\n },\r\n {\r\n path: \"/lich-su-goi\",\r\n name: \"Lịch sử gọi\",\r\n icon: Category,\r\n component: UserCallHistoryPage,\r\n layout: \"/user\",\r\n },\r\n {\r\n path: \"/login-page\",\r\n name: \"Đăng nhập\",\r\n rtlName: \"هعذاتسجيل الدخول\",\r\n mini: \"L\",\r\n rtlMini: \"هعذا\",\r\n component: LoginPage,\r\n layout: \"/auth\",\r\n },\r\n {\r\n path: \"/lock-screen-page\",\r\n name: \"Màn hình khóa\",\r\n rtlName: \"اقفل الشاشة\",\r\n mini: \"LS\",\r\n rtlMini: \"هذاع\",\r\n component: LockScreenPage,\r\n layout: \"/auth\",\r\n },\r\n // {\r\n // collapse: true,\r\n // name: \"Pages\",\r\n // rtlName: \"صفحات\",\r\n // icon: Image,\r\n // state: \"pageCollapse\",\r\n // views: [\r\n // // {\r\n // // path: \"/pricing-page\",\r\n // // name: \"Pricing Page\",\r\n // // rtlName: \"عالتسعير\",\r\n // // mini: \"PP\",\r\n // // rtlMini: \"ع\",\r\n // // component: PricingPage,\r\n // // layout: \"/auth\",\r\n // // },\r\n // // {\r\n // // path: \"/rtl-support-page\",\r\n // // name: \"RTL Support\",\r\n // // rtlName: \"صودعم رتل\",\r\n // // mini: \"RS\",\r\n // // rtlMini: \"صو\",\r\n // // component: RTLSupport,\r\n // // layout: \"/rtl\",\r\n // // },\r\n // // {\r\n // // path: \"/timeline-page\",\r\n // // name: \"Timeline Page\",\r\n // // rtlName: \"تيالجدول الزمني\",\r\n // // mini: \"T\",\r\n // // rtlMini: \"تي\",\r\n // // component: TimelinePage,\r\n // // layout: \"/admin\",\r\n // // },\r\n // {\r\n // path: \"/login-page\",\r\n // name: \"Đăng nhập\",\r\n // rtlName: \"هعذاتسجيل الدخول\",\r\n // mini: \"L\",\r\n // rtlMini: \"هعذا\",\r\n // component: LoginPage,\r\n // layout: \"/auth\",\r\n // },\r\n // // {\r\n // // path: \"/register-page\",\r\n // // name: \"Register Page\",\r\n // // rtlName: \"تسجيل\",\r\n // // mini: \"R\",\r\n // // rtlMini: \"صع\",\r\n // // component: RegisterPage,\r\n // // layout: \"/auth\",\r\n // // },\r\n // {\r\n // path: \"/lock-screen-page\",\r\n // name: \"Màn hình khóa\",\r\n // rtlName: \"اقفل الشاشة\",\r\n // mini: \"LS\",\r\n // rtlMini: \"هذاع\",\r\n // component: LockScreenPage,\r\n // layout: \"/auth\",\r\n // },\r\n // {\r\n // path: \"/user-page\",\r\n // name: \"User Profile\",\r\n // rtlName: \"ملف تعريفي للمستخدم\",\r\n // mini: \"UP\",\r\n // rtlMini: \"شع\",\r\n // component: UserProfile,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/error-page\",\r\n // name: \"Error Page\",\r\n // rtlName: \"صفحة الخطأ\",\r\n // mini: \"E\",\r\n // rtlMini: \"البريد\",\r\n // component: ErrorPage,\r\n // layout: \"/auth\",\r\n // },\r\n // ],\r\n // },\r\n // {\r\n // collapse: true,\r\n // name: \"Components\",\r\n // rtlName: \"المكونات\",\r\n // icon: Apps,\r\n // state: \"componentsCollapse\",\r\n // views: [\r\n // {\r\n // collapse: true,\r\n // name: \"Multi Level Collapse\",\r\n // rtlName: \"انهيار متعدد المستويات\",\r\n // mini: \"MC\",\r\n // rtlMini: \"ر\",\r\n // state: \"multiCollapse\",\r\n // views: [\r\n // {\r\n // path: \"/buttons\",\r\n // name: \"Buttons\",\r\n // rtlName: \"وصفت\",\r\n // mini: \"B\",\r\n // rtlMini: \"ب\",\r\n // component: Buttons,\r\n // layout: \"/admin\",\r\n // },\r\n // ],\r\n // },\r\n // {\r\n // path: \"/buttons\",\r\n // name: \"Buttons\",\r\n // rtlName: \"وصفت\",\r\n // mini: \"B\",\r\n // rtlMini: \"ب\",\r\n // component: Buttons,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/grid-system\",\r\n // name: \"Grid System\",\r\n // rtlName: \"نظام الشبكة\",\r\n // mini: \"GS\",\r\n // rtlMini: \"زو\",\r\n // component: GridSystem,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/panels\",\r\n // name: \"Panels\",\r\n // rtlName: \"لوحات\",\r\n // mini: \"P\",\r\n // rtlMini: \"ع\",\r\n // component: Panels,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/sweet-alert\",\r\n // name: \"Sweet Alert\",\r\n // rtlName: \"الحلو تنبيه\",\r\n // mini: \"SA\",\r\n // rtlMini: \"ومن\",\r\n // component: SweetAlert,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/notifications\",\r\n // name: \"Notifications\",\r\n // rtlName: \"إخطارات\",\r\n // mini: \"N\",\r\n // rtlMini: \"ن\",\r\n // component: Notifications,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/icons\",\r\n // name: \"Icons\",\r\n // rtlName: \"الرموز\",\r\n // mini: \"I\",\r\n // rtlMini: \"و\",\r\n // component: Icons,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/typography\",\r\n // name: \"Typography\",\r\n // rtlName: \"طباعة\",\r\n // mini: \"T\",\r\n // rtlMini: \"ر\",\r\n // component: Typography,\r\n // layout: \"/admin\",\r\n // },\r\n // ],\r\n // },\r\n // {\r\n // collapse: true,\r\n // name: \"Forms\",\r\n // rtlName: \"إستمارات\",\r\n // icon: \"content_paste\",\r\n // state: \"formsCollapse\",\r\n // views: [\r\n // {\r\n // path: \"/regular-forms\",\r\n // name: \"Regular Forms\",\r\n // rtlName: \"أشكال عادية\",\r\n // mini: \"RF\",\r\n // rtlMini: \"صو\",\r\n // component: RegularForms,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/extended-forms\",\r\n // name: \"Extended Forms\",\r\n // rtlName: \"نماذج موسعة\",\r\n // mini: \"EF\",\r\n // rtlMini: \"هوو\",\r\n // component: ExtendedForms,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/validation-forms\",\r\n // name: \"Validation Forms\",\r\n // rtlName: \"نماذج التحقق من الصحة\",\r\n // mini: \"VF\",\r\n // rtlMini: \"تو\",\r\n // component: ValidationForms,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/wizard\",\r\n // name: \"Wizard\",\r\n // rtlName: \"ساحر\",\r\n // mini: \"W\",\r\n // rtlMini: \"ث\",\r\n // component: Wizard,\r\n // layout: \"/admin\",\r\n // },\r\n // ],\r\n // },\r\n // {\r\n // collapse: true,\r\n // name: \"Tables\",\r\n // rtlName: \"الجداول\",\r\n // icon: GridOn,\r\n // state: \"tablesCollapse\",\r\n // views: [\r\n // {\r\n // path: \"/regular-tables\",\r\n // name: \"Regular Tables\",\r\n // rtlName: \"طاولات عادية\",\r\n // mini: \"RT\",\r\n // rtlMini: \"صر\",\r\n // component: RegularTables,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/extended-tables\",\r\n // name: \"Extended Tables\",\r\n // rtlName: \"جداول ممتدة\",\r\n // mini: \"ET\",\r\n // rtlMini: \"هور\",\r\n // component: ExtendedTables,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/react-tables\",\r\n // name: \"React Tables\",\r\n // rtlName: \"رد فعل الطاولة\",\r\n // mini: \"RT\",\r\n // rtlMini: \"در\",\r\n // component: ReactTables,\r\n // layout: \"/admin\",\r\n // },\r\n // ],\r\n // },\r\n // {\r\n // collapse: true,\r\n // name: \"Maps\",\r\n // rtlName: \"خرائط\",\r\n // icon: Place,\r\n // state: \"mapsCollapse\",\r\n // views: [\r\n // {\r\n // path: \"/google-maps\",\r\n // name: \"Google Maps\",\r\n // rtlName: \"خرائط جوجل\",\r\n // mini: \"GM\",\r\n // rtlMini: \"زم\",\r\n // component: GoogleMaps,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/full-screen-maps\",\r\n // name: \"Full Screen Map\",\r\n // rtlName: \"خريطة كاملة الشاشة\",\r\n // mini: \"FSM\",\r\n // rtlMini: \"ووم\",\r\n // component: FullScreenMap,\r\n // layout: \"/admin\",\r\n // },\r\n // {\r\n // path: \"/vector-maps\",\r\n // name: \"Vector Map\",\r\n // rtlName: \"خريطة المتجه\",\r\n // mini: \"VM\",\r\n // rtlMini: \"تم\",\r\n // component: VectorMap,\r\n // layout: \"/admin\",\r\n // },\r\n // ],\r\n // },\r\n // {\r\n // path: \"/widgets\",\r\n // name: \"Widgets\",\r\n // rtlName: \"الحاجيات\",\r\n // icon: WidgetsIcon,\r\n // component: Widgets,\r\n // layout: \"/admin\",\r\n // },\r\n {\r\n path: \"/charts\",\r\n name: \"Charts\",\r\n rtlName: \"الرسوم البيانية\",\r\n icon: Timeline,\r\n component: Charts,\r\n layout: \"/admin\",\r\n },\r\n // {\r\n // path: \"/calendar\",\r\n // name: \"Calendar\",\r\n // rtlName: \"التقويم\",\r\n // icon: DateRange,\r\n // component: Calendar,\r\n // layout: \"/admin\",\r\n // },\r\n];\r\n\r\nexport default dashRoutes;\r\n","import {\r\n whiteColor,\r\n blackColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst pagesStyle = theme => ({\r\n wrapper: {\r\n height: \"auto\",\r\n minHeight: \"100vh\",\r\n position: \"relative\",\r\n top: \"0\"\r\n },\r\n fullPage: {\r\n padding: \"120px 0\",\r\n position: \"relative\",\r\n minHeight: \"100vh\",\r\n display: \"flex!important\",\r\n margin: \"0\",\r\n border: \"0\",\r\n color: whiteColor,\r\n alignItems: \"center\",\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center center\",\r\n height: \"100%\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n minHeight: \"700px!important\"\r\n },\r\n \"& footer\": {\r\n position: \"absolute\",\r\n bottom: \"0\",\r\n width: \"100%\",\r\n border: \"none !important\"\r\n },\r\n \"&:before\": {\r\n backgroundColor: \"rgba(\" + hexToRgb(blackColor) + \", 0.65)\"\r\n },\r\n \"&:before,&:after\": {\r\n display: \"block\",\r\n content: '\"\"',\r\n position: \"absolute\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n top: \"0\",\r\n left: \"0\",\r\n zIndex: \"2\"\r\n }\r\n }\r\n});\r\n\r\nexport default pagesStyle;\r\n","import React from \"react\";\r\nimport { Switch, Route, Redirect } from \"react-router-dom\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// core components\r\nimport AuthNavbar from \"components/Navbars/AuthNavbar.js\";\r\nimport Footer from \"components/Footer/Footer.js\";\r\n\r\nimport routes from \"routes.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/layouts/authStyle.js\";\r\n\r\nimport register from \"assets/img/register.jpeg\";\r\nimport login from \"assets/img/login.jpeg\";\r\nimport lock from \"assets/img/lock.jpeg\";\r\nimport error from \"assets/img/clint-mckoy.jpg\";\r\nimport pricing from \"assets/img/bg-pricing.jpeg\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Pages(props) {\r\n const { ...rest } = props;\r\n // ref for the wrapper div\r\n const wrapper = React.createRef();\r\n // styles\r\n const classes = useStyles();\r\n React.useEffect(() => {\r\n document.body.style.overflow = \"unset\";\r\n // Specify how to clean up after this effect:\r\n return function cleanup() {};\r\n });\r\n const getRoutes = (routes) => {\r\n return routes.map((prop, key) => {\r\n if (prop.collapse) {\r\n return getRoutes(prop.views);\r\n }\r\n if (prop.layout === \"/auth\") {\r\n return (\r\n \r\n );\r\n } else {\r\n return null;\r\n }\r\n });\r\n };\r\n const getBgImage = () => {\r\n if (window.location.pathname.indexOf(\"/auth/register-page\") !== -1) {\r\n return register;\r\n } else if (window.location.pathname.indexOf(\"/auth/login-page\") !== -1) {\r\n return login;\r\n } else if (window.location.pathname.indexOf(\"/auth/pricing-page\") !== -1) {\r\n return pricing;\r\n } else if (\r\n window.location.pathname.indexOf(\"/auth/lock-screen-page\") !== -1\r\n ) {\r\n return lock;\r\n } else if (window.location.pathname.indexOf(\"/auth/error-page\") !== -1) {\r\n return error;\r\n }\r\n };\r\n const getActiveRoute = (routes) => {\r\n let activeRoute = \"Default Brand Text\";\r\n for (let i = 0; i < routes.length; i++) {\r\n if (routes[i].collapse) {\r\n let collapseActiveRoute = getActiveRoute(routes[i].views);\r\n if (collapseActiveRoute !== activeRoute) {\r\n return collapseActiveRoute;\r\n }\r\n } else {\r\n if (\r\n window.location.href.indexOf(routes[i].layout + routes[i].path) !== -1\r\n ) {\r\n return routes[i].name;\r\n }\r\n }\r\n }\r\n return activeRoute;\r\n };\r\n return (\r\n
\r\n \r\n
\r\n \r\n \r\n {getRoutes(routes)}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n","import {\r\n defaultFont,\r\n dangerColor,\r\n whiteColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nimport customDropdownStyle from \"assets/jss/material-dashboard-pro-react/components/customDropdownStyle.js\";\r\n\r\nconst adminNavbarLinksStyle = theme => ({\r\n ...customDropdownStyle(theme),\r\n search: {\r\n margin: \"0\",\r\n paddingTop: \"7px\",\r\n paddingBottom: \"7px\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n margin: \"10px 15px\",\r\n float: \"none !important\",\r\n paddingTop: \"1px\",\r\n paddingBottom: \"1px\",\r\n padding: \"10px 15px\",\r\n width: \"auto\"\r\n }\r\n },\r\n searchInput: {\r\n paddingTop: \"2px\"\r\n },\r\n searchRTL: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n marginRight: \"18px !important\"\r\n },\r\n [theme.breakpoints.up(\"md\")]: {\r\n marginLeft: \"12px\"\r\n }\r\n },\r\n linkText: {\r\n zIndex: \"4\",\r\n ...defaultFont,\r\n fontSize: \"14px\",\r\n margin: \"0!important\",\r\n textTransform: \"none\"\r\n },\r\n buttonLink: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n display: \"flex\",\r\n margin: \"5px 15px 0\",\r\n width: \"auto\",\r\n height: \"auto\",\r\n \"& svg\": {\r\n width: \"30px\",\r\n height: \"24px\",\r\n marginRight: \"19px\",\r\n marginLeft: \"3px\"\r\n },\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n width: \"30px\",\r\n fontSize: \"24px\",\r\n lineHeight: \"30px\",\r\n marginRight: \"19px\",\r\n marginLeft: \"3px\"\r\n }\r\n }\r\n },\r\n searchButton: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n top: \"-50px !important\",\r\n marginRight: \"38px\",\r\n float: \"right\"\r\n }\r\n },\r\n top: {\r\n zIndex: \"4\"\r\n },\r\n searchIcon: {\r\n width: \"17px\",\r\n zIndex: \"4\"\r\n },\r\n links: {\r\n width: \"20px\",\r\n height: \"20px\",\r\n zIndex: \"4\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n display: \"block\",\r\n width: \"30px\",\r\n height: \"30px\",\r\n color: \"inherit\",\r\n opacity: \"0.8\",\r\n marginRight: \"16px\",\r\n marginLeft: \"-5px\"\r\n }\r\n },\r\n notifications: {\r\n zIndex: \"4\",\r\n [theme.breakpoints.up(\"md\")]: {\r\n position: \"absolute\",\r\n top: \"5px\",\r\n border: \"1px solid \" + whiteColor,\r\n right: \"5px\",\r\n fontSize: \"9px\",\r\n background: dangerColor[0],\r\n color: whiteColor,\r\n minWidth: \"16px\",\r\n height: \"16px\",\r\n borderRadius: \"10px\",\r\n textAlign: \"center\",\r\n lineHeight: \"14px\",\r\n verticalAlign: \"middle\",\r\n display: \"block\"\r\n },\r\n [theme.breakpoints.down(\"sm\")]: {\r\n ...defaultFont,\r\n fontSize: \"14px\",\r\n marginRight: \"8px\"\r\n }\r\n },\r\n wrapperRTL: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n paddingLeft: \"16px\"\r\n }\r\n },\r\n buttonLinkRTL: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n alignItems: \"center\",\r\n justifyContent: \"flex-end\",\r\n width: \"-webkit-fill-available\",\r\n margin: \"10px 15px 0\",\r\n padding: \"10px 15px\",\r\n display: \"block\",\r\n position: \"relative\"\r\n }\r\n },\r\n labelRTL: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n flexDirection: \"row-reverse\",\r\n justifyContent: \"initial\",\r\n display: \"flex\"\r\n }\r\n },\r\n linksRTL: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n marginRight: \"-5px !important\",\r\n marginLeft: \"16px !important\"\r\n }\r\n },\r\n managerClasses: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n display: \"inline-block\"\r\n }\r\n },\r\n headerLinksSvg: {\r\n width: \"20px !important\",\r\n height: \"20px !important\"\r\n }\r\n});\r\n\r\nexport default adminNavbarLinksStyle;\r\n","import React from \"react\";\r\nimport classNames from \"classnames\";\r\nimport PropTypes from \"prop-types\";\r\n// import { Manager, Target, Popper } from \"react-popper\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport MenuList from \"@material-ui/core/MenuList\";\r\nimport ClickAwayListener from \"@material-ui/core/ClickAwayListener\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport Grow from \"@material-ui/core/Grow\";\r\nimport Hidden from \"@material-ui/core/Hidden\";\r\nimport Popper from \"@material-ui/core/Popper\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\n\r\n// @material-ui/icons\r\nimport Person from \"@material-ui/icons/Person\";\r\nimport Notifications from \"@material-ui/icons/Notifications\";\r\nimport Dashboard from \"@material-ui/icons/Dashboard\";\r\nimport Search from \"@material-ui/icons/Search\";\r\n\r\n// core components\r\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/adminNavbarLinksStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function HeaderLinks(props) {\r\n const [openNotification, setOpenNotification] = React.useState(null);\r\n const handleClickNotification = event => {\r\n if (openNotification && openNotification.contains(event.target)) {\r\n setOpenNotification(null);\r\n } else {\r\n setOpenNotification(event.currentTarget);\r\n }\r\n };\r\n const handleCloseNotification = () => {\r\n setOpenNotification(null);\r\n };\r\n const [openProfile, setOpenProfile] = React.useState(null);\r\n const handleClickProfile = event => {\r\n if (openProfile && openProfile.contains(event.target)) {\r\n setOpenProfile(null);\r\n } else {\r\n setOpenProfile(event.currentTarget);\r\n }\r\n };\r\n const handleCloseProfile = () => {\r\n setOpenProfile(null);\r\n };\r\n const classes = useStyles();\r\n const { rtlActive } = props;\r\n const searchButton =\r\n classes.top +\r\n \" \" +\r\n classes.searchButton +\r\n \" \" +\r\n classNames({\r\n [classes.searchRTL]: rtlActive\r\n });\r\n const dropdownItem = classNames(classes.dropdownItem, classes.primaryHover, {\r\n [classes.dropdownItemRTL]: rtlActive\r\n });\r\n const wrapper = classNames({\r\n [classes.wrapperRTL]: rtlActive\r\n });\r\n const managerClasses = classNames({\r\n [classes.managerClasses]: true\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 {rtlActive ? \"لوحة القيادة\" : \"Dashboard\"}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n 5\r\n \r\n \r\n {rtlActive ? \"إعلام\" : \"Notification\"}\r\n \r\n \r\n \r\n \r\n {({ TransitionProps }) => (\r\n \r\n \r\n \r\n \r\n \r\n {rtlActive\r\n ? \"إجلاء أوزار الأسيوي حين بل, كما\"\r\n : \"Mike John responded to your email\"}\r\n \r\n \r\n {rtlActive\r\n ? \"شعار إعلان الأرضية قد ذلك\"\r\n : \"You have 5 new tasks\"}\r\n \r\n \r\n {rtlActive\r\n ? \"ثمّة الخاصّة و على. مع جيما\"\r\n : \"You're now friend with Andrew\"}\r\n \r\n \r\n {rtlActive ? \"قد علاقة\" : \"Another Notification\"}\r\n \r\n \r\n {rtlActive ? \"قد فاتّبع\" : \"Another One\"}\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 {rtlActive ? \"الملف الشخصي\" : \"Profile\"}\r\n \r\n \r\n \r\n \r\n {({ TransitionProps }) => (\r\n \r\n \r\n \r\n \r\n \r\n {rtlActive ? \"الملف الشخصي\" : \"Profile\"}\r\n \r\n \r\n {rtlActive ? \"الإعدادات\" : \"Settings\"}\r\n \r\n \r\n \r\n {rtlActive ? \"الخروج\" : \"Log out\"}\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\nHeaderLinks.propTypes = {\r\n rtlActive: PropTypes.bool\r\n};\r\n","import {\r\n containerFluid,\r\n defaultFont,\r\n primaryColor,\r\n defaultBoxShadow,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n whiteColor,\r\n grayColor,\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst headerStyle = () => ({\r\n appBar: {\r\n backgroundColor: \"transparent\",\r\n boxShadow: \"none\",\r\n borderBottom: \"0\",\r\n marginBottom: \"0\",\r\n position: \"absolute\",\r\n width: \"100%\",\r\n paddingTop: \"10px\",\r\n zIndex: \"1029\",\r\n color: grayColor[6],\r\n border: \"0\",\r\n borderRadius: \"3px\",\r\n padding: \"10px 0\",\r\n transition: \"all 150ms ease 0s\",\r\n minHeight: \"50px\",\r\n display: \"block\",\r\n },\r\n container: {\r\n ...containerFluid,\r\n minHeight: \"50px\",\r\n },\r\n flex: {\r\n flex: 1,\r\n },\r\n title: {\r\n ...defaultFont,\r\n lineHeight: \"30px\",\r\n fontSize: \"24px\",\r\n borderRadius: \"3px\",\r\n textTransform: \"none\",\r\n color: \"inherit\",\r\n paddingTop: \"0.625rem\",\r\n paddingBottom: \"0.625rem\",\r\n margin: \"0 !important\",\r\n letterSpacing: \"unset\",\r\n \"&:hover,&:focus\": {\r\n background: \"transparent\",\r\n },\r\n },\r\n primary: {\r\n backgroundColor: primaryColor[0],\r\n color: whiteColor,\r\n ...defaultBoxShadow,\r\n },\r\n info: {\r\n backgroundColor: infoColor[0],\r\n color: whiteColor,\r\n ...defaultBoxShadow,\r\n },\r\n success: {\r\n backgroundColor: successColor[0],\r\n color: whiteColor,\r\n ...defaultBoxShadow,\r\n },\r\n warning: {\r\n backgroundColor: warningColor[0],\r\n color: whiteColor,\r\n ...defaultBoxShadow,\r\n },\r\n danger: {\r\n backgroundColor: dangerColor[0],\r\n color: whiteColor,\r\n ...defaultBoxShadow,\r\n },\r\n sidebarMinimize: {\r\n float: \"left\",\r\n padding: \"0 0 0 15px\",\r\n display: \"block\",\r\n color: grayColor[6],\r\n },\r\n sidebarMinimizeRTL: {\r\n padding: \"0 15px 0 0 !important\",\r\n },\r\n sidebarMiniIcon: {\r\n width: \"20px\",\r\n height: \"17px\",\r\n },\r\n});\r\n\r\nexport default headerStyle;\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\nimport cx from \"classnames\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport AppBar from \"@material-ui/core/AppBar\";\r\nimport Toolbar from \"@material-ui/core/Toolbar\";\r\nimport Hidden from \"@material-ui/core/Hidden\";\r\n\r\n// material-ui icons\r\nimport Menu from \"@material-ui/icons/Menu\";\r\nimport MoreVert from \"@material-ui/icons/MoreVert\";\r\nimport ViewList from \"@material-ui/icons/ViewList\";\r\n\r\n// core components\r\nimport AdminNavbarLinks from \"./AdminNavbarLinks\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/components/adminNavbarStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function AdminNavbar(props) {\r\n const classes = useStyles();\r\n const { color, rtlActive, brandText } = props;\r\n const appBarClasses = cx({\r\n [\" \" + classes[color]]: color,\r\n });\r\n const sidebarMinimize =\r\n classes.sidebarMinimize +\r\n \" \" +\r\n cx({\r\n [classes.sidebarMinimizeRTL]: rtlActive,\r\n });\r\n return (\r\n \r\n \r\n \r\n
\r\n {props.miniActive ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n )}\r\n
\r\n
\r\n
\r\n {/* Here we create navbar brand, based on route name */}\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\nAdminNavbar.propTypes = {\r\n color: PropTypes.oneOf([\"primary\", \"info\", \"success\", \"warning\", \"danger\"]),\r\n rtlActive: PropTypes.bool,\r\n brandText: PropTypes.string,\r\n miniActive: PropTypes.bool,\r\n handleDrawerToggle: PropTypes.func,\r\n sidebarMinimize: PropTypes.func,\r\n};\r\n","import {\r\n drawerWidth,\r\n drawerMiniWidth,\r\n transition,\r\n boxShadow,\r\n defaultFont,\r\n primaryColor,\r\n primaryBoxShadow,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n roseColor,\r\n whiteColor,\r\n blackColor,\r\n grayColor,\r\n hexToRgb,\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst sidebarStyle = (theme) => ({\r\n drawerPaperRTL: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n left: \"auto !important\",\r\n right: \"0 !important\",\r\n },\r\n [theme.breakpoints.down(\"sm\")]: {\r\n left: \"0 !important\",\r\n right: \"auto !important\",\r\n },\r\n },\r\n drawerPaper: {\r\n border: \"none\",\r\n position: \"fixed\",\r\n top: \"0\",\r\n bottom: \"0\",\r\n left: \"0\",\r\n zIndex: \"1032\",\r\n transitionProperty: \"top, bottom, width\",\r\n transitionDuration: \".2s, .2s, .35s\",\r\n transitionTimingFunction: \"linear, linear, ease\",\r\n // overflow: 'auto',\r\n ...boxShadow,\r\n width: drawerWidth,\r\n [theme.breakpoints.up(\"md\")]: {\r\n width: drawerWidth,\r\n position: \"fixed\",\r\n height: \"100%\",\r\n },\r\n [theme.breakpoints.down(\"sm\")]: {\r\n width: drawerWidth,\r\n ...boxShadow,\r\n position: \"fixed\",\r\n display: \"block\",\r\n top: \"0\",\r\n height: \"100vh\",\r\n right: \"0\",\r\n left: \"auto\",\r\n zIndex: \"1032\",\r\n visibility: \"visible\",\r\n overflowY: \"visible\",\r\n borderTop: \"none\",\r\n textAlign: \"left\",\r\n paddingRight: \"0px\",\r\n paddingLeft: \"0\",\r\n transform: `translate3d(${drawerWidth}px, 0, 0)`,\r\n ...transition,\r\n },\r\n \"&:before,&:after\": {\r\n position: \"absolute\",\r\n zIndex: \"3\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n content: '\"\"',\r\n display: \"block\",\r\n top: \"0\",\r\n },\r\n },\r\n blackBackground: {\r\n color: whiteColor,\r\n \"&:after\": {\r\n background: blackColor,\r\n opacity: \".8\",\r\n },\r\n },\r\n blueBackground: {\r\n color: whiteColor,\r\n \"&:after\": {\r\n background: infoColor[0],\r\n opacity: \".93\",\r\n },\r\n },\r\n whiteBackground: {\r\n color: grayColor[2],\r\n \"&:after\": {\r\n background: whiteColor,\r\n opacity: \".93\",\r\n },\r\n },\r\n whiteAfter: {\r\n \"&:after\": {\r\n backgroundColor: \"hsla(0,0%,71%,.3) !important\",\r\n },\r\n },\r\n drawerPaperMini: {\r\n width: drawerMiniWidth + \"px!important\",\r\n },\r\n logo: {\r\n padding: \"15px 0px\",\r\n margin: \"0\",\r\n display: \"block\",\r\n position: \"relative\",\r\n zIndex: \"4\",\r\n \"&:after\": {\r\n content: '\"\"',\r\n position: \"absolute\",\r\n bottom: \"0\",\r\n height: \"1px\",\r\n right: \"15px\",\r\n width: \"calc(100% - 30px)\",\r\n backgroundColor: \"hsla(0,0%,100%,.3)\",\r\n },\r\n },\r\n logoMini: {\r\n transition: \"all 300ms linear\",\r\n opacity: 1,\r\n float: \"left\",\r\n textAlign: \"center\",\r\n width: \"30px\",\r\n display: \"inline-block\",\r\n maxHeight: \"30px\",\r\n marginLeft: \"22px\",\r\n marginRight: \"18px\",\r\n marginTop: \"7px\",\r\n color: \"inherit\",\r\n },\r\n logoMiniRTL: {\r\n float: \"right\",\r\n marginRight: \"30px\",\r\n marginLeft: \"26px\",\r\n },\r\n logoNormal: {\r\n ...defaultFont,\r\n transition: \"all 300ms linear\",\r\n display: \"block\",\r\n opacity: \"1\",\r\n transform: \"translate3d(0px, 0, 0)\",\r\n textTransform: \"uppercase\",\r\n padding: \"5px 0px\",\r\n fontSize: \"18px\",\r\n whiteSpace: \"nowrap\",\r\n fontWeight: \"400\",\r\n lineHeight: \"30px\",\r\n overflow: \"hidden\",\r\n \"&,&:hover,&:focus\": {\r\n color: \"inherit\",\r\n },\r\n },\r\n logoNormalRTL: {\r\n textAlign: \"right\",\r\n },\r\n logoNormalSidebarMini: {\r\n opacity: \"0\",\r\n transform: \"translate3d(-25px, 0, 0)\",\r\n },\r\n logoNormalSidebarMiniRTL: {\r\n transform: \"translate3d(25px, 0, 0)\",\r\n },\r\n img: {\r\n width: \"150px\",\r\n verticalAlign: \"middle\",\r\n border: \"0\",\r\n margin: \"0px 12px\",\r\n },\r\n background: {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n height: \"100%\",\r\n width: \"100%\",\r\n display: \"block\",\r\n top: \"0\",\r\n left: \"0\",\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center center\",\r\n transition: \"all 300ms linear\",\r\n },\r\n list: {\r\n marginTop: \"15px\",\r\n paddingLeft: \"0\",\r\n paddingTop: \"0\",\r\n paddingBottom: \"0\",\r\n marginBottom: \"0\",\r\n listStyle: \"none\",\r\n color: \"inherit\",\r\n \"&:before,&:after\": {\r\n display: \"table\",\r\n content: '\" \"',\r\n },\r\n \"&:after\": {\r\n clear: \"both\",\r\n },\r\n },\r\n item: {\r\n color: \"inherit\",\r\n position: \"relative\",\r\n display: \"block\",\r\n textDecoration: \"none\",\r\n margin: \"0\",\r\n padding: \"0\",\r\n },\r\n userItem: {\r\n \"&:last-child\": {\r\n paddingBottom: \"0px\",\r\n },\r\n },\r\n itemLink: {\r\n paddingLeft: \"10px\",\r\n paddingRight: \"10px\",\r\n transition: \"all 300ms linear\",\r\n margin: \"10px 15px 0\",\r\n borderRadius: \"3px\",\r\n position: \"relative\",\r\n display: \"block\",\r\n padding: \"10px 15px\",\r\n backgroundColor: \"transparent\",\r\n ...defaultFont,\r\n width: \"auto\",\r\n \"&:hover\": {\r\n outline: \"none\",\r\n backgroundColor: \"rgba(\" + hexToRgb(grayColor[17]) + \", 0.2)\",\r\n boxShadow: \"none\",\r\n },\r\n \"&,&:hover,&:focus\": {\r\n color: \"inherit\",\r\n },\r\n },\r\n itemIcon: {\r\n color: \"inherit\",\r\n width: \"30px\",\r\n height: \"24px\",\r\n float: \"left\",\r\n position: \"inherit\",\r\n top: \"3px\",\r\n marginRight: \"15px\",\r\n textAlign: \"center\",\r\n verticalAlign: \"middle\",\r\n opacity: \"0.8\",\r\n },\r\n itemIconRTL: {\r\n float: \"right\",\r\n marginLeft: \"15px\",\r\n marginRight: \"1px\",\r\n },\r\n itemText: {\r\n color: \"inherit\",\r\n ...defaultFont,\r\n margin: \"0\",\r\n lineHeight: \"30px\",\r\n fontSize: \"14px\",\r\n transform: \"translate3d(0px, 0, 0)\",\r\n opacity: \"1\",\r\n transition: \"transform 300ms ease 0s, opacity 300ms ease 0s\",\r\n position: \"relative\",\r\n display: \"block\",\r\n height: \"auto\",\r\n whiteSpace: \"nowrap\",\r\n padding: \"0 16px !important\",\r\n },\r\n userItemText: {\r\n lineHeight: \"22px\",\r\n },\r\n itemTextRTL: {\r\n marginRight: \"45px\",\r\n textAlign: \"right\",\r\n },\r\n itemTextMini: {\r\n transform: \"translate3d(-25px, 0, 0)\",\r\n opacity: \"0\",\r\n },\r\n itemTextMiniRTL: {\r\n transform: \"translate3d(25px, 0, 0) !important\",\r\n },\r\n collapseList: {\r\n marginTop: \"0\",\r\n \"& $caret\": {\r\n marginTop: \"8px\",\r\n },\r\n },\r\n collapseItem: {\r\n position: \"relative\",\r\n display: \"block\",\r\n textDecoration: \"none\",\r\n margin: \"10px 0 0 0\",\r\n padding: \"0\",\r\n },\r\n collapseActive: {\r\n outline: \"none\",\r\n backgroundColor: \"rgba(\" + hexToRgb(grayColor[17]) + \", 0.2)\",\r\n boxShadow: \"none\",\r\n },\r\n collapseItemLink: {\r\n transition: \"all 300ms linear\",\r\n margin: \"0 15px\",\r\n borderRadius: \"3px\",\r\n position: \"relative\",\r\n display: \"block\",\r\n padding: \"10px\",\r\n backgroundColor: \"transparent\",\r\n ...defaultFont,\r\n width: \"auto\",\r\n \"&:hover\": {\r\n outline: \"none\",\r\n backgroundColor: \"rgba(\" + hexToRgb(grayColor[17]) + \", 0.2)\",\r\n boxShadow: \"none\",\r\n },\r\n \"&,&:hover,&:focus\": {\r\n color: \"inherit\",\r\n },\r\n },\r\n collapseItemMini: {\r\n color: \"inherit\",\r\n ...defaultFont,\r\n textTransform: \"uppercase\",\r\n width: \"30px\",\r\n marginRight: \"15px\",\r\n textAlign: \"center\",\r\n letterSpacing: \"1px\",\r\n position: \"relative\",\r\n float: \"left\",\r\n display: \"inherit\",\r\n transition: \"transform 300ms ease 0s, opacity 300ms ease 0s\",\r\n fontSize: \"14px\",\r\n },\r\n collapseItemMiniRTL: {\r\n float: \"right\",\r\n marginLeft: \"30px\",\r\n marginRight: \"1px\",\r\n },\r\n collapseItemText: {\r\n color: \"inherit\",\r\n ...defaultFont,\r\n margin: \"0\",\r\n position: \"relative\",\r\n transform: \"translateX(0px)\",\r\n opacity: \"1\",\r\n whiteSpace: \"nowrap\",\r\n display: \"block\",\r\n transition: \"transform 300ms ease 0s, opacity 300ms ease 0s\",\r\n fontSize: \"14px\",\r\n },\r\n collapseItemTextRTL: {\r\n textAlign: \"right\",\r\n },\r\n collapseItemTextMiniRTL: {\r\n transform: \"translate3d(25px, 0, 0) !important\",\r\n },\r\n collapseItemTextMini: {\r\n transform: \"translate3d(-25px, 0, 0)\",\r\n opacity: \"0\",\r\n },\r\n caret: {\r\n marginTop: \"13px\",\r\n position: \"absolute\",\r\n right: \"18px\",\r\n transition: \"all 150ms ease-in\",\r\n display: \"inline-block\",\r\n width: \"0\",\r\n height: \"0\",\r\n marginLeft: \"2px\",\r\n verticalAlign: \"middle\",\r\n borderTop: \"4px solid\",\r\n borderRight: \"4px solid transparent\",\r\n borderLeft: \"4px solid transparent\",\r\n },\r\n userCaret: {\r\n marginTop: \"10px\",\r\n },\r\n caretRTL: {\r\n left: \"11px\",\r\n right: \"auto\",\r\n },\r\n caretActive: {\r\n transform: \"rotate(180deg)\",\r\n },\r\n purple: {\r\n \"&,&:hover,&:focus\": {\r\n color: whiteColor,\r\n backgroundColor: primaryColor[0],\r\n ...primaryBoxShadow,\r\n },\r\n },\r\n blue: {\r\n \"&,&:hover,&:focus\": {\r\n color: whiteColor,\r\n backgroundColor: infoColor[0],\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \",.28), 0 4px 20px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \",.2)\",\r\n },\r\n },\r\n green: {\r\n \"&,&:hover,&:focus\": {\r\n color: whiteColor,\r\n backgroundColor: successColor[0],\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \",.28), 0 4px 20px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \",.2)\",\r\n },\r\n },\r\n orange: {\r\n \"&,&:hover,&:focus\": {\r\n color: whiteColor,\r\n backgroundColor: warningColor[0],\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \",.28), 0 4px 20px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \",.2)\",\r\n },\r\n },\r\n red: {\r\n \"&,&:hover,&:focus\": {\r\n color: whiteColor,\r\n backgroundColor: dangerColor[0],\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \",.28), 0 4px 20px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \",.2)\",\r\n },\r\n },\r\n white: {\r\n \"&,&:hover,&:focus\": {\r\n color: grayColor[2],\r\n backgroundColor: whiteColor,\r\n boxShadow:\r\n \"0 4px 20px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(grayColor[2]) +\r\n \",.4)\",\r\n },\r\n },\r\n rose: {\r\n \"&,&:hover,&:focus\": {\r\n color: whiteColor,\r\n backgroundColor: roseColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \",.4)\",\r\n },\r\n },\r\n sidebarWrapper: {\r\n position: \"relative\",\r\n height: \"calc(100vh - 75px)\",\r\n overflow: \"auto\",\r\n width: \"260px\",\r\n zIndex: \"4\",\r\n overflowScrolling: \"touch\",\r\n transitionProperty: \"top, bottom, width\",\r\n transitionDuration: \".2s, .2s, .35s\",\r\n transitionTimingFunction: \"linear, linear, ease\",\r\n color: \"inherit\",\r\n paddingBottom: \"30px\",\r\n },\r\n sidebarWrapperWithPerfectScrollbar: {\r\n overflow: \"hidden !important\",\r\n },\r\n user: {\r\n paddingBottom: \"20px\",\r\n margin: \"20px auto 0\",\r\n position: \"relative\",\r\n \"&:after\": {\r\n content: '\"\"',\r\n position: \"absolute\",\r\n bottom: \"0\",\r\n right: \"15px\",\r\n height: \"1px\",\r\n width: \"calc(100% - 30px)\",\r\n backgroundColor: \"hsla(0,0%,100%,.3)\",\r\n },\r\n },\r\n photo: {\r\n transition: \"all 300ms linear\",\r\n width: \"34px\",\r\n height: \"34px\",\r\n overflow: \"hidden\",\r\n float: \"left\",\r\n zIndex: \"5\",\r\n marginRight: \"11px\",\r\n borderRadius: \"50%\",\r\n marginLeft: \"23px\",\r\n ...boxShadow,\r\n },\r\n photoRTL: {\r\n float: \"right\",\r\n marginLeft: \"12px\",\r\n marginRight: \"24px\",\r\n },\r\n avatarImg: {\r\n width: \"100%\",\r\n verticalAlign: \"middle\",\r\n border: \"0\",\r\n },\r\n userCollapseButton: {\r\n margin: \"0\",\r\n padding: \"6px 15px\",\r\n \"&:hover\": {\r\n background: \"none\",\r\n },\r\n },\r\n userCollapseLinks: {\r\n marginTop: \"-4px\",\r\n },\r\n});\r\n\r\nexport default sidebarStyle;\r\n","/*eslint-disable*/\r\nimport React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n// javascript plugin used to create scrollbars on windows\r\nimport PerfectScrollbar from \"perfect-scrollbar\";\r\nimport { NavLink } from \"react-router-dom\";\r\nimport cx from \"classnames\";\r\n\r\n// @material-ui/core components\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport Drawer from \"@material-ui/core/Drawer\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\nimport ListItemText from \"@material-ui/core/ListItemText\";\r\nimport Hidden from \"@material-ui/core/Hidden\";\r\nimport Collapse from \"@material-ui/core/Collapse\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\n\r\n// core components\r\nimport AdminNavbarLinks from \"components/Navbars/AdminNavbarLinks.js\";\r\n\r\nimport sidebarStyle from \"assets/jss/material-dashboard-pro-react/components/sidebarStyle.js\";\r\n\r\nimport avatar from \"assets/img/faces/avatar.jpg\";\r\nimport { getSession } from \"../../ultils/appSession\";\r\n\r\nvar ps;\r\n\r\n// We've created this component so we can have a ref to the wrapper of the links that appears in our sidebar.\r\n// This was necessary so that we could initialize PerfectScrollbar on the links.\r\n// There might be something with the Hidden component from material-ui, and we didn't have access to\r\n// the links, and couldn't initialize the plugin.\r\nclass SidebarWrapper extends React.Component {\r\n sidebarWrapper = React.createRef();\r\n componentDidMount() {\r\n if (navigator.platform.indexOf(\"Win\") > -1) {\r\n ps = new PerfectScrollbar(this.sidebarWrapper.current, {\r\n suppressScrollX: true,\r\n suppressScrollY: false,\r\n });\r\n }\r\n }\r\n componentWillUnmount() {\r\n if (navigator.platform.indexOf(\"Win\") > -1) {\r\n ps.destroy();\r\n }\r\n }\r\n render() {\r\n const { className, user, headerLinks, links } = this.props;\r\n return (\r\n
\r\n {user}\r\n {headerLinks}\r\n {links}\r\n
\r\n );\r\n }\r\n}\r\n\r\nclass Sidebar extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n openAvatar: false,\r\n miniActive: true,\r\n ...this.getCollapseStates(props.routes),\r\n };\r\n }\r\n mainPanel = React.createRef();\r\n // this creates the intial state of this component based on the collapse routes\r\n // that it gets through this.props.routes\r\n getCollapseStates = (routes) => {\r\n let initialState = {};\r\n routes.map((prop) => {\r\n if (prop.collapse) {\r\n initialState = {\r\n [prop.state]: this.getCollapseInitialState(prop.views),\r\n ...this.getCollapseStates(prop.views),\r\n ...initialState,\r\n };\r\n }\r\n return null;\r\n });\r\n return initialState;\r\n };\r\n // this verifies if any of the collapses should be default opened on a rerender of this component\r\n // for example, on the refresh of the page,\r\n // while on the src/views/forms/RegularForms.jsx - route /admin/regular-forms\r\n getCollapseInitialState(routes) {\r\n for (let i = 0; i < routes.length; i++) {\r\n if (routes[i].collapse && this.getCollapseInitialState(routes[i].views)) {\r\n return true;\r\n } else if (window.location.href.indexOf(routes[i].path) !== -1) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n // verifies if routeName is the one active (in browser input)\r\n activeRoute = (routeName) => {\r\n return window.location.href.indexOf(routeName) > -1 ? \"active\" : \"\";\r\n };\r\n openCollapse(collapse) {\r\n var st = {};\r\n st[collapse] = !this.state[collapse];\r\n this.setState(st);\r\n }\r\n // this function creates the links and collapses that appear in the sidebar (left menu)\r\n createLinks = (routes) => {\r\n const { classes, color, rtlActive } = this.props;\r\n return routes.map((prop, key) => {\r\n if (prop.redirect) {\r\n return null;\r\n }\r\n if (prop.collapse) {\r\n var st = {};\r\n st[prop[\"state\"]] = !this.state[prop.state];\r\n const navLinkClasses =\r\n classes.itemLink +\r\n \" \" +\r\n cx({\r\n [\" \" + classes.collapseActive]: this.getCollapseInitialState(\r\n prop.views\r\n ),\r\n });\r\n const itemText =\r\n classes.itemText +\r\n \" \" +\r\n cx({\r\n [classes.itemTextMini]:\r\n this.props.miniActive && this.state.miniActive,\r\n [classes.itemTextMiniRTL]:\r\n rtlActive && this.props.miniActive && this.state.miniActive,\r\n [classes.itemTextRTL]: rtlActive,\r\n });\r\n const collapseItemText =\r\n classes.collapseItemText +\r\n \" \" +\r\n cx({\r\n [classes.collapseItemTextMini]:\r\n this.props.miniActive && this.state.miniActive,\r\n [classes.collapseItemTextMiniRTL]:\r\n rtlActive && this.props.miniActive && this.state.miniActive,\r\n [classes.collapseItemTextRTL]: rtlActive,\r\n });\r\n const itemIcon =\r\n classes.itemIcon +\r\n \" \" +\r\n cx({\r\n [classes.itemIconRTL]: rtlActive,\r\n });\r\n const caret =\r\n classes.caret +\r\n \" \" +\r\n cx({\r\n [classes.caretRTL]: rtlActive,\r\n });\r\n const collapseItemMini =\r\n classes.collapseItemMini +\r\n \" \" +\r\n cx({\r\n [classes.collapseItemMiniRTL]: rtlActive,\r\n });\r\n return (\r\n \r\n {\r\n e.preventDefault();\r\n this.setState(st);\r\n }}\r\n >\r\n {prop.icon !== undefined ? (\r\n typeof prop.icon === \"string\" ? (\r\n {prop.icon}\r\n ) : (\r\n \r\n )\r\n ) : (\r\n \r\n {rtlActive ? prop.rtlMini : prop.mini}\r\n \r\n )}\r\n \r\n }\r\n disableTypography={true}\r\n className={cx(\r\n { [itemText]: prop.icon !== undefined },\r\n { [collapseItemText]: prop.icon === undefined }\r\n )}\r\n />\r\n \r\n \r\n \r\n {this.createLinks(prop.views)}\r\n \r\n \r\n \r\n );\r\n }\r\n const innerNavLinkClasses =\r\n classes.collapseItemLink +\r\n \" \" +\r\n cx({\r\n [\" \" + classes[color]]: this.activeRoute(prop.path),\r\n });\r\n const collapseItemMini =\r\n classes.collapseItemMini +\r\n \" \" +\r\n cx({\r\n [classes.collapseItemMiniRTL]: rtlActive,\r\n });\r\n const navLinkClasses =\r\n classes.itemLink +\r\n \" \" +\r\n cx({\r\n [\" \" + classes[color]]: this.activeRoute(prop.path),\r\n });\r\n const itemText =\r\n classes.itemText +\r\n \" \" +\r\n cx({\r\n [classes.itemTextMini]:\r\n this.props.miniActive && this.state.miniActive,\r\n [classes.itemTextMiniRTL]:\r\n rtlActive && this.props.miniActive && this.state.miniActive,\r\n [classes.itemTextRTL]: rtlActive,\r\n });\r\n const collapseItemText =\r\n classes.collapseItemText +\r\n \" \" +\r\n cx({\r\n [classes.collapseItemTextMini]:\r\n this.props.miniActive && this.state.miniActive,\r\n [classes.collapseItemTextMiniRTL]:\r\n rtlActive && this.props.miniActive && this.state.miniActive,\r\n [classes.collapseItemTextRTL]: rtlActive,\r\n });\r\n const itemIcon =\r\n classes.itemIcon +\r\n \" \" +\r\n cx({\r\n [classes.itemIconRTL]: rtlActive,\r\n });\r\n return (\r\n \r\n \r\n {prop.icon !== undefined ? (\r\n typeof prop.icon === \"string\" ? (\r\n {prop.icon}\r\n ) : (\r\n \r\n )\r\n ) : (\r\n \r\n {rtlActive ? prop.rtlMini : prop.mini}\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n });\r\n };\r\n render() {\r\n const {\r\n classes,\r\n logo,\r\n image,\r\n logoText,\r\n routes,\r\n bgColor,\r\n rtlActive,\r\n } = this.props;\r\n const itemText =\r\n classes.itemText +\r\n \" \" +\r\n cx({\r\n [classes.itemTextMini]: this.props.miniActive && this.state.miniActive,\r\n [classes.itemTextMiniRTL]:\r\n rtlActive && this.props.miniActive && this.state.miniActive,\r\n [classes.itemTextRTL]: rtlActive,\r\n });\r\n const collapseItemText =\r\n classes.collapseItemText +\r\n \" \" +\r\n cx({\r\n [classes.collapseItemTextMini]:\r\n this.props.miniActive && this.state.miniActive,\r\n [classes.collapseItemTextMiniRTL]:\r\n rtlActive && this.props.miniActive && this.state.miniActive,\r\n [classes.collapseItemTextRTL]: rtlActive,\r\n });\r\n const userWrapperClass =\r\n classes.user +\r\n \" \" +\r\n cx({\r\n [classes.whiteAfter]: bgColor === \"white\",\r\n });\r\n const caret =\r\n classes.caret +\r\n \" \" +\r\n cx({\r\n [classes.caretRTL]: rtlActive,\r\n });\r\n const collapseItemMini =\r\n classes.collapseItemMini +\r\n \" \" +\r\n cx({\r\n [classes.collapseItemMiniRTL]: rtlActive,\r\n });\r\n const photo =\r\n classes.photo +\r\n \" \" +\r\n cx({\r\n [classes.photoRTL]: rtlActive,\r\n });\r\n var user = (\r\n
\r\n
\r\n \"...\"\r\n
\r\n \r\n \r\n this.openCollapse(\"openAvatar\")}\r\n >\r\n \r\n }\r\n disableTypography={true}\r\n className={itemText + \" \" + classes.userItemText}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n {rtlActive ? \"مع\" : \"Sửa\"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {rtlActive ? \"و\" : \"ĐX\"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n var links = (\r\n {this.createLinks(routes)}\r\n );\r\n\r\n const logoNormal =\r\n classes.logoNormal +\r\n \" \" +\r\n cx({\r\n [classes.logoNormalSidebarMini]:\r\n this.props.miniActive && this.state.miniActive,\r\n [classes.logoNormalSidebarMiniRTL]:\r\n rtlActive && this.props.miniActive && this.state.miniActive,\r\n [classes.logoNormalRTL]: rtlActive,\r\n });\r\n const logoMini =\r\n classes.logoMini +\r\n \" \" +\r\n cx({\r\n [classes.logoMiniRTL]: rtlActive,\r\n });\r\n const logoClasses =\r\n classes.logo +\r\n \" \" +\r\n cx({\r\n [classes.whiteAfter]: bgColor === \"white\",\r\n });\r\n var brand = (\r\n
\r\n \r\n \"logo\"\r\n \r\n
\r\n );\r\n const drawerPaper =\r\n classes.drawerPaper +\r\n \" \" +\r\n cx({\r\n [classes.drawerPaperMini]:\r\n this.props.miniActive && this.state.miniActive,\r\n [classes.drawerPaperRTL]: rtlActive,\r\n });\r\n const sidebarWrapper =\r\n classes.sidebarWrapper +\r\n \" \" +\r\n cx({\r\n [classes.drawerPaperMini]:\r\n this.props.miniActive && this.state.miniActive,\r\n [classes.sidebarWrapperWithPerfectScrollbar]:\r\n navigator.platform.indexOf(\"Win\") > -1,\r\n });\r\n return (\r\n
\r\n \r\n \r\n {brand}\r\n }\r\n links={links}\r\n />\r\n {image !== undefined ? (\r\n \r\n ) : null}\r\n \r\n \r\n \r\n this.setState({ miniActive: false })}\r\n onMouseOut={() => this.setState({ miniActive: true })}\r\n anchor={rtlActive ? \"right\" : \"left\"}\r\n variant=\"permanent\"\r\n open\r\n classes={{\r\n paper: drawerPaper + \" \" + classes[bgColor + \"Background\"],\r\n }}\r\n >\r\n {brand}\r\n \r\n {image !== undefined ? (\r\n \r\n ) : null}\r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nSidebar.defaultProps = {\r\n bgColor: \"blue\",\r\n};\r\n\r\nSidebar.propTypes = {\r\n classes: PropTypes.object.isRequired,\r\n bgColor: PropTypes.oneOf([\"white\", \"black\", \"blue\"]),\r\n rtlActive: PropTypes.bool,\r\n color: PropTypes.oneOf([\r\n \"white\",\r\n \"red\",\r\n \"orange\",\r\n \"green\",\r\n \"blue\",\r\n \"purple\",\r\n \"rose\",\r\n ]),\r\n logo: PropTypes.string,\r\n logoText: PropTypes.string,\r\n image: PropTypes.string,\r\n routes: PropTypes.arrayOf(PropTypes.object),\r\n miniActive: PropTypes.bool,\r\n open: PropTypes.bool,\r\n handleDrawerToggle: PropTypes.func,\r\n};\r\n\r\nSidebarWrapper.propTypes = {\r\n className: PropTypes.string,\r\n user: PropTypes.object,\r\n headerLinks: PropTypes.object,\r\n links: PropTypes.object,\r\n};\r\n\r\nexport default withStyles(sidebarStyle)(Sidebar);\r\n","/*eslint-disable*/\r\nimport React, { Component } from \"react\";\r\nimport { NavLink } from \"react-router-dom\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Switch from \"@material-ui/core/Switch\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/customCheckboxRadioSwitch.js\";\r\n\r\nimport imagine1 from \"assets/img/sidebar-1.jpg\";\r\nimport imagine2 from \"assets/img/sidebar-2.jpg\";\r\nimport imagine3 from \"assets/img/sidebar-3.jpg\";\r\nimport imagine4 from \"assets/img/sidebar-4.jpg\";\r\n\r\nimport Button from \"components/CustomButtons/Button.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function FixedPlugin(props) {\r\n const [classes, setClasses] = React.useState(\"dropdown show\");\r\n const [bg_checked, setBg_checked] = React.useState(true);\r\n const [bgImage, setBgImage] = React.useState(props.bgImage);\r\n const [showImage, setShowImage] = React.useState(true);\r\n const handleClick = () => {\r\n props.handleFixedClick();\r\n };\r\n const handleChange = name => event => {\r\n switch (name) {\r\n case \"miniActive\":\r\n props.sidebarMinimize();\r\n break;\r\n case \"image\":\r\n if (event.target.checked) {\r\n props.handleImageClick(bgImage);\r\n } else {\r\n props.handleImageClick();\r\n }\r\n setShowImage(event.target.checked);\r\n break;\r\n default:\r\n break;\r\n }\r\n };\r\n const classesObj = useStyles();\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\nFixedPlugin.propTypes = {\r\n bgImage: PropTypes.string,\r\n handleFixedClick: PropTypes.func,\r\n miniActive: PropTypes.bool,\r\n fixedClasses: PropTypes.string,\r\n bgColor: PropTypes.oneOf([\"white\", \"black\", \"blue\"]),\r\n color: PropTypes.oneOf([\r\n \"white\",\r\n \"red\",\r\n \"orange\",\r\n \"green\",\r\n \"blue\",\r\n \"purple\",\r\n \"rose\"\r\n ]),\r\n handleBgColorClick: PropTypes.func,\r\n handleColorClick: PropTypes.func,\r\n handleImageClick: PropTypes.func,\r\n sidebarMinimize: PropTypes.func,\r\n rtlActive: PropTypes.bool\r\n};\r\n","import {\r\n drawerWidth,\r\n drawerMiniWidth,\r\n transition,\r\n containerFluid\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst appStyle = theme => ({\r\n wrapper: {\r\n position: \"relative\",\r\n top: \"0\",\r\n height: \"100vh\",\r\n \"&:after\": {\r\n display: \"table\",\r\n clear: \"both\",\r\n content: '\" \"'\r\n },\r\n \"& header,& header + div\": {\r\n direction: \"rtl\"\r\n }\r\n },\r\n mainPanel: {\r\n transitionProperty: \"top, bottom, width\",\r\n transitionDuration: \".2s, .2s, .35s\",\r\n transitionTimingFunction: \"linear, linear, ease\",\r\n [theme.breakpoints.up(\"md\")]: {\r\n width: `calc(100% - ${drawerWidth}px)`\r\n },\r\n overflow: \"auto\",\r\n position: \"relative\",\r\n float: \"left\",\r\n ...transition,\r\n maxHeight: \"100%\",\r\n width: \"100%\",\r\n overflowScrolling: \"touch\"\r\n },\r\n content: {\r\n marginTop: \"70px\",\r\n padding: \"30px 15px\",\r\n minHeight: \"calc(100% - 123px)\"\r\n },\r\n container: { ...containerFluid },\r\n mainPanelSidebarMini: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n width: `calc(100% - ${drawerMiniWidth}px)`\r\n }\r\n }\r\n});\r\n\r\nexport default appStyle;\r\n","import React from \"react\";\r\nimport cx from \"classnames\";\r\n\r\nimport { Switch, Route, Redirect } from \"react-router-dom\";\r\n// creates a beautiful scrollbar\r\nimport PerfectScrollbar from \"perfect-scrollbar\";\r\nimport \"perfect-scrollbar/css/perfect-scrollbar.css\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// core components\r\nimport AdminNavbar from \"components/Navbars/AdminNavbar.js\";\r\nimport Footer from \"components/Footer/Footer.js\";\r\nimport Sidebar from \"components/Sidebar/Sidebar.js\";\r\nimport FixedPlugin from \"components/FixedPlugin/FixedPlugin.js\";\r\n\r\nimport routes from \"routes.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/layouts/rtlStyle.js\";\r\n\r\nvar ps;\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function RTL(props) {\r\n const { ...rest } = props;\r\n // states and functions\r\n const [mobileOpen, setMobileOpen] = React.useState(false);\r\n const [miniActive, setMiniActive] = React.useState(false);\r\n const [image, setImage] = React.useState(require(\"assets/img/sidebar-2.jpg\"));\r\n const [color, setColor] = React.useState(\"blue\");\r\n const [bgColor, setBgColor] = React.useState(\"black\");\r\n // const [hasImage, setHasImage] = React.useState(true);\r\n const [fixedClasses, setFixedClasses] = React.useState(\"dropdown\");\r\n const [logo, setLogo] = React.useState(require(\"assets/img/logo-white.svg\"));\r\n // styles\r\n const classes = useStyles();\r\n const mainPanelClasses =\r\n classes.mainPanel +\r\n \" \" +\r\n cx({\r\n [classes.mainPanelSidebarMini]: miniActive\r\n });\r\n // ref for main panel div\r\n const mainPanel = React.createRef();\r\n // effect instead of componentDidMount, componentDidUpdate and componentWillUnmount\r\n React.useEffect(() => {\r\n if (navigator.platform.indexOf(\"Win\") > -1) {\r\n ps = new PerfectScrollbar(mainPanel.current, {\r\n suppressScrollX: true,\r\n suppressScrollY: false\r\n });\r\n document.body.style.overflow = \"hidden\";\r\n }\r\n window.addEventListener(\"resize\", resizeFunction);\r\n\r\n // Specify how to clean up after this effect:\r\n return function cleanup() {\r\n if (navigator.platform.indexOf(\"Win\") > -1) {\r\n ps.destroy();\r\n }\r\n window.removeEventListener(\"resize\", resizeFunction);\r\n };\r\n });\r\n // functions for changeing the states from components\r\n const handleImageClick = image => {\r\n setImage(image);\r\n };\r\n const handleColorClick = color => {\r\n setColor(color);\r\n };\r\n const handleBgColorClick = bgColor => {\r\n switch (bgColor) {\r\n case \"white\":\r\n setLogo(require(\"assets/img/logo.svg\"));\r\n break;\r\n default:\r\n setLogo(require(\"assets/img/logo-white.svg\"));\r\n break;\r\n }\r\n setBgColor(bgColor);\r\n };\r\n const handleFixedClick = () => {\r\n if (fixedClasses === \"dropdown\") {\r\n setFixedClasses(\"dropdown show\");\r\n } else {\r\n setFixedClasses(\"dropdown\");\r\n }\r\n };\r\n const handleDrawerToggle = () => {\r\n setMobileOpen(!mobileOpen);\r\n };\r\n const getActiveRoute = routes => {\r\n let activeRoute = \"Default Brand Text\";\r\n for (let i = 0; i < routes.length; i++) {\r\n if (routes[i].collapse) {\r\n let collapseActiveRoute = getActiveRoute(routes[i].views);\r\n if (collapseActiveRoute !== activeRoute) {\r\n return collapseActiveRoute;\r\n }\r\n } else {\r\n if (\r\n window.location.href.indexOf(routes[i].layout + routes[i].path) !== -1\r\n ) {\r\n return routes[i].name;\r\n }\r\n }\r\n }\r\n return activeRoute;\r\n };\r\n const getRoutes = routes => {\r\n return routes.map((prop, key) => {\r\n if (prop.collapse) {\r\n return getRoutes(prop.views);\r\n }\r\n if (prop.layout === \"/rtl\") {\r\n return (\r\n \r\n );\r\n } else {\r\n return null;\r\n }\r\n });\r\n };\r\n const sidebarMinimize = () => {\r\n setMiniActive(!miniActive);\r\n };\r\n const resizeFunction = () => {\r\n if (window.innerWidth >= 960) {\r\n setMobileOpen(false);\r\n }\r\n };\r\n return (\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n {getRoutes(routes)}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n );\r\n}\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { Redirect, Route } from \"react-router-dom\";\r\nimport { checkAuth } from \"../../ultils/appSession\";\r\n\r\n/* eslint-disable react/jsx-props-no-spreading */\r\nfunction PrivateRouter({ component: Component, ...rest }) {\r\n const role = localStorage.getItem(\"userRoles\")\r\n const isAdmin = role && role.indexOf('Admin') != -1\r\n const roleCorrectFlowPath = rest.role\r\n let failRole = false;\r\n if (!isAdmin && roleCorrectFlowPath == 'Admin') {\r\n failRole = true\r\n }\r\n return (\r\n {\r\n if (!checkAuth()) {\r\n return \r\n }\r\n if (failRole) {\r\n return \r\n }\r\n return \r\n }\r\n\r\n }\r\n />\r\n );\r\n}\r\n\r\nPrivateRouter.propTypes = {\r\n component: PropTypes.element,\r\n softToken: PropTypes.string,\r\n};\r\n\r\nPrivateRouter.defaultProps = {\r\n component: null,\r\n softToken: \"\",\r\n};\r\nexport default PrivateRouter;\r\n","import {\r\n drawerWidth,\r\n drawerMiniWidth,\r\n transition,\r\n containerFluid\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst appStyle = theme => ({\r\n wrapper: {\r\n position: \"relative\",\r\n top: \"0\",\r\n height: \"100vh\",\r\n \"&:after\": {\r\n display: \"table\",\r\n clear: \"both\",\r\n content: '\" \"'\r\n }\r\n },\r\n mainPanel: {\r\n transitionProperty: \"top, bottom, width\",\r\n transitionDuration: \".2s, .2s, .35s\",\r\n transitionTimingFunction: \"linear, linear, ease\",\r\n [theme.breakpoints.up(\"md\")]: {\r\n width: `calc(100% - ${drawerWidth}px)`\r\n },\r\n overflow: \"auto\",\r\n position: \"relative\",\r\n float: \"right\",\r\n ...transition,\r\n maxHeight: \"100%\",\r\n width: \"100%\",\r\n overflowScrolling: \"touch\"\r\n },\r\n content: {\r\n marginTop: \"70px\",\r\n padding: \"30px 15px\",\r\n minHeight: \"calc(100vh - 123px)\"\r\n },\r\n container: { ...containerFluid },\r\n map: {\r\n marginTop: \"70px\"\r\n },\r\n mainPanelSidebarMini: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n width: `calc(100% - ${drawerMiniWidth}px)`\r\n }\r\n },\r\n mainPanelWithPerfectScrollbar: {\r\n overflow: \"hidden !important\"\r\n }\r\n});\r\n\r\nexport default appStyle;\r\n","import React from \"react\";\r\nimport cx from \"classnames\";\r\nimport { Switch, Redirect } from \"react-router-dom\";\r\n// creates a beautiful scrollbar\r\nimport PerfectScrollbar from \"perfect-scrollbar\";\r\nimport \"perfect-scrollbar/css/perfect-scrollbar.css\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// core components\r\nimport AdminNavbar from \"components/Navbars/AdminNavbar.js\";\r\nimport Footer from \"components/Footer/Footer.js\";\r\nimport Sidebar from \"components/Sidebar/Sidebar.js\";\r\nimport FixedPlugin from \"components/FixedPlugin/FixedPlugin.js\";\r\nimport PrivateRouter from \"components/PrivateRouter/PrivateRouter.js\";\r\n\r\nimport routes from \"routes.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/layouts/adminStyle.js\";\r\n\r\nvar ps;\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Dashboard(props) {\r\n const { ...rest } = props;\r\n // states and functions\r\n const [mobileOpen, setMobileOpen] = React.useState(false);\r\n const [miniActive, setMiniActive] = React.useState(false);\r\n const [image, setImage] = React.useState(require(\"assets/img/sidebar-2.jpg\"));\r\n const [color, setColor] = React.useState(\"blue\");\r\n const [bgColor, setBgColor] = React.useState(\"black\");\r\n // const [hasImage, setHasImage] = React.useState(true);\r\n const [fixedClasses, setFixedClasses] = React.useState(\"dropdown\");\r\n const [logo, setLogo] = React.useState(require(\"assets/img/logo-white.svg\"));\r\n // styles\r\n const classes = useStyles();\r\n const mainPanelClasses =\r\n classes.mainPanel +\r\n \" \" +\r\n cx({\r\n [classes.mainPanelSidebarMini]: miniActive,\r\n [classes.mainPanelWithPerfectScrollbar]:\r\n navigator.platform.indexOf(\"Win\") > -1,\r\n });\r\n // ref for main panel div\r\n const mainPanel = React.createRef();\r\n // effect instead of componentDidMount, componentDidUpdate and componentWillUnmount\r\n React.useEffect(() => {\r\n if (navigator.platform.indexOf(\"Win\") > -1) {\r\n ps = new PerfectScrollbar(mainPanel.current, {\r\n suppressScrollX: true,\r\n suppressScrollY: false,\r\n });\r\n document.body.style.overflow = \"hidden\";\r\n }\r\n window.addEventListener(\"resize\", resizeFunction);\r\n\r\n // Specify how to clean up after this effect:\r\n return function cleanup() {\r\n if (navigator.platform.indexOf(\"Win\") > -1) {\r\n ps.destroy();\r\n }\r\n window.removeEventListener(\"resize\", resizeFunction);\r\n };\r\n });\r\n // functions for changeing the states from components\r\n const handleImageClick = (image) => {\r\n setImage(image);\r\n };\r\n const handleColorClick = (color) => {\r\n setColor(color);\r\n };\r\n const handleBgColorClick = (bgColor) => {\r\n switch (bgColor) {\r\n case \"white\":\r\n setLogo(require(\"assets/img/logo.svg\"));\r\n break;\r\n default:\r\n setLogo(require(\"assets/img/logo-white.svg\"));\r\n break;\r\n }\r\n setBgColor(bgColor);\r\n };\r\n const handleFixedClick = () => {\r\n if (fixedClasses === \"dropdown\") {\r\n setFixedClasses(\"dropdown show\");\r\n } else {\r\n setFixedClasses(\"dropdown\");\r\n }\r\n };\r\n const handleDrawerToggle = () => {\r\n setMobileOpen(!mobileOpen);\r\n };\r\n const getRoute = () => {\r\n return window.location.pathname !== \"/admin/full-screen-maps\";\r\n };\r\n const getActiveRoute = (routes) => {\r\n let activeRoute = \"Default Brand Text\";\r\n for (let i = 0; i < routes.length; i++) {\r\n if (routes[i].collapse) {\r\n let collapseActiveRoute = getActiveRoute(routes[i].views);\r\n if (collapseActiveRoute !== activeRoute) {\r\n return collapseActiveRoute;\r\n }\r\n } else {\r\n if (\r\n window.location.href.indexOf(routes[i].layout + routes[i].path) !== -1\r\n ) {\r\n return routes[i].name;\r\n }\r\n }\r\n }\r\n return activeRoute;\r\n };\r\n const getRoutes = (routes) => {\r\n return routes.map((prop, key) => {\r\n if (prop.collapse) {\r\n return getRoutes(prop.views);\r\n }\r\n if (prop.layout === \"/admin\") {\r\n return (\r\n \r\n );\r\n } else {\r\n return null;\r\n }\r\n });\r\n };\r\n const sidebarMinimize = () => {\r\n setMiniActive(!miniActive);\r\n };\r\n const resizeFunction = () => {\r\n if (window.innerWidth >= 960) {\r\n setMobileOpen(false);\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n
\r\n \r\n {/* On the /maps/full-screen-maps route we want the map to be on full screen - this is not possible if the content and conatiner classes are present because they have some paddings which would make the map smaller */}\r\n {getRoute() ? (\r\n
\r\n
\r\n \r\n {getRoutes(routes)}\r\n \r\n \r\n
\r\n
\r\n ) : (\r\n
\r\n \r\n {getRoutes(routes)}\r\n \r\n \r\n
\r\n )}\r\n {getRoute() ?
: null}\r\n \r\n
\r\n
\r\n );\r\n}\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { fade, makeStyles } from \"@material-ui/core/styles\";\r\nimport AppBar from \"@material-ui/core/AppBar\";\r\nimport Toolbar from \"@material-ui/core/Toolbar\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport Badge from \"@material-ui/core/Badge\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Menu from \"@material-ui/core/Menu\";\r\nimport MenuIcon from \"@material-ui/icons/Menu\";\r\nimport AccountCircle from \"@material-ui/icons/AccountCircle\";\r\nimport PowerSettingsNew from \"@material-ui/icons/PowerSettingsNew\";\r\nimport PhoneCallback from \"@material-ui/icons/PhoneCallback\";\r\nimport appLogo from \"../../assets/img/logo-white.svg\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport PhoneForwardedIcon from \"@material-ui/icons/PhoneForwarded\";\r\nimport VpnKeyIcon from \"@material-ui/icons/VpnKey\";\r\nimport queryString from 'query-string';\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport CustomInput from \"components/CustomInput/CustomInput\";\r\nimport {\r\n FormHelperText,\r\n Select,\r\n InputLabel,\r\n FormControl,\r\n DialogTitle,\r\n DialogContentText,\r\n DialogContent,\r\n DialogActions,\r\n Dialog,\r\n Grid,\r\n Checkbox,\r\n FormControlLabel,\r\n} from \"@material-ui/core\";\r\nimport { Snackbar } from \"@material-ui/core\";\r\nimport MuiAlert from \"@material-ui/lab/Alert\";\r\nimport { getSession, removeSession } from \"../../ultils/appSession\";\r\n\r\nimport fetchClient from \"../../ultils/request\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n grow: {\r\n flexGrow: 1,\r\n },\r\n menuButton: {\r\n marginRight: theme.spacing(2),\r\n },\r\n title: {\r\n display: \"none\",\r\n [theme.breakpoints.up(\"sm\")]: {\r\n display: \"block\",\r\n },\r\n },\r\n search: {\r\n position: \"relative\",\r\n borderRadius: theme.shape.borderRadius,\r\n backgroundColor: fade(theme.palette.common.white, 0.15),\r\n \"&:hover\": {\r\n backgroundColor: fade(theme.palette.common.white, 0.25),\r\n },\r\n marginRight: theme.spacing(2),\r\n marginLeft: 0,\r\n width: \"100%\",\r\n [theme.breakpoints.up(\"sm\")]: {\r\n marginLeft: theme.spacing(3),\r\n width: \"auto\",\r\n },\r\n },\r\n searchIcon: {\r\n padding: theme.spacing(0, 2),\r\n height: \"100%\",\r\n position: \"absolute\",\r\n pointerEvents: \"none\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n },\r\n inputRoot: {\r\n color: \"inherit\",\r\n },\r\n inputInput: {\r\n padding: theme.spacing(1, 1, 1, 0),\r\n // vertical padding + font size from searchIcon\r\n paddingLeft: `calc(1em + ${theme.spacing(4)}px)`,\r\n transition: theme.transitions.create(\"width\"),\r\n width: \"100%\",\r\n [theme.breakpoints.up(\"md\")]: {\r\n width: \"20ch\",\r\n },\r\n },\r\n sectionDesktop: {\r\n display: \"none\",\r\n [theme.breakpoints.up(\"md\")]: {\r\n display: \"flex\",\r\n },\r\n },\r\n sectionMobile: {\r\n display: \"flex\",\r\n [theme.breakpoints.up(\"md\")]: {\r\n display: \"none\",\r\n },\r\n },\r\n logoImage: {\r\n maxHeight: 30,\r\n },\r\n headerText: {\r\n fontSize: 16,\r\n },\r\n}));\r\n\r\nexport default function PrimarySearchAppBar() {\r\n let history = useHistory();\r\n const classes = useStyles();\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const [mobileMoreAnchorEl, setMobileMoreAnchorEl] = React.useState(null);\r\n const [openDialog, setOpenDialog] = useState(false);\r\n const [errorMessage, setErrorMessage] = useState(\"\");\r\n\r\n const isMenuOpen = Boolean(anchorEl);\r\n const isMobileMenuOpen = Boolean(mobileMoreAnchorEl);\r\n\r\n const handleProfileMenuOpen = (event) => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n\r\n const handleMobileMenuClose = () => {\r\n setMobileMoreAnchorEl(null);\r\n };\r\n\r\n const handleMenuClose = () => {\r\n setAnchorEl(null);\r\n handleMobileMenuClose();\r\n };\r\n\r\n const handleMobileMenuOpen = (event) => {\r\n setMobileMoreAnchorEl(event.currentTarget);\r\n };\r\n\r\n const menuId = \"primary-search-account-menu\";\r\n const renderMenu = (\r\n \r\n setOpenDialog(true)}>Đổi mật khẩu\r\n {\r\n handleMenuClose();\r\n logOut();\r\n }}\r\n >\r\n Đăng xuất\r\n \r\n
\r\n );\r\n\r\n const gotoHistoryPage = () => {\r\n history.push(\"/user/lich-su-goi\");\r\n handleMobileMenuClose();\r\n handleMobileMenuClose();\r\n };\r\n\r\n const gotoCallPage = () => {\r\n history.push(\"/user/goi\");\r\n handleMobileMenuClose();\r\n handleMobileMenuClose();\r\n };\r\n\r\n const logOut = () => {\r\n removeSession();\r\n history.push(\"/auth/login\");\r\n };\r\n\r\n const closeDialog = () => {\r\n handleMenuClose();\r\n setOpenDialog(false);\r\n }\r\n const openDialogUpdate = () => {\r\n setOpenDialog(true);\r\n handleMenuClose();\r\n }\r\n\r\n const handerApiError = (error) => {\r\n setErrorMessage(error);\r\n };\r\n\r\n const inCallPage = () => {\r\n return window.location.pathname.includes(\"/user/goi\");\r\n };\r\n\r\n const currentSession = getSession();\r\n\r\n const mobileMenuId = \"primary-search-account-menu-mobile\";\r\n const renderMobileMenu = (\r\n \r\n {inCallPage() ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n

Lịch sử cuộc gọi

\r\n
\r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n \r\n

Gọi khách hàng

\r\n
\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n

Đổi mật khẩu1

\r\n
\r\n \r\n \r\n \r\n \r\n

Đăng xuất

\r\n
\r\n
;\r\n}\r\n","import {\r\n cardTitle,\r\n grayColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst userProfileStyles = {\r\n cardTitle,\r\n cardIconTitle: {\r\n ...cardTitle,\r\n marginTop: \"15px\",\r\n marginBottom: \"0px\",\r\n \"& small\": {\r\n fontSize: \"80%\",\r\n fontWeight: \"400\"\r\n }\r\n },\r\n cardCategory: {\r\n marginTop: \"10px\",\r\n color: grayColor[0] + \" !important\",\r\n textAlign: \"center\"\r\n },\r\n description: {\r\n color: grayColor[0]\r\n },\r\n updateProfileButton: {\r\n float: \"right\"\r\n }\r\n};\r\nexport default userProfileStyles;\r\n","import React from \"react\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\n\r\n// @material-ui/icons\r\nimport PermIdentity from \"@material-ui/icons/PermIdentity\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\r\nimport Clearfix from \"components/Clearfix/Clearfix.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardAvatar from \"components/Card/CardAvatar.js\";\r\n\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/userProfileStyles.js\";\r\n\r\nimport avatar from \"assets/img/faces/marc.jpg\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function UserProfile() {\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n Edit Profile - Complete your profile\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\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n About me\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n e.preventDefault()}>\r\n \"...\"\r\n \r\n \r\n \r\n
CEO / CO-FOUNDER
\r\n

Alec Thompson

\r\n

\r\n Don{\"'\"}t be scared of the truth because we need to restart the\r\n human foundation in truth And I love you like Kanye loves Kanye\r\n I love Rick Owens’ bed design but the back is...\r\n

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import {\r\n cardTitle,\r\n dangerColor,\r\n whiteColor,\r\n grayColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\nimport customCheckboxRadioSwitch from \"assets/jss/material-dashboard-pro-react/customCheckboxRadioSwitch.js\";\r\n\r\nconst validationFormsStyle = {\r\n ...customCheckboxRadioSwitch,\r\n cardTitle: {\r\n ...cardTitle,\r\n color: whiteColor\r\n },\r\n cardIconTitle: {\r\n ...cardTitle,\r\n marginTop: \"15px\",\r\n marginBottom: \"0px\"\r\n },\r\n formCategory: {\r\n marginBottom: \"0\",\r\n color: grayColor[0],\r\n fontSize: \"14px\",\r\n padding: \"10px 0 10px\"\r\n },\r\n center: {\r\n textAlign: \"center\"\r\n },\r\n justifyContentCenter: {\r\n justifyContent: \"center\"\r\n },\r\n registerButton: {\r\n float: \"right\"\r\n },\r\n danger: {\r\n color: dangerColor[0] + \"!important\"\r\n }\r\n};\r\n\r\nexport default validationFormsStyle;\r\n","/*eslint-disable*/\r\nimport React from \"react\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\n\r\n// material ui icons\r\nimport MailOutline from \"@material-ui/icons/MailOutline\";\r\nimport Contacts from \"@material-ui/icons/Contacts\";\r\nimport Check from \"@material-ui/icons/Check\";\r\nimport Close from \"@material-ui/icons/Close\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport CardText from \"components/Card/CardText.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardFooter from \"components/Card/CardFooter.js\";\r\n\r\n// style for this view\r\nimport styles from \"assets/jss/material-dashboard-pro-react/views/validationFormsStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function ValidationForms() {\r\n // register form\r\n const [registerEmail, setregisterEmail] = React.useState(\"\");\r\n const [registerEmailState, setregisterEmailState] = React.useState(\"\");\r\n const [registerPassword, setregisterPassword] = React.useState(\"\");\r\n const [registerPasswordState, setregisterPasswordState] = React.useState(\"\");\r\n const [registerConfirmPassword, setregisterConfirmPassword] = React.useState(\r\n \"\"\r\n );\r\n const [\r\n registerConfirmPasswordState,\r\n setregisterConfirmPasswordState\r\n ] = React.useState(\"\");\r\n const [registerCheckbox, setregisterCheckbox] = React.useState(false);\r\n const [registerCheckboxState, setregisterCheckboxState] = React.useState(\"\");\r\n // login form\r\n const [loginEmail, setloginEmail] = React.useState(\"\");\r\n const [loginEmailState, setloginEmailState] = React.useState(\"\");\r\n const [loginPassword, setloginPassword] = React.useState(\"\");\r\n const [loginPasswordState, setloginPasswordState] = React.useState(\"\");\r\n // type validation\r\n const [required, setrequired] = React.useState(\"\");\r\n const [requiredState, setrequiredState] = React.useState(\"\");\r\n const [typeEmail, settypeEmail] = React.useState(\"\");\r\n const [typeEmailState, settypeEmailState] = React.useState(\"\");\r\n const [number, setnumber] = React.useState(\"\");\r\n const [numberState, setnumberState] = React.useState(\"\");\r\n const [url, seturl] = React.useState(\"\");\r\n const [urlState, seturlState] = React.useState(\"\");\r\n const [equalTo, setequalTo] = React.useState(\"\");\r\n const [whichEqualTo, setwhichEqualTo] = React.useState(\"\");\r\n const [equalToState, setequalToState] = React.useState(\"\");\r\n // range validation\r\n const [minLength, setminLength] = React.useState(\"\");\r\n const [minLengthState, setminLengthState] = React.useState(\"\");\r\n const [maxLength, setmaxLength] = React.useState(\"\");\r\n const [maxLengthState, setmaxLengthState] = React.useState(\"\");\r\n const [range, setrange] = React.useState(\"\");\r\n const [rangeState, setrangeState] = React.useState(\"\");\r\n const [minValue, setminValue] = React.useState(\"\");\r\n const [minValueState, setminValueState] = React.useState(\"\");\r\n const [maxValue, setmaxValue] = React.useState(\"\");\r\n const [maxValueState, setmaxValueState] = React.useState(\"\");\r\n // function that returns true if value is email, false otherwise\r\n const verifyEmail = value => {\r\n var emailRex = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n if (emailRex.test(value)) {\r\n return true;\r\n }\r\n return false;\r\n };\r\n // function that verifies if a string has a given length or not\r\n const verifyLength = (value, length) => {\r\n if (value.length >= length) {\r\n return true;\r\n }\r\n return false;\r\n };\r\n // function that verifies if value contains only numbers\r\n const verifyNumber = value => {\r\n var numberRex = new RegExp(\"^[0-9]+$\");\r\n if (numberRex.test(value)) {\r\n return true;\r\n }\r\n return false;\r\n };\r\n // verifies if value is a valid URL\r\n const verifyUrl = value => {\r\n try {\r\n new URL(value);\r\n return true;\r\n } catch (_) {\r\n return false;\r\n }\r\n };\r\n const registerClick = () => {\r\n if (registerEmailState === \"\") {\r\n setregisterEmailState(\"error\");\r\n }\r\n if (registerPasswordState === \"\") {\r\n setregisterPasswordState(\"error\");\r\n }\r\n if (registerConfirmPasswordState === \"\") {\r\n setregisterConfirmPasswordState(\"error\");\r\n }\r\n if (registerCheckboxState === \"\") {\r\n setregisterCheckboxState(\"error\");\r\n }\r\n };\r\n const loginClick = () => {\r\n if (loginEmailState === \"\") {\r\n setloginEmailState(\"error\");\r\n }\r\n if (loginPasswordState === \"\") {\r\n setloginPasswordState(\"error\");\r\n }\r\n };\r\n const typeClick = () => {\r\n if (requiredState === \"\") {\r\n setrequiredState(\"error\");\r\n }\r\n if (typeEmailState === \"\") {\r\n settypeEmailState(\"error\");\r\n }\r\n if (numberState === \"\") {\r\n setnumberState(\"error\");\r\n }\r\n if (urlState === \"\") {\r\n seturlState(\"error\");\r\n }\r\n if (equalToState === \"\") {\r\n setequalToState(\"error\");\r\n }\r\n };\r\n const rangeClick = () => {\r\n if (minLengthState === \"\") {\r\n setminLengthState(\"error\");\r\n }\r\n if (maxLengthState === \"\") {\r\n setmaxLengthState(\"error\");\r\n }\r\n if (rangeState === \"\") {\r\n setrangeState(\"error\");\r\n }\r\n if (minValueState === \"\") {\r\n setminValueState(\"error\");\r\n }\r\n if (maxValueState === \"\") {\r\n setmaxValueState(\"error\");\r\n }\r\n };\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Register Forms

\r\n
\r\n \r\n
\r\n {\r\n if (verifyEmail(event.target.value)) {\r\n setregisterEmailState(\"success\");\r\n } else {\r\n setregisterEmailState(\"error\");\r\n }\r\n setregisterEmail(event.target.value);\r\n },\r\n type: \"email\"\r\n }}\r\n />\r\n {\r\n if (verifyLength(event.target.value, 1)) {\r\n setregisterPasswordState(\"success\");\r\n } else {\r\n setregisterPasswordState(\"error\");\r\n }\r\n setregisterPassword(event.target.value);\r\n },\r\n type: \"password\",\r\n autoComplete: \"off\"\r\n }}\r\n />\r\n {\r\n if (registerPassword === event.target.value) {\r\n setregisterConfirmPasswordState(\"success\");\r\n } else {\r\n setregisterConfirmPasswordState(\"error\");\r\n }\r\n setregisterConfirmPassword(event.target.value);\r\n },\r\n type: \"password\",\r\n autoComplete: \"off\"\r\n }}\r\n />\r\n
\r\n * Required fields\r\n
\r\n {\r\n if (event.target.checked) {\r\n setregisterCheckboxState(\"success\");\r\n } else {\r\n setregisterCheckboxState(\"error\");\r\n }\r\n setregisterCheckbox(event.target.checked);\r\n }}\r\n checkedIcon={}\r\n icon={}\r\n classes={{\r\n checked: classes.checked,\r\n root: classes.checkRoot\r\n }}\r\n />\r\n }\r\n classes={{\r\n label:\r\n classes.label +\r\n (registerCheckboxState === \"error\"\r\n ? \" \" + classes.labelError\r\n : \"\")\r\n }}\r\n label=\"Subscribe to newsletter\"\r\n />\r\n \r\n Register\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

Login Form

\r\n
\r\n \r\n
\r\n {\r\n if (verifyEmail(event.target.value)) {\r\n setloginEmailState(\"success\");\r\n } else {\r\n setloginEmailState(\"error\");\r\n }\r\n setloginEmail(event.target.value);\r\n },\r\n type: \"email\"\r\n }}\r\n />\r\n {\r\n if (verifyLength(event.target.value, 1)) {\r\n setloginPasswordState(\"success\");\r\n } else {\r\n setloginPasswordState(\"error\");\r\n }\r\n setloginPassword(event.target.value);\r\n },\r\n type: \"password\",\r\n autoComplete: \"off\"\r\n }}\r\n />\r\n
\r\n * Required fields\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

Type Validation

\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n Required Text\r\n \r\n \r\n \r\n {\r\n if (verifyLength(event.target.value, 0)) {\r\n setrequiredState(\"success\");\r\n } else {\r\n setrequiredState(\"error\");\r\n }\r\n setrequired(event.target.value);\r\n },\r\n type: \"text\",\r\n endAdornment:\r\n requiredState === \"error\" ? (\r\n \r\n \r\n \r\n ) : (\r\n undefined\r\n )\r\n }}\r\n />\r\n \r\n \r\n \r\n required\r\n \r\n \r\n \r\n \r\n \r\n \r\n Email\r\n \r\n \r\n \r\n {\r\n if (verifyEmail(event.target.value)) {\r\n settypeEmailState(\"success\");\r\n } else {\r\n settypeEmailState(\"error\");\r\n }\r\n settypeEmail(event.target.value);\r\n },\r\n type: \"email\",\r\n endAdornment:\r\n typeEmailState === \"error\" ? (\r\n \r\n \r\n \r\n ) : (\r\n undefined\r\n )\r\n }}\r\n />\r\n \r\n \r\n \r\n email\r\n \r\n \r\n \r\n \r\n \r\n \r\n Number\r\n \r\n \r\n \r\n {\r\n if (verifyNumber(event.target.value)) {\r\n setnumberState(\"success\");\r\n } else {\r\n setnumberState(\"error\");\r\n }\r\n setnumber(event.target.value);\r\n },\r\n type: \"number\",\r\n endAdornment:\r\n numberState === \"error\" ? (\r\n \r\n \r\n \r\n ) : (\r\n undefined\r\n )\r\n }}\r\n />\r\n \r\n \r\n \r\n number\r\n \r\n \r\n \r\n \r\n \r\n Url\r\n \r\n \r\n {\r\n if (verifyUrl(event.target.value)) {\r\n seturlState(\"success\");\r\n } else {\r\n seturlState(\"error\");\r\n }\r\n seturl(event.target.value);\r\n },\r\n type: \"text\",\r\n endAdornment:\r\n urlState === \"error\" ? (\r\n \r\n \r\n \r\n ) : (\r\n undefined\r\n )\r\n }}\r\n />\r\n \r\n \r\n \r\n url\r\n \r\n \r\n \r\n \r\n \r\n \r\n Equal to\r\n \r\n \r\n \r\n setequalTo(event.target.value),\r\n type: \"text\",\r\n endAdornment:\r\n equalToState === \"error\" ? (\r\n \r\n \r\n \r\n ) : (\r\n undefined\r\n )\r\n }}\r\n />\r\n \r\n \r\n {\r\n if (equalTo === event.target.value) {\r\n setequalToState(\"success\");\r\n } else {\r\n setequalToState(\"error\");\r\n }\r\n setwhichEqualTo(event.target.value);\r\n },\r\n type: \"text\",\r\n endAdornment:\r\n equalToState === \"error\" ? (\r\n \r\n \r\n \r\n ) : (\r\n undefined\r\n )\r\n }}\r\n />\r\n \r\n \r\n \r\n equalTo\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

Range Validation

\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n Min Length\r\n \r\n \r\n \r\n {\r\n if (verifyLength(event.target.value, 5)) {\r\n setminLengthState(\"success\");\r\n } else {\r\n setminLengthState(\"error\");\r\n }\r\n setminLength(event.target.value);\r\n },\r\n type: \"text\",\r\n endAdornment:\r\n minLengthState === \"error\" ? (\r\n \r\n \r\n \r\n ) : (\r\n undefined\r\n )\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n minLength={'\"'}5{'\"'}\r\n \r\n \r\n \r\n \r\n \r\n Max Length\r\n \r\n \r\n \r\n {\r\n if (!verifyLength(event.target.value, 6)) {\r\n setmaxLengthState(\"success\");\r\n } else {\r\n setmaxLengthState(\"error\");\r\n }\r\n setmaxLength(event.target.value);\r\n },\r\n type: \"text\",\r\n endAdornment:\r\n maxLengthState === \"error\" ? (\r\n \r\n \r\n \r\n ) : (\r\n undefined\r\n )\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n maxLength={'\"'}5{'\"'}\r\n \r\n \r\n \r\n \r\n \r\n Range\r\n \r\n \r\n \r\n {\r\n if (\r\n verifyNumber(event.target.value) &&\r\n event.target.value >= 6 &&\r\n event.target.value <= 10\r\n ) {\r\n setrangeState(\"success\");\r\n } else {\r\n setrangeState(\"error\");\r\n }\r\n setrange(event.target.value);\r\n },\r\n type: \"text\",\r\n endAdornment:\r\n rangeState === \"error\" ? (\r\n \r\n \r\n \r\n ) : (\r\n undefined\r\n )\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n range={'\"'}[6,10]{'\"'}\r\n \r\n \r\n \r\n \r\n \r\n Min Value\r\n \r\n \r\n \r\n {\r\n if (\r\n verifyNumber(event.target.value) &&\r\n event.target.value >= 6\r\n ) {\r\n setminValueState(\"success\");\r\n } else {\r\n setminValueState(\"error\");\r\n }\r\n setminValue(event.target.value);\r\n },\r\n type: \"text\",\r\n endAdornment:\r\n minValueState === \"error\" ? (\r\n \r\n \r\n \r\n ) : (\r\n undefined\r\n )\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n min={'\"'}6{'\"'}\r\n \r\n \r\n \r\n \r\n \r\n Max Value\r\n \r\n \r\n \r\n {\r\n if (\r\n verifyNumber(event.target.value) &&\r\n event.target.value <= 6\r\n ) {\r\n setmaxValueState(\"success\");\r\n } else {\r\n setmaxValueState(\"error\");\r\n }\r\n setmaxValue(event.target.value);\r\n },\r\n type: \"text\",\r\n endAdornment:\r\n maxValueState === \"error\" ? (\r\n \r\n \r\n \r\n ) : (\r\n undefined\r\n )\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n max={'\"'}6{'\"'}\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","import React from \"react\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\n// @material-ui/icons\r\n// import Weekend from \"@material-ui/icons/Weekend\";\r\nimport Home from \"@material-ui/icons/Home\";\r\nimport BugReport from \"@material-ui/icons/BugReport\";\r\nimport Code from \"@material-ui/icons/Code\";\r\nimport Cloud from \"@material-ui/icons/Cloud\";\r\nimport FormatQuote from \"@material-ui/icons/FormatQuote\";\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Timeline from \"components/Timeline/Timeline.js\";\r\nimport CustomTabs from \"components/CustomTabs/CustomTabs.js\";\r\nimport Tasks from \"components/Tasks/Tasks.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport CardAvatar from \"components/Card/CardAvatar.js\";\r\nimport CardText from \"components/Card/CardText.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardFooter from \"components/Card/CardFooter.js\";\r\n\r\nimport { widgetStories, bugs, website, server } from \"variables/general.js\";\r\n\r\nimport image from \"assets/img/faces/card-profile1-square.jpg\";\r\n\r\nimport {\r\n cardTitle,\r\n roseColor\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst styles = {\r\n cardTitle,\r\n cardTitleWhite: {\r\n ...cardTitle,\r\n color: \"#FFFFFF\",\r\n marginTop: \"0\"\r\n },\r\n cardCategoryWhite: {\r\n margin: \"0\",\r\n color: \"rgba(255, 255, 255, 0.8)\",\r\n fontSize: \".875rem\"\r\n },\r\n cardCategory: {\r\n color: \"#999999\",\r\n marginTop: \"10px\"\r\n },\r\n icon: {\r\n color: \"#333333\",\r\n margin: \"10px auto 0\",\r\n width: \"130px\",\r\n height: \"130px\",\r\n border: \"1px solid #E5E5E5\",\r\n borderRadius: \"50%\",\r\n lineHeight: \"174px\",\r\n \"& svg\": {\r\n width: \"55px\",\r\n height: \"55px\"\r\n },\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n width: \"55px\",\r\n fontSize: \"55px\"\r\n }\r\n },\r\n iconRose: {\r\n color: roseColor\r\n },\r\n marginTop30: {\r\n marginTop: \"30px\"\r\n },\r\n testimonialIcon: {\r\n marginTop: \"30px\",\r\n \"& svg\": {\r\n width: \"40px\",\r\n height: \"40px\"\r\n }\r\n },\r\n cardTestimonialDescription: {\r\n fontStyle: \"italic\",\r\n color: \"#999999\"\r\n }\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Widgets() {\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n

Employees Stats

\r\n

\r\n New employees on 15th September, 2016\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 tabName: \"Website\",\r\n tabIcon: Code,\r\n tabContent: (\r\n \r\n )\r\n },\r\n {\r\n tabName: \"Server\",\r\n tabIcon: Cloud,\r\n tabContent: (\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
SMALL COMPANY
\r\n
\r\n \r\n
\r\n

\r\n $29\r\n

\r\n

\r\n This is good if your company size is between 2 and 10\r\n Persons.\r\n

\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
Freelancer
\r\n
\r\n weekend\r\n
\r\n

\r\n FREE\r\n

\r\n

\r\n This is good if your company size is between 2 and 10\r\n Persons.\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 Your products, all the kits that I have downloaded from your\r\n site and worked with are sooo cool! I love the color\r\n mixtures, cards... everything. Keep up the great work!\r\n
\r\n
\r\n \r\n

Alec Thompson

\r\n
@ALECTHOMPSON
\r\n \r\n e.preventDefault()}>\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","import {\r\n primaryColor,\r\n dangerColor,\r\n successColor,\r\n roseColor,\r\n infoColor,\r\n warningColor,\r\n whiteColor,\r\n blackColor,\r\n grayColor,\r\n hexToRgb\r\n} from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst wizardStyle = {\r\n wizardContainer: {},\r\n card: {\r\n display: \"inline-block\",\r\n position: \"relative\",\r\n width: \"100%\",\r\n margin: \"25px 0\",\r\n boxShadow: \"0 1px 4px 0 rgba(\" + hexToRgb(blackColor) + \", 0.14)\",\r\n borderRadius: \"6px\",\r\n color: \"rgba(\" + hexToRgb(blackColor) + \", 0.87)\",\r\n background: whiteColor,\r\n transition: \"all 300ms linear\",\r\n minHeight: \"410px\"\r\n },\r\n wizardHeader: {\r\n textAlign: \"center\",\r\n padding: \"25px 0 35px\"\r\n },\r\n title: {\r\n margin: \"0\"\r\n },\r\n subtitle: {\r\n margin: \"5px 0 0\"\r\n },\r\n wizardNavigation: {\r\n position: \"relative\"\r\n },\r\n nav: {\r\n marginTop: \"20px\",\r\n paddingLeft: \"0\",\r\n marginBottom: \"0\",\r\n listStyle: \"none\",\r\n backgroundColor: \"rgba(\" + hexToRgb(grayColor[17]) + \", 0.2)\",\r\n \"&:after,&:before\": {\r\n display: \"table\",\r\n content: '\" \"'\r\n },\r\n \"&:after\": {\r\n boxSizing: \"border-box\"\r\n }\r\n },\r\n steps: {\r\n marginLeft: \"0\",\r\n textAlign: \"center\",\r\n // float: \"left\",\r\n // display: \"block\",\r\n position: \"relative\",\r\n display: \"inline-block\"\r\n },\r\n stepsAnchor: {\r\n cursor: \"pointer\",\r\n position: \"relative\",\r\n display: \"block\",\r\n padding: \"10px 15px\",\r\n textDecoration: \"none\",\r\n transition: \"all .3s\",\r\n border: \"0 !important\",\r\n borderRadius: \"30px\",\r\n lineHeight: \"18px\",\r\n textTransform: \"uppercase\",\r\n fontSize: \"12px\",\r\n fontWeight: \"500\",\r\n minWidth: \"100px\",\r\n textAlign: \"center\",\r\n color: grayColor[6] + \" !important\"\r\n },\r\n content: {\r\n marginTop: \"20px\",\r\n minHeight: \"340px\",\r\n padding: \"20px 15px\"\r\n },\r\n stepContent: {\r\n display: \"none\"\r\n },\r\n stepContentActive: {\r\n display: \"block\"\r\n },\r\n movingTab: {\r\n position: \"absolute\",\r\n textAlign: \"center\",\r\n padding: \"12px\",\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n WebkitFontSmoothing: \"subpixel-antialiased\",\r\n top: \"-4px\",\r\n left: \"0px\",\r\n borderRadius: \"4px\",\r\n color: whiteColor,\r\n cursor: \"pointer\",\r\n fontWeight: \"500\"\r\n },\r\n primary: {\r\n backgroundColor: primaryColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.4)\"\r\n },\r\n warning: {\r\n backgroundColor: warningColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.4)\"\r\n },\r\n danger: {\r\n backgroundColor: dangerColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.4)\"\r\n },\r\n success: {\r\n backgroundColor: successColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.4)\"\r\n },\r\n info: {\r\n backgroundColor: infoColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.4)\"\r\n },\r\n rose: {\r\n backgroundColor: roseColor[0],\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.4)\"\r\n },\r\n footer: {\r\n padding: \"0 15px\"\r\n },\r\n left: {\r\n float: \"left!important\"\r\n },\r\n right: {\r\n float: \"right!important\"\r\n },\r\n clearfix: {\r\n \"&:after,&:before\": {\r\n display: \"table\",\r\n content: '\" \"'\r\n },\r\n clear: \"both\"\r\n }\r\n};\r\n\r\nexport default wizardStyle;\r\n","import React from \"react\";\r\nimport cx from \"classnames\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\n// core components\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\n\r\nimport wizardStyle from \"assets/jss/material-dashboard-pro-react/components/wizardStyle.js\";\r\n\r\nclass Wizard extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n var width;\r\n if (this.props.steps.length === 1) {\r\n width = \"100%\";\r\n } else {\r\n if (window.innerWidth < 600) {\r\n if (this.props.steps.length !== 3) {\r\n width = \"50%\";\r\n } else {\r\n width = 100 / 3 + \"%\";\r\n }\r\n } else {\r\n if (this.props.steps.length === 2) {\r\n width = \"50%\";\r\n } else {\r\n width = 100 / 3 + \"%\";\r\n }\r\n }\r\n }\r\n this.state = {\r\n currentStep: 0,\r\n color: this.props.color,\r\n nextButton: this.props.steps.length > 1 ? true : false,\r\n previousButton: false,\r\n finishButton: this.props.steps.length === 1 ? true : false,\r\n width: width,\r\n movingTabStyle: {\r\n transition: \"transform 0s\"\r\n },\r\n allStates: {}\r\n };\r\n this.navigationStepChange = this.navigationStepChange.bind(this);\r\n this.refreshAnimation = this.refreshAnimation.bind(this);\r\n this.previousButtonClick = this.previousButtonClick.bind(this);\r\n this.previousButtonClick = this.previousButtonClick.bind(this);\r\n this.finishButtonClick = this.finishButtonClick.bind(this);\r\n this.updateWidth = this.updateWidth.bind(this);\r\n }\r\n wizard = React.createRef();\r\n componentDidMount() {\r\n this.refreshAnimation(0);\r\n window.addEventListener(\"resize\", this.updateWidth);\r\n }\r\n componentWillUnmount() {\r\n window.removeEventListener(\"resize\", this.updateWidth);\r\n }\r\n updateWidth() {\r\n this.refreshAnimation(this.state.currentStep);\r\n }\r\n navigationStepChange(key) {\r\n if (this.props.steps) {\r\n var validationState = true;\r\n if (key > this.state.currentStep) {\r\n for (var i = this.state.currentStep; i < key; i++) {\r\n if (this[this.props.steps[i].stepId].sendState !== undefined) {\r\n this.setState({\r\n allStates: {\r\n ...this.state.allStates,\r\n [this.props.steps[i].stepId]: this[\r\n this.props.steps[i].stepId\r\n ].sendState()\r\n }\r\n });\r\n }\r\n if (\r\n this[this.props.steps[i].stepId].isValidated !== undefined &&\r\n this[this.props.steps[i].stepId].isValidated() === false\r\n ) {\r\n validationState = false;\r\n break;\r\n }\r\n }\r\n }\r\n if (validationState) {\r\n this.setState({\r\n currentStep: key,\r\n nextButton: this.props.steps.length > key + 1 ? true : false,\r\n previousButton: key > 0 ? true : false,\r\n finishButton: this.props.steps.length === key + 1 ? true : false\r\n });\r\n this.refreshAnimation(key);\r\n }\r\n }\r\n }\r\n nextButtonClick() {\r\n if (\r\n (this.props.validate &&\r\n ((this[this.props.steps[this.state.currentStep].stepId].isValidated !==\r\n undefined &&\r\n this[\r\n this.props.steps[this.state.currentStep].stepId\r\n ].isValidated()) ||\r\n this[this.props.steps[this.state.currentStep].stepId].isValidated ===\r\n undefined)) ||\r\n this.props.validate === undefined\r\n ) {\r\n if (\r\n this[this.props.steps[this.state.currentStep].stepId].sendState !==\r\n undefined\r\n ) {\r\n this.setState({\r\n allStates: {\r\n ...this.state.allStates,\r\n [this.props.steps[this.state.currentStep].stepId]: this[\r\n this.props.steps[this.state.currentStep].stepId\r\n ].sendState()\r\n }\r\n });\r\n }\r\n var key = this.state.currentStep + 1;\r\n this.setState({\r\n currentStep: key,\r\n nextButton: this.props.steps.length > key + 1 ? true : false,\r\n previousButton: key > 0 ? true : false,\r\n finishButton: this.props.steps.length === key + 1 ? true : false\r\n });\r\n this.refreshAnimation(key);\r\n }\r\n }\r\n previousButtonClick() {\r\n if (\r\n this[this.props.steps[this.state.currentStep].stepId].sendState !==\r\n undefined\r\n ) {\r\n this.setState({\r\n allStates: {\r\n ...this.state.allStates,\r\n [this.props.steps[this.state.currentStep].stepId]: this[\r\n this.props.steps[this.state.currentStep].stepId\r\n ].sendState()\r\n }\r\n });\r\n }\r\n var key = this.state.currentStep - 1;\r\n if (key >= 0) {\r\n this.setState({\r\n currentStep: key,\r\n nextButton: this.props.steps.length > key + 1 ? true : false,\r\n previousButton: key > 0 ? true : false,\r\n finishButton: this.props.steps.length === key + 1 ? true : false\r\n });\r\n this.refreshAnimation(key);\r\n }\r\n }\r\n finishButtonClick() {\r\n if (\r\n (this.props.validate === false &&\r\n this.props.finishButtonClick !== undefined) ||\r\n (this.props.validate &&\r\n ((this[this.props.steps[this.state.currentStep].stepId].isValidated !==\r\n undefined &&\r\n this[\r\n this.props.steps[this.state.currentStep].stepId\r\n ].isValidated()) ||\r\n this[this.props.steps[this.state.currentStep].stepId].isValidated ===\r\n undefined) &&\r\n this.props.finishButtonClick !== undefined)\r\n ) {\r\n this.setState(\r\n {\r\n allStates: {\r\n ...this.state.allStates,\r\n [this.props.steps[this.state.currentStep].stepId]: this[\r\n this.props.steps[this.state.currentStep].stepId\r\n ].sendState()\r\n }\r\n },\r\n () => {\r\n this.props.finishButtonClick(this.state.allStates);\r\n }\r\n );\r\n }\r\n }\r\n refreshAnimation(index) {\r\n var total = this.props.steps.length;\r\n var li_width = 100 / total;\r\n var total_steps = this.props.steps.length;\r\n var move_distance =\r\n this.wizard.current.children[0].offsetWidth / total_steps;\r\n var index_temp = index;\r\n var vertical_level = 0;\r\n\r\n var mobile_device = window.innerWidth < 600 && total > 3;\r\n\r\n if (mobile_device) {\r\n move_distance = this.wizard.current.children[0].offsetWidth / 2;\r\n index_temp = index % 2;\r\n li_width = 50;\r\n }\r\n\r\n this.setState({ width: li_width + \"%\" });\r\n\r\n var step_width = move_distance;\r\n move_distance = move_distance * index_temp;\r\n\r\n var current = index + 1;\r\n\r\n if (current === 1 || (mobile_device === true && index % 2 === 0)) {\r\n move_distance -= 8;\r\n } else if (\r\n current === total_steps ||\r\n (mobile_device === true && index % 2 === 1)\r\n ) {\r\n move_distance += 8;\r\n }\r\n\r\n if (mobile_device) {\r\n vertical_level = parseInt(index / 2, 10);\r\n vertical_level = vertical_level * 38;\r\n }\r\n var movingTabStyle = {\r\n width: step_width,\r\n transform:\r\n \"translate3d(\" + move_distance + \"px, \" + vertical_level + \"px, 0)\",\r\n transition: \"all 0.5s cubic-bezier(0.29, 1.42, 0.79, 1)\"\r\n };\r\n this.setState({ movingTabStyle: movingTabStyle });\r\n }\r\n render() {\r\n const { classes, title, subtitle, color, steps } = this.props;\r\n return (\r\n
\r\n \r\n
\r\n

{title}

\r\n
{subtitle}
\r\n
\r\n
\r\n
    \r\n {steps.map((prop, key) => {\r\n return (\r\n \r\n {\r\n e.preventDefault();\r\n this.navigationStepChange(key);\r\n }}\r\n >\r\n {prop.stepName}\r\n \r\n \r\n );\r\n })}\r\n
\r\n \r\n {steps[this.state.currentStep].stepName}\r\n
\r\n
\r\n
\r\n {steps.map((prop, key) => {\r\n const stepContentClasses = cx({\r\n [classes.stepContentActive]: this.state.currentStep === key,\r\n [classes.stepContent]: this.state.currentStep !== key\r\n });\r\n return (\r\n
\r\n (this[prop.stepId] = node)}\r\n allStates={this.state.allStates}\r\n />\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n
\r\n {this.state.previousButton ? (\r\n this.previousButtonClick()}\r\n >\r\n {this.props.previousButtonText}\r\n \r\n ) : null}\r\n
\r\n
\r\n {this.state.nextButton ? (\r\n this.nextButtonClick()}\r\n >\r\n {this.props.nextButtonText}\r\n \r\n ) : null}\r\n {this.state.finishButton ? (\r\n this.finishButtonClick()}\r\n >\r\n {this.props.finishButtonText}\r\n \r\n ) : null}\r\n
\r\n
\r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nWizard.defaultProps = {\r\n color: \"rose\",\r\n title: \"Here should go your title\",\r\n subtitle: \"And this would be your subtitle\",\r\n previousButtonText: \"Previous\",\r\n previousButtonClasses: \"\",\r\n nextButtonClasses: \"\",\r\n nextButtonText: \"Next\",\r\n finishButtonClasses: \"\",\r\n finishButtonText: \"Finish\"\r\n};\r\n\r\nWizard.propTypes = {\r\n classes: PropTypes.object.isRequired,\r\n steps: PropTypes.arrayOf(\r\n PropTypes.shape({\r\n stepName: PropTypes.string.isRequired,\r\n stepComponent: PropTypes.object.isRequired,\r\n stepId: PropTypes.string.isRequired\r\n })\r\n ).isRequired,\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"warning\",\r\n \"danger\",\r\n \"success\",\r\n \"info\",\r\n \"rose\"\r\n ]),\r\n title: PropTypes.string,\r\n subtitle: PropTypes.string,\r\n previousButtonClasses: PropTypes.string,\r\n previousButtonText: PropTypes.string,\r\n nextButtonClasses: PropTypes.string,\r\n nextButtonText: PropTypes.string,\r\n finishButtonClasses: PropTypes.string,\r\n finishButtonText: PropTypes.string,\r\n finishButtonClick: PropTypes.func,\r\n validate: PropTypes.bool\r\n};\r\n\r\nexport default withStyles(wizardStyle)(Wizard);\r\n","/*eslint-disable*/\r\nimport React from \"react\";\r\n\r\nimport defaultImage from \"assets/img/default-avatar.png\";\r\n\r\nexport default function PictureUpload() {\r\n const [file, setFile] = React.useState(null);\r\n const [imagePreviewUrl, setImagePreviewUrl] = React.useState(defaultImage);\r\n const handleImageChange = e => {\r\n e.preventDefault();\r\n let reader = new FileReader();\r\n let newFile = e.target.files[0];\r\n reader.onloadend = () => {\r\n setFile(newFile);\r\n setImagePreviewUrl(reader.result);\r\n };\r\n if (newFile) {\r\n reader.readAsDataURL(newFile);\r\n }\r\n };\r\n // eslint-disable-next-line\r\n const handleSubmit = e => {\r\n e.preventDefault();\r\n // this.state.file is the file/image uploaded\r\n // in this function you can save the image (this.state.file) on form submit\r\n // you have to call it yourself\r\n };\r\n return (\r\n
\r\n
\r\n \"...\"\r\n handleImageChange(e)} />\r\n
\r\n
Choose Picture
\r\n
\r\n );\r\n}\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/icons\r\nimport Face from \"@material-ui/icons/Face\";\r\nimport RecordVoiceOver from \"@material-ui/icons/RecordVoiceOver\";\r\nimport Email from \"@material-ui/icons/Email\";\r\n\r\n// @material-ui/core components\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport PictureUpload from \"components/CustomUpload/PictureUpload.js\";\r\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\r\n\r\nconst style = {\r\n infoText: {\r\n fontWeight: \"300\",\r\n margin: \"10px 0 30px\",\r\n textAlign: \"center\"\r\n },\r\n inputAdornmentIcon: {\r\n color: \"#555\"\r\n },\r\n inputAdornment: {\r\n position: \"relative\"\r\n }\r\n};\r\n\r\nclass Step1 extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n firstname: \"\",\r\n firstnameState: \"\",\r\n lastname: \"\",\r\n lastnameState: \"\",\r\n email: \"\",\r\n emailState: \"\"\r\n };\r\n }\r\n sendState() {\r\n return this.state;\r\n }\r\n // function that returns true if value is email, false otherwise\r\n verifyEmail(value) {\r\n var emailRex = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n if (emailRex.test(value)) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n // function that verifies if a string has a given length or not\r\n verifyLength(value, length) {\r\n if (value.length >= length) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n change(event, stateName, type, stateNameEqualTo) {\r\n switch (type) {\r\n case \"email\":\r\n if (this.verifyEmail(event.target.value)) {\r\n this.setState({ [stateName + \"State\"]: \"success\" });\r\n } else {\r\n this.setState({ [stateName + \"State\"]: \"error\" });\r\n }\r\n break;\r\n case \"length\":\r\n if (this.verifyLength(event.target.value, stateNameEqualTo)) {\r\n this.setState({ [stateName + \"State\"]: \"success\" });\r\n } else {\r\n this.setState({ [stateName + \"State\"]: \"error\" });\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n this.setState({ [stateName]: event.target.value });\r\n }\r\n isValidated() {\r\n if (\r\n this.state.firstnameState === \"success\" &&\r\n this.state.lastnameState === \"success\" &&\r\n this.state.emailState === \"success\"\r\n ) {\r\n return true;\r\n } else {\r\n if (this.state.firstnameState !== \"success\") {\r\n this.setState({ firstnameState: \"error\" });\r\n }\r\n if (this.state.lastnameState !== \"success\") {\r\n this.setState({ lastnameState: \"error\" });\r\n }\r\n if (this.state.emailState !== \"success\") {\r\n this.setState({ emailState: \"error\" });\r\n }\r\n }\r\n return false;\r\n }\r\n render() {\r\n const { classes } = this.props;\r\n return (\r\n \r\n \r\n

\r\n Let{\"'\"}s start with the basic information (with validation)\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n First Name (required)\r\n \r\n }\r\n id=\"firstname\"\r\n formControlProps={{\r\n fullWidth: true\r\n }}\r\n inputProps={{\r\n onChange: event => this.change(event, \"firstname\", \"length\", 3),\r\n endAdornment: (\r\n \r\n \r\n \r\n )\r\n }}\r\n />\r\n \r\n Last Name (required)\r\n \r\n }\r\n id=\"lastname\"\r\n formControlProps={{\r\n fullWidth: true\r\n }}\r\n inputProps={{\r\n onChange: event => this.change(event, \"lastname\", \"length\", 3),\r\n endAdornment: (\r\n \r\n \r\n \r\n )\r\n }}\r\n />\r\n \r\n \r\n \r\n Email (required)\r\n \r\n }\r\n id=\"email\"\r\n formControlProps={{\r\n fullWidth: true\r\n }}\r\n inputProps={{\r\n onChange: event => this.change(event, \"email\", \"email\"),\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\nStep1.propTypes = {\r\n classes: PropTypes.object\r\n};\r\n\r\nexport default withStyles(style)(Step1);\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\n\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\n\r\nimport customSelectStyle from \"assets/jss/material-dashboard-pro-react/customSelectStyle.js\";\r\nimport customCheckboxRadioSwitch from \"assets/jss/material-dashboard-pro-react/customCheckboxRadioSwitch.js\";\r\n\r\nconst style = {\r\n infoText: {\r\n fontWeight: \"300\",\r\n margin: \"10px 0 30px\",\r\n textAlign: \"center\"\r\n },\r\n inputAdornmentIcon: {\r\n color: \"#555\"\r\n },\r\n choiche: {\r\n textAlign: \"center\",\r\n cursor: \"pointer\",\r\n marginTop: \"20px\"\r\n },\r\n ...customSelectStyle,\r\n ...customCheckboxRadioSwitch\r\n};\r\n\r\nclass Step2 extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n simpleSelect: \"\",\r\n desgin: false,\r\n code: false,\r\n develop: false\r\n };\r\n }\r\n sendState() {\r\n return this.state;\r\n }\r\n handleSimple = event => {\r\n this.setState({ [event.target.name]: event.target.value });\r\n };\r\n handleChange = name => event => {\r\n this.setState({ [name]: event.target.checked });\r\n };\r\n isValidated() {\r\n return true;\r\n }\r\n render() {\r\n const { classes } = this.props;\r\n return (\r\n
\r\n

What are you doing? (checkboxes)

\r\n \r\n \r\n \r\n \r\n
\r\n \r\n }\r\n icon={\r\n \r\n }\r\n classes={{\r\n checked: classes.iconCheckboxChecked,\r\n root: classes.iconCheckbox\r\n }}\r\n />\r\n
Design
\r\n
\r\n
\r\n \r\n
\r\n \r\n }\r\n icon={\r\n \r\n }\r\n classes={{\r\n checked: classes.iconCheckboxChecked,\r\n root: classes.iconCheckbox\r\n }}\r\n />\r\n
Code
\r\n
\r\n
\r\n \r\n
\r\n \r\n }\r\n icon={\r\n \r\n }\r\n classes={{\r\n checked: classes.iconCheckboxChecked,\r\n root: classes.iconCheckbox\r\n }}\r\n />\r\n
Develop
\r\n
\r\n \r\n \r\n Choose City\r\n \r\n \r\n \r\n Choose City\r\n \r\n \r\n Paris\r\n \r\n \r\n Bucharest\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\nStep2.propTypes = {\r\n classes: PropTypes.object\r\n};\r\n\r\nexport default withStyles(style)(Step2);\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\n\r\n// core components\r\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\n\r\nimport customSelectStyle from \"assets/jss/material-dashboard-pro-react/customSelectStyle.js\";\r\n\r\nconst style = {\r\n infoText: {\r\n fontWeight: \"300\",\r\n margin: \"10px 0 30px\",\r\n textAlign: \"center\"\r\n },\r\n ...customSelectStyle\r\n};\r\n\r\nclass Step3 extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n simpleSelect: \"\",\r\n desgin: false,\r\n code: false,\r\n develop: false\r\n };\r\n }\r\n sendState() {\r\n return this.state;\r\n }\r\n handleSimple = event => {\r\n this.setState({ [event.target.name]: event.target.value });\r\n };\r\n isValidated() {\r\n return true;\r\n }\r\n render() {\r\n const { classes } = this.props;\r\n return (\r\n \r\n \r\n

Are you living in a nice area?

\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 Choose City\r\n \r\n \r\n \r\n Country\r\n \r\n \r\n France\r\n \r\n \r\n Romania\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nStep3.propTypes = {\r\n classes: PropTypes.object\r\n};\r\n\r\nexport default withStyles(style)(Step3);\r\n","import React from \"react\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\nimport Dvr from \"@material-ui/icons/Dvr\";\r\nimport Favorite from \"@material-ui/icons/Favorite\";\r\nimport Close from \"@material-ui/icons/Close\";\r\n// core components\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CardIcon from \"components/Card/CardIcon.js\";\r\nimport CardHeader from \"components/Card/CardHeader.js\";\r\nimport ReactTable from \"components/ReactTable/ReactTable.js\";\r\n\r\nimport { dataTable } from \"variables/general.js\";\r\n\r\nimport { cardTitle } from \"assets/jss/material-dashboard-pro-react.js\";\r\n\r\nconst styles = {\r\n cardIconTitle: {\r\n ...cardTitle,\r\n marginTop: \"15px\",\r\n marginBottom: \"0px\",\r\n },\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function OrderPage() {\r\n const [data, setData] = React.useState(\r\n dataTable.dataRows.map((prop, key) => {\r\n return {\r\n id: key,\r\n name: prop[0],\r\n position: prop[1],\r\n office: prop[2],\r\n age: prop[3],\r\n actions: (\r\n // we've added some custom button actions\r\n
\r\n {/* use this button to add a like kind of action */}\r\n {\r\n let obj = data.find((o) => o.id === key);\r\n alert(\r\n \"You've clicked LIKE button on \\n{ \\nName: \" +\r\n obj.name +\r\n \", \\nposition: \" +\r\n obj.position +\r\n \", \\noffice: \" +\r\n obj.office +\r\n \", \\nage: \" +\r\n obj.age +\r\n \"\\n}.\"\r\n );\r\n }}\r\n color=\"info\"\r\n className=\"like\"\r\n >\r\n \r\n {\" \"}\r\n {/* use this button to add a edit kind of action */}\r\n {\r\n let obj = data.find((o) => o.id === key);\r\n alert(\r\n \"You've clicked EDIT button on \\n{ \\nName: \" +\r\n obj.name +\r\n \", \\nposition: \" +\r\n obj.position +\r\n \", \\noffice: \" +\r\n obj.office +\r\n \", \\nage: \" +\r\n obj.age +\r\n \"\\n}.\"\r\n );\r\n }}\r\n color=\"warning\"\r\n className=\"edit\"\r\n >\r\n \r\n {\" \"}\r\n {/* use this button to remove the data row */}\r\n {\r\n var newData = data;\r\n newData.find((o, i) => {\r\n if (o.id === key) {\r\n // here you should add some custom code so you can delete the data\r\n // from this component and from your server as well\r\n newData.splice(i, 1);\r\n return true;\r\n }\r\n return false;\r\n });\r\n setData([...newData]);\r\n }}\r\n color=\"danger\"\r\n className=\"remove\"\r\n >\r\n \r\n {\" \"}\r\n
\r\n ),\r\n };\r\n })\r\n );\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

React Table

\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { FormControl, InputLabel, MenuItem, Select } from \"@material-ui/core\";\r\nimport fetchClient from \"../../ultils/request\";\r\n\r\nexport default function DataCategory({ onSelected }) {\r\n useEffect(() => {\r\n if (categoryData.length == 0) {\r\n setIsLoading(true);\r\n fetchClient\r\n .get(\"/category\")\r\n .then((respone) => setCategoryData(respone.data))\r\n .catch((err) => console.error(err))\r\n .finally(setIsLoading(false));\r\n }\r\n });\r\n\r\n const [categoryData, setCategoryData] = useState([]);\r\n const [selectedCategory, setSelectedCategory] = useState([]);\r\n const [isLoading, setIsLoading] = useState(false);\r\n\r\n const handleChange = (event) => {\r\n setSelectedCategory(event.target.value);\r\n onSelected(event.target.value);\r\n };\r\n\r\n return (\r\n \r\n \r\n Chọn danh mục dữ liệu\r\n \r\n \r\n {categoryData.map((item) => (\r\n \r\n {item.categoryName}\r\n \r\n ))}\r\n \r\n \r\n );\r\n}\r\n","import React, { useState } from \"react\";\r\nimport { FormControl, InputLabel, MenuItem, Select } from \"@material-ui/core\";\r\nimport { networkList } from \"../../variables/general\";\r\n\r\nexport default function NetworkSelect({ onSelected }) {\r\n const [selectedNetword, setselectedNetword] = useState([]);\r\n\r\n const handleChange = (event) => {\r\n setselectedNetword(event.target.value);\r\n onSelected(event.target.value);\r\n };\r\n\r\n return (\r\n \r\n Chọn nhà mạng\r\n \r\n {networkList.map((item) => (\r\n \r\n {item.value}\r\n \r\n ))}\r\n \r\n \r\n );\r\n}\r\n","import React, { useState } from \"react\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport DataCategory from \"components/DataCategory/DataCategory\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport NetworkSelect from \"components/NetworkSelect/NetworkSelect\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\nimport ListItemText from \"@material-ui/core/ListItemText\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport fetchClient from \"ultils/request\";\r\n\r\nexport default function Tranfer({ selectedUsers, open, onSave, handleClose }) {\r\n const [selectedCategoriesId, setSelectedCategoriesId] = useState([]);\r\n const [selectedNetwork, setSelectedNetwork] = useState([]);\r\n\r\n const update = async () => {\r\n try {\r\n const usersId = [];\r\n for (let index = 0; index < selectedUsers.length; index++) {\r\n const element = selectedUsers[index];\r\n usersId.push(element.id);\r\n }\r\n const response = await fetchClient.post(\"/users/transfer\", {\r\n usersId,\r\n dataCategoryIds: selectedCategoriesId,\r\n networkIds: selectedNetwork,\r\n });\r\n console.log(response.data);\r\n onSave();\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n Chuyển vùng dữ liệu, nhà mạng.\r\n \r\n \r\n \r\n \r\n Người dùng được chuyển\r\n \r\n \r\n {selectedUsers &&\r\n selectedUsers.map((user) => {\r\n return (\r\n \r\n {/* \r\n {user.firstName}\r\n */}\r\n {user.userName}
}\r\n />\r\n \r\n );\r\n })}\r\n \r\n
\r\n );\r\n\r\n return (\r\n
\r\n \r\n \r\n \"app\r\n
\r\n
\r\n {inCallPage() ? (\r\n \r\n   Lịch sử cuộc gọi    \r\n \r\n ) : (\r\n \r\n   Gọi khách hàng    \r\n \r\n )}\r\n\r\n \r\n   {currentSession.userName}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n {renderMobileMenu}\r\n {renderMenu}\r\n \r\n \r\n {errorMessage && (\r\n {\r\n setErrorMessage(\"\");\r\n }}\r\n >\r\n \r\n {errorMessage}\r\n \r\n \r\n )}\r\n
\r\n );\r\n}\r\n\r\nconst UpdatePassword = (props) => {\r\n const { openDialog, handleCloseDialog, handerApiError, history } = props\r\n const [errorText, setErrorText] = useState({});\r\n const [errorField, setErrorField] = useState({});\r\n const [password, setPassword] = useState({\r\n passwordNew: '',\r\n passwordOld: '',\r\n });\r\n\r\n const closeDialog = () => {\r\n setErrorText({});\r\n setErrorField({});\r\n setPassword({\r\n passwordNew: '',\r\n passwordOld: '',\r\n });\r\n handleCloseDialog();\r\n }\r\n\r\n const handleSubmit = async () => {\r\n try {\r\n var query = queryString.stringify({ passwordNew: password.passwordNew, passwordOld: password.passwordOld }, { arrayFormat: 'comma' });\r\n var result = await fetchClient.post(`/identity/reset-password-user/?${query}`);\r\n return result;\r\n } catch (error) {\r\n handerApiError(\"Thông tin mật khẩu không đúng\");\r\n }\r\n\r\n };\r\n\r\n const submitEdit = () => {\r\n if (validate()) {\r\n handleSubmit().then((result) => {\r\n if (result && result.data) {\r\n closeDialog();\r\n removeSession();\r\n history.push(\"/auth/login\");\r\n }\r\n })\r\n }\r\n }\r\n\r\n const validate = () => {\r\n var error = {};\r\n var helperText = {};\r\n var numberErr = 0;\r\n const { passwordNew, passwordOld } = password\r\n\r\n if (!passwordOld) {\r\n numberErr++;\r\n error.passwordOld = true;\r\n helperText.passwordOld = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n if (!passwordNew) {\r\n numberErr++;\r\n error.passwordNew = true;\r\n helperText.passwordNew = \"Đây là trường bắt buộc\";\r\n }\r\n\r\n if (passwordNew && passwordNew.length < 6) {\r\n numberErr++;\r\n error.passwordNew = true;\r\n helperText.passwordNew = \"Độ dài tối thiểu là 6\";\r\n }\r\n if (passwordNew && passwordNew.length >= 6) {\r\n var regExpAZ = /[A-Z]/g;\r\n var regExpaz = /[a-z]/g;\r\n if (!regExpAZ.test(passwordNew) || !regExpaz.test(passwordNew)) {\r\n numberErr++;\r\n error.passwordNew = true;\r\n helperText.passwordNew = \"Mật khẩu phải bao gồm cả chữ hoa và chữ thường\";\r\n }\r\n }\r\n\r\n setErrorText(helperText);\r\n setErrorField(error);\r\n return !numberErr;\r\n };\r\n\r\n const onchangeInput = (fieldName, value) => {\r\n setPassword({ ...password, [fieldName]: value });\r\n };\r\n\r\n return (\r\n \r\n Thay đổi mật khẩu\r\n \r\n \r\n \r\n \r\n \r\n \r\n onchangeInput(\"passwordOld\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.passwordOld ? errorText.passwordOld : \"\"}\r\n error={errorField.passwordOld}\r\n />\r\n \r\n \r\n \r\n onchangeInput(\"passwordNew\", e.target.value),\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n helperText={errorText.passwordNew ? errorText.passwordNew : \"\"}\r\n error={errorField.passwordNew}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n}","import React from \"react\";\r\nimport cx from \"classnames\";\r\n\r\nimport routes from \"routes.js\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport PrivateRouter from \"components/PrivateRouter/PrivateRouter\";\r\nimport AppBar from \"components/AppBar/AppBar\";\r\nimport styles from \"assets/jss/material-dashboard-pro-react/layouts/userStyle.js\";\r\nimport { Container, Grid } from \"@material-ui/core\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function User(props) {\r\n // styles\r\n const classes = useStyles();\r\n\r\n const getRoutes = (routes) => {\r\n return routes.map((prop, key) => {\r\n if (prop.collapse) {\r\n return getRoutes(prop.views);\r\n }\r\n if (prop.layout === \"/user\") {\r\n return (\r\n \r\n );\r\n } else {\r\n return null;\r\n }\r\n });\r\n };\r\n\r\n const getActiveRoute = (routes) => {\r\n let activeRoute = \"Default Brand Text\";\r\n for (let i = 0; i < routes.length; i++) {\r\n if (routes[i].collapse) {\r\n let collapseActiveRoute = getActiveRoute(routes[i].views);\r\n if (collapseActiveRoute !== activeRoute) {\r\n return collapseActiveRoute;\r\n }\r\n } else {\r\n if (\r\n window.location.href.indexOf(routes[i].layout + routes[i].path) !== -1\r\n ) {\r\n return routes[i].name;\r\n }\r\n }\r\n }\r\n return activeRoute;\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n {getRoutes(routes)}\r\n \r\n \r\n );\r\n}\r\n","/*!\r\n\r\n=========================================================\r\n* Material Dashboard PRO React - v1.9.0\r\n=========================================================\r\n\r\n* Product Page: https://www.creative-tim.com/product/material-dashboard-pro-react\r\n* Copyright 2020 Creative Tim (https://www.creative-tim.com)\r\n\r\n* Coded by Creative Tim\r\n\r\n=========================================================\r\n\r\n* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\r\n\r\n*/\r\nimport React from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport { createBrowserHistory } from \"history\";\r\nimport { Router, Route, Switch, Redirect } from \"react-router-dom\";\r\n\r\nimport AuthLayout from \"layouts/Auth.js\";\r\nimport RtlLayout from \"layouts/RTL.js\";\r\nimport AdminLayout from \"layouts/Admin.js\";\r\nimport UserLayout from \"layouts/User.js\";\r\n\r\nimport \"assets/scss/material-dashboard-pro-react.scss?v=1.9.0\";\r\n\r\nconst hist = createBrowserHistory();\r\n\r\nReactDOM.render(\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ,\r\n document.getElementById(\"root\")\r\n);\r\n"],"sourceRoot":""}