{"version":3,"sources":["constants/index.js","theme/variants.js","theme/typography.js","theme/overrides.js","theme/breakpoints.js","theme/props.js","theme/shadows.js","theme/index.js","components/AuthGuard.js","components/GuestGuard.js","vendor/logo.svg","api/api.js","services/authService.js","redux/actions/authActions.js","components/AppLogo.js","pages/auth/SignIn.js","components/CustomModal.js","pages/auth/SignUp.js","pages/auth/ResetPassword.js","pages/auth/ForgotPassword.js","pages/auth/Page404.js","pages/auth/Page500.js","components/Loader.js","pages/auth/PartnerPermissionRequest.js","authConfig.js","pages/auth/SignInButton.js","vendor/logo.png","pages/auth/Office365Page.js","components/tables/QuickSearchToolbar.js","components/tables/ActivityLogTable.js","pages/pages/ActivityLog.js","components/tables/RegisteredSchoolsTable.js","pages/pages/RegisteredSchools.js","components/tables/PermissionTable.js","pages/pages/Permisson.js","pages/pages/Audit.js","components/tables/ApplicationTable.js","redux/actions/scopeActions.js","components/tables/ApiScopesTable.js","components/tables/NewApiScopesTable.js","pages/pages/CreateApplication.js","pages/pages/Applications.js","pages/pages/ApplicationDetail.js","pages/pages/ApiDocumentation.js","redux/actions/datagridActions.js","components/tables/SupportTicketTable.js","pages/pages/SupportTickets.js","vendor/pdf.png","vendor/excel.png","vendor/word.png","vendor/txt.png","components/AttachedFile.js","components/ShowAttachedFile.js","pages/pages/SupportTicketDetail.js","pages/pages/CreateTicket.js","components/tables/ManageTeamTable.js","pages/pages/CreateMember.js","pages/pages/ManageTeam.js","pages/pages/MemberDetail.js","redux/actions/partnerActions.js","components/PartnerStatus.js","pages/pages/PartnerRequest.js","components/CustomDialog.js","components/tables/QuickFilteringGrid.js","pages/pages/PartnerRequests.js","components/tables/PartnerAccountsTable..js","pages/pages/PartnerAccounts.js","components/tables/PartnerAccountsAppTable.js","pages/pages/PartnerAccountsDetail.js","pages/pages/index.js","components/CustomTabPanel.js","pages/pages/GettingStarted.js","pages/pages/CreateGettingStarted.js","pages/pages/GettingStartedDetail.js","routes/index.js","vendor/small-logo.svg","components/Sidebar.js","components/UserDropdown.js","components/AppBar.js","components/Footer.js","layouts/Dashboard.js","layouts/Auth.js","routes/Routes.js","App.js","redux/reducers/themeReducer.js","redux/reducers/authReducer.js","redux/reducers/partnerReducer.js","redux/reducers/scopeReducer.js","redux/reducers/datagridReducer.js","redux/reducers/index.js","redux/store/index.js","index.js"],"names":["THEME_SET","THEMES","AUTH_SIGN_IN_SUCCESS","AUTH_SIGN_IN_FAILED","AUTH_SIGN_OUT","AUTH_SIGN_UP_SUCCESS","PARTNER_SUCCESS","PARTNER_SET","PARTNER_STATUS","PARTNERS_GET","GRID_ROWS_PER_PAGE","GRID_PAGE","GRID_ISLOADING","SCOPE_ADD","SCOPES_RESET","customBlue","variants","name","palette","type","primary","main","contrastText","secondary","background","default","paper","white","header","color","grey","search","indicator","footer","sidebar","brand","online","green","badge","typography","fontFamily","join","fontSize","fontWeightLight","fontWeightRegular","fontWeightMedium","fontWeightBold","h1","fontWeight","lineHeight","h2","h3","h4","h5","h6","body1","button","textTransform","overrides","MuiCard","root","borderRadius","boxShadow","MuiCardHeader","action","marginTop","marginRight","MuiPickersDay","day","MuiPickersYear","height","MuiPickersCalendar","transitionContainer","MuiPickersCalendarHeader","iconButton","backgroundColor","switchHeader","marginBottom","MuiPickersClock","container","margin","MuiPickersClockNumber","clockNumber","left","width","MuiPickerDTHeader","dateHeader","timeHeader","MuiPickersTimePicker","hourMinuteLabel","MuiPickersToolbar","toolbar","MuiChip","breakpoints","values","xs","xm","sm","md","lg","xl","props","MuiButtonBase","disableRipple","titleTypographyProps","variant","shadows","createTheme","themeConfig","find","console","warn","Error","createMuiTheme","spacing","AuthGuard","children","auth","useSelector","state","authReducer","user","token","to","GuestGuard","_path","_path2","_path3","_path4","_path5","_path6","rol","returnUrl","useLocation","React","useMemo","URLSearchParams","useQuery","get","startsWith","urls","split","url","length","newUrl","api","axios","create","baseURL","process","signIn","credentials","Promise","resolve","reject","post","then","response","status","data","catch","error","log","signUp","resetPassword","forgotPassword","dispatch","a","authSignIn","isSuccess","decoded","jwt_decode","auth_token","types","email","sub","id","pid","sid","message","firstName","given_name","lastName","family_name","companyName","desc","role_desc","exp","companyLogo","website","localStorage","setItem","signOut","_excluded","_extends","Object","assign","target","i","arguments","source","key","prototype","hasOwnProperty","call","apply","this","_objectWithoutProperties","excluded","sourceKeys","keys","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","SvgLogo","_ref","svgRef","title","titleId","viewBox","fill","xmlns","ref","fillRule","clipRule","d","ForwardRef","Container","styled","Box","BigLogo","Logo","mb","AppLogo","history","useHistory","useDispatch","display","justifyContent","onClick","push","Alert","MuiAlert","TextField","MuiTextField","Card","Wrapper","Paper","theme","up","useStyles","makeStyles","card","padding","signInButton","forgotButton","SignIn","classes","className","CardContent","Typography","component","align","gutterBottom","initialValues","password","submit","validationSchema","Yup","shape","max","required","onSubmit","setErrors","setStatus","setSubmitting","username","success","errors","handleBlur","handleChange","handleSubmit","isSubmitting","touched","noValidate","mt","severity","e","window","location","preventDefault","label","value","Boolean","fullWidth","helperText","onBlur","onChange","my","disabled","flexDirection","alignItems","Button","Link","minHeight","cancelIconContainer","position","cancelIcon","right","top","cursor","opacity","CustomModal","open","handleClose","bp","Dialog","onClose","maxWidth","DialogContent","signUpButton","recaptchaWrapper","down","transformOrigin","transform","recaptcha","recaptchaMessage","termsAndCondMessage","clickHere","borderBottom","TermsAndCondContainer","div","TermsAndCondText","p","TermsAndCondLink","TermsAndCondModalContainer","TermsAndCondModalTitle","TermsAndCondModalText","TermsAndCondModalButtons","TermsAndCondCancelButton","TermsAndCondAcceptButton","organizationName","phoneNumber","websiteAddress","rolePosition","noOfBromcomCustomers","services","plannedIntegrations","matches","SignUp","useState","openSnackBar","setOpenSnackBar","partnerData","setPartnerData","formValues","setsFormValues","isVerified","setIsVerified","showRecaptchaMessage","setShowRecaptchaMessage","enteredEmail","setEnteredEmail","enteredOrgName","setEnteredOrgName","enteredWebsite","setEnteredWebsite","showTermsAndCondModal","setShowTermsAndCondModal","acceptTermsAndCond","setAcceptTermsAndCond","isTouched","setIsTouched","modalContent","setModalContent","recaptchaChangeHandler","handleShowTermsAndCondModal","handleCloseTermsAndCondModal","event","reason","handleTouched","handleCheckAcceptTermsAndCond","checked","handlePermission","toLowerCase","phone","emailDomain","role","servicesProvidedToBC","customerCount","partnerStatusId","useEffect","headers","Authorization","ReactHtmlParser","resetForm","partnerLogoPath","disableEnforceFocus","tabIndex","InputProps","inputProps","min","multiline","rowsMax","sitekey","size","Checkbox","style","paddingTop","Snackbar","autoHideDuration","anchorOrigin","vertical","horizontal","resetButton","box","icon","IconWithTooltip","Tooltip","arrow","placement","ResetPassword","responseMessage","setResponseMessage","query","replaceAll","enqueueSnackbar","useSnackbar","passwordConfirmation","test","parent","confirmPassword","removeItem","errorMessage","trim","parse","InputLabelProps","pointerEvents","ForgotPassword","setIsSuccess","isSubmitted","setIsSubmitted","MuiButton","Page404","Page500","Root","Loader","CircularProgress","m","Centered","InnerBox","Buttons","overflow","successButton","rejectButton","popupButtons","okButton","cancelButton","infoBoxContainer","infoBox","infoBoxLink","textAlign","Roles","close","handleApprove","isSending","roles","setRoles","selectedRoles","setSelectedRoles","FormControl","InputLabel","Select","labelId","map","MenuItem","keyt","description","mr","PartnerPermissionRequest","info","setInfo","setOpen","partner","setPartner","isLoading","setIsLoading","setError","setIsSending","isSendingReject","setIsSendingReject","href","alertMesage","result","logo","registerForm","webSite","alertMessage","msalConfig","clientId","authority","redirectUri","cache","cacheLocation","storeAuthStateInCookie","system","loggerOptions","loggerCallback","level","containsPii","LogLevel","Info","Verbose","debug","Warning","loginRequest","scopes","border","SignInButton","instance","useMsal","drop","as","loginRedirect","src","alt","ProfileContent","accounts","loginFc","setTimeout","logoutRedirect","postLogoutRedirectUri","mainWindowRedirectUri","handleLogout","defaultTheme","flexWrap","textField","divider","QuickSearchToolbar","placeholder","startAdornment","endAdornment","IconButton","visibility","clearSearch","backButton","ActivityLogTable","activityLogs","handleShowLogs","cols","field","headerName","flex","minWidth","renderCell","params","date","format","sx","outline","rows","columns","rowsPerPageOptions","disableSelectionOnClick","scrollbarSize","startIcon","ActivityLog","logs","setLogs","applicationVersionId","PartnerAccountsAppTable","schools","selectedData","setSelectedData","showLogs","setShowLogs","with","row","onRowDoubleClick","hideFooter","registeredSchoolContainer","RegisteredSchools","selectedApp","setSchools","appId","PermissionTable","permissions","sortable","delete","Text","span","GridItem","Grid","StyledTextField","permissionContainer","permissionContent","notesContainer","permissionTable","dialogTitleContainer","confirmButton","marginLeft","PermissionPage","permission","setPermission","selectedId","setSelectedId","newAppSecret","setNewAppSecret","oldAppSecret","setOldAppSecret","showWarningMessage","setShowWarningMessage","isChange","setIsChange","notes","setNotes","handleCloseWarningMessage","versions","DialogTitle","dialogTitle","buttons","put","applicationId","item","justify","autoFocus","applicationSecret","defaultValue","version","entryText","navigator","clipboard","writeText","spellCheck","loaderContainer","commentAvatar","audit","borderTop","auditTexts","Audit","audits","setAudits","fullName","dateTime","cancelIconForAudit","detailButton","schoolButton","Badge","ApplicationTable","applications","setSelectedApp","selectedAppId","setSelectedAppId","searchText","setSearchText","setRows","showSchools","setshowSchools","showVersions","setShowVersions","showAudit","setShowAudit","sort","sortModel","setSortModel","requestSearch","searchValue","searchRegex","RegExp","replace","filteredRows","filter","some","toString","handleCloseVersions","handleCloseAudit","handleCloseSchools","versionId","componentsProps","onSortModelChange","model","propTypes","PropTypes","func","isRequired","string","setScopes","scope","initialFilter","logic","filters","operator","NewApiScopesTable","setFilter","skip","setSkip","selectedRows","handleSelect","newRows","index","findIndex","r","filterable","onFilterChange","scrollable","total","pageSize","onPageChange","page","cell","dataItem","isPostEnable","isDeleteEnable","MemoizedNewApiScopesTable","memo","Divider","MuiDivider","CloudUpload","MuiCloudUpload","formControl","selectEmpty","attachedFiles","uploadButton","formGroup","formLabel","createButton","imagesContainer","attachedImage","objectFit","appName","appDescription","CreateApplication","setAttachedFiles","showImage","setShowImage","selectedScopes","scopeReducer","handleCancelAttachedFile","newAttachedFiles","file","handleCancelApplication","handleCloseImage","isActive","aFiles","promises","createError","sent","createSubmit","logoPath","path","statusId","forEach","formData","FormData","append","mimeType","all","URL","createObjectURL","Breadcrumbs","marginY","accept","files","match","filteredAttachedFiles","handleFileChange","htmlFor","Cancel","bind","FormControlLabel","control","defaultChecked","MuiBreadcrumbs","Image","img","imageContainer","updateButton","cancelAlertIconContainer","cancelAlertIcon","detailContainer","cancelAlertButton","OkAlertButton","ApplicationDetail","app","setApp","isShow","showInfo","setShowInfo","useParams","formRef","useRef","handleFormSubmit","current","handleUpdateClick","selectedOldScopes","oldScope","handleCloseInfo","errorCode","updateError","updateSubmit","innerRef","MuiGrid","ApiDocumentation","Fragment","setIsGridLoading","totalCount","isGridLoading","capitalizeFirstLetter","str","toUpperCase","slice","SupportTicketTable","tickets","gridState","datagridReducer","filterValue","setFilterValue","filt","setFilt","useCallback","filterModel","items","active","columnField","operatorValue","valueOptions","filterOperators","getGridSingleSelectOperators","text","includes","splice","components","Toolbar","onFilterModelChange","filterMode","newPage","onPageSizeChange","setRowsPerPage","paginationMode","rowCount","loading","SupportTickets","ticketState","setTicketState","Add","AttachedFile","pdf","word","excel","txt","selectedImage","arr","fileName","endsWith","download","QuillWrapperTop","QuillWrapperBottom","CardHeader","CardTitle","CardTexts","AvatarContainer","Avatar","AvatarText","SelectContainer","SelectText","UserSelect","media","expand","transition","transitions","duration","shortest","expandOpen","avatar","red","descriptionBottom","commentContainer","comment","commentActions","postButton","comments","singleComment","singleCommentTexts","singleCommentTitle","whiteSpace","wordBreak","singleCommentDate","singleCommentAttachedImages","detailHeader","formControlContainer","switch","subheader","rgba","SubHeader","createdDate","MuiFormControl","attachedFile","submitButton","CreateTicket","handleCancelTicket","multiple","newFilteredAttachedFiles","concat","f","deleteButton","ManageTeamTable","users","selectedMemberId","setSelectedMemberId","showDelete","setShowDelete","handleCloseDelete","handleDeleteMember","getGridStringOperators","CreateMember","handleCancelMember","partnerId","idsRole","apiKey","maxLength","select","ManageTeam","setUsers","showCreateMember","handleShowCreateMember","showCreateMamber","createMemberButton","MemberDetail","userId","member","setMember","enableReinitialize","Switch","setPartnerStatus","partnerStatus","PartnerStatus","statusName","isBadge","PartnerRequest","partnerState","partnerReducer","acceptPartnerHandler","rejectPartnerHandler","MinHeight","closeIcon","float","Backdrop","CustomDialog","BackdropComponent","QuickFilteringGrid","partners","PartnerRequests","setPartners","PartnerAccountsTable","PartnerAccounts","partnerAccState","setPartnerAccState","noRowsOverlay","noRowsOverlayText","registeredSchool","blockButton","unblockButton","infoIcon","NoRowsOverlay","changeStatus","showRegisteredSchools","setShowRegisteredSchools","showBlockPage","setShowBlockPage","noteRef","handleCloseRegisteredSchools","handleCloseBlockPage","handleBlock","handleUnblock","adminComment","handleShowBlockPage","inputRef","hideFooterPagination","detailTitle","detailContent","deactiveButton","activeButton","appTable","deactiveButtonInDialog","activeButtonInDialog","gridItem","LogoContainer","Title","Border","ForgotPasswordContainer","RightSideContainer","ForgotPasswordLink","HomePage","CustomTabPanel","other","hidden","protoTypes","node","number","GettingStarted","setValue","gettingStarteds","setGettingStarteds","showCreateGettingStarted","borderColor","Tabs","newValue","Tab","handleEdit","a11yProps","content","readOnly","order","integer","CreateGettingStarted","handleCancelGettingStarted","editorValue","setEditorValue","applicationsRoutes","containsHome","setApplications","showCreateApplication","guard","createApplication","applicationDetail","apiDocumentationRoutes","supportTickets","supportTicketDetail","ticketId","isLoadingComments","setIsLoadingComments","isCommentSubmitted","setIsCommentSubmitted","supportTicket","setSupportTicket","setSelectedImage","supportTicketStatusId","assignedUserId","ShowAttachedFile","reverse","createTicket","manageTeam","manageTeamDetail","createMember","partnerRequests","partnerAccounts","partnerAccountDetail","showDetail","setShowDetail","handleShowDetail","handleCloseDetail","handleDeactivate","handleActivate","spread","authRoutes","gettingStarted","dashboardLayoutRoutes","gettingstartedid","isDeleting","setIsDeleting","showDeleteConfirmation","setShowDeleteConfirmation","setGettingStarted","handleDeleteGettingStarted","handleCloseDeleteConfirmation","handleShowDeleteConfirmation","setGettingStartedContent","obj","sidebarRoutes","authLayoutRoutes","SvgSmallLogo","MuiBox","Drawer","MuiDrawer","Scrollbar","PerfectScrollbar","List","MuiList","Items","BrandContainer","Brand","ListItem","BrandIcon","Category","activeClassName","darken","CategoryText","ListItemText","CategoryIconLess","ExpandLess","CategoryIconMore","ExpandMore","LinkText","LinkBadge","Chip","CategoryBadge","SidebarSection","SidebarFooter","SidebarFooterText","SidebarFooterSubText","SidebarCategory","isOpen","isCollapsable","rest","SidebarLink","dense","NavLink","exact","withRouter","staticContext","pathName","pathname","_routes","routes","route","isHome","initOpenRoutes","openRoutes","setOpenRoutes","ml","disablePadding","category","toggle","Collapse","in","timeout","unmountOnExit","MuiIconButton","UserDropdown","anchorMenu","setAnchorMenu","handleSignOut","clear","undefined","currentTarget","anchorEl","AppBar","MuiAppBar","LogoAndCompanyNameContainer","CompanyName","AddLogo","hasLogo","ImageContainer","withTheme","onDrawerToggle","attachedLogo","setAttachedLogo","handleLogoUpload","elevation","Hidden","mdUp","Menu","handleLogoChange","Footer","smDown","GlobalStyle","createGlobalStyle","AppContent","MuiPaper","MainContent","withWidth","Date","now","reload","mobileOpen","setMobileOpen","handleDrawerToggle","CssBaseline","implementation","PaperProps","isWidthUp","Auth","childRoutes","Layout","Component","Guard","element","ElementComponent","render","Routes","willMount","getItem","AuthLayout","DashboardLayout","jss","jssPreset","insertionPoint","document","getElementById","notistackRef","createRef","onClickDismiss","closeSnackbar","App","themeReducer","titleTemplate","defaultTitle","StylesProvider","utils","DateFnsUtils","currentTheme","maxSnack","initialState","rootReducer","combineReducers","actions","payload","activePartner","composeEnhancers","composeWithDevTools","store","createStore","applyMiddleware","thunk","msalInstance","PublicClientApplication","ReactDOM"],"mappings":"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","file":"static/js/main.9b13637b.chunk.js","sourcesContent":["// Theme\r\nexport const THEME_SET = \"THEME_SET\";\r\nexport const THEMES = {\r\n DEFAULT: \"DEFAULT\",\r\n DARK: \"DARK\",\r\n LIGHT: \"LIGHT\",\r\n BLUE: \"BLUE\",\r\n GREEN: \"GREEN\",\r\n INDIGO: \"INDIGO\",\r\n};\r\n\r\n// Auth\r\nexport const AUTH_SIGN_IN_REQUEST = \"AUTH_SIGN_IN_REQUEST\";\r\nexport const AUTH_SIGN_IN_SUCCESS = \"AUTH_SIGN_IN_SUCCESS\";\r\nexport const AUTH_SIGN_IN_FAILURE = \"AUTH_SIGN_IN_FAILURE\";\r\nexport const AUTH_SIGN_IN_FAILED = \"AUTH_SIGN_IN_FAILED\";\r\nexport const AUTH_SIGN_OUT = \"AUTH_SIGN_OUT\";\r\nexport const AUTH_SIGN_UP_REQUEST = \"AUTH_SIGN_UP_REQUEST\";\r\nexport const AUTH_SIGN_UP_SUCCESS = \"AUTH_SIGN_UP_SUCCESS\";\r\nexport const AUTH_SIGN_UP_FAILURE = \"AUTH_SIGN_UP_FAILURE\";\r\nexport const AUTH_RESET_PASSWORD_REQUEST = \"AUTH_RESET_PASSWORD_REQUEST\";\r\nexport const AUTH_RESET_PASSWORD_SUCCESS = \"AUTH_RESET_PASSWORD_SUCCESS\";\r\nexport const AUTH_RESET_PASSWORD_FAILURE = \"AUTH_RESET_PASSWORD_FAILURE\";\r\n\r\n//Partner\r\nexport const PARTNER_REQUEST = \"PARTNER_REQUEST\";\r\nexport const PARTNER_SUCCESS = \"PARTNER_SUCCESS\";\r\nexport const PARTNER_FAILURE = \"PARTNER_FAILURE\";\r\nexport const PARTNER_SET = \"PARTNER_SET\";\r\nexport const PARTNER_STATUS = \"PARTNER_STATUS\";\r\nexport const PARTNERS_GET = \"PARTNERS_GET\";\r\n\r\n//Grid Info\r\nexport const GRID_ROWS_PER_PAGE = \"GRID_ROWS_PER_PAGE\";\r\nexport const GRID_PAGE = \"GRID_PAGE\";\r\nexport const GRID_ISLOADING = \"GRID_ISLOADING\";\r\n\r\n//Scopes\r\nexport const SCOPE_ADD = \"SCOPE_ADD\";\r\nexport const SCOPES_RESET = \"SCOPES_RESET\";\r\nexport const SCOPES_ALL = \"SCOPES_ALL\";\r\n","import { green, grey } from \"@material-ui/core/colors\";\r\nimport { THEMES } from \"../constants\";\r\n\r\nconst customBlue = {\r\n 50: \"#e9f0fb\",\r\n 100: \"#c8daf4\",\r\n 200: \"#a3c1ed\",\r\n 300: \"#7ea8e5\",\r\n 400: \"#6395e0\",\r\n 500: \"#4782da\",\r\n 600: \"#407ad6\",\r\n 700: \"#376fd0\",\r\n 800: \"#2f65cb\",\r\n 900: \"#2052c2 \",\r\n};\r\n\r\nconst defaultVariant = {\r\n name: THEMES.DEFAULT,\r\n palette: {\r\n type: \"light\",\r\n primary: {\r\n main: customBlue[700],\r\n contrastText: \"#FFF\",\r\n },\r\n secondary: {\r\n main: customBlue[500],\r\n contrastText: \"#FFF\",\r\n },\r\n background: {\r\n default: \"#F7F9FC\",\r\n paper: \"#FFF\",\r\n },\r\n white: \"#FFF\",\r\n },\r\n header: {\r\n color: grey[500],\r\n background: \"#FFF\",\r\n search: {\r\n color: grey[800],\r\n },\r\n indicator: {\r\n background: customBlue[600],\r\n },\r\n },\r\n footer: {\r\n color: grey[500],\r\n background: \"#FFF\",\r\n },\r\n sidebar: {\r\n color: grey[200],\r\n background: \"#1C2431\",\r\n\r\n header: {\r\n color: grey[200],\r\n background: \"#232F3F\",\r\n brand: {\r\n color: customBlue[500],\r\n },\r\n },\r\n footer: {\r\n color: grey[200],\r\n background: \"#1E2A38\",\r\n online: {\r\n background: green[500],\r\n },\r\n },\r\n badge: {\r\n color: \"#FFF\",\r\n background: customBlue[500],\r\n },\r\n },\r\n};\r\n\r\nconst variants = [defaultVariant];\r\n\r\nexport default variants;\r\n","const typography = {\r\n fontFamily: [\r\n \"Inter\",\r\n \"-apple-system\",\r\n \"BlinkMacSystemFont\",\r\n '\"Segoe UI\"',\r\n \"Roboto\",\r\n '\"Helvetica Neue\"',\r\n \"Arial\",\r\n \"sans-serif\",\r\n '\"Apple Color Emoji\"',\r\n '\"Segoe UI Emoji\"',\r\n '\"Segoe UI Symbol\"',\r\n ].join(\",\"),\r\n fontSize: 13,\r\n fontWeightLight: 300,\r\n fontWeightRegular: 400,\r\n fontWeightMedium: 500,\r\n fontWeightBold: 600,\r\n h1: {\r\n fontSize: \"2rem\",\r\n fontWeight: 600,\r\n lineHeight: 1.25,\r\n },\r\n h2: {\r\n fontSize: \"1.75rem\",\r\n fontWeight: 600,\r\n lineHeight: 1.25,\r\n },\r\n h3: {\r\n fontSize: \"1.5rem\",\r\n fontWeight: 600,\r\n lineHeight: 1.25,\r\n },\r\n h4: {\r\n fontSize: \"1.125rem\",\r\n fontWeight: 500,\r\n lineHeight: 1.25,\r\n },\r\n h5: {\r\n fontSize: \"1.0625rem\",\r\n fontWeight: 500,\r\n lineHeight: 1.25,\r\n },\r\n h6: {\r\n fontSize: \"1rem\",\r\n fontWeight: 500,\r\n lineHeight: 1.25,\r\n },\r\n body1: {\r\n fontSize: 13,\r\n },\r\n button: {\r\n textTransform: \"none\",\r\n },\r\n};\r\n\r\nexport default typography;\r\n","const overrides = {\r\n MuiCard: {\r\n root: {\r\n borderRadius: \"6px\",\r\n boxShadow:\r\n \"rgba(50, 50, 93, 0.025) 0px 2px 5px -1px, rgba(0, 0, 0, 0.05) 0px 1px 3px -1px\",\r\n },\r\n },\r\n MuiCardHeader: {\r\n action: {\r\n marginTop: \"-4px\",\r\n marginRight: \"-4px\",\r\n },\r\n },\r\n MuiPickersDay: {\r\n day: {\r\n fontWeight: \"300\",\r\n },\r\n },\r\n MuiPickersYear: {\r\n root: {\r\n height: \"64px\",\r\n },\r\n },\r\n MuiPickersCalendar: {\r\n transitionContainer: {\r\n marginTop: \"6px\",\r\n },\r\n },\r\n MuiPickersCalendarHeader: {\r\n iconButton: {\r\n backgroundColor: \"transparent\",\r\n \"& > *\": {\r\n backgroundColor: \"transparent\",\r\n },\r\n },\r\n switchHeader: {\r\n marginTop: \"2px\",\r\n marginBottom: \"4px\",\r\n },\r\n },\r\n MuiPickersClock: {\r\n container: {\r\n margin: `32px 0 4px`,\r\n },\r\n },\r\n MuiPickersClockNumber: {\r\n clockNumber: {\r\n left: `calc(50% - 16px)`,\r\n width: \"32px\",\r\n height: \"32px\",\r\n },\r\n },\r\n MuiPickerDTHeader: {\r\n dateHeader: {\r\n \"& h4\": {\r\n fontSize: \"2.125rem\",\r\n fontWeight: 400,\r\n },\r\n },\r\n timeHeader: {\r\n \"& h3\": {\r\n fontSize: \"3rem\",\r\n fontWeight: 400,\r\n },\r\n },\r\n },\r\n MuiPickersTimePicker: {\r\n hourMinuteLabel: {\r\n \"& h2\": {\r\n fontSize: \"3.75rem\",\r\n fontWeight: 300,\r\n },\r\n },\r\n },\r\n MuiPickersToolbar: {\r\n toolbar: {\r\n \"& h4\": {\r\n fontSize: \"2.125rem\",\r\n fontWeight: 400,\r\n },\r\n },\r\n },\r\n MuiChip: {\r\n root: {\r\n borderRadius: \"6px\",\r\n },\r\n },\r\n};\r\n\r\nexport default overrides;\r\n","const breakpoints = {\r\n values: {\r\n xs: 0,\r\n xm: 375,\r\n sm: 600,\r\n md: 960,\r\n lg: 1280,\r\n xl: 1440,\r\n },\r\n};\r\n\r\nexport default breakpoints;\r\n","const props = {\r\n MuiButtonBase: {\r\n disableRipple: true,\r\n },\r\n MuiCardHeader: {\r\n titleTypographyProps: { variant: \"h6\" },\r\n },\r\n};\r\n\r\nexport default props;\r\n","function createShadow() {\r\n return `box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.05);`;\r\n}\r\n\r\nconst shadows = [\r\n \"none\",\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n createShadow(),\r\n];\r\n\r\nexport default shadows;\r\n","import { createMuiTheme } from \"@material-ui/core/styles\";\r\nimport variants from \"./variants\";\r\nimport typography from \"./typography\";\r\nimport overrides from \"./overrides\";\r\nimport breakpoints from \"./breakpoints\";\r\nimport props from \"./props\";\r\nimport shadows from \"./shadows\";\r\n\r\nconst createTheme = (name) => {\r\n let themeConfig = variants.find((variant) => variant.name === name);\r\n\r\n if (!themeConfig) {\r\n console.warn(new Error(`The theme ${name} is not valid`));\r\n themeConfig = variants[0];\r\n }\r\n\r\n return createMuiTheme(\r\n {\r\n spacing: 4,\r\n breakpoints: breakpoints,\r\n overrides: overrides,\r\n props: props,\r\n typography: typography,\r\n shadows: shadows,\r\n palette: themeConfig.palette,\r\n },\r\n {\r\n name: themeConfig.name,\r\n header: themeConfig.header,\r\n footer: themeConfig.footer,\r\n sidebar: themeConfig.sidebar,\r\n }\r\n );\r\n};\r\n\r\nexport default createTheme;\r\n","import { useSelector } from \"react-redux\";\r\nimport { Redirect } from \"react-router-dom\";\r\n\r\nfunction AuthGuard({ children }) {\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n if (!auth?.user?.token) {\r\n return ;\r\n }\r\n\r\n return children;\r\n}\r\n\r\nexport default AuthGuard;\r\n","import React from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { Redirect, useLocation } from \"react-router-dom\";\r\n\r\nfunction useQuery() {\r\n const { search } = useLocation();\r\n return React.useMemo(() => new URLSearchParams(search), [search]);\r\n}\r\n\r\nfunction GuestGuard({ children }) {\r\n const auth = useSelector((state) => state.authReducer);\r\n const token = auth?.user?.token;\r\n const rol = auth?.user?.rol;\r\n\r\n const query = useQuery();\r\n const returnUrl = query.get(\"returnurl\");\r\n\r\n if (token) {\r\n if (rol.startsWith(\"Bromcom\")) {\r\n if (returnUrl) {\r\n const urls = returnUrl.split(\"/\");\r\n const url = urls[urls.length - 1];\r\n const newUrl = `/supportticketdetail/${url}`;\r\n return ;\r\n } else {\r\n return ;\r\n }\r\n } else {\r\n return ;\r\n }\r\n }\r\n\r\n return children;\r\n}\r\n\r\nexport default GuestGuard;\r\n","var _path, _path2, _path3, _path4, _path5, _path6;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgLogo(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 752,\n height: 125,\n viewBox: \"0 0 752 125\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M264.363 111.529V120.833H260.88V111.529H259.436V108.665H260.88V107.885C260.88 106.556 261.208 105.563 261.865 104.906C262.507 104.265 263.446 103.944 264.683 103.944C265.233 103.944 265.703 103.974 266.093 104.035C266.482 104.096 266.837 104.181 267.158 104.287V107.175C266.898 107.083 266.646 107.011 266.402 106.957C266.158 106.904 265.883 106.877 265.577 106.877C264.737 106.877 264.317 107.32 264.317 108.206V108.687H267.135V111.529H264.363ZM135.858 113.981V120.833H132.375V104.104H135.858V110.292C136.057 110.032 136.274 109.784 136.511 109.547C136.748 109.31 137.011 109.1 137.302 108.917C137.592 108.733 137.913 108.588 138.264 108.481C138.615 108.374 139.012 108.321 139.455 108.321C140.784 108.321 141.812 108.726 142.537 109.535C143.263 110.345 143.626 111.46 143.626 112.881V120.833H140.143V113.981C140.143 113.156 139.96 112.534 139.593 112.114C139.226 111.693 138.707 111.483 138.035 111.483C137.363 111.483 136.832 111.693 136.442 112.114C136.053 112.534 135.858 113.156 135.858 113.981ZM113.765 121.108C114.544 121.108 115.247 121.043 115.873 120.914C116.499 120.784 117.076 120.593 117.603 120.341C118.13 120.089 118.615 119.787 119.058 119.435C119.501 119.084 119.929 118.687 120.341 118.244L118.096 115.975C117.469 116.556 116.839 117.014 116.205 117.35C115.571 117.686 114.796 117.854 113.879 117.854C113.192 117.854 112.562 117.72 111.989 117.453C111.416 117.186 110.927 116.823 110.522 116.365C110.118 115.906 109.801 115.371 109.571 114.76C109.342 114.149 109.228 113.5 109.228 112.812V112.767C109.228 112.079 109.342 111.434 109.571 110.83C109.801 110.227 110.121 109.696 110.534 109.237C110.946 108.779 111.439 108.42 112.012 108.16C112.585 107.901 113.207 107.771 113.879 107.771C114.689 107.771 115.418 107.931 116.068 108.252C116.717 108.573 117.355 109.016 117.981 109.581L120.227 106.992C119.86 106.625 119.463 106.289 119.035 105.983C118.607 105.678 118.141 105.418 117.637 105.204C117.133 104.99 116.572 104.822 115.953 104.7C115.334 104.578 114.651 104.517 113.902 104.517C112.665 104.517 111.534 104.734 110.511 105.17C109.487 105.605 108.609 106.201 107.876 106.957C107.143 107.714 106.57 108.592 106.157 109.593C105.745 110.593 105.539 111.667 105.539 112.812V112.858C105.539 114.004 105.745 115.081 106.157 116.09C106.57 117.098 107.143 117.973 107.876 118.714C108.609 119.454 109.48 120.039 110.488 120.467C111.496 120.894 112.589 121.108 113.765 121.108ZM76.1773 104.677V120.833H72.6944V108.252L69.8989 108.94L69.1656 106.052L73.7714 104.677H76.1773ZM5.40678 120.833V110.635L13.1747 120.833H16.1764V104.792H12.6935V114.669L5.17763 104.792H1.92383V120.833H5.40678ZM35.2682 121.108C36.2306 121.108 37.1166 120.94 37.9262 120.604C38.7359 120.268 39.4386 119.81 40.0343 119.229C40.6301 118.649 41.096 117.972 41.4321 117.201C41.7682 116.429 41.9362 115.601 41.9362 114.714V114.669C41.9362 113.783 41.7682 112.954 41.4321 112.182C41.096 111.411 40.6339 110.738 40.0458 110.166C39.4577 109.593 38.7588 109.142 37.9491 108.813C37.1395 108.485 36.2611 108.321 35.314 108.321C34.3516 108.321 33.4656 108.489 32.656 108.825C31.8463 109.161 31.1436 109.619 30.5479 110.2C29.9521 110.78 29.4862 111.456 29.1501 112.228C28.814 113 28.646 113.828 28.646 114.714V114.76C28.646 115.646 28.814 116.475 29.1501 117.247C29.4862 118.018 29.9483 118.691 30.5364 119.263C31.1245 119.836 31.8234 120.287 32.6331 120.616C33.4427 120.944 34.3211 121.108 35.2682 121.108ZM33.9969 117.831C34.3864 118.015 34.8256 118.106 35.3144 118.106C35.8185 118.106 36.2654 118.018 36.6549 117.843C37.0445 117.667 37.3767 117.426 37.6517 117.121C37.9266 116.815 38.1367 116.46 38.2818 116.055C38.4269 115.65 38.4995 115.219 38.4995 114.76V114.715C38.4995 114.256 38.4231 113.825 38.2704 113.42C38.1176 113.015 37.8961 112.656 37.6059 112.343C37.3156 112.029 36.9719 111.781 36.5747 111.598C36.1775 111.415 35.7422 111.323 35.2686 111.323C34.7645 111.323 34.3177 111.411 33.9281 111.586C33.5386 111.762 33.2063 112.003 32.9314 112.308C32.6564 112.614 32.4464 112.969 32.3012 113.374C32.1561 113.779 32.0835 114.21 32.0835 114.669V114.715C32.0835 115.173 32.1599 115.604 32.3127 116.009C32.4654 116.414 32.6869 116.773 32.9772 117.086C33.2674 117.4 33.6073 117.648 33.9969 117.831ZM57.6126 120.833V117.167H53.9005V120.833H57.6126ZM162.26 121.108C163.223 121.108 164.109 120.94 164.918 120.604C165.728 120.268 166.431 119.81 167.026 119.229C167.622 118.649 168.088 117.972 168.424 117.201C168.76 116.429 168.928 115.601 168.928 114.714V114.669C168.928 113.783 168.76 112.954 168.424 112.182C168.088 111.411 167.626 110.738 167.038 110.166C166.45 109.593 165.751 109.142 164.941 108.813C164.132 108.485 163.253 108.321 162.306 108.321C161.344 108.321 160.458 108.489 159.648 108.825C158.838 109.161 158.136 109.619 157.54 110.2C156.944 110.78 156.478 111.456 156.142 112.228C155.806 113 155.638 113.828 155.638 114.714V114.76C155.638 115.646 155.806 116.475 156.142 117.247C156.478 118.018 156.94 118.691 157.528 119.263C158.117 119.836 158.815 120.287 159.625 120.616C160.435 120.944 161.313 121.108 162.26 121.108ZM160.989 117.831C161.378 118.015 161.818 118.106 162.307 118.106C162.811 118.106 163.257 118.018 163.647 117.843C164.037 117.667 164.369 117.426 164.644 117.121C164.919 116.815 165.129 116.46 165.274 116.055C165.419 115.65 165.492 115.219 165.492 114.76V114.715C165.492 114.256 165.415 113.825 165.262 113.42C165.11 113.015 164.888 112.656 164.598 112.343C164.308 112.029 163.964 111.781 163.567 111.598C163.17 111.415 162.734 111.323 162.261 111.323C161.757 111.323 161.31 111.411 160.92 111.586C160.531 111.762 160.198 112.003 159.923 112.308C159.648 112.614 159.438 112.969 159.293 113.374C159.148 113.779 159.076 114.21 159.076 114.669V114.715C159.076 115.173 159.152 115.604 159.305 116.009C159.458 116.414 159.679 116.773 159.969 117.086C160.26 117.4 160.599 117.648 160.989 117.831ZM184.766 107.198V104.104H181.099V107.198H184.766ZM184.675 108.55V120.833H181.192V108.55H184.675ZM203.331 121.108C204.553 121.108 205.546 120.898 206.31 120.478C207.074 120.058 207.753 119.519 208.349 118.862L206.31 116.8C205.882 117.197 205.45 117.514 205.015 117.751C204.58 117.988 204.072 118.106 203.491 118.106C203.018 118.106 202.59 118.018 202.208 117.843C201.826 117.667 201.498 117.426 201.223 117.121C200.948 116.815 200.738 116.456 200.593 116.044C200.448 115.631 200.375 115.188 200.375 114.714V114.669C200.375 114.21 200.448 113.779 200.593 113.374C200.738 112.969 200.944 112.614 201.211 112.308C201.479 112.003 201.792 111.762 202.151 111.586C202.51 111.411 202.911 111.323 203.354 111.323C203.98 111.323 204.503 111.445 204.923 111.689C205.343 111.934 205.752 112.262 206.149 112.675L208.28 110.383C207.7 109.742 207.028 109.237 206.264 108.871C205.5 108.504 204.538 108.321 203.377 108.321C202.43 108.321 201.563 108.489 200.776 108.825C199.989 109.161 199.313 109.619 198.748 110.2C198.183 110.78 197.74 111.46 197.419 112.239C197.098 113.019 196.938 113.844 196.938 114.714V114.76C196.938 115.631 197.098 116.452 197.419 117.224C197.74 117.995 198.183 118.668 198.748 119.241C199.313 119.813 199.989 120.268 200.776 120.604C201.563 120.94 202.414 121.108 203.331 121.108ZM228.93 120.501C228.105 120.906 227.135 121.108 226.02 121.108C225.103 121.108 224.252 120.955 223.465 120.65C222.678 120.344 221.998 119.909 221.426 119.344C220.853 118.778 220.406 118.11 220.085 117.338C219.764 116.567 219.604 115.708 219.604 114.76V114.714C219.604 113.844 219.753 113.019 220.051 112.239C220.349 111.46 220.765 110.78 221.3 110.2C221.834 109.619 222.472 109.161 223.213 108.825C223.954 108.489 224.775 108.321 225.676 108.321C226.7 108.321 227.586 108.504 228.334 108.871C229.083 109.237 229.705 109.73 230.202 110.349C230.698 110.968 231.065 111.678 231.302 112.48C231.538 113.282 231.657 114.119 231.657 114.989C231.657 115.127 231.653 115.272 231.645 115.425C231.638 115.578 231.626 115.738 231.611 115.906H223.064C223.232 116.701 223.58 117.3 224.107 117.705C224.634 118.11 225.287 118.312 226.066 118.312C226.646 118.312 227.166 118.213 227.624 118.014C228.082 117.816 228.556 117.495 229.045 117.052L231.038 118.817C230.458 119.535 229.755 120.096 228.93 120.501ZM228.265 113.729H223.018C223.155 112.935 223.449 112.301 223.9 111.827C224.351 111.353 224.943 111.117 225.676 111.117C226.409 111.117 226.997 111.357 227.44 111.838C227.883 112.32 228.158 112.95 228.265 113.729ZM284.647 121.108C285.609 121.108 286.495 120.94 287.305 120.604C288.114 120.268 288.817 119.81 289.413 119.229C290.009 118.649 290.474 117.972 290.811 117.201C291.147 116.429 291.315 115.601 291.315 114.714V114.669C291.315 113.783 291.147 112.954 290.811 112.182C290.474 111.411 290.012 110.738 289.424 110.166C288.836 109.593 288.137 109.142 287.328 108.813C286.518 108.485 285.64 108.321 284.692 108.321C283.73 108.321 282.844 108.489 282.034 108.825C281.225 109.161 280.522 109.619 279.926 110.2C279.331 110.78 278.865 111.456 278.529 112.228C278.193 113 278.024 113.828 278.024 114.714V114.76C278.024 115.646 278.193 116.475 278.529 117.247C278.865 118.018 279.327 118.691 279.915 119.263C280.503 119.836 281.202 120.287 282.012 120.616C282.821 120.944 283.7 121.108 284.647 121.108ZM283.375 117.831C283.765 118.015 284.204 118.106 284.693 118.106C285.197 118.106 285.644 118.018 286.033 117.843C286.423 117.667 286.755 117.426 287.03 117.121C287.305 116.815 287.515 116.46 287.66 116.055C287.805 115.65 287.878 115.219 287.878 114.76V114.715C287.878 114.256 287.802 113.825 287.649 113.42C287.496 113.015 287.275 112.656 286.984 112.343C286.694 112.029 286.35 111.781 285.953 111.598C285.556 111.415 285.121 111.323 284.647 111.323C284.143 111.323 283.696 111.411 283.307 111.586C282.917 111.762 282.585 112.003 282.31 112.308C282.035 112.614 281.825 112.969 281.68 113.374C281.535 113.779 281.462 114.21 281.462 114.669V114.715C281.462 115.173 281.538 115.604 281.691 116.009C281.844 116.414 282.065 116.773 282.356 117.086C282.646 117.4 282.986 117.648 283.375 117.831ZM306.9 120.833V116.296C306.9 114.814 307.232 113.721 307.897 113.019C308.561 112.316 309.474 111.965 310.635 111.965H310.818V108.321C309.779 108.275 308.954 108.504 308.343 109.008C307.732 109.512 307.251 110.185 306.9 111.025V108.55H303.417V120.833H306.9ZM349.025 120.914C348.399 121.043 347.696 121.108 346.917 121.108C345.741 121.108 344.648 120.894 343.64 120.467C342.632 120.039 341.761 119.454 341.028 118.714C340.295 117.973 339.722 117.098 339.309 116.09C338.897 115.081 338.691 114.004 338.691 112.858V112.812C338.691 111.667 338.897 110.593 339.309 109.593C339.722 108.592 340.295 107.714 341.028 106.957C341.761 106.201 342.64 105.605 343.663 105.17C344.687 104.734 345.817 104.517 347.054 104.517C347.803 104.517 348.486 104.578 349.105 104.7C349.724 104.822 350.285 104.99 350.789 105.204C351.293 105.418 351.759 105.678 352.187 105.983C352.615 106.289 353.012 106.625 353.379 106.992L351.133 109.581C350.507 109.016 349.869 108.573 349.22 108.252C348.57 107.931 347.841 107.771 347.031 107.771C346.359 107.771 345.737 107.901 345.164 108.16C344.591 108.42 344.098 108.779 343.686 109.237C343.274 109.696 342.953 110.227 342.724 110.83C342.494 111.434 342.38 112.079 342.38 112.767V112.812C342.38 113.5 342.494 114.149 342.724 114.76C342.953 115.371 343.27 115.906 343.675 116.365C344.079 116.823 344.568 117.186 345.141 117.453C345.714 117.72 346.344 117.854 347.031 117.854C347.948 117.854 348.723 117.686 349.357 117.35C349.991 117.014 350.621 116.556 351.248 115.975L353.493 118.244C353.081 118.687 352.653 119.084 352.21 119.435C351.767 119.787 351.282 120.089 350.755 120.341C350.228 120.593 349.651 120.784 349.025 120.914ZM369.172 120.833V104.104H365.689V120.833H369.172ZM390.715 120.604C389.905 120.94 389.019 121.108 388.057 121.108C387.11 121.108 386.231 120.944 385.422 120.616C384.612 120.287 383.913 119.836 383.325 119.263C382.737 118.691 382.275 118.018 381.939 117.247C381.603 116.475 381.434 115.646 381.434 114.76V114.714C381.434 113.828 381.603 113 381.939 112.228C382.275 111.456 382.741 110.78 383.336 110.2C383.932 109.619 384.635 109.161 385.444 108.825C386.254 108.489 387.14 108.321 388.102 108.321C389.05 108.321 389.928 108.485 390.738 108.813C391.547 109.142 392.246 109.593 392.834 110.166C393.422 110.738 393.884 111.411 394.221 112.182C394.557 112.954 394.725 113.783 394.725 114.669V114.714C394.725 115.601 394.557 116.429 394.221 117.201C393.884 117.972 393.419 118.649 392.823 119.229C392.227 119.81 391.524 120.268 390.715 120.604ZM388.103 118.106C387.614 118.106 387.175 118.015 386.785 117.831C386.396 117.648 386.056 117.4 385.766 117.086C385.475 116.773 385.254 116.414 385.101 116.009C384.948 115.604 384.872 115.173 384.872 114.715V114.669C384.872 114.21 384.945 113.779 385.09 113.374C385.235 112.969 385.445 112.614 385.72 112.308C385.995 112.003 386.327 111.762 386.717 111.586C387.106 111.411 387.553 111.323 388.057 111.323C388.531 111.323 388.966 111.415 389.363 111.598C389.76 111.781 390.104 112.029 390.394 112.343C390.685 112.656 390.906 113.015 391.059 113.42C391.212 113.825 391.288 114.256 391.288 114.715V114.76C391.288 115.219 391.215 115.65 391.07 116.055C390.925 116.46 390.715 116.815 390.44 117.121C390.165 117.426 389.833 117.667 389.443 117.843C389.054 118.018 388.607 118.106 388.103 118.106ZM412.096 120.902C411.745 121.009 411.348 121.063 410.905 121.063C409.576 121.063 408.548 120.658 407.823 119.848C407.097 119.038 406.734 117.923 406.734 116.502V108.55H410.217V115.402C410.217 116.227 410.4 116.85 410.767 117.27C411.134 117.69 411.653 117.9 412.325 117.9C412.997 117.9 413.528 117.69 413.918 117.27C414.307 116.85 414.502 116.227 414.502 115.402V108.55H417.985V120.833H414.502V119.092C414.304 119.351 414.086 119.6 413.849 119.836C413.612 120.073 413.349 120.283 413.059 120.467C412.768 120.65 412.447 120.795 412.096 120.902ZM435.726 121.062C436.643 121.062 437.403 120.875 438.006 120.501C438.61 120.127 439.125 119.649 439.553 119.069V120.833H443.036V104.104H439.553V110.154C439.14 109.665 438.633 109.237 438.029 108.871C437.426 108.504 436.658 108.321 435.726 108.321C434.993 108.321 434.29 108.458 433.618 108.733C432.946 109.008 432.354 109.417 431.842 109.959C431.331 110.502 430.918 111.166 430.605 111.953C430.292 112.74 430.135 113.645 430.135 114.669V114.715C430.135 115.738 430.292 116.643 430.605 117.43C430.918 118.217 431.334 118.882 431.854 119.424C432.373 119.966 432.969 120.375 433.641 120.65C434.313 120.925 435.008 121.062 435.726 121.062ZM435.463 117.866C435.822 118.026 436.207 118.106 436.62 118.106C437.032 118.106 437.418 118.026 437.777 117.866C438.136 117.705 438.449 117.476 438.716 117.178C438.984 116.88 439.198 116.521 439.358 116.101C439.518 115.681 439.599 115.219 439.599 114.715V114.669C439.599 114.165 439.518 113.702 439.358 113.282C439.198 112.862 438.984 112.503 438.716 112.205C438.449 111.907 438.136 111.678 437.777 111.518C437.418 111.357 437.032 111.277 436.62 111.277C436.207 111.277 435.822 111.357 435.463 111.518C435.104 111.678 434.787 111.907 434.512 112.205C434.237 112.503 434.019 112.858 433.859 113.271C433.698 113.683 433.618 114.149 433.618 114.669V114.715C433.618 115.219 433.698 115.681 433.859 116.101C434.019 116.521 434.237 116.88 434.512 117.178C434.787 117.476 435.104 117.705 435.463 117.866ZM476.018 120.833V110.429L480.486 117.212H480.578L485.092 110.36V120.833H488.598V104.792H484.794L480.578 111.575L476.362 104.792H472.558V120.833H476.018ZM505.718 104.792V120.833H502.19V104.792H505.718ZM525.017 121.062C525.887 121.062 526.682 120.952 527.4 120.73C528.118 120.509 528.736 120.188 529.256 119.768C529.775 119.348 530.18 118.828 530.47 118.209C530.76 117.591 530.906 116.884 530.906 116.09V116.044C530.906 115.341 530.795 114.737 530.573 114.233C530.352 113.729 530.023 113.29 529.588 112.916C529.153 112.541 528.618 112.22 527.984 111.953C527.35 111.686 526.628 111.445 525.819 111.231C525.131 111.048 524.562 110.887 524.112 110.75C523.661 110.612 523.306 110.467 523.046 110.315C522.786 110.162 522.607 109.99 522.508 109.799C522.408 109.608 522.359 109.383 522.359 109.123V109.077C522.359 108.68 522.53 108.348 522.874 108.08C523.218 107.813 523.733 107.679 524.421 107.679C525.108 107.679 525.796 107.82 526.483 108.103C527.171 108.386 527.873 108.771 528.591 109.26L530.424 106.602C529.599 105.945 528.694 105.441 527.709 105.09C526.724 104.738 525.643 104.562 524.467 104.562C523.642 104.562 522.886 104.677 522.198 104.906C521.511 105.135 520.919 105.464 520.422 105.892C519.926 106.319 519.54 106.827 519.265 107.416C518.99 108.004 518.853 108.665 518.853 109.398V109.444C518.853 110.238 518.979 110.903 519.231 111.437C519.483 111.972 519.838 112.419 520.296 112.778C520.755 113.137 521.312 113.439 521.969 113.683C522.626 113.928 523.359 114.149 524.169 114.348C524.841 114.516 525.387 114.676 525.807 114.829C526.227 114.982 526.556 115.135 526.792 115.287C527.029 115.44 527.19 115.604 527.274 115.78C527.358 115.956 527.4 116.158 527.4 116.387V116.433C527.4 116.907 527.197 117.277 526.792 117.545C526.388 117.812 525.819 117.946 525.085 117.946C524.169 117.946 523.325 117.77 522.553 117.419C521.782 117.067 521.03 116.594 520.296 115.998L518.211 118.496C519.174 119.367 520.243 120.012 521.419 120.432C522.595 120.852 523.794 121.062 525.017 121.062ZM573.396 119.344L570.807 121.154L568.951 119.275C568.294 119.81 567.58 120.241 566.808 120.57C566.037 120.898 565.185 121.062 564.253 121.062C563.49 121.062 562.779 120.956 562.122 120.742C561.466 120.528 560.897 120.218 560.415 119.814C559.934 119.409 559.556 118.924 559.281 118.358C559.006 117.793 558.869 117.151 558.869 116.433V116.387C558.869 115.364 559.136 114.489 559.671 113.764C560.205 113.038 560.977 112.446 561.985 111.987C561.588 111.437 561.301 110.903 561.126 110.383C560.95 109.864 560.862 109.329 560.862 108.779V108.733C560.862 108.183 560.969 107.656 561.183 107.152C561.397 106.648 561.71 106.201 562.122 105.811C562.535 105.422 563.043 105.109 563.646 104.872C564.25 104.635 564.941 104.517 565.72 104.517C566.407 104.517 567.026 104.62 567.576 104.826C568.126 105.032 568.599 105.319 568.997 105.685C569.394 106.052 569.699 106.48 569.913 106.969C570.127 107.458 570.234 107.985 570.234 108.55V108.596C570.234 109.131 570.154 109.616 569.993 110.051C569.833 110.486 569.604 110.872 569.306 111.208C569.008 111.544 568.653 111.842 568.241 112.102C567.828 112.362 567.37 112.591 566.866 112.79L568.997 114.921C569.256 114.508 569.516 114.069 569.776 113.603C570.035 113.137 570.295 112.66 570.555 112.171L573.144 113.592C572.839 114.157 572.51 114.73 572.159 115.31C571.807 115.891 571.433 116.449 571.036 116.983L573.396 119.344ZM565.032 110.933C564.696 110.551 564.456 110.211 564.311 109.913C564.165 109.616 564.093 109.291 564.093 108.939V108.894C564.093 108.405 564.234 108.011 564.517 107.713C564.799 107.416 565.177 107.267 565.651 107.267C566.094 107.267 566.457 107.4 566.739 107.668C567.022 107.935 567.163 108.298 567.163 108.756V108.802C567.163 109.306 566.984 109.722 566.625 110.051C566.266 110.379 565.735 110.674 565.032 110.933ZM563.051 117.659C563.471 118.003 564.009 118.175 564.666 118.175C565.063 118.175 565.456 118.095 565.846 117.934C566.236 117.774 566.614 117.549 566.98 117.258L563.91 114.142C563.375 114.417 562.993 114.737 562.764 115.104C562.535 115.471 562.42 115.853 562.42 116.25V116.296C562.42 116.861 562.63 117.316 563.051 117.659ZM605.529 120.833V114.623H613.182V111.415H605.529V108H614.214V104.792H602V120.833H605.529ZM629.984 104.104V107.198H626.317V104.104H629.984ZM629.891 120.833V108.55H626.408V120.833H629.891ZM646.233 113.981V120.833H642.751V108.55H646.233V110.292C646.432 110.032 646.65 109.784 646.887 109.547C647.123 109.31 647.387 109.1 647.677 108.917C647.967 108.733 648.288 108.588 648.639 108.481C648.991 108.374 649.388 108.321 649.831 108.321C651.16 108.321 652.187 108.726 652.913 109.535C653.639 110.345 654.001 111.46 654.001 112.881V120.833H650.518V113.981C650.518 113.156 650.335 112.534 649.968 112.113C649.602 111.693 649.082 111.483 648.41 111.483C647.738 111.483 647.207 111.693 646.818 112.113C646.428 112.534 646.233 113.156 646.233 113.981ZM670.092 121.062C670.947 121.062 671.673 120.921 672.269 120.639C672.865 120.356 673.376 119.978 673.804 119.504V120.833H677.172V113.706C677.172 112.881 677.065 112.136 676.852 111.472C676.638 110.807 676.302 110.246 675.843 109.787C675.4 109.344 674.839 109.004 674.159 108.768C673.479 108.531 672.658 108.412 671.696 108.412C670.657 108.412 669.771 108.504 669.038 108.687C668.305 108.871 667.602 109.108 666.93 109.398L667.8 112.056C668.366 111.842 668.904 111.678 669.416 111.564C669.928 111.449 670.52 111.392 671.192 111.392C672.062 111.392 672.719 111.583 673.162 111.965C673.605 112.346 673.827 112.904 673.827 113.637V113.844C673.384 113.691 672.929 113.569 672.464 113.477C671.998 113.385 671.451 113.34 670.825 113.34C670.092 113.34 669.424 113.42 668.82 113.58C668.217 113.741 667.697 113.981 667.262 114.302C666.827 114.623 666.487 115.028 666.242 115.517C665.998 116.006 665.876 116.586 665.876 117.258V117.304C665.876 117.915 665.986 118.454 666.208 118.92C666.429 119.386 666.731 119.779 667.113 120.1C667.495 120.421 667.942 120.661 668.453 120.822C668.965 120.982 669.511 121.062 670.092 121.062ZM669.771 118.267C670.123 118.526 670.581 118.656 671.146 118.656C671.971 118.656 672.632 118.458 673.128 118.06C673.625 117.663 673.873 117.144 673.873 116.502V115.883C673.567 115.746 673.228 115.635 672.853 115.551C672.479 115.467 672.078 115.425 671.65 115.425C670.902 115.425 670.314 115.57 669.886 115.86C669.458 116.151 669.244 116.571 669.244 117.121V117.167C669.244 117.64 669.42 118.007 669.771 118.267ZM693.238 120.833V113.981C693.238 113.156 693.433 112.534 693.822 112.113C694.212 111.693 694.743 111.483 695.415 111.483C696.087 111.483 696.606 111.693 696.973 112.113C697.34 112.534 697.523 113.156 697.523 113.981V120.833H701.006V112.881C701.006 111.46 700.643 110.345 699.918 109.535C699.192 108.726 698.165 108.321 696.836 108.321C696.393 108.321 695.995 108.374 695.644 108.481C695.293 108.588 694.972 108.733 694.682 108.917C694.391 109.1 694.128 109.31 693.891 109.547C693.654 109.784 693.437 110.032 693.238 110.292V108.55H689.755V120.833H693.238ZM722.39 120.478C721.626 120.898 720.633 121.108 719.411 121.108C718.495 121.108 717.643 120.94 716.856 120.604C716.07 120.268 715.394 119.813 714.828 119.241C714.263 118.668 713.82 117.995 713.499 117.224C713.179 116.452 713.018 115.631 713.018 114.76V114.714C713.018 113.844 713.179 113.019 713.499 112.239C713.82 111.46 714.263 110.78 714.828 110.2C715.394 109.619 716.07 109.161 716.856 108.825C717.643 108.489 718.51 108.321 719.457 108.321C720.618 108.321 721.58 108.504 722.344 108.871C723.108 109.237 723.78 109.742 724.361 110.383L722.23 112.675C721.833 112.262 721.424 111.934 721.004 111.689C720.584 111.445 720.06 111.323 719.434 111.323C718.991 111.323 718.59 111.411 718.231 111.586C717.872 111.762 717.559 112.003 717.292 112.308C717.024 112.614 716.818 112.969 716.673 113.374C716.528 113.779 716.455 114.21 716.455 114.669V114.714C716.455 115.188 716.528 115.631 716.673 116.044C716.818 116.456 717.028 116.815 717.303 117.121C717.578 117.426 717.907 117.667 718.288 117.843C718.67 118.018 719.098 118.106 719.572 118.106C720.152 118.106 720.66 117.988 721.095 117.751C721.531 117.514 721.962 117.197 722.39 116.8L724.429 118.862C723.834 119.519 723.154 120.058 722.39 120.478ZM742.1 121.108C743.215 121.108 744.185 120.906 745.01 120.501C745.835 120.096 746.538 119.535 747.118 118.817L745.125 117.052C744.636 117.495 744.163 117.816 743.704 118.014C743.246 118.213 742.727 118.312 742.146 118.312C741.367 118.312 740.714 118.11 740.187 117.705C739.66 117.3 739.312 116.701 739.144 115.906H747.691C747.707 115.738 747.718 115.578 747.726 115.425C747.733 115.272 747.737 115.127 747.737 114.989C747.737 114.119 747.619 113.282 747.382 112.48C747.145 111.678 746.779 110.968 746.282 110.349C745.786 109.73 745.163 109.237 744.415 108.871C743.666 108.504 742.78 108.321 741.757 108.321C740.855 108.321 740.034 108.489 739.293 108.825C738.552 109.161 737.915 109.619 737.38 110.2C736.845 110.78 736.429 111.46 736.131 112.239C735.833 113.019 735.684 113.844 735.684 114.714V114.76C735.684 115.708 735.845 116.567 736.165 117.338C736.486 118.11 736.933 118.778 737.506 119.344C738.079 119.909 738.759 120.344 739.545 120.65C740.332 120.955 741.184 121.108 742.1 121.108ZM739.098 113.729H744.346C744.239 112.95 743.964 112.32 743.521 111.838C743.078 111.357 742.489 111.117 741.756 111.117C741.023 111.117 740.431 111.353 739.98 111.827C739.53 112.301 739.236 112.935 739.098 113.729Z\",\n fill: \"#707070\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M614.81 46.4882L655.747 46.4883V89.5833H621.648L621.649 89.4759C609.459 88.3671 599.934 78.8114 599.934 67.1875C599.934 57.8526 606.077 49.8517 614.81 46.4882Z\",\n fill: \"#7FB741\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M689.676 46.4884V57.6863H750.733C751.078 59.3343 751.258 61.0359 751.258 62.7763C751.258 77.5814 738.194 89.5834 722.079 89.5834H658.801V46.4884H689.676Z\",\n fill: \"#1494D4\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M702.919 18.0556C705.86 16.4998 709.276 15.6092 712.918 15.6092C723.974 15.6092 732.937 23.813 732.937 33.933C732.937 35.2352 732.788 36.5056 732.506 37.731C740.748 40.6287 747.194 46.8616 749.888 54.6323L692.73 54.6322L692.731 5.31596C697.229 8.48821 700.791 12.9005 702.919 18.0556Z\",\n fill: \"#FF911D\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M675.936 0C680.904 0 685.583 1.24192 689.677 3.43229L689.677 43.4343L621.736 43.4343C622.783 31.2688 633.13 21.7172 645.739 21.7172C646.399 21.7172 647.053 21.7434 647.7 21.7948C650.971 9.25492 662.372 0 675.936 0Z\",\n fill: \"#DC4038\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M67.7972 0C79.315 0.863672 88.583 4.67876 89.6108 15.5012C90.8369 28.4732 82.5057 36.7845 73.7945 40.378C79.2468 42.7789 83.5147 46.3583 83.9769 53.7138C87.4004 39.9913 90.3741 25.8122 93.6042 11.8949H113.962C112.986 16.2179 111.946 20.4686 111.055 24.8768C117.704 17.509 124.927 8.25416 140.869 10.0941C140.7 12.4535 139.93 14.2141 139.592 16.4057C148.658 11.447 163.205 8.18651 176.671 10.9945C188.768 13.5184 197.217 21.2646 199.21 33.3479C201.202 26.4857 202.477 18.9215 204.3 11.8949H224.658C223.725 15.4178 223.007 19.1425 222.113 22.7097C224.477 21.0086 226.328 18.1908 229.202 16.0459C236.103 10.8819 252.827 6.42651 262.102 13.3382C264.781 15.3373 266.422 18.3424 267.918 21.8134C269.391 20.9923 270.499 19.4656 271.919 18.2088C275.892 14.662 281.361 11.314 287.913 10.2743C302.807 7.91009 316.66 14.6661 315.542 31.1849C315.443 32.6131 315.16 33.8167 314.814 35.3312C321.217 23.553 332.008 12.8017 348.984 10.4544C368.16 7.80395 384.864 13.7149 386.792 30.8245C395.152 20.0575 407.695 10.8982 426.238 9.91385C446.016 8.8659 459.69 17.0093 462.406 33.8885C464.626 27.0135 465.861 19.1687 467.677 11.8949H488.035C487.177 15.5508 486.384 19.2731 485.492 22.894C487.123 21.7417 488.291 20.0347 489.852 18.5651C494.242 14.4352 500.129 10.9391 508.033 10.0941C520.097 8.79825 528.369 12.8384 531.477 21.8134C536.743 16.8256 543.607 10.567 554.202 9.91385C567.777 9.07876 577.715 14.8095 579.103 27.0362V30.4641C575.306 49.9501 570.584 68.5275 566.378 87.6064H545.109C548.052 74.4793 551.54 59.9013 554.743 45.7833C556.864 36.4322 558.317 25.7655 545.472 26.6799C531.737 27.6562 529.97 39.7948 527.114 52.0932C524.286 64.2791 521.656 76.3215 519.119 87.6064H497.85C500.55 75.3674 503.835 61.26 506.758 48.491C507.756 44.1196 509.279 39.5067 509.3 35.151C509.329 28.4808 504.454 26.1562 497.128 26.6799C484.155 27.5967 482.331 40.5191 479.677 52.4577C476.887 64.9748 474.253 76.9105 471.68 87.6064H450.593C452.065 80.1692 453.794 72.9975 455.497 65.7936C447.124 78.3515 434.393 88.0852 414.241 89.5833H408.058C392.192 88.2613 381.622 81.6797 378.25 67.963C370.701 79.1989 359.585 88.4129 341.171 89.5833H334.627C319.023 88.4782 309.426 81.4131 307.908 66.3336C306.111 73.2675 304.633 80.5127 302.997 87.6064H281.735C284.949 73.7101 287.865 60.1199 291.184 45.6031C293.281 36.4486 294.942 25.7655 282.097 26.6799C268.254 27.6602 266.572 39.7032 263.736 52.0932C260.804 64.9258 257.969 76.8615 255.74 87.6064H234.473C237.36 73.9428 240.538 60.7136 243.741 46.6861C245.161 40.4823 248.036 31.0251 242.107 27.9407C239.651 26.6572 236.62 26.3977 233.381 26.6799C220.559 27.7856 219.047 40.6071 216.298 52.6373C213.39 65.3352 210.771 76.6487 208.299 87.6064H187.03C188.729 80.5751 190.208 73.3334 191.942 66.3336C183.565 78.5807 170.91 88.1429 151.041 89.5833H144.681C129.537 88.2245 118.963 82.1748 115.417 69.4034C111.329 54.6778 118.055 40.0875 123.781 30.6443C117.696 31.901 113.806 34.5679 110.873 38.5748C107.776 42.8074 106.791 47.867 105.421 53.8946C102.936 64.8558 100.02 77.0254 97.6016 87.6064H76.339C77.9119 81.4709 79.1662 75.0321 80.6998 68.8552C74.6137 78.8997 65.321 85.9076 49.6182 87.2425C34.2846 88.5523 16.6007 87.0168 0 87.6064V87.2425C6.8641 58.3623 13.1872 28.9415 19.9913 0H67.7972ZM30.8962 34.2442C43.91 33.6121 61.7038 36.7845 67.7976 29.2039C69.4424 27.157 71.0606 23.4405 69.9792 19.826C69.0484 16.7416 64.8092 15.4132 60.7048 15.1391C52.594 14.6031 43.4313 15.5508 35.4388 15.1391C33.5547 21.1381 32.4216 27.8854 30.8962 34.2442M163.404 69.944C171.345 65.4658 177.609 53.9413 177.58 41.4632C177.571 36.6247 175.463 31.5284 172.495 29.3835C163.788 23.0964 150.01 27.8404 144.321 34.6087C139.316 40.5582 135.687 51.1701 136.502 60.3882C137.065 66.7266 140.771 69.5264 144.862 72.2854C150.838 76.3052 156.435 79.9727 162.313 84.0012C162.517 83.9838 162.597 84.2625 162.672 84.0012C161.223 80.038 160.09 75.7442 158.679 71.7448C160.444 71.2538 161.941 70.7627 163.404 69.944M351.528 26.6799C343.877 27.4212 338.78 32.4965 335.349 38.7556C332.335 44.259 329.495 53.9069 330.084 61.8251C330.612 69.0885 335.198 73.4232 342.623 73.366C352.204 73.2966 356.931 67.1075 360.255 60.0261H377.52C377.797 51.643 379.791 44.971 382.432 38.9393H365.163C365.167 30.0693 361.064 25.7568 351.528 26.6799M426.964 69.7597C434.829 65.2244 440.975 53.2741 440.777 41.0987C440.636 32.2672 435.565 27.2491 427.505 26.6799C416.887 25.9247 410.328 30.2676 405.695 37.4924C401.783 43.5953 399.077 51.8535 399.698 59.8458C400.239 66.8042 403.883 69.3544 408.422 72.4656C413.918 76.2311 421.254 81.2702 425.875 84.0012C424.509 80.0054 423.157 75.9937 422.052 71.7448C423.879 71.0981 425.399 70.6607 426.964 69.7597M22.173 72.4656C30.99 72.0358 40.8913 73.0423 48.892 72.4656C54.4766 72.0603 59.1632 69.5427 61.6194 65.9732C63.1236 63.7793 64.7083 60.2447 64.5272 56.7819C63.871 44.3551 39.814 50.5583 27.63 49.0275C25.6383 56.6734 24.0412 64.7048 22.173 72.4656\",\n fill: \"#DC4038\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgLogo);\nexport default __webpack_public_path__ + \"static/media/logo.e8893b47.svg\";\nexport { ForwardRef as ReactComponent };","import axios from \"axios\";\r\n\r\nconst api = axios.create({\r\n baseURL: process.env.REACT_APP_BASE_URL,\r\n //baseURL: \"https://bcm-uks-partner-portal-development.azurewebsites.net/api\",\r\n});\r\n\r\nexport default api;\r\n","import api from \"../api/api\";\r\n\r\nexport function signIn(credentials) {\r\n return new Promise((resolve, reject) => {\r\n const partnerUrl = \"api/Auth/token?v=1.0\";\r\n const bromcomUrl = \"api/Auth/AzurAdToken?v=1.0\";\r\n\r\n const url = credentials.type === \"partner\" ? partnerUrl : bromcomUrl;\r\n delete credentials.type;\r\n\r\n api\r\n .post(url, credentials)\r\n .then((response) => {\r\n if (response.status === 200) {\r\n resolve(response.data);\r\n }\r\n reject(response.data);\r\n })\r\n .catch((error) => {\r\n console.log(\"error\", error);\r\n reject(error);\r\n });\r\n });\r\n}\r\n\r\nexport function signUp(credentials) {\r\n return new Promise((resolve, reject) => {\r\n api\r\n .post(\"api/Partner/AddPartner?v=1.0\", credentials)\r\n .then((response) => {\r\n if (response.status === 200) {\r\n resolve(response.data);\r\n }\r\n reject(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n}\r\n\r\nexport function resetPassword(data) {\r\n return new Promise((resolve, reject) => {\r\n api\r\n .post(\"api/UserInteraction/ResetPassword?v=1.0\", data)\r\n .then((response) => {\r\n if (response.status === 200) {\r\n resolve(response.data);\r\n }\r\n reject(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n}\r\n\r\nexport function forgotPassword(data) {\r\n return new Promise((resolve, reject) => {\r\n api\r\n .post(`api/UserInteraction/ForgotPassword?email=${data}&v=1.0`)\r\n .then((response) => {\r\n if (response.status === 200) {\r\n resolve(response.data);\r\n }\r\n reject(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n}\r\n","import jwt_decode from \"jwt-decode\";\r\nimport * as types from \"../../constants\";\r\nimport {\r\n signIn as authSignIn,\r\n signUp as authSignUp,\r\n resetPassword as authResetPassword,\r\n} from \"../../services/authService\";\r\n\r\nexport function signIn(credentials) {\r\n return async (dispatch) => {\r\n dispatch({ type: types.AUTH_SIGN_IN_REQUEST });\r\n return authSignIn(credentials)\r\n .then((response) => {\r\n if (response.isSuccess) {\r\n const decoded = jwt_decode(response.data.auth_token);\r\n dispatch({\r\n type: types.AUTH_SIGN_IN_SUCCESS,\r\n email: decoded.sub,\r\n id: decoded.id,\r\n rol: decoded.rol,\r\n pid: decoded.sid,\r\n token: response.data.auth_token,\r\n message: response.message,\r\n isSuccess: response.isSuccess,\r\n firstName: decoded.given_name,\r\n lastName: decoded.family_name,\r\n companyName: decoded.name,\r\n desc: decoded.role_desc,\r\n exp: decoded.exp,\r\n companyLogo: decoded.website,\r\n });\r\n localStorage.setItem(\"token\", response.data.auth_token);\r\n } else {\r\n dispatch({\r\n type: types.AUTH_SIGN_IN_FAILED,\r\n message: response.message,\r\n isSuccess: response.isSuccess,\r\n });\r\n }\r\n })\r\n .catch((error) => {\r\n dispatch({ type: types.AUTH_SIGN_IN_FAILURE });\r\n throw error;\r\n });\r\n };\r\n}\r\n\r\nexport function signUp(credentials) {\r\n return async (dispatch) => {\r\n dispatch({ type: types.AUTH_SIGN_UP_REQUEST });\r\n\r\n return authSignUp(credentials)\r\n .then((response) => {\r\n dispatch({\r\n type: types.AUTH_SIGN_UP_SUCCESS,\r\n email: credentials.email,\r\n website: credentials.website,\r\n });\r\n })\r\n .catch((error) => {\r\n dispatch({ type: types.AUTH_SIGN_UP_FAILURE });\r\n throw error;\r\n });\r\n };\r\n}\r\n\r\nexport function signOut() {\r\n return async (dispatch) => {\r\n dispatch({\r\n type: types.AUTH_SIGN_OUT,\r\n message: \"\",\r\n });\r\n };\r\n}\r\n\r\nexport function resetPassword(credentials) {\r\n return async (dispatch) => {\r\n dispatch({ type: types.AUTH_RESET_PASSWORD_REQUEST });\r\n\r\n return authResetPassword(credentials)\r\n .then((response) => {\r\n dispatch({\r\n type: types.AUTH_RESET_PASSWORD_SUCCESS,\r\n email: response.email,\r\n });\r\n })\r\n .catch((error) => {\r\n dispatch({ type: types.AUTH_RESET_PASSWORD_FAILURE });\r\n throw error;\r\n });\r\n };\r\n}\r\n","import styled from \"styled-components/macro\";\r\nimport { ReactComponent as Logo } from \"../vendor/logo.svg\";\r\nimport { Box } from \"@material-ui/core\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { useDispatch } from \"react-redux\";\r\n\r\nimport { signOut } from \"../redux/actions/authActions\";\r\n\r\nconst Container = styled(Box)`\r\n display: \"flex\";\r\n justify-content: \"center\";\r\n cursor: pointer;\r\n`;\r\n\r\nconst BigLogo = styled(Logo)`\r\n width: 300px;\r\n height: 50px;\r\n margin-bottom: ${(props) => props.mb};\r\n\r\n @media (max-width: 600px) {\r\n width: 200px;\r\n height: 40px;\r\n }\r\n`;\r\n\r\nfunction AppLogo({ mb }) {\r\n const history = useHistory();\r\n const dispatch = useDispatch();\r\n\r\n return (\r\n {\r\n history.push(\"/\");\r\n dispatch(signOut());\r\n }}\r\n >\r\n \r\n \r\n );\r\n}\r\n\r\nexport default AppLogo;\r\n","import React, { useState } from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { Link } from \"react-router-dom\";\r\nimport styled from \"styled-components/macro\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport * as Yup from \"yup\";\r\nimport { Formik } from \"formik\";\r\nimport { signIn } from \"../../redux/actions/authActions\";\r\nimport AppLogo from \"../../components/AppLogo\";\r\n\r\nimport {\r\n Box,\r\n Button,\r\n Paper,\r\n TextField as MuiTextField,\r\n Typography,\r\n Card as MuiCard,\r\n CardContent,\r\n} from \"@material-ui/core\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport { Alert as MuiAlert } from \"@material-ui/lab\";\r\n\r\nconst Alert = styled(MuiAlert)(spacing);\r\n\r\nconst TextField = styled(MuiTextField)(spacing);\r\n\r\nconst Card = styled(MuiCard)(spacing);\r\n\r\nconst Wrapper = styled(Paper)`\r\n padding: ${(props) => props.theme.spacing(6)}px;\r\n ${(props) => props.theme.breakpoints.up(\"md\")} {\r\n padding: ${(props) => props.theme.spacing(10)}px;\r\n }\r\n background-color: #f9f8fd;\r\n`;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n card: {\r\n boxShadow: \"0 1px 5px 2px rgba(0, 0, 0, .2)\",\r\n padding: \"1rem\",\r\n },\r\n signInButton: {\r\n color: \"white\",\r\n backgroundColor: \"#1D88E4\",\r\n \"&:hover\": { backgroundColor: \"#176dea\" },\r\n },\r\n\r\n forgotButton: {\r\n marginTop: \"1.2rem\",\r\n color: \"#1D88E4\",\r\n \"&:hover\": { color: \"#176dea\", background: \"none\" },\r\n },\r\n}));\r\n\r\nfunction SignIn() {\r\n const dispatch = useDispatch();\r\n\r\n const classes = useStyles();\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n Welcome back!\r\n \r\n \r\n Sign in to your account to continue\r\n \r\n\r\n {\r\n try {\r\n await dispatch(\r\n signIn({\r\n username: values.email,\r\n password: values.password,\r\n type: \"partner\",\r\n })\r\n );\r\n } catch (error) {\r\n const message = error.message || \"Something went wrong\";\r\n\r\n setStatus({ success: false });\r\n setErrors({ submit: message });\r\n setSubmitting(false);\r\n }\r\n }}\r\n >\r\n {({\r\n errors,\r\n handleBlur,\r\n handleChange,\r\n handleSubmit,\r\n isSubmitting,\r\n touched,\r\n values,\r\n }) => (\r\n
\r\n {errors.submit && (\r\n \r\n {errors.submit}\r\n \r\n )}\r\n {!auth?.isSuccess && auth?.message === \"Wrong Password\" && (\r\n \r\n The password you entered is incorrect. Please try again.\r\n \r\n )}\r\n {!auth?.isSuccess && auth?.message === \"User Not Exist\" && (\r\n \r\n No users found with this email address. Please check your\r\n email address.\r\n \r\n )}\r\n {!auth?.isSuccess && auth?.message === \"User Not Active\" && (\r\n \r\n The account with this email is deactivated. Contact to{\" \"}\r\n {\r\n window.location = \"mailto:Partner.Portal@bromcom.com\";\r\n e.preventDefault();\r\n }}\r\n >\r\n Partner.Portal@bromcom.com\r\n \r\n \r\n )}\r\n \r\n \r\n {/* \r\n }\r\n label=\"Remember me\"\r\n /> */}\r\n \r\n \r\n Sign in\r\n \r\n \r\n Forgot password\r\n \r\n \r\n \r\n )}\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default SignIn;\r\n","import { Box, Dialog, DialogContent } from \"@material-ui/core\";\r\nimport { makeStyles } from \"@material-ui/styles\";\r\n\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n container: {\r\n minHeight: \"530px\",\r\n padding: \"30px\",\r\n },\r\n cancelIconContainer: {\r\n position: \"relative\",\r\n },\r\n cancelIcon: {\r\n position: \"absolute\",\r\n right: \"10px\",\r\n top: \"10px\",\r\n cursor: \"pointer\",\r\n \"&:hover\": {\r\n opacity: \"0.6\",\r\n },\r\n },\r\n}));\r\nfunction CustomModal({ open, handleClose, bp, children }) {\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nexport default CustomModal;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport styled from \"styled-components/macro\";\r\nimport { Link } from \"react-router-dom\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport * as Yup from \"yup\";\r\nimport { Formik } from \"formik\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\nimport { signUp } from \"../../services/authService\";\r\n\r\nimport AppLogo from \"../../components/AppLogo\";\r\nimport ReCAPTCHA from \"react-google-recaptcha\";\r\n\r\nimport CustomModal from \"../../components/CustomModal\";\r\n\r\nimport {\r\n Button,\r\n Card as MuiCard,\r\n CardContent,\r\n Checkbox,\r\n Paper,\r\n Snackbar,\r\n TextField as MuiTextField,\r\n Typography,\r\n} from \"@material-ui/core\";\r\nimport TrapFocus from \"@mui/material/Unstable_TrapFocus\";\r\n\r\nimport { Alert as MuiAlert } from \"@material-ui/lab\";\r\nimport api from \"../../api/api\";\r\n\r\nconst Alert = styled(MuiAlert)(spacing);\r\n\r\nconst TextField = styled(MuiTextField)(spacing);\r\n\r\nconst Card = styled(MuiCard)(spacing);\r\n\r\nconst Wrapper = styled(Paper)`\r\n padding: ${(props) => props.theme.spacing(6)}px;\r\n\r\n ${(props) => props.theme.breakpoints.up(\"md\")} {\r\n padding: ${(props) => props.theme.spacing(10)}px;\r\n }\r\n\r\n background-color: #f9f8fd;\r\n`;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n card: {\r\n maxWidth: \"520px\",\r\n padding: \"1rem\",\r\n boxShadow: \"0 1px 5px 2px rgba(0, 0, 0, .2)\",\r\n },\r\n\r\n signUpButton: {\r\n color: \"white\",\r\n backgroundColor: \"#1D88E4\",\r\n \"&:hover\": { backgroundColor: \"#176dea\" },\r\n },\r\n\r\n recaptchaWrapper: {\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n justifyContent: \"center\",\r\n alignItems: \"center\",\r\n marginBottom: \"15px\",\r\n\r\n [theme.breakpoints.down(\"400\")]: {\r\n justifyContent: \"flex-start\",\r\n \"& >*\": {\r\n transformOrigin: \"0 0\",\r\n width: \"200px\",\r\n transform: \"scale(0.8)\",\r\n },\r\n },\r\n\r\n [theme.breakpoints.down(\"350\")]: {\r\n justifyContent: \"flex-start\",\r\n \"& >*\": {\r\n transformOrigin: \"0 0\",\r\n transform: \"scale(0.72)\",\r\n },\r\n },\r\n },\r\n\r\n recaptcha: {\r\n marginBottom: \"10px\",\r\n },\r\n recaptchaMessage: {\r\n width: \"100%\",\r\n },\r\n termsAndCondMessage: {\r\n marginBottom: \"15px\",\r\n },\r\n clickHere: {\r\n cursor: \"pointer\",\r\n borderBottom: \"1px solid black\",\r\n },\r\n}));\r\n\r\nconst TermsAndCondContainer = styled.div`\r\n display: flex;\r\n align-items: flex-start;\r\n margin-bottom: 15px; \r\n`;\r\nconst TermsAndCondText = styled.p`\r\n margin: 0;\r\n margin-left: 0px;\r\n margin-top: 2px;\r\n color: #565b73;\r\n`;\r\n\r\nconst TermsAndCondLink = styled(Link)`\r\n text-decoration: underline;\r\n color: #565b73;\r\n &:hover {\r\n color: #383a42;\r\n }\r\n`;\r\n\r\nconst TermsAndCondModalContainer = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n`;\r\n\r\nconst TermsAndCondModalTitle = styled.h3`\r\n font-size: 16px;\r\n font-weight: bold;\r\n padding-bottom: 10px;\r\n border-bottom: 1px solid #ddd;\r\n`;\r\nconst TermsAndCondModalText = styled.div`\r\n font-size: 14px;\r\n height: 400px;\r\n overflow-y: scroll;\r\n margin-bottom: 10px;\r\n`;\r\n\r\nconst TermsAndCondModalButtons = styled.div`\r\n padding-top: 20px;\r\n border-top: 1px solid #ddd;\r\n display: flex;\r\n justify-content: space-between;\r\n`;\r\n\r\nconst TermsAndCondCancelButton = styled(Button)`\r\n background-color: white;\r\n border: 1px solid #ddd;\r\n color: #5c5c5c;\r\n font-size: 14px;\r\n width: 48%;\r\n text-transform: Capitalize;\r\n`;\r\n\r\nconst TermsAndCondAcceptButton = styled(Button)`\r\n background-color: #1d88e4;\r\n color: white;\r\n font-size: 14px;\r\n color: white;\r\n width: 48%;\r\n text-transform: Capitalize;\r\n\r\n &:hover {\r\n background-color: #176dea;\r\n }\r\n`;\r\n\r\nconst initialValues = {\r\n organizationName: \"\",\r\n firstName: \"\",\r\n lastName: \"\",\r\n email: \"\",\r\n phoneNumber: \"\",\r\n websiteAddress: \"\",\r\n rolePosition: \"\",\r\n noOfBromcomCustomers: \"\",\r\n services: \"\",\r\n plannedIntegrations: \"\",\r\n};\r\n\r\nconst validationSchema = Yup.object().shape({\r\n organizationName: Yup.string().required(\"Required\"),\r\n firstName: Yup.string().required(\"Required\"),\r\n lastName: Yup.string().required(\"Required\"),\r\n email: Yup.string()\r\n .email()\r\n .matches(\r\n /^([\\w-\\.]+@(?!gmail.com)(?!yahoo.com)(?!hotmail.com)(?!outlook.com)([\\w-]+\\.)+[\\w-]{2,4})?$/,\r\n \"free email services will not be allowed.\"\r\n )\r\n .required(\"Required\"),\r\n phoneNumber: Yup.string()\r\n .required(\"Required\")\r\n .matches(\r\n /^((\\\\+[1-9]{1,4}[ \\\\-]*)|(\\\\([0-9]{2,3}\\\\)[ \\\\-]*)|([0-9]{2,4})[ \\\\-]*)*?[0-9]{3,4}?[ \\\\-]*[0-9]{3,4}?$/,\r\n \"telephone Number is not valid\"\r\n ),\r\n websiteAddress: Yup.string()\r\n .matches(\r\n /((https?):\\/\\/)?(www.)?[a-z0-9]+(\\.[a-z]{2,}){1,3}(#?\\/?[a-zA-Z0-9#]+)*\\/?(\\?[a-zA-Z0-9-_]+=[a-zA-Z0-9-%]+&?)?$/,\r\n \"enter correct url\"\r\n )\r\n .required(\"Required\"),\r\n rolePosition: Yup.string().required(\"Required\"),\r\n noOfBromcomCustomers: Yup.string().required(\"Required\"),\r\n services: Yup.string().required(\"Required\"),\r\n plannedIntegrations: Yup.string().required(\"Required\"),\r\n});\r\n\r\nfunction SignUp() {\r\n const [openSnackBar, setOpenSnackBar] = useState(false);\r\n const [partnerData, setPartnerData] = useState(null);\r\n const [formValues, setsFormValues] = useState(null);\r\n const [isVerified, setIsVerified] = useState(false);\r\n const [showRecaptchaMessage, setShowRecaptchaMessage] = useState(false);\r\n const [enteredEmail, setEnteredEmail] = useState(\"\");\r\n const [enteredOrgName, setEnteredOrgName] = useState(\"\");\r\n const [enteredWebsite, setEnteredWebsite] = useState(\"\");\r\n const [showTermsAndCondModal, setShowTermsAndCondModal] = useState(false);\r\n const [acceptTermsAndCond, setAcceptTermsAndCond] = useState(false);\r\n const [isTouched, setIsTouched] = useState(false);\r\n const [modalContent, setModalContent] = useState(null);\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const classes = useStyles();\r\n\r\n const recaptchaChangeHandler = () => {\r\n setIsVerified(true);\r\n setShowRecaptchaMessage(false);\r\n };\r\n\r\n const handleShowTermsAndCondModal = () => {\r\n setShowTermsAndCondModal(true);\r\n };\r\n const handleCloseTermsAndCondModal = () => {\r\n setShowTermsAndCondModal(false);\r\n };\r\n\r\n const handleClose = (event, reason) => {\r\n if (reason === \"clickaway\") {\r\n return;\r\n }\r\n setOpenSnackBar(false);\r\n };\r\n\r\n const handleAcceptTermsAndCond = () => {\r\n setAcceptTermsAndCond(true);\r\n setShowTermsAndCondModal(false);\r\n };\r\n\r\n const handleTouched = () => {\r\n setIsTouched(true);\r\n };\r\n\r\n const handleCheckAcceptTermsAndCond = (e) => {\r\n if (e.target.checked) {\r\n setAcceptTermsAndCond(true);\r\n } else {\r\n setAcceptTermsAndCond(false);\r\n }\r\n };\r\n\r\n const handlePermission = () => {\r\n api\r\n .post(\"api/Partner/PermissionRequest?v=1.0\", {\r\n organizationName: formValues.organizationName.toLowerCase(),\r\n firstName: formValues.firstName,\r\n lastName: formValues.lastName,\r\n phone: formValues.phoneNumber,\r\n email: formValues.email.toLowerCase(),\r\n emailDomain: formValues.email.split(\"@\")[1].toLowerCase(),\r\n website: formValues.websiteAddress,\r\n role: formValues.rolePosition,\r\n servicesProvidedToBC: formValues.services,\r\n plannedIntegrations: formValues.plannedIntegrations,\r\n customerCount: formValues.noOfBromcomCustomers,\r\n partnerStatusId: 0,\r\n })\r\n .then((response) => {\r\n if (response.data.isSuccess) {\r\n setOpenSnackBar(true);\r\n }\r\n })\r\n .catch((error) => console.log(error.message));\r\n };\r\n\r\n useEffect(() => {\r\n api\r\n .get(`api/UserInteraction/TermsAndConditions?&v=1.0`, {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setModalContent(response.data.data);\r\n }\r\n });\r\n }, []);\r\n\r\n return (\r\n <>\r\n {showTermsAndCondModal && (\r\n \r\n \r\n \r\n Terms and Conditions\r\n \r\n \r\n {ReactHtmlParser(modalContent)}\r\n \r\n\r\n \r\n \r\n Cancel\r\n \r\n \r\n Agree\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Partner Registration\r\n \r\n \r\n Register by completing the registration form below.\r\n \r\n\r\n {\r\n if (isVerified && acceptTermsAndCond) {\r\n setEnteredEmail(values.email.toLowerCase());\r\n setEnteredWebsite(values.websiteAddress.toLowerCase());\r\n setEnteredOrgName(values.organizationName.toLowerCase());\r\n setsFormValues(values);\r\n\r\n try {\r\n const response = await signUp({\r\n organizationName: values.organizationName,\r\n firstName: values.firstName,\r\n lastName: values.lastName,\r\n phone: values.phoneNumber,\r\n email: values.email.toLowerCase(),\r\n emailDomain: values.email.split(\"@\")[1].toLowerCase(),\r\n website: values.websiteAddress,\r\n role: values.rolePosition,\r\n servicesProvidedToBC: values.services,\r\n plannedIntegrations: values.plannedIntegrations,\r\n customerCount: values.noOfBromcomCustomers,\r\n partnerStatusId: 0,\r\n partnerLogoPath: \"\",\r\n });\r\n\r\n if (response.data === 0) {\r\n setPartnerData(response);\r\n\r\n setStatus({ success: false });\r\n setSubmitting(false);\r\n resetForm();\r\n } else {\r\n setPartnerData(response);\r\n setStatus({ success: false });\r\n\r\n setSubmitting(false);\r\n }\r\n } catch (error) {\r\n const message = error.message || \"Something went wrong\";\r\n\r\n setStatus({ success: false });\r\n setErrors({ submit: message });\r\n setSubmitting(false);\r\n }\r\n } else {\r\n setShowRecaptchaMessage(true);\r\n }\r\n }}\r\n >\r\n {({\r\n errors,\r\n handleBlur,\r\n handleChange,\r\n handleSubmit,\r\n touched,\r\n values,\r\n isSubmitting,\r\n }) => (\r\n
\r\n {errors.submit && (\r\n \r\n \r\n \r\n {errors.submit}\r\n \r\n \r\n \r\n )}\r\n {partnerData?.data === 0 && (\r\n \r\n \r\n \r\n Registration request is received. Bromcom Partner Team\r\n will respond to your request within 3 working days via\r\n {enteredEmail}\r\n \r\n \r\n \r\n )}\r\n {partnerData?.data === 1 && (\r\n \r\n \r\n \r\n Registration request is pending for the entered\r\n {enteredEmail} or\r\n {enteredOrgName} or\r\n {enteredWebsite}.If you request is\r\n older than 3 working days, please send email to\r\n Partner.Portal@bromcom.com with your details\r\n \r\n \r\n \r\n )}\r\n {partnerData?.data === 2 && (\r\n \r\n \r\n \r\n Already active partner account exists for the entered\r\n {enteredEmail} or\r\n {enteredOrgName} or\r\n {enteredWebsite}. You can send access\r\n request to the account owner by sharing the entered\r\n details during the registration process, if you want to\r\n send the request, please \r\n \r\n click here\r\n \r\n \r\n \r\n \r\n )}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n {showRecaptchaMessage && (\r\n \r\n Captcha is required\r\n \r\n )}\r\n
\r\n
\r\n \r\n \r\n \r\n I accept the{\" \"}\r\n \r\n Bromcom Terms of Services\r\n {\" \"} \r\n \r\n \r\n\r\n {!acceptTermsAndCond && isTouched && (\r\n \r\n You need to accept the terms and conditions\r\n \r\n )}\r\n
\r\n \r\n {isSubmitting ? \"Please wait...\" : \"Submit\"}\r\n \r\n \r\n )}\r\n \r\n
\r\n
\r\n \r\n \r\n Request sent successfully!\r\n \r\n \r\n
\r\n \r\n );\r\n}\r\n\r\nexport default SignUp;\r\n","import React, { useState } from \"react\";\r\nimport parse from \"react-html-parser\";\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport styled from \"styled-components/macro\";\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport * as Yup from \"yup\";\r\nimport { Formik } from \"formik\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { resetPassword } from \"../../services/authService\";\r\nimport AppLogo from \"../../components/AppLogo\";\r\nimport { signOut } from \"../../redux/actions/authActions\";\r\n\r\nimport {\r\n Button,\r\n Box,\r\n Card as MuiCard,\r\n CardContent,\r\n Paper,\r\n TextField as MuiTextField,\r\n Tooltip,\r\n Typography,\r\n} from \"@material-ui/core\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport { Alert as MuiAlert } from \"@material-ui/lab\";\r\nimport HelpIcon from \"@material-ui/icons/Help\";\r\nimport { useSnackbar } from \"notistack\";\r\n\r\nconst Alert = styled(MuiAlert)(spacing);\r\n\r\nconst TextField = styled(MuiTextField)(spacing);\r\n\r\nconst Card = styled(MuiCard)(spacing);\r\n\r\nconst Wrapper = styled(Paper)`\r\n padding: ${(props) => props.theme.spacing(6)}px;\r\n\r\n ${(props) => props.theme.breakpoints.up(\"md\")} {\r\n padding: ${(props) => props.theme.spacing(10)}px;\r\n }\r\n background-color: #f9f8fd;\r\n`;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n card: {\r\n boxShadow: \"0 1px 5px 2px rgba(0, 0, 0, .2)\",\r\n padding: \"1rem\",\r\n },\r\n resetButton: {\r\n color: \"white\",\r\n backgroundColor: \"#1D88E4\",\r\n \"&:hover\": { backgroundColor: \"#176dea\" },\r\n },\r\n box: {\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n alignItems: \"center\",\r\n },\r\n icon: {\r\n color: \"red\",\r\n transform: \"scale(.8)\",\r\n },\r\n}));\r\n\r\nfunction useQuery() {\r\n const { search } = useLocation();\r\n\r\n return React.useMemo(() => new URLSearchParams(search), [search]);\r\n}\r\n\r\nconst IconWithTooltip = () => {\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nfunction ResetPassword() {\r\n const history = useHistory();\r\n const [responseMessage, setResponseMessage] = useState(\"\");\r\n\r\n const query = useQuery();\r\n const email = query.get(\"email\");\r\n const token = query.get(\"token\").replaceAll(\" \", \"+\");\r\n\r\n const classes = useStyles();\r\n const dispatch = useDispatch();\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n Reset Password\r\n \r\n \r\n Password requirements:\r\n \r\n \r\n\r\n {\r\n try {\r\n const response = await resetPassword({\r\n email: email,\r\n password: values.password,\r\n confirmPassword: values.passwordConfirmation,\r\n token: token,\r\n });\r\n\r\n if (response.isSuccess) {\r\n dispatch(signOut());\r\n localStorage.removeItem(\"token\");\r\n history.push(\"/\");\r\n enqueueSnackbar(\"Your password has been reset.\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n } else {\r\n setResponseMessage(response.errorMessage);\r\n }\r\n } catch (error) {\r\n const message = error.message || \"Something went wrong\";\r\n\r\n setStatus({ success: false });\r\n setErrors({ submit: message });\r\n setSubmitting(false);\r\n }\r\n }}\r\n >\r\n {({\r\n errors,\r\n handleBlur,\r\n handleChange,\r\n handleSubmit,\r\n isSubmitting,\r\n touched,\r\n values,\r\n }) => (\r\n
\r\n {errors.submit && (\r\n \r\n {errors.submit}\r\n \r\n )}\r\n {responseMessage.trim().length > 0 && (\r\n \r\n {parse(responseMessage)}\r\n \r\n )}\r\n \r\n\r\n \r\n\r\n \r\n \r\n Reset password\r\n \r\n \r\n )}\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default ResetPassword;\r\n","import React, { useState } from \"react\";\r\nimport styled from \"styled-components/macro\";\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport * as Yup from \"yup\";\r\nimport { Formik } from \"formik\";\r\nimport AppLogo from \"../../components/AppLogo\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport {\r\n Button,\r\n Card,\r\n CardContent,\r\n Paper,\r\n TextField as MuiTextField,\r\n Typography,\r\n} from \"@material-ui/core\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport { Alert as MuiAlert } from \"@material-ui/lab\";\r\nimport { forgotPassword } from \"../../services/authService\";\r\n\r\nconst Alert = styled(MuiAlert)(spacing);\r\n\r\nconst TextField = styled(MuiTextField)(spacing);\r\n\r\nconst Wrapper = styled(Paper)`\r\n padding: ${(props) => props.theme.spacing(6)}px;\r\n\r\n ${(props) => props.theme.breakpoints.up(\"md\")} {\r\n padding: ${(props) => props.theme.spacing(10)}px;\r\n }\r\n background-color: #f9f8fd;\r\n`;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n card: {\r\n boxShadow: \"0 1px 5px 2px rgba(0, 0, 0, .2)\",\r\n padding: \"1rem\",\r\n },\r\n signInButton: {\r\n color: \"white\",\r\n backgroundColor: \"#1D88E4\",\r\n \"&:hover\": { backgroundColor: \"#176dea\" },\r\n },\r\n\r\n forgotButton: {\r\n marginTop: \"1.2rem\",\r\n color: \"#1D88E4\",\r\n \"&:hover\": { color: \"#176dea\", background: \"none\" },\r\n },\r\n}));\r\n\r\nfunction ForgotPassword() {\r\n const [isSuccess, setIsSuccess] = useState(false);\r\n const [isSubmitted, setIsSubmitted] = useState(false);\r\n const [enteredEmail, setEnteredEmail] = useState(\"\");\r\n const classes = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n Forgot Password\r\n \r\n \r\n Enter your account email, we'll send you a link reset to your\r\n password\r\n \r\n\r\n {\r\n try {\r\n const response = await forgotPassword(values.email);\r\n console.log(response);\r\n\r\n if (response.isSuccess) {\r\n setIsSuccess(true);\r\n setEnteredEmail(values.email);\r\n }\r\n\r\n setIsSubmitted(true);\r\n setSubmitting(false);\r\n resetForm();\r\n } catch (error) {\r\n const message = error.message || \"Something went wrong\";\r\n\r\n setStatus({ success: false });\r\n setErrors({ submit: message });\r\n setSubmitting(false);\r\n }\r\n }}\r\n >\r\n {({\r\n errors,\r\n handleBlur,\r\n handleChange,\r\n handleSubmit,\r\n isSubmitting,\r\n touched,\r\n values,\r\n }) => (\r\n
\r\n {errors.submit && (\r\n \r\n {errors.submit}\r\n \r\n )}\r\n {isSuccess && isSubmitted && (\r\n \r\n We'have sent to {enteredEmail} \r\n with password reset link.Please click on the provided in the\r\n mail. You will be redirect to password reset page.\r\n \r\n )}\r\n\r\n {!isSuccess && isSubmitted && (\r\n \r\n The email address you entered is not assigned to a\r\n registered user. Please check and try again.\r\n \r\n )}\r\n \r\n \r\n Reset Password\r\n \r\n \r\n )}\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default ForgotPassword;\r\n","import React from \"react\";\r\nimport styled from \"styled-components/macro\";\r\nimport { Link } from \"react-router-dom\";\r\n\r\nimport { Helmet } from \"react-helmet-async\";\r\n\r\nimport { Button as MuiButton, Typography } from \"@material-ui/core\";\r\nimport { spacing } from \"@material-ui/system\";\r\n\r\nconst Button = styled(MuiButton)(spacing);\r\n\r\nconst Wrapper = styled.div`\r\n padding: ${(props) => props.theme.spacing(6)}px;\r\n text-align: center;\r\n background: transparent;\r\n\r\n ${(props) => props.theme.breakpoints.up(\"md\")} {\r\n padding: ${(props) => props.theme.spacing(10)}px;\r\n }\r\n`;\r\n\r\nfunction Page404() {\r\n return (\r\n \r\n \r\n \r\n 404\r\n \r\n \r\n Page not found.\r\n \r\n \r\n The page you are looking for might have been removed.\r\n \r\n\r\n \r\n Return to website\r\n \r\n \r\n );\r\n}\r\n\r\nexport default Page404;\r\n","import React from \"react\";\r\nimport styled from \"styled-components/macro\";\r\nimport { Link } from \"react-router-dom\";\r\n\r\nimport { Helmet } from \"react-helmet-async\";\r\n\r\nimport { Button as MuiButton, Typography } from \"@material-ui/core\";\r\nimport { spacing } from \"@material-ui/system\";\r\n\r\nconst Button = styled(MuiButton)(spacing);\r\n\r\nconst Wrapper = styled.div`\r\n padding: ${(props) => props.theme.spacing(6)}px;\r\n text-align: center;\r\n background: transparent;\r\n\r\n ${(props) => props.theme.breakpoints.up(\"md\")} {\r\n padding: ${(props) => props.theme.spacing(10)}px;\r\n }\r\n`;\r\n\r\nfunction Page500() {\r\n return (\r\n \r\n \r\n \r\n 500\r\n \r\n \r\n Internal server error.\r\n \r\n \r\n The server encountered something unexpected that didn't allow it to\r\n complete the request.\r\n \r\n\r\n \r\n Return to website\r\n \r\n \r\n );\r\n}\r\n\r\nexport default Page500;\r\n","import React from \"react\";\r\nimport styled from \"styled-components/macro\";\r\n\r\nimport { CircularProgress } from \"@material-ui/core\";\r\n\r\nconst Root = styled.div`\r\n justify-content: center;\r\n align-items: center;\r\n display: flex;\r\n min-height: 100%;\r\n`;\r\n\r\nfunction Loader() {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default Loader;\r\n","import React, { useEffect, useState } from \"react\";\r\n\r\nimport { useLocation } from \"react-router-dom\";\r\nimport styled from \"styled-components/macro\";\r\nimport { spacing } from \"@material-ui/system\";\r\n\r\nimport {\r\n Box,\r\n Button as MuiButton,\r\n CircularProgress,\r\n Dialog,\r\n DialogContent,\r\n InputLabel,\r\n FormControl,\r\n MenuItem,\r\n Select,\r\n Typography,\r\n} from \"@material-ui/core\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport api from \"../../api/api\";\r\nimport Loader from \"../../components/Loader\";\r\nimport { Alert } from \"@material-ui/lab\";\r\nimport AppLogo from \"../../components/AppLogo\";\r\nimport { useSnackbar } from \"notistack\";\r\n\r\nconst Button = styled(MuiButton)(spacing);\r\n\r\nconst Centered = styled.div`\r\n width: 100%;\r\n\r\n text-align: center;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n padding: 0 10px 2rem 10px;\r\n margin: 1rem 0;\r\n`;\r\n\r\nconst InnerBox = styled.div`\r\n text-align: center;\r\n display: flex;\r\n justify-content: flex-start;\r\n`;\r\nconst Buttons = styled.div`\r\n display: flex;\r\n`;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n container: {\r\n position: \"absolute\",\r\n top: \"50%\",\r\n left: \"50%\",\r\n transform: \"translate(-50%, -50%)\",\r\n width: \"55%\",\r\n minHeight: \"500px\",\r\n padding: \"2rem\",\r\n background: \"white\",\r\n borderRadius: \"5px\",\r\n boxShadow: \"0 0 5px 1px rgba(0,0,0,.1)\",\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n alignItems: \"center\",\r\n overflow: \"auto\",\r\n [theme.breakpoints.down(\"960\")]: {\r\n width: \"80%\",\r\n padding: \"2rem 0\",\r\n },\r\n },\r\n successButton: {\r\n width: \"120px\",\r\n color: \"white\",\r\n padding: \"5px 20px\",\r\n background: \"#0b990b\",\r\n \"&:hover\": {\r\n background: \"#25b425\",\r\n },\r\n },\r\n rejectButton: {\r\n width: \"120px\",\r\n color: \"white\",\r\n padding: \"5px 20px\",\r\n background: \"#c71414\",\r\n \"&:hover\": {\r\n background: \"#ff0000\",\r\n },\r\n },\r\n popupButtons: {\r\n padding: \"5px\",\r\n marginTop: \"10px\",\r\n },\r\n okButton: {\r\n width: \"80px\",\r\n color: \"white\",\r\n padding: \"5px 20px\",\r\n background: \"#0b990b\",\r\n \"&:hover\": {\r\n background: \"#25b425\",\r\n },\r\n },\r\n cancelButton: {\r\n width: \"80px\",\r\n color: \"white\",\r\n padding: \"5px 20px\",\r\n background: \"#c71414\",\r\n \"&:hover\": {\r\n background: \"#ff0000\",\r\n },\r\n },\r\n infoBoxContainer: {\r\n width: \"100%\",\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n justifyContent: \"center\",\r\n alignItems: \"center\",\r\n },\r\n infoBox: {\r\n width: \"80%\",\r\n },\r\n infoBoxLink: {\r\n marginTop: \"10px\",\r\n textAlign: \"center\",\r\n cursor: \"pointer\",\r\n color: \"blue\",\r\n borderBottom: \"1px solid #0363ff\",\r\n \"&:hover\": {\r\n color: \"#0054db\",\r\n borderBottom: \"1px solid #0054db\",\r\n },\r\n },\r\n}));\r\n\r\nfunction Roles({ close, handleApprove, isSending }) {\r\n const classes = useStyles();\r\n const [roles, setRoles] = React.useState([]);\r\n const [selectedRoles, setSelectedRoles] = React.useState(\"\");\r\n\r\n const handleOk = () => {\r\n handleApprove(selectedRoles);\r\n };\r\n const handleCancel = () => {\r\n close();\r\n };\r\n const handleChange = (event) => {\r\n setSelectedRoles(event.target.value);\r\n };\r\n\r\n useEffect(() => {\r\n api\r\n .get(\"api/User/Roles?v=1.0\")\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setRoles(response.data.data);\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error.message);\r\n });\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n Roles\r\n \r\n {roles.map((role) => (\r\n \r\n {role?.description}\r\n \r\n ))}\r\n \r\n \r\n\r\n \r\n \r\n {isSending ? (\r\n \r\n ) : (\r\n \"OK\"\r\n )}\r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nfunction useQuery() {\r\n const { search } = useLocation();\r\n return React.useMemo(() => new URLSearchParams(search), [search]);\r\n}\r\n\r\nfunction PartnerPermissionRequest() {\r\n const [info, setInfo] = useState({});\r\n const [open, setOpen] = useState(false);\r\n const [partner, setPartner] = useState(\"\");\r\n\r\n const [isLoading, setIsLoading] = useState(true);\r\n const [error, setError] = useState(null);\r\n\r\n const [isSending, setIsSending] = useState(false);\r\n const [isSendingReject, setIsSendingReject] = useState(false);\r\n\r\n const classes = useStyles();\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const query = useQuery();\r\n const email = query.get(\"email\");\r\n let token = query.get(\"token\");\r\n\r\n if (!email || !token) {\r\n window.location.href = \"/\";\r\n } else {\r\n token = token.replaceAll(\" \", \"+\");\r\n }\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleApprove = (roles) => {\r\n if (roles) {\r\n setIsSending(true);\r\n api\r\n .post(\"api/Partner/PermissionApprove?v=1.0\", {\r\n email: partner?.registerForm?.email,\r\n token: partner?.token,\r\n roles: [roles],\r\n })\r\n .then((response) => {\r\n if (response.data.isSuccess) {\r\n setInfo({\r\n message: \"Successfull\",\r\n alertMesage: \"success\",\r\n result: \"successfull\",\r\n });\r\n setIsSending(false);\r\n handleClose();\r\n }\r\n })\r\n .catch((error) => {\r\n setError(error.message);\r\n setIsSending(false);\r\n handleClose();\r\n });\r\n } else {\r\n enqueueSnackbar(\"Please select a role\", {\r\n variant: \"warning\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n api\r\n .post(\"api/Partner/PermissionVerify?v=1.0\", {\r\n email: email,\r\n token: token,\r\n })\r\n .then((response) => {\r\n if (response.data.isSuccess) {\r\n setPartner(response.data.data);\r\n setIsLoading(false);\r\n setInfo({\r\n message: \"\",\r\n alertMesage: \"\",\r\n result: \"success\",\r\n });\r\n } else if (\r\n (response.data.errorMessage = \"Permission Request Not exist\")\r\n ) {\r\n setInfo({\r\n message: \"Permission Request Not exist\",\r\n alertMesage: \"error\",\r\n result: \"request not exist\",\r\n });\r\n setIsLoading(false);\r\n }\r\n })\r\n .catch((error) => {\r\n setError(error.message);\r\n setIsLoading(false);\r\n });\r\n }, []);\r\n\r\n const handleApprovePartnerRequest = () => {\r\n setOpen(true);\r\n };\r\n const handleRejectPartnerRequest = () => {\r\n setIsSendingReject(true);\r\n api\r\n .post(\"api/Partner/PermissionReject?v=1.0\", {\r\n email: partner?.registerForm?.email,\r\n token: partner?.token,\r\n })\r\n .then((response) => {\r\n setInfo({\r\n message: \"Rejected\",\r\n alertMessage: \"warning\",\r\n result: \"rejected\",\r\n });\r\n setIsSendingReject(false);\r\n })\r\n .catch((error) => {\r\n setError(error.message);\r\n setIsSendingReject(false);\r\n });\r\n };\r\n\r\n if (isLoading) return ;\r\n if (error) return
{error}
;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Partner Permission Request\r\n \r\n \r\n {info.result === \"request not exist\" ? (\r\n \r\n \r\n {info.message}\r\n \r\n {\r\n window.location = \"/\";\r\n }}\r\n >\r\n Click to go to homepage\r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n Organization:\r\n \r\n \r\n {partner?.registerForm?.organizationName}\r\n \r\n \r\n \r\n \r\n First Name:\r\n \r\n \r\n {partner?.registerForm?.firstName}\r\n \r\n \r\n \r\n \r\n Last Name:\r\n \r\n \r\n {partner?.registerForm?.lastName}\r\n \r\n \r\n \r\n \r\n Email:\r\n \r\n \r\n {partner?.registerForm?.email}\r\n \r\n \r\n \r\n \r\n Telephone Number :\r\n \r\n \r\n {partner?.registerForm?.phone}\r\n \r\n \r\n \r\n \r\n Website:\r\n \r\n \r\n {partner?.registerForm?.webSite}\r\n \r\n \r\n \r\n \r\n Role:\r\n \r\n \r\n {partner?.registerForm?.role}\r\n \r\n \r\n \r\n \r\n No of Bromcom Customers:\r\n \r\n \r\n {partner?.registerForm?.customerCount}\r\n \r\n \r\n \r\n \r\n Services Provided to Bromcom Customers:\r\n \r\n \r\n {partner?.registerForm?.servicesProvidedToBC}\r\n \r\n \r\n \r\n \r\n Planned Integrations:\r\n \r\n \r\n {partner?.registerForm?.plannedIntegrations}\r\n \r\n \r\n \r\n )}\r\n\r\n {info.result === \"success\" && (\r\n \r\n \r\n Approve\r\n \r\n \r\n {isSendingReject ? (\r\n \r\n ) : (\r\n \"Reject\"\r\n )}\r\n \r\n \r\n )}\r\n\r\n {info.result === \"successfull\" && (\r\n \r\n \r\n {info.message}\r\n \r\n {\r\n window.location = \"/\";\r\n }}\r\n >\r\n Click to go to homepage\r\n \r\n \r\n )}\r\n\r\n {info.result === \"rejected\" && (\r\n \r\n \r\n {info.message}\r\n \r\n {\r\n window.location = \"/\";\r\n }}\r\n >\r\n Click to go to homepage\r\n \r\n \r\n )}\r\n\r\n {open && (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default PartnerPermissionRequest;\r\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { LogLevel } from \"@azure/msal-browser\";\r\n\r\n/**\r\n * Configuration object to be passed to MSAL instance on creation.\r\n * For a full list of MSAL.js configuration parameters, visit:\r\n * https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-browser/docs/configuration.md\r\n */\r\n\r\nexport const msalConfig = {\r\n auth: {\r\n clientId: process.env.REACT_APP_CLIENT_ID,\r\n authority: process.env.REACT_APP_AUTHORITY,\r\n redirectUri: process.env.REACT_APP_REDIRECT_URI,\r\n },\r\n cache: {\r\n cacheLocation: \"localStorage\", // This configures where your cache will be stored\r\n storeAuthStateInCookie: true, // Set this to \"true\" if you are having issues on IE11 or Edge\r\n },\r\n system: {\r\n loggerOptions: {\r\n loggerCallback: (level, message, containsPii) => {\r\n if (containsPii) {\r\n return;\r\n }\r\n switch (level) {\r\n case LogLevel.Error:\r\n console.error(message);\r\n return;\r\n case LogLevel.Info:\r\n console.info(message);\r\n return;\r\n case LogLevel.Verbose:\r\n console.debug(message);\r\n return;\r\n case LogLevel.Warning:\r\n console.warn(message);\r\n return;\r\n }\r\n },\r\n },\r\n },\r\n};\r\n\r\n/**\r\n * Scopes you add here will be prompted for user consent during sign-in.\r\n * By default, MSAL.js will add OIDC scopes (openid, profile, email) to any login request.\r\n * For more information about OIDC scopes, visit:\r\n * https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-permissions-and-consent#openid-connect-scopes\r\n */\r\nexport const loginRequest = {\r\n scopes: [\"User.Read\"],\r\n};\r\n\r\n/**\r\n * Add here the scopes to request when obtaining an access token for MS Graph API. For more information, see:\r\n * https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-browser/docs/resources-and-scopes.md\r\n */\r\nexport const graphConfig = {\r\n graphMeEndpoint: \"https://graph.microsoft.com/v1.0/me\",\r\n};\r\n","import React from \"react\";\r\nimport { useMsal } from \"@azure/msal-react\";\r\nimport { loginRequest } from \"../../authConfig\";\r\nimport { Button } from \"@material-ui/core\";\r\nimport { makeStyles } from \"@material-ui/core\";\r\nimport logo from \"../../vendor/logo.png\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n signInButton: {\r\n border: \"2px solid #01bcf3\",\r\n color: \"#01bcf3\",\r\n \"&:hover\": { backgroundColor: \"#e2f8ff\" },\r\n },\r\n}));\r\n\r\nexport const SignInButton = () => {\r\n const { instance } = useMsal();\r\n const classes = useStyles();\r\n\r\n const handleLogin = () => {\r\n instance.loginRedirect(loginRequest).catch((e) => {\r\n console.log(e);\r\n });\r\n };\r\n return (\r\n
\r\n
handleLogin()}>\r\n \r\n
\r\n
\r\n );\r\n};\r\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAdFJREFUWIXt2MtKHEEUxvHvnK6ei4yjjogak0ASoovRhYLYNW4SMG/gEwg+g1nlAfIS2Us2IYSAG+MzqCiKFxzEywgiOCbTXV2VZRzHJDMpJ21C/XfdUKd+TTd004DrP4+S2vjF8npuI+qaqpqM1ERSkxeE4IJ+la8zifYilsXOt2fjF5yREQkJolIN3mNDhJUYAP9+xl0A6cnn3WFlhDr3cgsRkVTERQ2mFQXAtxveNHBk6eBBxfilGgkZwwti4skY7Bsi7APoM+Fslfx5O04TQLlYzq52Z14reIEGgoj9PABs3fXOTdYALAzqwWot8yYJzG018ZgmmwPa5oC2OaBtDmjbvQc2vOqGspVy/3k42uqgnECZFVped7PjG8cNwMOvfY9OOgprrQ7WJpytpFLv/1j2o7oP1nt/ix3QNge0zQFtc0Db/j1gVV2eZnX4Lq2jTTbaJIG6XsO7+MvL4iWAuevniovrqbNc78SV8EsKHBhARuQ91AS0+/+T9fTpD5ud26InSAtzdEqptwYUKPJ6DABQ6+PNTGfdorZefvHT3sAhd8iIWWpiGcObjJjTMPTTnf8q8Fc9/bjz/CzdFSigFINlDB6LmdnM5BMzuVy39R25goAtpYy0KwAAAABJRU5ErkJggg==\"","import React, { useState, useEffect } from \"react\";\r\nimport {\r\n AuthenticatedTemplate,\r\n UnauthenticatedTemplate,\r\n useMsal,\r\n} from \"@azure/msal-react\";\r\n\r\nimport { SignInButton } from \"./SignInButton\";\r\nimport { signIn } from \"../../redux/actions/authActions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { Redirect } from \"react-router-dom\";\r\n\r\nconst ProfileContent = () => {\r\n const { accounts, instance } = useMsal();\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const dispatch = useDispatch();\r\n const [error, setError] = useState(\"\");\r\n\r\n useEffect(() => {\r\n const loginFc = async () => {\r\n try {\r\n await dispatch(\r\n signIn({\r\n username: accounts[0].username,\r\n type: \"bromcom\",\r\n })\r\n );\r\n } catch (error) {\r\n setError(error.message);\r\n }\r\n };\r\n\r\n loginFc();\r\n }, []);\r\n\r\n function handleLogout(instance) {\r\n instance\r\n .logoutRedirect({\r\n postLogoutRedirectUri: \"/admin\",\r\n mainWindowRedirectUri: \"/admin\",\r\n })\r\n .catch((e) => {\r\n console.error(e);\r\n });\r\n }\r\n\r\n if (auth?.isLoading && !error) {\r\n return

Redirecting...

;\r\n }\r\n\r\n if (error) {\r\n return

{error}

;\r\n }\r\n\r\n if (auth?.isSuccess) {\r\n return ;\r\n } else {\r\n setTimeout(() => {\r\n handleLogout(instance);\r\n }, 2000);\r\n return

No bromcom account exits for this mail

;\r\n }\r\n};\r\n\r\nexport default function Office365Page() {\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","import IconButton from \"@material-ui/core/IconButton\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\n\r\nimport ClearIcon from \"@material-ui/icons/Clear\";\r\nimport SearchIcon from \"@material-ui/icons/Search\";\r\n\r\nimport { GridToolbarFilterButton } from \"@mui/x-data-grid\";\r\nimport { createMuiTheme as createTheme } from \"@material-ui/core/styles\";\r\nimport { makeStyles } from \"@material-ui/styles\";\r\n\r\nconst defaultTheme = createTheme();\r\nconst useStyles = makeStyles(\r\n (theme) => ({\r\n root: {\r\n padding: theme.spacing(0.5, 0.5, 0),\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"flex-start\",\r\n flexWrap: \"wrap\",\r\n },\r\n textField: {\r\n [theme.breakpoints.down(\"xs\")]: {\r\n width: \"100%\",\r\n },\r\n margin: theme.spacing(1, 0.5, 1.5),\r\n \"& .MuiSvgIcon-root\": {\r\n marginRight: theme.spacing(0.5),\r\n },\r\n \"& .MuiInput-underline:before\": {\r\n borderBottom: `1px solid ${theme.palette.divider}`,\r\n },\r\n },\r\n }),\r\n { defaultTheme }\r\n);\r\n\r\nfunction QuickSearchToolbar(props) {\r\n const classes = useStyles();\r\n\r\n return (\r\n
\r\n
\r\n \r\n
\r\n ,\r\n endAdornment: (\r\n \r\n \r\n \r\n ),\r\n }}\r\n />\r\n
\r\n );\r\n}\r\n\r\nexport default QuickSearchToolbar;\r\n","import React from \"react\";\r\n\r\nimport { DataGrid } from \"@mui/x-data-grid\";\r\nimport { Box, Button } from \"@material-ui/core\";\r\nimport { makeStyles } from \"@material-ui/styles\";\r\n\r\nimport ArrowBackIcon from \"@material-ui/icons/ArrowBack\";\r\nimport Moment from \"react-moment\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n container: {\r\n width: \"100%\",\r\n },\r\n backButton: {\r\n marginTop: \"20px\",\r\n },\r\n}));\r\n\r\nexport default function ActivityLogTable({ activityLogs, handleShowLogs }) {\r\n const classes = useStyles();\r\n const cols = [\r\n {\r\n field: \"id\",\r\n headerName: \"ID\",\r\n width: 80,\r\n },\r\n {\r\n field: \"schoolId\",\r\n headerName: \"SchoolId\",\r\n flex: 1,\r\n minWidth: 200,\r\n },\r\n {\r\n field: \"endPointName\",\r\n headerName: \"Scope\",\r\n flex: 1,\r\n minWidth: 150,\r\n },\r\n {\r\n field: \"method\",\r\n headerName: \"Method\",\r\n width: 80,\r\n },\r\n {\r\n field: \"isAuthenticatedDescription\",\r\n headerName: \"IsAuthenticated\",\r\n flex: 1,\r\n minWidth: 150,\r\n },\r\n {\r\n field: \"instant\",\r\n headerName: \"Instant\",\r\n flex: 1,\r\n minWidth: 150,\r\n renderCell: (params) => (\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 onClick={() => handleShowLogs()}\r\n >\r\n Back\r\n \r\n
\r\n );\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\n\r\nimport api from \"../../api/api\";\r\nimport Loader from \"../../components/Loader\";\r\n\r\nimport ActivityLogTable from \"../../components/tables/ActivityLogTable\";\r\n\r\nfunction ActivityLog({ data, handleShowLogs }) {\r\n const [logs, setLogs] = useState([]);\r\n const [isLoading, setIsLoading] = useState(true);\r\n const [error, setError] = useState(null);\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n useEffect(() => {\r\n api\r\n .get(\r\n `api/ActivityLog/${data?.applicationVersionId}/${data?.id}/List?v=1.0`,\r\n\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setLogs(response.data.data);\r\n setIsLoading(false);\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setError(error.message);\r\n });\r\n }, []);\r\n\r\n if (error) return
{error}
;\r\n return (\r\n <>\r\n {isLoading && }\r\n {!isLoading && (\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default ActivityLog;\r\n","import React, { useState } from \"react\";\r\nimport { IconButton, Tooltip } from \"@material-ui/core\";\r\nimport { DataGrid } from \"@mui/x-data-grid\";\r\nimport DescriptionIcon from \"@material-ui/icons/Description\";\r\n\r\nimport ActivityLog from \"../../pages/pages/ActivityLog\";\r\n\r\nexport default function PartnerAccountsAppTable({ schools }) {\r\n const [selectedData, setSelectedData] = useState(false);\r\n const [showLogs, setShowLogs] = useState(false);\r\n const cols = [\r\n {\r\n field: \"id\",\r\n headerName: \"School Id\",\r\n flex: 0.2,\r\n minWidth: 100,\r\n },\r\n {\r\n field: \"schoolName\",\r\n headerName: \"School Name\",\r\n flex: 0.7,\r\n minWidth: 150,\r\n },\r\n {\r\n field: \"version\",\r\n headerName: \"Version\",\r\n width: 100,\r\n },\r\n\r\n {\r\n field: \"action\",\r\n headerName: \"Action\",\r\n with: 100,\r\n renderCell: (params) => {\r\n const handleShowDetail = () => {\r\n setShowLogs(true);\r\n setSelectedData(params.row);\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 const handleShowLogs = () => {\r\n setShowLogs(false);\r\n };\r\n\r\n return (\r\n <>\r\n {showLogs && (\r\n \r\n )}\r\n {!showLogs && (\r\n
\r\n {\r\n setSelectedData(e.row);\r\n setShowLogs(true);\r\n }}\r\n hideFooter\r\n />\r\n
\r\n )}\r\n \r\n );\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\n\r\nimport { Box } from \"@material-ui/core\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport api from \"../../api/api\";\r\nimport Loader from \"../../components/Loader\";\r\nimport RegisteredSchoolsTable from \"../../components/tables/RegisteredSchoolsTable\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n registeredSchoolContainer: {\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n alignItems: \"center\",\r\n padding: \"30px\",\r\n minHeight: \"550px\",\r\n },\r\n}));\r\n\r\nfunction RegisteredSchools({ selectedApp }) {\r\n const [schools, setSchools] = useState([]);\r\n const [isLoading, setIsLoading] = useState(true);\r\n const [error, setError] = useState(null);\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const classes = useStyles();\r\n\r\n useEffect(() => {\r\n api\r\n .get(`api/RegisteredSchool/${selectedApp?.appId}/List?v=1.0`, {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setSchools(response.data.data);\r\n setIsLoading(false);\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setError(error.message);\r\n });\r\n }, []);\r\n\r\n if (error) return
{error}
;\r\n\r\n return (\r\n \r\n {isLoading && }\r\n {!isLoading && }\r\n \r\n );\r\n}\r\n\r\nexport default RegisteredSchools;\r\n","import React from \"react\";\r\n\r\nimport { Checkbox } from \"@material-ui/core\";\r\n\r\nimport { DataGrid } from \"@mui/x-data-grid\";\r\n\r\nexport default function PermissionTable({ permissions }) {\r\n const cols = [\r\n {\r\n field: \"name\",\r\n headerName: \"Endpoint Name\",\r\n flex: 1,\r\n minWidth: 150,\r\n },\r\n {\r\n field: \"get\",\r\n headerName: \"Get\",\r\n width: 100,\r\n align: \"center\",\r\n renderCell: (params) => {\r\n if (!params.row.get) {\r\n return \"\";\r\n } else {\r\n return (\r\n \r\n );\r\n }\r\n },\r\n },\r\n\r\n {\r\n field: \"post\",\r\n headerName: \"Post\",\r\n sortable: false,\r\n width: 100,\r\n align: \"center\",\r\n renderCell: (params) => {\r\n if (!params.row.post) {\r\n return \"\";\r\n } else {\r\n return (\r\n \r\n );\r\n }\r\n },\r\n },\r\n {\r\n field: \"delete\",\r\n headerName: \"Delete\",\r\n sortable: false,\r\n width: 100,\r\n align: \"center\",\r\n renderCell: (params) => {\r\n if (!params.row.delete) {\r\n return \"\";\r\n } else {\r\n return (\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","import React, { useEffect, useState } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport styled from \"styled-components/macro\";\r\n\r\nimport {\r\n Box,\r\n Button,\r\n Dialog,\r\n DialogContent,\r\n DialogTitle,\r\n Grid,\r\n MenuItem,\r\n Select,\r\n TextField,\r\n Tooltip,\r\n Typography,\r\n} from \"@material-ui/core\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport api from \"../../api/api\";\r\nimport Loader from \"../../components/Loader\";\r\nimport PermissionTable from \"../../components/tables/PermissionTable\";\r\nimport LoopIcon from \"@material-ui/icons/Loop\";\r\nimport FileCopyIcon from \"@material-ui/icons/FileCopy\";\r\nimport SaveIcon from \"@material-ui/icons/Save\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { useSnackbar } from \"notistack\";\r\n\r\nconst Buttons = styled.div`\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\r\n`;\r\n\r\nconst Text = styled.span`\r\n font-weight: bold;\r\n`;\r\n\r\nconst GridItem = styled(Grid)`\r\n text-align: right;\r\n ${(props) => props.theme.breakpoints.down(\"md\")} {\r\n text-align: left;\r\n }\r\n`;\r\n\r\nconst StyledTextField = styled(TextField)`\r\n width: 280px;\r\n ${(props) => props.theme.breakpoints.down(\"md\")} {\r\n width: 100%;\r\n }\r\n`;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n permissionContainer: {\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n alignItems: \"center\",\r\n padding: \"30px 20px\",\r\n },\r\n permissionContent: {\r\n width: \"100%\",\r\n },\r\n\r\n notesContainer: {\r\n display: \"flex\",\r\n },\r\n\r\n permissionTable: {\r\n marginTop: \"10px\",\r\n height: \"450px\",\r\n \"@media (max-width: 600px)\": {\r\n marginTop: \"50px\",\r\n },\r\n },\r\n\r\n dialogTitleContainer: {\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"center\",\r\n padding: \"0 10px 0 0\",\r\n },\r\n\r\n cancelIcon: {\r\n cursor: \"pointer\",\r\n \"&:hover\": {\r\n opacity: \"0.6\",\r\n },\r\n },\r\n cancelButton: {\r\n background: \"#dbdbdb\",\r\n \"&:hover\": {\r\n background: \"#c4c4c4\",\r\n },\r\n },\r\n confirmButton: {\r\n color: \"white\",\r\n marginRight: \"5px\",\r\n background: \"#0b990b\",\r\n \"&:hover\": {\r\n background: \"#25b425\",\r\n },\r\n },\r\n\r\n icon: {\r\n height: \"25px\",\r\n width: \"25px\",\r\n color: \"#747575\",\r\n borderRadius: \"3px\",\r\n cursor: \"pointer\",\r\n backgroundColor: \"#e8e8e8\",\r\n padding: \"4px\",\r\n boxShadow: \"0px 0px 2px 1px rgba(0,0,0,0.3)\",\r\n \"&:last-child\": {\r\n marginLeft: \"5px\",\r\n },\r\n \"&:hover\": {\r\n backgroundColor: \"#dbdbdb\",\r\n },\r\n },\r\n}));\r\n\r\nfunction PermissionPage({ selectedApp }) {\r\n const [permission, setPermission] = useState([]);\r\n const [selectedId, setSelectedId] = useState(\"\");\r\n const [newAppSecret, setNewAppSecret] = useState(\"\");\r\n const [oldAppSecret, setOldAppSecret] = useState(\"\");\r\n const [showWarningMessage, setShowWarningMessage] = useState(false);\r\n const [isChange, setIsChange] = useState(false);\r\n const [isLoading, setIsLoading] = useState(true);\r\n const [notes, setNotes] = useState(\"\");\r\n\r\n const [error, setError] = useState(null);\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const classes = useStyles();\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const handleChange = (event) => {\r\n setIsLoading(!isLoading);\r\n setNewAppSecret(\"\");\r\n\r\n setOldAppSecret(\r\n newAppSecret ? oldAppSecret : permission?.applicationSecret\r\n );\r\n setSelectedId(event.target.value);\r\n setIsChange(true);\r\n };\r\n\r\n const handleCloseWarningMessage = () => {\r\n setShowWarningMessage(false);\r\n };\r\n\r\n const handleNotesChange = (e) => {\r\n setNotes(e.target.value);\r\n };\r\n\r\n const handleConfirm = () => {\r\n api\r\n .put(\r\n `api/PartnerApplication/${permission?.applicationId}/versions/RegenerateSecretkey/${permission.id}?v=1.0`,\r\n {},\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setNewAppSecret(response.data.data);\r\n setOldAppSecret(response.data.data);\r\n handleCloseWarningMessage();\r\n enqueueSnackbar(\"Application Secret regenerated\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n });\r\n };\r\n\r\n const handleSaveText = () => {\r\n api\r\n .put(\r\n `api/PartnerApplication/${permission?.applicationId}/versions/UpdateNotes/${permission.id}?v=1.0¬es=${notes}`,\r\n {\r\n notes: \"selam\",\r\n },\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n enqueueSnackbar(\"Notes updated\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n api\r\n .get(\r\n `api/PartnerApplication/${selectedApp?.appId}/versions/${\r\n selectedId\r\n ? selectedId\r\n : selectedApp?.versions[selectedApp?.versions.length - 1].id\r\n }?v=1.0`,\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setPermission(response.data.data);\r\n setIsLoading(false);\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setError(error.message);\r\n });\r\n }, [selectedId]);\r\n\r\n function appId() {\r\n if (isChange) return permission?.applicationId;\r\n else return selectedApp?.applicationId;\r\n }\r\n\r\n function applicationSecret() {\r\n if (newAppSecret) {\r\n return newAppSecret;\r\n } else {\r\n if (!isChange) {\r\n return selectedApp?.versions[selectedApp?.versions.length - 1]\r\n .applicationSecret;\r\n } else {\r\n return isLoading ? oldAppSecret : permission?.applicationSecret;\r\n }\r\n }\r\n }\r\n\r\n function copyText(entryText) {\r\n navigator.clipboard.writeText(entryText);\r\n }\r\n\r\n if (error) return
{error}
;\r\n return (\r\n <>\r\n \r\n \r\n \r\n Confirmation\r\n \r\n \r\n \r\n \r\n \r\n Application Secret will be reset. The old key will be invalid. Are\r\n you sure you want to continue?\r\n \r\n \r\n \r\n Confirm\r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n Versions :\r\n \r\n \r\n \r\n {selectedApp?.versions.map((version) => (\r\n \r\n {version.version}\r\n \r\n ))}\r\n \r\n \r\n \r\n Application Id :\r\n \r\n \r\n \r\n \r\n \r\n Application Secret :\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n copyText(\r\n newAppSecret\r\n ? newAppSecret\r\n : permission?.applicationSecret\r\n );\r\n enqueueSnackbar(\"Copied\", {\r\n variant: \"info\",\r\n autoHideDuration: 3000,\r\n });\r\n }}\r\n className={classes.icon}\r\n />\r\n \r\n {!auth.user?.rol.startsWith(\"Bromcom\") && (\r\n \r\n {\r\n setShowWarningMessage(true);\r\n }}\r\n className={classes.icon}\r\n />\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n {isLoading && }\r\n {!isLoading && }\r\n \r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport default PermissionPage;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\n\r\nimport { Box } from \"@material-ui/core\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport api from \"../../api/api\";\r\nimport Loader from \"../../components/Loader\";\r\nimport AccountCircle from \"@material-ui/icons/AccountCircle\";\r\nimport Moment from \"react-moment\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n container: {\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n\r\n padding: \" 0 20px 30px 20px\",\r\n minHeight: \"450px\",\r\n },\r\n loaderContainer: {\r\n minHeight: \"450px\",\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n alignItems: \"center\",\r\n },\r\n commentAvatar: {\r\n height: \"42px\",\r\n width: \"42px\",\r\n color: \"#a8a8a8\",\r\n marginRight: \"5px\",\r\n },\r\n audit: {\r\n display: \"flex\",\r\n marginBottom: \"10px\",\r\n padding: \"5px 0\",\r\n borderTop: \"1px solid #ddd\",\r\n borderBottom: \"1px solid #ddd\",\r\n },\r\n auditTexts: {\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n paddingTop: \"3px\",\r\n },\r\n}));\r\n\r\nfunction Audit({ appId }) {\r\n const [audits, setAudits] = useState([]);\r\n const [isLoading, setIsLoading] = useState(true);\r\n const [error, setError] = useState(null);\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const classes = useStyles();\r\n\r\n // const handleCloseWarningMessage = () => {\r\n // setShowWarningMessage(false);\r\n // };\r\n\r\n useEffect(() => {\r\n api\r\n .get(\r\n `api/AuditTrail/${appId}/List?v=1.0`,\r\n\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setAudits(response.data.data);\r\n setIsLoading(false);\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setError(error.message);\r\n });\r\n }, []);\r\n\r\n if (error) return
{error}
;\r\n return (\r\n \r\n {isLoading && (\r\n \r\n \r\n \r\n )}\r\n {!isLoading && (\r\n <>\r\n {audits.map((audit) => (\r\n \r\n \r\n \r\n \r\n \r\n {audit.fullName}{\" \"}\r\n \r\n \r\n \r\n {audit.description}\r\n \r\n \r\n ))}\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default Audit;\r\n","import React, { useState, useEffect } from \"react\";\r\nimport styled from \"styled-components/macro\";\r\nimport PropTypes from \"prop-types\";\r\nimport { DataGrid } from \"@mui/x-data-grid\";\r\n\r\nimport { makeStyles } from \"@material-ui/styles\";\r\n\r\nimport QuickSearchToolbar from \"./QuickSearchToolbar\";\r\nimport Moment from \"react-moment\";\r\n\r\nimport {\r\n Box,\r\n Dialog,\r\n DialogContent,\r\n IconButton,\r\n Tooltip,\r\n} from \"@material-ui/core\";\r\nimport VisibilityIcon from \"@material-ui/icons/Visibility\";\r\nimport SchoolIcon from \"@material-ui/icons/School\";\r\nimport ViewModuleIcon from \"@material-ui/icons/ViewModule\";\r\nimport PageviewIcon from \"@material-ui/icons/Pageview\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { useSelector } from \"react-redux\";\r\n\r\nimport RegisteredSchools from \"../../pages/pages/RegisteredSchools\";\r\nimport PermissionPage from \"../../pages/pages/Permisson\";\r\nimport Audit from \"../../pages/pages/Audit\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n container: {\r\n minHeight: \"600px\",\r\n },\r\n cancelIconContainer: {\r\n position: \"relative\",\r\n },\r\n cancelIcon: {\r\n position: \"absolute\",\r\n right: \"10px\",\r\n top: \"10px\",\r\n cursor: \"pointer\",\r\n \"&:hover\": {\r\n opacity: \"0.6\",\r\n },\r\n },\r\n cancelIconForAudit: {\r\n cursor: \"pointer\",\r\n \"&:hover\": {\r\n opacity: \"0.6\",\r\n },\r\n },\r\n\r\n detailButton: {\r\n marginRight: \"5px\",\r\n },\r\n schoolButton: {\r\n marginRight: \"5px\",\r\n },\r\n cancelButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#c71414\",\r\n \"&:hover\": {\r\n background: \"#ff0000\",\r\n },\r\n },\r\n dialogTitle: {\r\n padding: \"8px 24px 8px 35px\",\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"center\",\r\n },\r\n}));\r\n\r\nconst Badge = styled.span`\r\n font-size: 11px;\r\n background-color: ${(props) => props.color};\r\n color: white;\r\n border-radius: 8px;\r\n padding: 4px 8px;\r\n text-align: center;\r\n`;\r\n\r\nfunction escapeRegExp(value) {\r\n return value.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, \"\\\\$&\");\r\n}\r\n\r\nQuickSearchToolbar.propTypes = {\r\n clearSearch: PropTypes.func.isRequired,\r\n onChange: PropTypes.func.isRequired,\r\n value: PropTypes.string.isRequired,\r\n};\r\n\r\nexport default function ApplicationTable({ applications, isSubmitted }) {\r\n const [selectedApp, setSelectedApp] = useState({});\r\n const [selectedAppId, setSelectedAppId] = useState(\"\");\r\n const [searchText, setSearchText] = useState(\"\");\r\n const [rows, setRows] = useState(applications);\r\n const [showSchools, setshowSchools] = useState(false);\r\n const [showVersions, setShowVersions] = useState(false);\r\n const [showAudit, setShowAudit] = useState(false);\r\n\r\n const history = useHistory();\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const [sortModel, setSortModel] = useState([\r\n {\r\n field: \"createdDate\",\r\n sort: \"desc\",\r\n },\r\n ]);\r\n\r\n const classes = useStyles();\r\n\r\n const requestSearch = (searchValue) => {\r\n setSearchText(searchValue);\r\n const searchRegex = new RegExp(escapeRegExp(searchValue), \"i\");\r\n\r\n const filteredRows = applications.filter((row) => {\r\n return Object.keys(row).some((field) => {\r\n return searchRegex.test(row[field]?.toString());\r\n });\r\n });\r\n\r\n setRows(filteredRows);\r\n };\r\n\r\n useEffect(() => {\r\n setRows(applications);\r\n }, [applications]);\r\n\r\n const handleCloseVersions = () => {\r\n setShowVersions(false);\r\n };\r\n\r\n const handleCloseAudit = () => {\r\n setShowAudit(false);\r\n };\r\n\r\n const handleCloseSchools = () => {\r\n setshowSchools(false);\r\n };\r\n\r\n const cols = [\r\n // { field: \"id\", headerName: \"id\", minWidth: 200 },\r\n { field: \"name\", headerName: \"Application Name\", flex: 1, minWidth: 200 },\r\n {\r\n field: \"description\",\r\n headerName: \"Description\",\r\n flex: 2,\r\n minWidth: 120,\r\n },\r\n {\r\n field: \"lastVersionId\",\r\n headerName: \"Latest Version\",\r\n width: 150,\r\n align: \"center\",\r\n },\r\n {\r\n field: \"createdDate\",\r\n headerName: \"Created Date\",\r\n flex: 1,\r\n minWidth: 150,\r\n renderCell: (params) => (\r\n \r\n ),\r\n },\r\n {\r\n field: \"modifiedDate\",\r\n headerName: \"Modified Date\",\r\n flex: 1,\r\n minWidth: 150,\r\n\r\n renderCell: (params) => (\r\n \r\n ),\r\n },\r\n {\r\n field: \"status\",\r\n headerName: \"Status\",\r\n width: 120,\r\n align: \"center\",\r\n renderCell: (params) => {\r\n if (params.value === \"Publish\")\r\n return {params.value};\r\n else if (params.value === \"Unpublish\")\r\n return {params.value};\r\n else if (params.value === \"Blocked\")\r\n return {params.value};\r\n },\r\n },\r\n {\r\n field: \"action\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n flex: 1,\r\n minWidth: 180,\r\n align: \"center\",\r\n\r\n renderCell: (params) => {\r\n const handleShowDetail = () => {\r\n history.push(`/applications/${params.row.id}`);\r\n };\r\n\r\n const handleShowSchools = () => {\r\n setSelectedApp({\r\n appId: params.row.id,\r\n versions: params.row.versions,\r\n versionId: params.row.versions[0].id,\r\n applicationSecret: params.row.versions[0].applicationSecret,\r\n });\r\n\r\n setshowSchools(true);\r\n };\r\n\r\n const handleShowVersions = () => {\r\n setSelectedApp({\r\n appId: params.row.id,\r\n versions: params.row.versions,\r\n applicationSecret: params.row.versions[0].applicationSecret,\r\n applicationId: params.row.applicationId,\r\n });\r\n\r\n setShowVersions(true);\r\n };\r\n\r\n const handleShowAudit = () => {\r\n setSelectedAppId(params.row.id);\r\n setShowAudit(true);\r\n };\r\n\r\n return (\r\n <>\r\n {auth?.user?.rol === \"PartnerAccountOwner\" ||\r\n auth?.user?.rol === \"PartnerAdmin\" ||\r\n auth?.user?.rol === \"PartnerDeveloper\" ? (\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n ) : null}\r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\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 {showSchools && !showVersions && !showAudit && (\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n )}\r\n {!showSchools && showVersions && !showAudit && (\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n )}\r\n {!showSchools && !showVersions && showAudit && (\r\n \r\n \r\n

Audit

\r\n {/* */}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n )}\r\n
\r\n requestSearch(event.target.value),\r\n clearSearch: () => requestSearch(\" \"),\r\n },\r\n }}\r\n onSortModelChange={(model) => setSortModel(model)}\r\n disableSelectionOnClick\r\n scrollbarSize={30}\r\n onRowDoubleClick={(e) => {\r\n if (\r\n e.row.status === \"Blocked\" ||\r\n auth?.user.rol === \"PartnerSupport\"\r\n )\r\n return;\r\n else {\r\n history.push(`/applications/${e.row.id}`);\r\n }\r\n }}\r\n hideFooter\r\n />\r\n
\r\n \r\n );\r\n}\r\n","import * as types from \"../../constants\";\r\n\r\nexport function addScope(name, scope) {\r\n return {\r\n type: types.SCOPE_ADD,\r\n name,\r\n scope: scope,\r\n };\r\n}\r\n\r\nexport function resetScopes() {\r\n return {\r\n type: types.SCOPES_RESET,\r\n scopes: [],\r\n };\r\n}\r\n\r\nexport function setScopes(scope) {\r\n return {\r\n type: types.SCOPES_RESET,\r\n scopes: scope,\r\n };\r\n}\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { Checkbox } from \"@material-ui/core\";\r\nimport { DataGrid } from \"@mui/x-data-grid\";\r\n\r\nimport { setScopes } from \"../../redux/actions/scopeActions\";\r\nimport QuickSearchToolbar from \"./QuickSearchToolbar\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nfunction escapeRegExp(value) {\r\n return value.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, \"\\\\$&\");\r\n}\r\n\r\nQuickSearchToolbar.propTypes = {\r\n clearSearch: PropTypes.func.isRequired,\r\n onChange: PropTypes.func.isRequired,\r\n value: PropTypes.string.isRequired,\r\n};\r\n\r\nfunction ApiScopesTable({ scopes }) {\r\n const dispatch = useDispatch();\r\n const [rows, setRows] = useState([]);\r\n const [searchText, setSearchText] = useState(\"\");\r\n\r\n const requestSearch = (searchValue) => {\r\n setSearchText(searchValue);\r\n const searchRegex = new RegExp(escapeRegExp(searchValue), \"i\");\r\n\r\n const filteredRows = scopes.filter((row) => {\r\n return Object.keys(row).some((field) => {\r\n return searchRegex.test(row[field]?.toString());\r\n });\r\n });\r\n\r\n setRows(filteredRows);\r\n };\r\n\r\n useEffect(() => {\r\n setRows(scopes);\r\n }, [scopes]);\r\n\r\n useEffect(() => {\r\n const selectedRows = rows.filter(\r\n (row) => !!row.get || !!row.post || !!row.put || !!row.delete\r\n );\r\n dispatch(setScopes(selectedRows));\r\n }, [rows]);\r\n\r\n const handleSelect = (row) => {\r\n const newRows = [...rows];\r\n const index = newRows.findIndex((r) => r.id === row.id);\r\n newRows[index] = { ...row };\r\n setRows(newRows);\r\n };\r\n const cols = [\r\n {\r\n field: \"name\",\r\n headerName: \"Endpoint Name\",\r\n flex: 1,\r\n minWidth: 150,\r\n },\r\n {\r\n field: \"get\",\r\n headerName: \"Get\",\r\n flex: 0.5,\r\n renderCell: ({ row }) => {\r\n return (\r\n handleSelect({ ...row, get: !row.get })}\r\n />\r\n );\r\n },\r\n },\r\n\r\n {\r\n field: \"post\",\r\n headerName: \"Post\",\r\n flex: 0.5,\r\n renderCell: ({ row }) => {\r\n if (!row.isPostEnable) {\r\n return \"\";\r\n } else {\r\n return (\r\n handleSelect({ ...row, post: !row.post })}\r\n />\r\n );\r\n }\r\n },\r\n },\r\n {\r\n field: \"put\",\r\n headerName: \"Put\",\r\n flex: 0.5,\r\n renderCell: ({ row }) => {\r\n if (!row.isPutEnable) {\r\n return \"\";\r\n }\r\n return (\r\n handleSelect({ ...row, put: !row.put })}\r\n />\r\n );\r\n },\r\n },\r\n {\r\n field: \"delete\",\r\n headerName: \"Delete\",\r\n flex: 0.5,\r\n renderCell: ({ row }) => {\r\n if (!row.isDeleteEnable) {\r\n return \"\";\r\n }\r\n return (\r\n handleSelect({ ...row, delete: !row.delete })}\r\n />\r\n );\r\n },\r\n },\r\n ];\r\n\r\n return (\r\n
\r\n requestSearch(event.target.value),\r\n clearSearch: () => requestSearch(\" \"),\r\n },\r\n }}\r\n rows={rows}\r\n columns={cols}\r\n disableSelectionOnClick\r\n scrollbarSize={30}\r\n />\r\n
\r\n );\r\n}\r\n\r\nexport const MemoizedApiScopesTable = React.memo(ApiScopesTable);\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { setScopes } from \"../../redux/actions/scopeActions\";\r\nimport { Grid, GridColumn as Column } from \"@progress/kendo-react-grid\";\r\nimport { Checkbox } from \"@material-ui/core\";\r\nimport \"@progress/kendo-theme-material/dist/all.css\";\r\n\r\nconst initialFilter = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"name\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n};\r\n\r\nfunction NewApiScopesTable({ scopes }) {\r\n const dispatch = useDispatch();\r\n\r\n const [rows, setRows] = useState(scopes);\r\n const [filter, setFilter] = React.useState(initialFilter);\r\n const [skip, setSkip] = React.useState(0);\r\n\r\n useEffect(() => {\r\n setRows(scopes);\r\n }, [scopes]);\r\n\r\n useEffect(() => {\r\n const selectedRows = rows.filter(\r\n (row) => !!row.get || !!row.post || !!row.put || !!row.delete\r\n );\r\n dispatch(setScopes(selectedRows));\r\n }, [rows]);\r\n\r\n const handleSelect = (row) => {\r\n const newRows = [...rows];\r\n const index = newRows.findIndex((r) => r.id === row.id);\r\n newRows[index] = { ...row };\r\n setRows(newRows);\r\n };\r\n\r\n const getCell = (props) => {\r\n return (\r\n \r\n \r\n handleSelect({ ...props.dataItem, get: !props.dataItem.get })\r\n }\r\n />\r\n \r\n );\r\n };\r\n\r\n const postCell = (props) => {\r\n if (!props.dataItem.isPostEnable) {\r\n return ;\r\n } else {\r\n return (\r\n \r\n \r\n handleSelect({ ...props.dataItem, post: !props.dataItem.post })\r\n }\r\n />\r\n \r\n );\r\n }\r\n }; \r\n const deleteCell = (props) => {\r\n if (!props.dataItem.isDeleteEnable) {\r\n return ;\r\n } else {\r\n return (\r\n \r\n \r\n handleSelect({\r\n ...props.dataItem,\r\n delete: !props.dataItem.delete,\r\n })\r\n }\r\n />\r\n \r\n );\r\n }\r\n };\r\n\r\n const pageChange = (event) => {\r\n setSkip(event.page.skip);\r\n };\r\n\r\n return (\r\n <>\r\n setFilter(e.filter)}\r\n scrollable={\"scrollable\"}\r\n total={rows.length}\r\n pageSize={20}\r\n skip={skip}\r\n onPageChange={pageChange}\r\n >\r\n {/* \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport const MemoizedNewApiScopesTable = React.memo(NewApiScopesTable);\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport {\r\n Breadcrumbs,\r\n Box,\r\n Button as MuiButton,\r\n Card as MuiCard,\r\n CardContent,\r\n Checkbox,\r\n CircularProgress,\r\n Divider as MuiDivider,\r\n Grid,\r\n FormControlLabel,\r\n TextField as MuiTextField,\r\n Typography,\r\n} from \"@material-ui/core\";\r\nimport styled from \"styled-components/macro\";\r\nimport { Formik, Form } from \"formik\";\r\nimport * as Yup from \"yup\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport api from \"../../api/api\";\r\nimport Loader from \"../../components/Loader\";\r\nimport {\r\n Cancel as CancelIcon,\r\n CloudUpload as MuiCloudUpload,\r\n} from \"@material-ui/icons\";\r\n\r\nimport { MemoizedApiScopesTable } from \"../../components/tables/ApiScopesTable\";\r\n\r\nimport { useSnackbar } from \"notistack\";\r\n\r\nimport CustomModal from \"../../components/CustomModal\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { MemoizedNewApiScopesTable } from \"../../components/tables/NewApiScopesTable\";\r\n\r\nconst Divider = styled(MuiDivider)(spacing);\r\n\r\nconst Card = styled(MuiCard)(spacing);\r\nconst Button = styled(MuiButton)(spacing);\r\nconst TextField = styled(MuiTextField)(spacing);\r\nconst CloudUpload = styled(MuiCloudUpload)(spacing);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n formControl: {\r\n margin: theme.spacing(1),\r\n minWidth: 120,\r\n },\r\n InputLabel: {\r\n opacity: 0.6,\r\n padding: \" 5px 10px\",\r\n },\r\n selectEmpty: {\r\n marginTop: theme.spacing(2),\r\n },\r\n attachedFiles: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n position: \"relative\",\r\n margin: \"0 4px\",\r\n },\r\n\r\n uploadButton: {\r\n color: \"white\",\r\n padding: \"5px 10px\",\r\n },\r\n cancelIcon: {\r\n cursor: \"pointer\",\r\n position: \"absolute\",\r\n top: \"-10px\",\r\n right: \"-5px\",\r\n transform: \"scale(.7)\",\r\n color: \"#c71414\",\r\n \"&:hover\": {\r\n color: \"#ff0000\",\r\n },\r\n },\r\n formGroup: {\r\n border: \"1px solid #ddd\",\r\n padding: \"10px\",\r\n marginTop: \"10px\",\r\n borderRadius: \"5px\",\r\n },\r\n formLabel: {\r\n marginBottom: \"10px\",\r\n },\r\n\r\n buttons: {\r\n marginTop: \"40px\",\r\n display: \"flex\",\r\n justifyContent: \"flex-end\",\r\n },\r\n\r\n createButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#0b990b\",\r\n \"&:hover\": {\r\n background: \"#25b425\",\r\n },\r\n },\r\n cancelButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#c71414\",\r\n \"&:hover\": {\r\n background: \"#ff0000\",\r\n },\r\n },\r\n imagesContainer: {\r\n height: \"55px\",\r\n padding: \"0 5px\",\r\n\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n },\r\n attachedImage: {\r\n height: \"70px\",\r\n width: \"70px\",\r\n objectFit: \"cover\",\r\n border: \"2px solid #ddd\",\r\n cursor: \"pointer\",\r\n marginRight: \"5px\",\r\n },\r\n}));\r\n\r\nconst validationSchema = Yup.object().shape({\r\n appName: Yup.string().required(\"Required\"),\r\n appDescription: Yup.string().required(\"Required\"),\r\n});\r\n\r\nfunction CreateApplication() {\r\n const [scopes, setScopes] = useState([]);\r\n\r\n const [isLoading, setIsLoading] = useState(true);\r\n const [error, setError] = useState(null);\r\n\r\n const [attachedFiles, setAttachedFiles] = useState([]);\r\n const [showImage, setShowImage] = useState(false);\r\n\r\n const classes = useStyles();\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n const selectedScopes = useSelector((state) => state.scopeReducer);\r\n\r\n const history = useHistory();\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const handleFileChange = (e) => {\r\n const newFiles = Object.values(e.target.files);\r\n\r\n const filteredAttachedFiles = newFiles.filter((file) =>\r\n file.name.match(/\\.(jpg|jpeg|png)$/i)\r\n );\r\n\r\n const fileSize = filteredAttachedFiles.size;\r\n if (fileSize > 102400) {\r\n enqueueSnackbar(\"File size is too big! Please upload a smaller image\", {\r\n variant: \"warning\",\r\n autoHideDuration: 3000,\r\n });\r\n } else {\r\n const newFiles = Object.values(e.target.files);\r\n const filteredAttachedFiles = newFiles.filter((file) =>\r\n file.name.match(/\\.(jpg|jpeg|png)$/i)\r\n );\r\n\r\n setAttachedFiles(filteredAttachedFiles);\r\n }\r\n e.target.value = null;\r\n };\r\n\r\n const handleCancelAttachedFile = (e) => {\r\n const newAttachedFiles = attachedFiles.filter((file) => file.name !== e);\r\n setAttachedFiles(newAttachedFiles);\r\n };\r\n\r\n const handleCancelApplication = () => {\r\n history.push(\"/applications\");\r\n };\r\n\r\n const handleCloseImage = (e) => {\r\n setShowImage(false);\r\n };\r\n\r\n useEffect(() => {\r\n api\r\n .get(\"api/PartnerApplication/Scopes?v=1.0\", {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setScopes(response.data.data);\r\n setIsLoading(false);\r\n }\r\n })\r\n .catch((error) => {\r\n setError(error.message);\r\n });\r\n }, []);\r\n\r\n if (isLoading) return ;\r\n if (error) return
{error}
;\r\n\r\n return (\r\n {\r\n let aFiles = [];\r\n let promises = [];\r\n\r\n const createError = (error) => {\r\n setStatus({ sent: false });\r\n setErrors({ submit: error.message });\r\n setSubmitting(false);\r\n };\r\n\r\n const createSubmit = async () => {\r\n if (selectedScopes.scopes.length === 0) {\r\n enqueueSnackbar(\"Please select at least one endpoint\", {\r\n variant: \"warning\",\r\n autoHideDuration: 3000,\r\n });\r\n setStatus({ sent: false });\r\n setSubmitting(false);\r\n } else {\r\n return api\r\n .post(\r\n \"api/PartnerApplication/Create?v=1.0\",\r\n {\r\n name: values.appName,\r\n logoPath: aFiles.length > 0 ? aFiles[0].path : null,\r\n description: values.appDescription,\r\n scopes: selectedScopes.scopes,\r\n statusId: values.isActive ? 1 : 2,\r\n },\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.data.isSuccess) {\r\n setStatus({ sent: false });\r\n setSubmitting(false);\r\n handleCancelApplication();\r\n enqueueSnackbar(\"Application created successfully\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n } else {\r\n if (\r\n response.data.errorMessage === \"Application with same name\"\r\n ) {\r\n setStatus({ sent: false });\r\n setSubmitting(false);\r\n enqueueSnackbar(\"Application already exists\", {\r\n variant: \"warning\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n }\r\n });\r\n }\r\n };\r\n\r\n attachedFiles.forEach((file) => {\r\n const formData = new FormData();\r\n formData.append(\"File\", file);\r\n promises.push(\r\n api\r\n .post(\"api/File/upload?v=1.0\", formData, {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n aFiles.push({\r\n id: response.data.data.id,\r\n path: response.data.data.path,\r\n mimeType: file.type,\r\n });\r\n })\r\n );\r\n });\r\n\r\n if (promises.length > 0) {\r\n Promise.all(promises).then(createSubmit).catch(createError);\r\n } else {\r\n createSubmit().catch(createError);\r\n }\r\n }}\r\n >\r\n {({\r\n errors,\r\n handleBlur,\r\n handleChange,\r\n handleSubmit,\r\n touched,\r\n values,\r\n isSubmitting,\r\n }) => (\r\n <>\r\n {showImage && (\r\n \r\n {\r\n {\r\n setShowImage(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 Applications\r\n \r\n\r\n \r\n Pages\r\n Applications\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n handleFileChange(e)}\r\n />\r\n \r\n\r\n {attachedFiles.map((file) => (\r\n \r\n \r\n\r\n {\r\n setShowImage(true);\r\n }}\r\n />\r\n \r\n ))}\r\n \r\n \r\n\r\n \r\n \r\n }\r\n label=\"Publish\"\r\n value={values.isActive}\r\n onChange={handleChange}\r\n disabled={isSubmitting}\r\n />\r\n\r\n \r\n {!isSubmitting && \"Create\"}\r\n {isSubmitting && (\r\n \r\n )}\r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default CreateApplication;\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport styled from \"styled-components/macro\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { Helmet } from \"react-helmet-async\";\r\n\r\nimport {\r\n Breadcrumbs as MuiBreadcrumbs,\r\n Button,\r\n Divider as MuiDivider,\r\n Grid,\r\n Typography,\r\n} from \"@material-ui/core\";\r\n\r\nimport { spacing } from \"@material-ui/system\";\r\nimport ApplicationTable from \"../../components/tables/ApplicationTable\";\r\nimport CreateApplication from \"./CreateApplication\";\r\nimport { Add as AddIcon } from \"@material-ui/icons\";\r\nimport api from \"../../api/api\";\r\nimport Loader from \"../../components/Loader\";\r\nimport { useSelector } from \"react-redux\";\r\n\r\nconst Breadcrumbs = styled(MuiBreadcrumbs)(spacing);\r\n\r\nconst Divider = styled(MuiDivider)(spacing);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n createButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#7FB741\",\r\n \"&:hover\": {\r\n background: \"#8AC747\",\r\n },\r\n },\r\n}));\r\nexport default function Applications() {\r\n const [applications, setApplications] = useState([]);\r\n const [isSubmitted, setIsSubmitted] = useState(false);\r\n const [showCreateApplication, setshowCreateApplication] = useState(false);\r\n const [isLoading, setIsLoading] = useState(true);\r\n const [error, setError] = useState(null);\r\n const auth = useSelector((state) => state.authReducer);\r\n const history = useHistory();\r\n\r\n const classes = useStyles();\r\n\r\n const handleShowCreateApplication = () => {\r\n //setshowCreateApplication(true);\r\n history.push(\"/createapplication\");\r\n };\r\n\r\n const handleIsSubmitted = () => {\r\n setIsSubmitted(!isSubmitted);\r\n };\r\n\r\n useEffect(() => {\r\n api\r\n .get(`api/PartnerApplication/List?${auth.user?.pid}v=1.0`, {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setApplications(response.data.data);\r\n setIsLoading(false);\r\n }\r\n if (response.status === 204) {\r\n setIsLoading(false);\r\n setError({ message: \"No data found\" });\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setError(error.message);\r\n });\r\n }, [isSubmitted]);\r\n\r\n if (isLoading) return ;\r\n if (error) return
{error.message}
;\r\n\r\n return (\r\n \r\n \r\n\r\n \r\n \r\n \r\n Applications\r\n \r\n\r\n \r\n Pages\r\n Applications\r\n \r\n \r\n \r\n {!(auth?.user?.rol === \"PartnerSupport\") && (\r\n \r\n \r\n Create New Application\r\n \r\n )}\r\n \r\n \r\n\r\n \r\n\r\n {!showCreateApplication && (\r\n \r\n )}\r\n {/* {showCreateApplication && (\r\n \r\n )} */}\r\n \r\n );\r\n}\r\n","import React, { useState, useEffect, useRef } from \"react\";\r\nimport { useHistory, useParams } from \"react-router-dom\";\r\nimport { useSelector } from \"react-redux\";\r\nimport {\r\n Box,\r\n Button as MuiButton,\r\n Card as MuiCard,\r\n CardContent,\r\n Checkbox,\r\n CircularProgress,\r\n Dialog,\r\n DialogContent,\r\n DialogTitle,\r\n Grid,\r\n FormControlLabel,\r\n TextField as MuiTextField,\r\n Typography,\r\n} from \"@material-ui/core\";\r\nimport styled from \"styled-components/macro\";\r\nimport { Formik, Form } from \"formik\";\r\nimport * as Yup from \"yup\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport api from \"../../api/api\";\r\nimport Loader from \"../../components/Loader\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\n\r\nimport { MemoizedNewApiScopesTable } from \"../../components/tables/NewApiScopesTable\";\r\n\r\nimport { useSnackbar } from \"notistack\";\r\n\r\nconst Card = styled(MuiCard)(spacing);\r\nconst Button = styled(MuiButton)(spacing);\r\nconst TextField = styled(MuiTextField)(spacing);\r\n\r\nconst Logo = styled.div`\r\n position: relative;\r\n border: 2px dashed #ccc;\r\n width: 200px;\r\n height: 165px;\r\n cursor: pointer;\r\n\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n\r\n padding: 3px;\r\n\r\n ${(props) => props.theme.breakpoints.down(\"md\")} {\r\n width: 100px;\r\n height: 80px;\r\n }\r\n\r\n span {\r\n font-size: 20px;\r\n font-weight: bold;\r\n }\r\n\r\n &:before {\r\n opacity: 0;\r\n content: \"upload \\n logo\";\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 100%;\r\n color: #4d5658;\r\n font-size: 18px;\r\n font-weight: bold;\r\n background: rgb(223, 225, 229, 0.9);\r\n z-index: 2;\r\n text-transform: uppercase;\r\n\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n text-align: center;\r\n\r\n ${(props) => props.theme.breakpoints.down(\"lg\")} {\r\n font-size: 14px;\r\n }\r\n }\r\n\r\n &:hover {\r\n &:before {\r\n opacity: ${(props) => props.opacity};\r\n }\r\n }\r\n`;\r\n\r\nconst Image = styled.img`\r\n width: 100%;\r\n height: 100%;\r\n object-fit: contain;\r\n`;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n buttons: {\r\n marginTop: \"40px\",\r\n display: \"flex\",\r\n justifyContent: \"flex-end\",\r\n },\r\n formControl: {\r\n margin: theme.spacing(1),\r\n minWidth: 120,\r\n },\r\n InputLabel: {\r\n opacity: 0.6,\r\n padding: \" 5px 10px\",\r\n },\r\n selectEmpty: {\r\n marginTop: theme.spacing(2),\r\n },\r\n imageContainer: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n padding: \"8px\",\r\n },\r\n attachedImage: {\r\n height: \"70px\",\r\n width: \"70px\",\r\n objectFit: \"cover\",\r\n border: \"2px solid #ddd\",\r\n cursor: \"pointer\",\r\n marginRight: \"5px\",\r\n },\r\n attachedFiles: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n position: \"relative\",\r\n margin: \"0 4px\",\r\n },\r\n\r\n uploadButton: {\r\n color: \"white\",\r\n padding: \"5px 10px\",\r\n },\r\n cancelIcon: {\r\n cursor: \"pointer\",\r\n position: \"absolute\",\r\n top: \"-10px\",\r\n right: \"-5px\",\r\n transform: \"scale(.7)\",\r\n color: \"#c71414\",\r\n \"&:hover\": {\r\n color: \"#ff0000\",\r\n },\r\n },\r\n formGroup: {\r\n border: \"1px solid #ddd\",\r\n padding: \"10px\",\r\n marginTop: \"10px\",\r\n borderRadius: \"5px\",\r\n },\r\n formLabel: {\r\n marginBottom: \"10px\",\r\n },\r\n\r\n updateButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#FF911D\",\r\n \"&:hover\": {\r\n background: \"#ff880a\",\r\n },\r\n },\r\n cancelButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#c71414\",\r\n \"&:hover\": {\r\n background: \"#ff0000\",\r\n },\r\n },\r\n container: {\r\n minHeight: \"200px\",\r\n padding: \"30px 20px\",\r\n },\r\n alertMessage: {\r\n display: \"block\",\r\n minWidth: \"250px\",\r\n },\r\n cancelAlertIconContainer: {\r\n position: \"relative\",\r\n },\r\n cancelAlertIcon: {\r\n position: \"absolute\",\r\n right: \"10px\",\r\n top: \"10px\",\r\n cursor: \"pointer\",\r\n \"&:hover\": {\r\n opacity: \"0.6\",\r\n },\r\n },\r\n dialogTitleContainer: {\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"center\",\r\n padding: \"0 10px 0 0\",\r\n },\r\n detailContainer: {\r\n marginTop: \"40px\",\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"center\",\r\n },\r\n cancelAlertButton: {\r\n background: \"#dbdbdb\",\r\n \"&:hover\": {\r\n background: \"#c4c4c4\",\r\n },\r\n },\r\n OkAlertButton: {\r\n color: \"white\",\r\n marginRight: \"5px\",\r\n background: \"#7FB741\",\r\n \"&:hover\": {\r\n background: \"#8AC747\",\r\n },\r\n },\r\n}));\r\n\r\nconst validationSchema = Yup.object().shape({\r\n appDescription: Yup.string().required(\"Required\"),\r\n});\r\n\r\nfunction ApplicationDetail() {\r\n const [app, setApp] = useState({});\r\n\r\n const [isLoading, setIsLoading] = useState(true);\r\n const [error, setError] = useState(null);\r\n\r\n const [showInfo, setShowInfo] = useState({ isShow: false, message: \"\" });\r\n const selectedScopes = useSelector((state) => state.scopeReducer);\r\n\r\n const history = useHistory();\r\n\r\n const { id } = useParams();\r\n\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const [attachedFiles, setAttachedFiles] = useState([]);\r\n\r\n const formRef = useRef();\r\n\r\n const classes = useStyles();\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const handleFormSubmit = () => {\r\n if (formRef.current) {\r\n formRef.current.handleSubmit();\r\n }\r\n };\r\n const handleUpdateClick = () => {\r\n const selectedOldScopes = app.scopes.filter(\r\n (row) => !!row.get || !!row.post || !!row.put || !!row.delete\r\n );\r\n if (\r\n selectedScopes.scopes.length !== 0 &&\r\n selectedScopes.scopes.length > selectedOldScopes.length\r\n ) {\r\n setShowInfo({\r\n isShow: true,\r\n message:\r\n \"You have increased your application (\" +\r\n app.name +\r\n \") data scope, and this will result increase of the version number, which your customers need to visit 'Partner Applications' within Bromcom MIS, and approve the new version to be able to retrieve the use scope. Until they approve the new version, you will continue to retrieve the installed version's data scope. This operation is irreversible. Do you want to continue?\",\r\n });\r\n } else if (\r\n selectedScopes.scopes.length !== 0 &&\r\n selectedScopes.scopes.length < selectedOldScopes.length\r\n ) {\r\n setShowInfo({\r\n isShow: true,\r\n message:\r\n \"You have decreased your application (\" +\r\n app.name +\r\n \") data scope, and this scope reduction does not require any version change, but it is irreversible operation. Do you want to continue?\",\r\n });\r\n } else {\r\n let result = false;\r\n selectedScopes.scopes.forEach((scope) => {\r\n selectedOldScopes.forEach((oldScope) => {\r\n if (scope.name !== oldScope.name) {\r\n result = true;\r\n } else {\r\n result = false;\r\n }\r\n });\r\n });\r\n if (result) {\r\n setShowInfo({\r\n isShow: true,\r\n message:\r\n \"You have changed your application (\" +\r\n app.name +\r\n \") data scope, and this will result increase of the version number, which your customers need to visit 'Partner Applications' within Bromcom MIS, and approve the new version to be able to retrieve the use scope. Until they approve the new version, you will continue to retrieve the installed version's data scope. This operation is irreversible. Do you want to continue?\",\r\n });\r\n } else {\r\n handleFormSubmit();\r\n }\r\n }\r\n };\r\n\r\n const handleCloseInfo = () => {\r\n setShowInfo(false);\r\n };\r\n\r\n const handleFileChange = (e) => {\r\n const file = e.target.files[0];\r\n const fileSize = file.size;\r\n if (fileSize > 102400) {\r\n enqueueSnackbar(\"File size is too big! Please upload a smaller image\", {\r\n variant: \"warning\",\r\n autoHideDuration: 3000,\r\n });\r\n } else {\r\n setAttachedFiles([...e.target.files]);\r\n }\r\n e.target.value = null;\r\n };\r\n\r\n const handleCancelApplication = () => {\r\n history.push(\"/applications\");\r\n };\r\n\r\n useEffect(() => {\r\n api\r\n .get(`api/PartnerApplication/${id}?v=1.0`, {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n if (response.data.data) {\r\n setApp(response.data.data);\r\n setIsLoading(false);\r\n } else {\r\n if (response.data.errorCode === 404) {\r\n history.push(\"/404\");\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setError(error.message);\r\n });\r\n }, []);\r\n\r\n if (isLoading) return ;\r\n if (error) return
{error}
;\r\n\r\n return (\r\n {\r\n handleCloseInfo();\r\n const updateError = (error) => {\r\n setStatus({ sent: false });\r\n setErrors({ submit: error.message });\r\n setSubmitting(false);\r\n };\r\n\r\n const updateSubmit = () => {\r\n if (selectedScopes.scopes.length === 0) {\r\n enqueueSnackbar(\"Please select at least one endpoint\", {\r\n variant: \"warning\",\r\n autoHideDuration: 3000,\r\n });\r\n\r\n setStatus({ sent: false });\r\n setSubmitting(false);\r\n } else {\r\n return api\r\n .put(\r\n `api/PartnerApplication/Update/${app?.id}?v=1.0`,\r\n {\r\n name: app?.name,\r\n logoPath: aFiles.length > 0 ? aFiles[0].path : app?.logoPath,\r\n description: values.appDescription,\r\n scopes: selectedScopes.scopes,\r\n statusId: values.isActive ? 1 : 2,\r\n applicationVersionId: app?.applicationVersionId,\r\n },\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setStatus({ sent: false });\r\n setSubmitting(false);\r\n history.push(\"/applications\");\r\n enqueueSnackbar(\"Application updated successfully\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n });\r\n }\r\n };\r\n\r\n let aFiles = [];\r\n let promises = [];\r\n attachedFiles.forEach((file) => {\r\n const formData = new FormData();\r\n formData.append(\"File\", file);\r\n promises.push(\r\n api\r\n .post(\"api/File/upload?v=1.0\", formData, {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n aFiles.push({\r\n id: response.data.data.id,\r\n path: response.data.data.path,\r\n mimeType: file.type,\r\n });\r\n })\r\n );\r\n });\r\n\r\n if (promises.length > 0) {\r\n Promise.all(promises).then(updateSubmit).catch(updateError);\r\n } else {\r\n updateSubmit().catch(updateError);\r\n }\r\n }}\r\n innerRef={formRef}\r\n >\r\n {({\r\n errors,\r\n handleBlur,\r\n handleChange,\r\n handleSubmit,\r\n touched,\r\n values,\r\n isSubmitting,\r\n }) => (\r\n <>\r\n {showInfo?.isShow && (\r\n \r\n \r\n Confirmation\r\n \r\n \r\n \r\n \r\n {showInfo?.message}\r\n \r\n \r\n \r\n Ok\r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n )}\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n handleFileChange(e)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n label=\"Publish\"\r\n defaultValue={values.isActive}\r\n onChange={handleChange}\r\n disabled={isSubmitting}\r\n />\r\n \r\n {!isSubmitting && \"Update\"}\r\n {isSubmitting && (\r\n \r\n )}\r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default ApplicationDetail;\r\n","import React from \"react\";\r\nimport styled from \"styled-components/macro\";\r\nimport SwaggerUI from \"swagger-ui-react\";\r\nimport \"swagger-ui-react/swagger-ui.css\";\r\nimport { Helmet } from \"react-helmet-async\";\r\n\r\nimport {\r\n Breadcrumbs as MuiBreadcrumbs,\r\n Divider as MuiDivider,\r\n Grid as MuiGrid,\r\n Typography,\r\n} from \"@material-ui/core\";\r\n\r\nimport { spacing } from \"@material-ui/system\";\r\n\r\nconst Breadcrumbs = styled(MuiBreadcrumbs)(spacing);\r\n\r\nconst Divider = styled(MuiDivider)(spacing);\r\n\r\nconst Grid = styled(MuiGrid)(spacing);\r\n\r\nconst apiDocumentationURL = process.env.REACT_APP_DATA_API_DOCUMENT_URL;\r\n\r\nconst Wrapper = styled(\"div\")`\r\n padding: 0 10px;\r\n background-color: white;\r\n`;\r\n\r\nfunction ApiDocumentation() {\r\n return (\r\n \r\n \r\n\r\n \r\n Api Documentation\r\n \r\n\r\n \r\n Pages\r\n Api Documentation\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default ApiDocumentation;\r\n","import * as types from \"../../constants\";\r\n\r\nexport function setRowsPerPage(size) {\r\n return {\r\n type: types.GRID_ROWS_PER_PAGE,\r\n size,\r\n };\r\n}\r\n\r\nexport function setPage(page) {\r\n return {\r\n type: types.GRID_PAGE,\r\n page,\r\n };\r\n}\r\n\r\nexport function setIsGridLoading(isLoading, totalCount) {\r\n return {\r\n type: types.GRID_ISLOADING,\r\n isGridLoading: isLoading,\r\n totalCount: totalCount,\r\n };\r\n}\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport styled from \"styled-components/macro\";\r\nimport PropTypes from \"prop-types\";\r\nimport Moment from \"react-moment\";\r\n\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\n\r\nimport { DataGrid, getGridSingleSelectOperators } from \"@mui/x-data-grid\";\r\n\r\nimport VisibilityIcon from \"@material-ui/icons/Visibility\";\r\n\r\nimport QuickSearchToolbar from \"./QuickSearchToolbar\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { setPage, setRowsPerPage } from \"../../redux/actions/datagridActions\";\r\nimport api from \"../../api/api\";\r\n\r\nconst Badge = styled.span`\r\n font-size: 11px;\r\n background-color: ${(props) => props.color};\r\n color: white;\r\n border-radius: 8px;\r\n padding: 4px 8px;\r\n text-align: center;\r\n`;\r\n\r\nQuickSearchToolbar.propTypes = {\r\n clearSearch: PropTypes.func.isRequired,\r\n onChange: PropTypes.func.isRequired,\r\n value: PropTypes.string.isRequired,\r\n};\r\n\r\nfunction capitalizeFirstLetter(str) {\r\n return str[0].toUpperCase() + str.slice(1);\r\n}\r\n\r\nexport default function SupportTicketTable({ tickets }) {\r\n const dispatch = useDispatch();\r\n\r\n const history = useHistory();\r\n const auth = useSelector((state) => state.authReducer);\r\n const gridState = useSelector((state) => state.datagridReducer);\r\n\r\n const [searchText, setSearchText] = useState(\"\");\r\n const [filterValue, setFilterValue] = useState(true);\r\n const [rows, setRows] = useState(tickets);\r\n const [filt, setFilt] = useState([])\r\n\r\n const onFilterChange = React.useCallback((filterModel) => {\r\n if (\r\n filterModel.items[0].value &&\r\n capitalizeFirstLetter(filterModel.items[0].value) === \"Open\"\r\n ) {\r\n setFilterValue(true);\r\n } else if (\r\n filterModel.items[0].value &&\r\n capitalizeFirstLetter(filterModel.items[0].value) === \"Close\"\r\n ) {\r\n setFilterValue(false);\r\n } else {\r\n setFilterValue(\"\");\r\n }\r\n }, []);\r\n\r\n const [sortModel, setSortModel] = useState([\r\n {\r\n field: \"createdDate\",\r\n sort: \"desc\",\r\n },\r\n ]);\r\n\r\n const handlePageChange = (newPage) => {\r\n dispatch(setPage(newPage));\r\n };\r\n\r\n const handlePageSizeChange = (size) => {\r\n dispatch(setRowsPerPage(size));\r\n };\r\n\r\n const requestSearch = (searchValue) => {\r\n setSearchText(searchValue);\r\n api\r\n .get(\r\n `api/SupportTicket?SupportTicketStatusId=${filterValue}&Keyword=${searchValue}&PageSize=${\r\n gridState?.size\r\n }&PageNumber=${gridState?.page + 1}&v=1.0`,\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setRows(response.data.data);\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error.message);\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n setRows(tickets);\r\n }, [tickets]);\r\n\r\n useEffect(() => {\r\n let active = true;\r\n api\r\n .get(\r\n `api/SupportTicket?SupportTicketStatusId=${filterValue}&Keyword=${searchText}&PageSize=${\r\n gridState?.size\r\n }&PageNumber=${gridState?.page + 1}&v=1.0`,\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n if (!active) {\r\n return;\r\n }\r\n if(filterValue === \"\")\r\n setFilt([]);\r\n else\r\n setFilt([{ columnField: \"supportTicketStatusId\", operatorValue: \"is\", value: (filterValue ? \"Open\" : \"Close\")}]);\r\n setRows(response.data.data);\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error.message);\r\n });\r\n return () => {\r\n active = false;\r\n };\r\n }, [filterValue]);\r\n\r\n const cols = [\r\n { field: \"id\", headerName: \"ID\", width: 80, filterable: false },\r\n {\r\n field: \"fullName\",\r\n headerName: \"RequestedBy\",\r\n flex: 1,\r\n minWidth: 100,\r\n filterable: false,\r\n },\r\n {\r\n field: \"title\",\r\n headerName: \"Subject\",\r\n flex: 1,\r\n minWidth: 100,\r\n filterable: false,\r\n },\r\n {\r\n field: \"createdDate\",\r\n headerName: \"Created Date\",\r\n flex: 1,\r\n minWidth: 100,\r\n filterable: false,\r\n renderCell: (params) => (\r\n \r\n ),\r\n },\r\n {\r\n field: \"replyDateText\",\r\n headerName: \"Reply Date\",\r\n flex: 1,\r\n minWidth: 100,\r\n filterable: false,\r\n },\r\n {\r\n field: \"replyName\",\r\n headerName: \"Reply Name\",\r\n flex: 1,\r\n minWidth: 100,\r\n filterable: false,\r\n },\r\n\r\n {\r\n field: \"supportTicketStatusId\",\r\n headerName: \"Status\",\r\n width: 100,\r\n align: \"center\",\r\n valueOptions: [\r\n { label: 'Open', value: 'Open' },\r\n { label: 'Closed', value: 'Close' }\r\n ],\r\n filterOperators: getGridSingleSelectOperators().filter(\r\n (operator) => operator.value === 'is'\r\n ),\r\n renderCell: (params) => {\r\n let color;\r\n let text;\r\n if (params.value) {\r\n color = \"#22b9e3\";\r\n text = \"Open\";\r\n } else {\r\n color = \"#9c9c9c\";\r\n text = \"Closed\";\r\n }\r\n return {text};\r\n },\r\n },\r\n {\r\n field: \"action\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 100,\r\n align: \"center\",\r\n filterable: false,\r\n\r\n renderCell: (params) => {\r\n const onClick = () => {\r\n history.push(`/supportticketdetail/${params.row.id}`);\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 if (\r\n [\r\n \"BromcomSuperUser\",\r\n \"BromcomAdmin\",\r\n \"BromcomDeveloper\",\r\n \"BromcomSupport\",\r\n ].includes(auth?.user?.rol)\r\n ) {\r\n cols.splice(4, 0, {\r\n field: \"companyName\",\r\n headerName: \"Company Name\",\r\n flex: 1,\r\n minWidth: 100,\r\n filterable: false,\r\n });\r\n\r\n cols.splice(7, 0, {\r\n field: \"assignedUserName\",\r\n headerName: \"Assigned To\",\r\n flex: 1,\r\n minWidth: 100,\r\n filterable: false,\r\n });\r\n }\r\n\r\n return (\r\n
\r\n requestSearch(event.target.value),\r\n clearSearch: () => requestSearch(\" \"),\r\n },\r\n }}\r\n filterModel={{ items: filt}}\r\n onFilterModelChange={onFilterChange}\r\n filterMode=\"server\"\r\n onSortModelChange={(model) => setSortModel(model)}\r\n disableSelectionOnClick\r\n onPageChange={handlePageChange}\r\n onPageSizeChange={handlePageSizeChange}\r\n scrollbarSize={30}\r\n onRowDoubleClick={(e) => {\r\n history.push(`/supportticketdetail/${e.row.id}`);\r\n }}\r\n paginationMode=\"server\"\r\n rowCount={gridState.totalCount}\r\n loading={gridState.isGridLoading}\r\n />\r\n
\r\n );\r\n}\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport styled from \"styled-components/macro\";\r\n\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport SupportTicketTable from \"../../components/tables/SupportTicketTable\";\r\nimport { setIsGridLoading } from \"../../redux/actions/datagridActions\";\r\n\r\nimport api from \"../../api/api\";\r\nimport Loader from \"../../components/Loader\";\r\n\r\nimport {\r\n Breadcrumbs as MuiBreadcrumbs,\r\n Button,\r\n Grid,\r\n Divider as MuiDivider,\r\n Typography,\r\n} from \"@material-ui/core\";\r\n\r\nimport { Add as AddIcon } from \"@material-ui/icons\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nconst Breadcrumbs = styled(MuiBreadcrumbs)(spacing);\r\n\r\nconst Divider = styled(MuiDivider)(spacing);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n createButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#7FB741\",\r\n \"&:hover\": {\r\n background: \"#85c938\",\r\n },\r\n },\r\n}));\r\n\r\nfunction SupportTickets() {\r\n const dispatch = useDispatch();\r\n\r\n const gridState = useSelector((state) => state.datagridReducer);\r\n\r\n const [ticketState, setTicketState] = useState({\r\n tickets: [],\r\n isLoading: true,\r\n error: null,\r\n });\r\n\r\n const history = useHistory();\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n const rol = auth?.user?.rol;\r\n\r\n const classes = useStyles();\r\n\r\n useEffect(() => {\r\n api\r\n .get(\r\n `api/SupportTicket?SupportTicketStatusId=true&PageSize=${gridState?.size}&PageNumber=${\r\n gridState?.page + 1\r\n }&v=1.0`,\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setTicketState({\r\n tickets: response.data.data,\r\n isLoading: false,\r\n error: null,\r\n });\r\n dispatch(setIsGridLoading(false, response.data.totalCount));\r\n }\r\n })\r\n .catch((error) => {\r\n setTicketState({\r\n tickets: [],\r\n isLoading: false,\r\n error: error.message,\r\n });\r\n });\r\n }, [gridState.page, gridState.size]);\r\n\r\n const handleShowCreateTicket = () => {\r\n history.push(\"/createticket\");\r\n };\r\n\r\n if (ticketState?.isLoading) return ;\r\n if (ticketState.error)\r\n return
{ticketState.error}
;\r\n\r\n return (\r\n \r\n \r\n\r\n \r\n \r\n \r\n Support Tickets\r\n \r\n\r\n \r\n Pages\r\n Support Tickets\r\n \r\n \r\n\r\n \r\n {!rol.startsWith(\"Bromcom\") && (\r\n \r\n \r\n Create Ticket\r\n \r\n )}\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n );\r\n}\r\n\r\nexport default SupportTickets;\r\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACMAAAAjCAMAAAApB0NrAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAeZQTFRFAAAA3ODi3N7g3N/i3N/i1dncusDEub7DvsLK3ODi3N/h3N/h0NTXtbvAs7m/ub7EvsLK3ODi3N/hs7m/rrW7tLm/ub7D3ODh3N/hq7K4tLm+vsLGrbS5tLq/vsLGrrS6vsLG1Nfau8HFvsLG2Nzeyc3Rr7a8sLe8v8XJ297g0NXZx87UxMvSxczTyM7U3dPU4bGr2t3g37y56lRA07Kx1NncxczT4Ly5za2t1trd0dbaxczSx83Tza2u2t7gxs3T0tba3dTU27m22t7g19ze4Lax52JR5mFQ1q6r1tre35+Y1ZaRztPY2Nzf3r+85mdX5GZWzLGyzdPY36ag5Wpa42hZ05yYzdLY2dzf3NXW3qql33tv0qCdzMjMz9TZ3tLR3dXV3dXW5n9x53do5nlq5ndp5n5x6lRA6lRA7GdV9KCV9amf8ZGE61tH731u9KSa8Yl87GJP73pr739w97iv8pGE/Orn8IN19Kqg+tnU9a6l+tTP8IJ09aqf615L7nFg+Ma/8Y2A+cvE9rOq+tvX8IR29KOY7W1c+97a+dDK9KSZ/OLf9rau+MfA73xt7WlX73xs9KWa85yR8IFz619M61RA6lRA6ldE61lF7GJQ62BN6lRA6VM/61RA6lQ/6VRA6lVA6VM/SfRZdgAAAKJ0Uk5TABGEyNLWsjEFX+P///2oOQeJ9//7qDmD8/+oFv27Lfwe//8g////9oz//////ZX////////////////9lv///f3///WH//////////////////////////////////+E8f+E8f/xhIPz//////////////////////////////////////////////////////////9d4f/////iXhGE1tIRC9sKPwAAAX5JREFUeJyV0PVXwlAYgGHsuHYBKiY2ijJFxU7s7gKTmAkGxhx2d2Cj/6kLRed2x/H9YWfn23Pud88EAiIXVzd3Zh6eXt4CRj6+4E9+/gGBQQwTHMIyoWHhEQwjFLGNOCwyyqkRR0tinBpxrCSOz8QniMkkiTxGmpRMmpRUHgPS0jNkMllmFoeRZ5PJibccEnEaBUKWKyVPylNym3zKFBRS61TKomKoKaEMKFWVwQ19DlE521QovkxlBT2oqmaZmlqETl1XTw1EQvauBhqpG5uaoQa0tBKkrb0jB8AN6OxCunt6+wCf6R8YHBr+JhADgGqkGTgzv/un0WhHudNqHGZsfIK7ySmH0ekR7vS6P8ZgRKdnZtG5+QUTihoNnMa8uLS8YlldW9/AMLNpE2JwDLNYEesWisF2mbd3dvdoY90/gJjDo+MFymCYAXbOIo4glpPTs3MMuuvikrin6er65hbH2ebunhzYbMTj4fHJ9vN/nl8c5vXN/s6V/e2D/PwJm8+vs0/gyn0AAAAASUVORK5CYII=\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACMAAAAjCAMAAAApB0NrAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAf5QTFRFAAAAGnVKGnVMGXVMGnRMGnVMGnRNGnRNGndMGXVLGXVNGXVMGXVLGXVMGXVMGXVMGXVMGnVMGXNKGXZNGXVMGXVMGXVMGXVMGXVMF3VPGHRLGXVMGXVMGXVMGXVMGXVMGXVMGXVMGXVMGXZMGXZMHHFHGHRLGHRLGXVMGXVMGXVMGXVMGXVMGnVNHHFHGXRLGXVML4JdstHDZqOIKH5YGXVMGXVLOolm////jLqmLIBbGXVMLIFbHnhQPIpnXp+Cv9nNPotpea6X9vr4JXxVaaWKlL+sz+LZbaeNaqWKmMGv+fv7PYtoUJZ3XJ2AG3ZNea+XlL6rkb2pSZJxWZx+r8/AzuHZGnVNYaCE8Pbz6/PvnsW09Pj2TpV1KH5YgLOc1ebeqMu70ePbeK6W1OXdpMi4G3ZOKX9ZuNTIbKeNRY9u8ff02ejhOYhludXJtdPFdq2U8vf1dKuSMYNevNfLyd/V6fLu/P39Upd41+fg1ubfUZd4HXhPNYZidKyTdqyUc6uSudXIs9HERI9t8/j23uvm9fn4OIhksdDCgrSeoce2YKCD7fTxk7+soMa19fn3TZR1msKxTJR0XZ6A0eTbjrunH3lRLYFcJ35XGXVMGHRMGXVMGXVLGnVLF3ZQGHRLGXVMGXVMGXRLGXVMGXVMGXVMGXVMGXVMGXVMGXZLgkiebAAAAKp0Uk5TAA4aKU1+sCUHIjZSfLPb/P/aFTBEYJnB+A9Gbqa/2u797H9ZFwJAr83h6tZ1DQRg/v///98tYf////8z///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////lLq/RgBEHIzdTfrXe++NAJwmEzTM2AAABfklEQVR4nGNgQAGMTMwsrGzsDLgABycXNw8vH7+AIA4FQsIiomLiEgIggE2NpJS0jKycvIIAFCgqIYCyCkiFqpq6hiZcHgT4tRBAW0cXqEZP30AAFRgaIYCxiSlIjRmaEgFzCwSwtLImrMYGuxpbO3sLB0c7IHByxmWOi6ubhbuHq6urp5c3ujkuPr5+/rjtCggMChYICQ2zDMft5ojIqCD/6BiLWJB5cfFuFgnxIJDojeweI4uk5BSLVLCdaen2FhnpIJCJ4uYsi+ycGItc/H7PAwrkEwifgkKL7CKImuKSUouyEhBIKkdRU1FpUVUNUVNTa29RUgsCdahhWA80p4GAOY1Ay5vwx2mzRUtrm0U7Xjd3WCR0Vlp04Quf7pae3rS+fosJGOGMFF8TeycJTDaaMhVPfIHBtOntPhhqcKQxePpxxUw/WNMhDjXE2IVFDf78NWMmOJ/OwpNPZ8+ZC87v8+YvWLho8ZKlMDXLliPAipXElxvElj9QgLUcAwBSxcSCP7tqdgAAAABJRU5ErkJggg==\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACMAAAAjCAMAAAApB0NrAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAArtQTFRF////PGSgMFmbLFaYK1WYKlWXKlWXP2ahW32vNF2cLleZKlWXKlSXKVSXKVSXKVSXKVSXKVSXKVSXN2Ces8PaLliaKlWYKVSXKVSXKVSXKVSXKVSXKVSXKVSXM1ycK1WYKlWYKVSXKVSXKVSXKVSXKlWYKlWYKlWYQmijK1WYKVSXKVSXM1ycTXGoT3OpSG2mNFycK1WYK1WXZYS08/b5////2ODsYYGyKlWXTHCon7LQprjUpbbT/P3+NV2dUXSqU3arUHOq+vv8XX6w4ujx4efw/v7/YoGy6Oz08/X5S2+oP2aiLFaZXn+xaYe2QGaiLFaYrr7YqrvWJ1KWL1maPmWhP2ahO2Kg+fr8KFOW0NnoobTRPWSh8PP4+/z9fpjAws/iscHZucfduMbc/f3+usjd4efxKlWXZ4W1sMDZKFOXfJa/jaTH2eHs4+nxlKrL9Pf6M1yciqLG6+/13+XvKlWYmK3N8PP3ZYSzUXSrVHascY66+Pn8WnyvxdDj+/v9TnKpwMzg19/rSG2mS2+nmq/OoLLQWHqu5+zz1t7rgZrBrL3X9/n7wM3hNl+dRWql1N3qtsTb4+jxYoKzkKbJ4ufxoLPRLVeZRGqkhZ3EiKDFvMne7vL35erzNV6dzNbm7vH29Pb6Z4a1N1+eW3yvWHmu+vv9orTS/v7+zdjnMFqbQmijYICy7vH37fH2s8Laf5nAKFSXgZrCzdfmJ1OWkajKlavL/Pz9LliZLFeZUnWrMFmaQWejPWSg+fv8TXGoobTSqLrVp7jUMVqbQ2mktMPavMreu8neK1WXKVSXNFycTXGpT3KqSW2mKlWYM1ybK1WYKVSXKVSXscDZL1iaK1WYKVSXKVSXKVSXKVSXfZe/P2WhNFycLVeZK1aYKlWXKlSXKVSXKVSXPGOgMFmaLFaYKlWYKlWYP2aiQU0ClQAAAOl0Uk5TAQobM1FrZgkEESNPgbLE3O76tA4BHEWDp7nS6v7/EktogK3j03FpUwhG8Pv+/Pz88UdQ//////9q//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9H/P78/PxHEkyv5AEcQHCbt+sCCRIpQWeK3vUKGzRRZwn48xW7AAABxklEQVR4nGNgoAlgZGJmYWVjxyXNwcnFzcPLxy8gKCSMVYGIqJi4hKSUtIwsEGCqkZNXUFRSlkUCKqpqcKCgrgFUo6mlLSOLAnR09eBA38AQqMZIFh0Ym5jCgZm5BVY1llbWUGBji0uNnb0DFDg64VLjbOYCBa5uuNS4e3jCAJJ7vLxlfXz9/GUDAoOCZWVDQsOgIDwCriYyKlo2JjYuXtbLNAGowz4xCQqSUxDmpKalZ6SkZGZlx+WA3JObBwUuSO7JLygsKi4uKS0rrwD5q7IKCpD9VV1Tm5pYV9/Q2NQM5LW0RkNBG1L4tHcUdXZ192Q39fbhDOf+CRMnTZ5SbD112nQgb8bMIiiYFYdQEzJ7ztx5lfMXLFwECp/F7UugYOkypDBcvmJl5KrkFStWgzhrJq2FgnXIcbpk/QbZjZtcN28BcZq3lkHBtu1IatJ37ATasasFHBe7/fdAwd59uOKLmPSz/8BBKDiEM/0cPtIPBXsicKnZdfQYFBxPId49J7ROoqk5dfoMHJw1OAdUc/6CmuLFS8hqMPMXGFy+cvXa9RtSN8FqcORlILh1+87de/cfSD58hFsNGDx+8vQZ6/MXeNWQDQC2VQDIiYddQgAAAABJRU5ErkJggg==\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACMAAAAjCAMAAAApB0NrAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAbxQTFRFAAAA6enh6eng6eng6urg6urg5+fd4uDW3dvQ2tjM2dnM6urg6eng6eng6eng5+bc4N/U29nN2djL2djL6urg6eng6eng5+bc4N7T2tjL2dfK2dfK2dnM6eng5ubc4N7T2tjL2dfK2dfK2dfK2tjL2dfK2dfK2dfK2dfK2tnM5ubd4N/U2dfK2dfK2djL2tnM2trM6Ofe4+LY3dzQ3NvP3NvP3dzQ397S4ODV6enf5+bd5OPZ4+PY4+PY5OPZ5OTa6Ojf6Ojf6ejf5NXM49TM49PLzoaDzYOAzIF9uDY2uDU1uDU1uDY2uTY2uzw8vUVFvEFBujo6uTg4vUNDznV14a+v5bu71pCQyGNj0oODzXV1xV1duz091o6O7dXV5b29zXR0wlRU2pqa3aSkuTc3vEBAxl9f6szM3KOjwE9Pujw8yWlp3aOjwVJS6cfH2ZqavUREvEJC1Y2N5r+/2ZubvUZG15KS58LCyGdn3qio6MTEwU9P1pKS0YKC25+f2pycvkZG2JaWzHNzuz4+zXZ2y29vxFpauDY2w1dXvkhIuTk5vENDuj09uDU1uDU1uDU1uDY2uDU1uDU1uTU17qnPtgAAAJR0Uk5TAHqkztTV17cxCAHE4Pn6+fCELQjT6v///uCeLAPr///85HAe//vMijwL////4Y84E//////815Jj//////3gwf/s19Xr/9Xr/8rm////////////////////////////////////////////////////////////////////////////////yf//////vNz6eKjW2v9Bo/MAAAFnSURBVHicY2AAAkYmZhYUwMrGzsHJxYAMuHl4UQEfv4CgkDCKGhFRMTQgLiEpJS2DrIZFFl2NnLyCopKyDAE1Kqpq6hqaXHjUaGmr6Kjq6ukb4FFjaGRsYmJqZm6BR42llbWNjY2tnT0eNWJiDiDg6IRXDRjIsoyqobMaZxdX7MDFGa7Gzd0DO3B3g6vx9PL29vYBAW8IgLG9PFHU+Pr5+/sHBAb5ePsEBQYA2X6+GGqCQ0LDwsIjIqOioyIjwsPCQkOCMdTERMfGxSckJiWHJyclJsTHxUbHYKhJSU1Lz8jMys6Jz8nOysxIT0tNwVDjHZSbl1/gXVhUXFToXVCSlxuE6WaomtKy8rJSAmoqKqsqK3CrqY6vCc6qrauvq80KromvxqbGt6GxqbmgpbWttaWguamxwRdVTTtIjXdQR2dQV2l3T3dpV1BnB8gYb692uJrevn7soK8XrmbCxEmTsYFJEyeApAHqLsZF0qXLbAAAAABJRU5ErkJggg==\"","import { makeStyles } from \"@material-ui/core/styles\";\r\nimport { Tooltip } from \"@material-ui/core\";\r\nimport pdf from \"../vendor/pdf.png\";\r\nimport excel from \"../vendor/excel.png\";\r\nimport word from \"../vendor/word.png\";\r\nimport txt from \"../vendor/txt.png\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n attachedImage: {\r\n height: \"30px\",\r\n width: \"70px\",\r\n objectFit: \"cover\",\r\n border: \"2px solid #ddd\",\r\n cursor: \"pointer\",\r\n marginRight: \"5px\",\r\n\r\n \"&:hover\": {\r\n border: \"2px solid #a6a6a6\",\r\n },\r\n },\r\n}));\r\n\r\nfunction AttachedFile({ file }) {\r\n const classes = useStyles();\r\n if (\r\n file?.name?.includes(\"jpeg\") ||\r\n file?.name?.includes(\"jpg\") ||\r\n file?.name?.includes(\"png\")\r\n ) {\r\n return (\r\n \r\n );\r\n }\r\n if (file?.name.includes(\"pdf\")) {\r\n return (\r\n <>\r\n \r\n {file?.name}\r\n \r\n \r\n );\r\n }\r\n if (file?.name.includes(\"doc\") || file?.name.includes(\"docx\")) {\r\n return (\r\n <>\r\n \r\n {file?.name}\r\n \r\n \r\n );\r\n }\r\n if (file?.name.includes(\"xls\") || file?.name.includes(\"xlsx\")) {\r\n return (\r\n <>\r\n \r\n {file?.name}\r\n \r\n \r\n );\r\n }\r\n if (file?.name.includes(\"txt\")) {\r\n return (\r\n <>\r\n \r\n {file?.name}\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nexport default AttachedFile;\r\n","import { makeStyles } from \"@material-ui/core/styles\";\r\nimport { Tooltip } from \"@material-ui/core\";\r\nimport pdf from \"../vendor/pdf.png\";\r\nimport excel from \"../vendor/excel.png\";\r\nimport word from \"../vendor/word.png\";\r\nimport txt from \"../vendor/txt.png\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n attachedImage: {\r\n height: \"30px\",\r\n width: \"70px\",\r\n objectFit: \"cover\",\r\n border: \"2px solid #ddd\",\r\n cursor: \"pointer\",\r\n marginRight: \"5px\",\r\n\r\n \"&:hover\": {\r\n border: \"2px solid #a6a6a6\",\r\n },\r\n },\r\n}));\r\n\r\nfunction AttachedFile({ file, setOpen, selectedImage }) {\r\n const arr = file.path.split(\"/\");\r\n const fileName = arr[arr.length - 1];\r\n const classes = useStyles();\r\n if (\r\n file?.path.endsWith(\"jpeg\") ||\r\n file?.path.endsWith(\"jpg\") ||\r\n file?.path.endsWith(\"png\")\r\n ) {\r\n return (\r\n {\r\n selectedImage(file?.path);\r\n setOpen(true);\r\n }}\r\n />\r\n );\r\n }\r\n if (file?.path.endsWith(\"pdf\")) {\r\n return (\r\n \r\n \r\n {file?.path}\r\n \r\n \r\n );\r\n }\r\n if (file?.path.endsWith(\"doc\") || file?.path.endsWith(\"docx\")) {\r\n return (\r\n \r\n \r\n {file?.path}\r\n \r\n \r\n );\r\n }\r\n if (file?.path.endsWith(\"xls\") || file?.path.endsWith(\"xlsx\")) {\r\n return (\r\n \r\n \r\n {file?.path}\r\n \r\n \r\n );\r\n }\r\n if (file?.path.endsWith(\"txt\")) {\r\n return (\r\n \r\n \r\n {file?.path}\r\n \r\n \r\n );\r\n }\r\n return null;\r\n}\r\n\r\nexport default AttachedFile;\r\n","import React, { useState, useEffect, useRef } from \"react\";\r\nimport { useHistory, useParams } from \"react-router-dom\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport styled from \"styled-components/macro\";\r\nimport { spacing } from \"@material-ui/system\";\r\n\r\nimport {\r\n Breadcrumbs,\r\n Box,\r\n Card,\r\n CardContent,\r\n CircularProgress,\r\n Divider as MuiDivider,\r\n IconButton,\r\n FormControl,\r\n FormControlLabel,\r\n Grid,\r\n Select,\r\n Switch,\r\n MenuItem,\r\n Typography,\r\n} from \"@material-ui/core/\";\r\n\r\nimport { red } from \"@material-ui/core/colors\";\r\n\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport Moment from \"react-moment\";\r\nimport ArrowBackIcon from \"@material-ui/icons/ArrowBack\";\r\nimport AttachFileIcon from \"@material-ui/icons/AttachFile\";\r\nimport AccountCircle from \"@material-ui/icons/AccountCircle\";\r\nimport CancelIcon from \"@material-ui/icons/Cancel\";\r\nimport api from \"../../api/api\";\r\nimport Loader from \"../../components/Loader\";\r\nimport { useSnackbar } from \"notistack\";\r\nimport CustomModal from \"../../components/CustomModal\";\r\nimport AttachedFile from \"../../components/AttachedFile\";\r\nimport ShowAttachedFile from \"../../components/ShowAttachedFile\";\r\n\r\nimport ReactQuill from \"react-quill\";\r\nimport \"react-quill/dist/quill.snow.css\";\r\nimport \"react-quill/dist/quill.bubble.css\";\r\nimport { rgba } from \"polished\";\r\n\r\nconst QuillWrapperTop = styled.div`\r\n .ql-editor {\r\n min-height: 200px;\r\n }\r\n`;\r\nconst QuillWrapperBottom = styled.div`\r\n .ql-editor {\r\n min-height: 50px;\r\n max-height: 300px;\r\n }\r\n`;\r\n\r\nconst CardHeader = styled.div`\r\n width: 100%;\r\n padding: 16px;\r\n\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\r\n`;\r\n\r\nconst CardTitle = styled.span`\r\n font-size: 16px;\r\n font-weight: bold;\r\n`;\r\n\r\nconst CardTexts = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n`;\r\n\r\nconst AvatarContainer = styled.div`\r\n ${(props) => props.theme.breakpoints.down(\"md\")} {\r\n height: 80px;\r\n }\r\n`;\r\n\r\nconst Avatar = styled.div`\r\n height: 40px;\r\n width: 40px;\r\n border-radius: 50%;\r\n margin-right: 16px;\r\n background: #f44336;\r\n\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n`;\r\n\r\nconst AvatarText = styled.span`\r\n font-size: 18px;\r\n color: #f7f9fc;\r\n font-family: \"Roboto\", \"Helvetica\", \"Arial\", sans-serif;\r\n`;\r\n\r\nconst SelectContainer = styled.div`\r\n display: flex;\r\n justify-content: flex-end;\r\n\r\n align-items: center;\r\n height: 100%;\r\n\r\n ${(props) => props.theme.breakpoints.down(\"md\")} {\r\n justify-content: flex-start;\r\n }\r\n`;\r\n\r\nconst SelectText = styled.div`\r\n font-size: 13px;\r\n font-weight: bold;\r\n margin-right: 8px;\r\n`;\r\n\r\nconst UserSelect = styled(Select)`\r\n width: 180px;\r\n`;\r\n\r\nconst Divider = styled(MuiDivider)(spacing);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n media: {\r\n height: 0,\r\n paddingTop: \"56.25%\", // 16:9\r\n },\r\n expand: {\r\n transform: \"rotate(0deg)\",\r\n marginLeft: \"auto\",\r\n transition: theme.transitions.create(\"transform\", {\r\n duration: theme.transitions.duration.shortest,\r\n }),\r\n },\r\n expandOpen: {\r\n transform: \"rotate(180deg)\",\r\n },\r\n avatar: {\r\n backgroundColor: red[500],\r\n },\r\n\r\n description: {\r\n minHeight: \"80px\",\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n justifyContent: \"space-between\",\r\n },\r\n descriptionBottom: {\r\n height: \"55px\",\r\n padding: \"0 5px\",\r\n\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n },\r\n imagesContainer: {\r\n height: \"55px\",\r\n padding: \"0 5px\",\r\n\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n },\r\n attachedImage: {\r\n height: \"30px\",\r\n width: \"70px\",\r\n objectFit: \"cover\",\r\n border: \"2px solid #ddd\",\r\n cursor: \"pointer\",\r\n marginRight: \"5px\",\r\n\r\n \"&:hover\": {\r\n border: \"2px solid #a6a6a6\",\r\n },\r\n },\r\n\r\n commentContainer: {\r\n marginTop: \"10px\",\r\n border: \"1px solid #ddd\",\r\n },\r\n comment: {\r\n padding: \" 5px 10px\",\r\n },\r\n commentActions: {\r\n backgroundColor: \"#f5f5f5\",\r\n padding: \"5px 10px\",\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"center\",\r\n },\r\n postButton: {\r\n color: \"white\",\r\n padding: \"0 18px\",\r\n height: \"35px\",\r\n background: \"#00b2ff\",\r\n border: \"none\",\r\n borderRadius: \"2px\",\r\n cursor: \"pointer\",\r\n \"&:hover\": {\r\n background: \"#009ce0\",\r\n },\r\n },\r\n comments: {\r\n padding: \"15px 0 0 10px\",\r\n },\r\n singleComment: {\r\n padding: \"10px\",\r\n display: \"flex\",\r\n backgroundColor: \"#f0f0f0\",\r\n marginBottom: \"10px\",\r\n },\r\n commentAvatar: {\r\n height: \"45px\",\r\n width: \"45px\",\r\n color: \"#a8a8a8\",\r\n },\r\n singleCommentTexts: {\r\n padding: \"2px 5px\",\r\n },\r\n singleCommentTitle: {\r\n fontWeight: \"bold\",\r\n whiteSpace: \"pre-wrap\",\r\n wordBreak: \"break-word\",\r\n color: \"#5392e6\",\r\n marginRight: \"10px\",\r\n },\r\n singleCommentDate: {\r\n color: \"#ababab\",\r\n },\r\n singleCommentAttachedImages: {\r\n marginTop: \"10px\",\r\n },\r\n\r\n attachedFiles: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n position: \"relative\",\r\n margin: \"0 4px\",\r\n },\r\n cancelIcon: {\r\n cursor: \"pointer\",\r\n position: \"absolute\",\r\n top: \"-10px\",\r\n right: \"-5px\",\r\n transform: \"scale(.7)\",\r\n color: \"#c71414\",\r\n \"&:hover\": {\r\n color: \"#ff0000\",\r\n },\r\n },\r\n detailHeader: {\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"center\",\r\n },\r\n formControlContainer: {\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"center\",\r\n },\r\n switch: {\r\n transform: \"translateX(12px)\",\r\n },\r\n subheader: {\r\n fontSize: \"13px\",\r\n color: rgba(0, 0, 0, 0.4),\r\n },\r\n}));\r\n\r\nfunction SubHeader({ fullName, createdDate, companyName }) {\r\n const classes = useStyles();\r\n return (\r\n
\r\n Writed by {fullName} -{\" \"}\r\n -{\" \"}\r\n {companyName}\r\n
\r\n );\r\n}\r\n\r\nexport default function SupportTicketDetail() {\r\n const history = useHistory();\r\n const { ticketId } = useParams();\r\n\r\n const classes = useStyles();\r\n\r\n const [attachedFiles, setAttachedFiles] = useState([]);\r\n const [isLoading, setIsLoading] = useState(true);\r\n\r\n const [isLoadingComments, setIsLoadingComments] = useState(true);\r\n\r\n const [isCommentSubmitted, setIsCommentSubmitted] = useState(false);\r\n const [error, setError] = useState(null);\r\n const [supportTicket, setSupportTicket] = useState(null);\r\n const [selectedImage, setSelectedImage] = useState(\"\");\r\n const [showImage, setShowImage] = useState(false);\r\n\r\n const [editorValue, setEditorValue] = useState(\"\");\r\n\r\n const [users, setUsers] = useState([]);\r\n\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const [open, setOpen] = useState(false);\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleSendComment = () => {\r\n if (editorValue) {\r\n let aFiles = [];\r\n let promises = [];\r\n attachedFiles.forEach((file) => {\r\n const formData = new FormData();\r\n formData.append(\"File\", file);\r\n\r\n promises.push(\r\n api\r\n .post(\"api/File/upload?v=1.0\", formData, {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n setIsLoadingComments(!isLoadingComments);\r\n aFiles.push({\r\n id: response.data.data.id,\r\n path: response.data.data.path,\r\n mimeType: file.type,\r\n });\r\n })\r\n );\r\n });\r\n\r\n Promise.all(promises)\r\n .then((response) => {\r\n api\r\n .post(\r\n `api/SupportTicket/${supportTicket?.id}/comments/Create?v=1.0`,\r\n {\r\n description: editorValue,\r\n attachedFiles: aFiles,\r\n },\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n setEditorValue(\"\");\r\n setIsLoadingComments(!isLoadingComments);\r\n setIsCommentSubmitted(!isCommentSubmitted);\r\n setAttachedFiles([]);\r\n });\r\n })\r\n .catch((error) => {\r\n setIsLoadingComments(isLoadingComments);\r\n setError(error.message);\r\n });\r\n } else {\r\n enqueueSnackbar(\"Comment can't be empty!\", {\r\n variant: \"warning\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n };\r\n\r\n const handleFileChange = (e) => {\r\n const newFiles = Object.values(e.target.files);\r\n const filteredAttachedFiles = newFiles.filter((file) =>\r\n file.name.match(/\\.(jpg|jpeg|png|doc|docx|xls|xlsx|txt|pdf)$/i)\r\n );\r\n\r\n if (attachedFiles.length > 0) {\r\n const newFilteredAttachedFiles = attachedFiles.concat(\r\n filteredAttachedFiles.filter(\r\n ({ name }) => !attachedFiles.find((f) => f.name === name)\r\n )\r\n );\r\n\r\n setAttachedFiles(newFilteredAttachedFiles);\r\n } else {\r\n setAttachedFiles(filteredAttachedFiles);\r\n }\r\n e.target.value = null;\r\n };\r\n const handleChangeSwitch = (e) => {\r\n if (e.target.checked) {\r\n api\r\n .put(\r\n `api/SupportTicket/Active/${ticketId}?v=1.0`,\r\n {},\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n enqueueSnackbar(\"Ticket opened\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n })\r\n .catch((error) => {});\r\n } else {\r\n api\r\n .put(\r\n `api/SupportTicket/Deactive/${ticketId}?v=1.0`,\r\n {},\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n enqueueSnackbar(\"Ticket closed\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n })\r\n .catch((error) => {});\r\n }\r\n };\r\n\r\n const handleCancelAttachedFile = (e) => {\r\n const newAttachedFiles = attachedFiles.filter((file) => file.name !== e);\r\n\r\n setAttachedFiles(newAttachedFiles);\r\n };\r\n\r\n const handleCloseImage = (e) => {\r\n setShowImage(false);\r\n };\r\n\r\n const handleUserChange = (e) => {\r\n api\r\n .put(\r\n `api/SupportTicket/AssigntoUser/${ticketId}?v=1.0&userId=${e.target.value}`,\r\n {},\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n enqueueSnackbar(\"Ticket assigned to user successfully \", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n api\r\n .get(`api/SupportTicket/${ticketId}/comments/all?v=1.0`, {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n if (response.data.data) {\r\n setSupportTicket(response.data.data);\r\n setIsLoading(false);\r\n setIsLoadingComments(!isLoadingComments);\r\n } else {\r\n if (response.data.errorCode === 404) {\r\n history.push(\"/404\");\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setIsLoadingComments(!isLoadingComments);\r\n setError(error.message);\r\n });\r\n }, [isCommentSubmitted]);\r\n\r\n useEffect(() => {\r\n api\r\n .get(`api/User?OnlySystemUsers=true&v=1.0`, {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setUsers(response.data.data);\r\n }\r\n });\r\n }, []);\r\n\r\n if (isLoading) return ;\r\n if (error) return
{error}
;\r\n\r\n return (\r\n \r\n \r\n\r\n \r\n \r\n \r\n Support Tickets\r\n \r\n\r\n \r\n Pages\r\n Support Tickets\r\n \r\n \r\n \r\n\r\n \r\n\r\n {showImage && (\r\n \r\n {{selectedImage}}\r\n \r\n )}\r\n \r\n {\r\n history.push(\"/supporttickets\");\r\n }}\r\n >\r\n \r\n \r\n \r\n Close\r\n \r\n \r\n }\r\n />\r\n \r\n Open\r\n \r\n \r\n \r\n \r\n \r\n \r\n {supportTicket?.companyName[0]}\r\n \r\n \r\n\r\n \r\n \r\n \r\n {supportTicket?.title}\r\n \r\n \r\n \r\n \r\n {auth?.user?.rol && auth?.user?.rol.startsWith(\"Bromcom\") && (\r\n \r\n Assign to :\r\n 0 ? supportTicket?.assignedUserId : 0}\r\n >\r\n \r\n None\r\n \r\n {users.map((user) => (\r\n \r\n {user.firstName} {user.lastName}\r\n \r\n ))}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {supportTicket?.description}\r\n \r\n \r\n {supportTicket?.attachedFiles?.map((file) => (\r\n \r\n \r\n \r\n ))}\r\n {open && (\r\n \r\n {selectedImage}\r\n \r\n )}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n handleFileChange(e)}\r\n />\r\n\r\n \r\n\r\n {attachedFiles.map((file) => (\r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n\r\n \r\n {!isLoadingComments ? (\r\n \"Post\"\r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n\r\n \r\n {supportTicket?.comments\r\n ?.slice(0)\r\n .reverse()\r\n .map((comment) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {comment?.fullName}\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n {comment?.attachedFiles?.map((file) => (\r\n \r\n \r\n \r\n ))}\r\n {open && (\r\n \r\n {selectedImage}\r\n \r\n )}\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 } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { useSnackbar } from \"notistack\";\r\nimport * as Yup from \"yup\";\r\nimport styled from \"styled-components/macro\";\r\nimport { Form, Formik } from \"formik\";\r\nimport { Helmet } from \"react-helmet-async\";\r\n\r\nimport {\r\n Breadcrumbs,\r\n Box,\r\n Button as MuiButton,\r\n Card as MuiCard,\r\n CardContent,\r\n CircularProgress,\r\n Divider as MuiDivider,\r\n FormControl as MuiFormControl,\r\n Grid,\r\n TextField as MuiTextField,\r\n Typography,\r\n} from \"@material-ui/core\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport {\r\n Cancel as CancelIcon,\r\n CloudUpload as MuiCloudUpload,\r\n} from \"@material-ui/icons\";\r\nimport api from \"../../api/api\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport AttachedFile from \"../../components/AttachedFile\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\nconst Divider = styled(MuiDivider)(spacing);\r\nconst Card = styled(MuiCard)(spacing);\r\n\r\nconst TextField = styled(MuiTextField)(spacing);\r\n\r\nconst Button = styled(MuiButton)(spacing);\r\n\r\nconst CloudUpload = styled(MuiCloudUpload)(spacing);\r\n\r\nconst FormControl = styled(MuiFormControl)(spacing);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n attachedFile: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n position: \"relative\",\r\n margin: \"0 4px\",\r\n },\r\n cancelIcon: {\r\n cursor: \"pointer\",\r\n position: \"absolute\",\r\n top: \"-10px\",\r\n right: \"-5px\",\r\n transform: \"scale(.7)\",\r\n color: \"#c71414\",\r\n \"&:hover\": {\r\n color: \"#ff0000\",\r\n },\r\n },\r\n uploadButton: {\r\n color: \"white\",\r\n padding: \"5px 10px\",\r\n },\r\n buttons: {\r\n display: \"flex\",\r\n justifyContent: \"flex-end\",\r\n marginTop: \"30px\",\r\n },\r\n submitButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#0b990b\",\r\n \"&:hover\": {\r\n background: \"#25b425\",\r\n },\r\n },\r\n cancelButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#c71414\",\r\n \"&:hover\": {\r\n background: \"#ff0000\",\r\n },\r\n },\r\n imagesContainer: {\r\n height: \"55px\",\r\n padding: \"0 5px\",\r\n\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n },\r\n attachedImage: {\r\n height: \"30px\",\r\n width: \"70px\",\r\n objectFit: \"cover\",\r\n border: \"2px solid #ddd\",\r\n cursor: \"pointer\",\r\n marginRight: \"5px\",\r\n\r\n \"&:hover\": {\r\n border: \"2px solid #a6a6a6\",\r\n },\r\n },\r\n}));\r\n\r\nconst initialValues = {\r\n title: \"\",\r\n description: \"\",\r\n};\r\n\r\nconst validationSchema = Yup.object().shape({\r\n title: Yup.string().required(\"Required\"),\r\n description: Yup.string().required(\"Required\"),\r\n});\r\n\r\nfunction CreateTicket() {\r\n const classes = useStyles();\r\n const [attachedFiles, setAttachedFiles] = useState([]);\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n const history = useHistory();\r\n\r\n const handleCancelTicket = () => {\r\n history.push(\"/supporttickets\");\r\n };\r\n\r\n const handleFileChange = (e) => {\r\n const newFiles = Object.values(e.target.files);\r\n const filteredAttachedFiles = newFiles.filter((file) =>\r\n file.name.match(/\\.(jpg|jpeg|png|doc|docx|xls|xlsx|txt|pdf)$/i)\r\n );\r\n\r\n const newFilteredAttachedFiles = attachedFiles.concat(\r\n filteredAttachedFiles.filter(\r\n ({ name }) => !attachedFiles.find((f) => f.name == name)\r\n )\r\n );\r\n\r\n if (attachedFiles.length > 0) {\r\n setAttachedFiles(newFilteredAttachedFiles);\r\n } else {\r\n setAttachedFiles(filteredAttachedFiles);\r\n }\r\n e.target.value = null;\r\n };\r\n\r\n const handleCancelAttachedFile = (e) => {\r\n const newAttachedFiles = attachedFiles.filter((file) => file.name !== e);\r\n setAttachedFiles(newAttachedFiles);\r\n };\r\n\r\n return (\r\n {\r\n let aFiles = [];\r\n let promises = [];\r\n\r\n const createError = (error) => {\r\n setStatus({ sent: false });\r\n setErrors({ submit: error.message });\r\n setSubmitting(false);\r\n };\r\n\r\n const createSubmit = async () => {\r\n return api\r\n .post(\r\n \"api/SupportTicket/Create?v=1.0\",\r\n {\r\n title: values.title,\r\n description: values.description,\r\n attachedFiles: aFiles,\r\n },\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n setSubmitting(false);\r\n handleCancelTicket();\r\n enqueueSnackbar(\"Ticket created successfully\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n });\r\n };\r\n\r\n attachedFiles.forEach((file) => {\r\n const formData = new FormData();\r\n formData.append(\"File\", file);\r\n promises.push(\r\n api\r\n .post(\"api/File/upload?v=1.0\", formData, {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n aFiles.push({\r\n id: response.data.data.id,\r\n path: response.data.data.path,\r\n mimeType: file.type,\r\n });\r\n })\r\n );\r\n });\r\n\r\n if (promises.length > 0) {\r\n Promise.all(promises).then(createSubmit).catch(createError);\r\n } else {\r\n createSubmit().catch(createError);\r\n }\r\n }}\r\n >\r\n {({\r\n errors,\r\n handleBlur,\r\n handleChange,\r\n handleSubmit,\r\n isSubmitting,\r\n touched,\r\n values,\r\n status,\r\n }) => (\r\n <>\r\n \r\n\r\n \r\n \r\n \r\n Support Tickets\r\n \r\n\r\n \r\n Pages\r\n Support Tickets\r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n Create New Ticket\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n handleFileChange(e)}\r\n />\r\n \r\n\r\n {attachedFiles.map((file) => (\r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n {!isSubmitting && \"Submit\"}\r\n {isSubmitting && (\r\n \r\n )}\r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default CreateTicket;\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport styled from \"styled-components/macro\";\r\nimport PropTypes from \"prop-types\";\r\nimport {\r\n Box,\r\n Button,\r\n Dialog,\r\n DialogContent,\r\n DialogTitle,\r\n IconButton,\r\n Typography,\r\n} from \"@material-ui/core\";\r\nimport { DataGrid, getGridStringOperators } from \"@mui/x-data-grid\";\r\n\r\nimport EditIcon from \"@material-ui/icons/Edit\";\r\nimport DeleteIcon from \"@material-ui/icons/Delete\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { makeStyles } from \"@material-ui/styles\";\r\nimport Moment from \"react-moment\";\r\n\r\nimport QuickSearchToolbar from \"./QuickSearchToolbar\";\r\nimport api from \"../../api/api\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { useSnackbar } from \"notistack\";\r\n\r\nconst Badge = styled.span`\r\n font-size: 11px;\r\n background-color: ${(props) => props.color};\r\n color: white;\r\n border-radius: 8px;\r\n padding: 4px 8px;\r\n text-align: center;\r\n`;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n buttons: {\r\n marginTop: \"40px\",\r\n display: \"flex\",\r\n justifyContent: \"flex-end\",\r\n },\r\n dialogTitleContainer: {\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"center\",\r\n padding: \"0 10px 0 0\",\r\n },\r\n\r\n cancelIcon: {\r\n cursor: \"pointer\",\r\n \"&:hover\": {\r\n opacity: \"0.6\",\r\n },\r\n },\r\n cancelButton: {\r\n background: \"#dbdbdb\",\r\n \"&:hover\": {\r\n background: \"#c4c4c4\",\r\n },\r\n },\r\n deleteButton: {\r\n color: \"white\",\r\n background: \"#c71414\",\r\n marginRight: \"5px\",\r\n \"&:hover\": {\r\n background: \"#ff0000\",\r\n },\r\n },\r\n}));\r\n\r\nfunction escapeRegExp(value) {\r\n return value.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, \"\\\\$&\");\r\n}\r\n\r\nQuickSearchToolbar.propTypes = {\r\n clearSearch: PropTypes.func.isRequired,\r\n onChange: PropTypes.func.isRequired,\r\n value: PropTypes.string.isRequired,\r\n};\r\n\r\nexport default function ManageTeamTable({ users, isSubmitted }) {\r\n const history = useHistory();\r\n const [selectedMemberId, setSelectedMemberId] = useState(\"\");\r\n\r\n const [searchText, setSearchText] = useState(\"\");\r\n const [rows, setRows] = useState(users);\r\n\r\n const [showDelete, setShowDelete] = useState(false);\r\n\r\n const [sortModel, setSortModel] = useState([\r\n {\r\n field: \"createdDate\",\r\n sort: \"desc\",\r\n },\r\n ]);\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const classes = useStyles();\r\n\r\n const requestSearch = (searchValue) => {\r\n setSearchText(searchValue);\r\n const searchRegex = new RegExp(escapeRegExp(searchValue), \"i\");\r\n\r\n const filteredRows = users.filter((row) => {\r\n return Object.keys(row).some((field) => {\r\n return searchRegex.test(row[field]?.toString());\r\n });\r\n });\r\n\r\n setRows(filteredRows);\r\n };\r\n\r\n useEffect(() => {\r\n setRows(users);\r\n }, [users]);\r\n\r\n const handleCloseDelete = () => {\r\n setShowDelete(false);\r\n };\r\n\r\n const handleDeleteMember = async () => {\r\n api\r\n .delete(`api/User/Delete/${selectedMemberId}?v=1.0`, {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n isSubmitted();\r\n handleCloseDelete();\r\n enqueueSnackbar(\"The member has been deleted successfully.\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n })\r\n .catch((error) => {\r\n console.log(error.message);\r\n });\r\n };\r\n\r\n const cols = [\r\n {\r\n field: \"firstName\",\r\n headerName: \"First Name\",\r\n flex: 1,\r\n minWidth: 100,\r\n filterable: false,\r\n },\r\n {\r\n field: \"lastName\",\r\n headerName: \"Last Name\",\r\n flex: 1,\r\n minWidth: 100,\r\n filterable: false,\r\n },\r\n {\r\n field: \"email\",\r\n headerName: \"Email\",\r\n flex: 1,\r\n minWidth: 100,\r\n filterable: false,\r\n },\r\n {\r\n field: \"role\",\r\n headerName: \"Role\",\r\n flex: 1,\r\n minWidth: 100,\r\n filterable: false,\r\n },\r\n {\r\n field: \"lastLogin\",\r\n headerName: \"Last Active\",\r\n flex: 1,\r\n minWidth: 100,\r\n filterable: false,\r\n renderCell: (params) => (\r\n \r\n ),\r\n },\r\n {\r\n field: \"createdDate\",\r\n headerName: \"Created Date\",\r\n flex: 1,\r\n minWidth: 100,\r\n filterable: false,\r\n renderCell: (params) => (\r\n \r\n ),\r\n },\r\n {\r\n field: \"state\",\r\n headerName: \"Status\",\r\n width: 100,\r\n align: \"center\",\r\n filterOperators: getGridStringOperators().filter(\r\n (operator) => operator.value === \"equals\"\r\n ),\r\n\r\n renderCell: (params) => {\r\n if (params.value === \"Active\")\r\n return {params.value};\r\n else return {params.value};\r\n },\r\n },\r\n {\r\n field: \"action\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 100,\r\n filterable: false,\r\n align: \"center\",\r\n renderCell: (params) => {\r\n const handleShowDetail = () => {\r\n history.push(`/manageteamdetail/${params.row.id}`);\r\n };\r\n\r\n const handleShowDelete = () => {\r\n setSelectedMemberId(params.row.id);\r\n setShowDelete(true);\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n {params.row.role !== \"Account Owner\" ? (\r\n \r\n \r\n \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 {showDelete && (\r\n \r\n \r\n Confirmation\r\n \r\n \r\n \r\n \r\n Are you sure you want to delete this user?\r\n \r\n \r\n \r\n Delete\r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n )}\r\n\r\n
\r\n requestSearch(event.target.value),\r\n clearSearch: () => requestSearch(\" \"),\r\n },\r\n }}\r\n onSortModelChange={(model) => setSortModel(model)}\r\n disableSelectionOnClick\r\n onRowDoubleClick={(e) => {\r\n history.push(`/manageteamdetail/${e.row.id}`);\r\n }}\r\n scrollbarSize={30}\r\n hideFooter\r\n />\r\n
\r\n \r\n );\r\n}\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport {\r\n Breadcrumbs,\r\n Box,\r\n Button as MuiButton,\r\n Card as MuiCard,\r\n CardContent,\r\n CircularProgress,\r\n Divider as MuiDivider,\r\n Grid,\r\n FormControl,\r\n MenuItem,\r\n TextField as MuiTextField,\r\n Typography,\r\n} from \"@material-ui/core\";\r\nimport { Helmet } from \"react-helmet-async\";\r\n\r\nimport styled from \"styled-components/macro\";\r\nimport { Formik, Form } from \"formik\";\r\nimport * as Yup from \"yup\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport api from \"../../api/api\";\r\nimport Loader from \"../../components/Loader\";\r\nimport { useSnackbar } from \"notistack\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\nconst Divider = styled(MuiDivider)(spacing);\r\n\r\nconst Card = styled(MuiCard)(spacing);\r\nconst Button = styled(MuiButton)(spacing);\r\nconst TextField = styled(MuiTextField)(spacing);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n formControl: {\r\n margin: theme.spacing(1),\r\n minWidth: 120,\r\n },\r\n InputLabel: {\r\n opacity: 0.6,\r\n padding: \" 5px 10px\",\r\n },\r\n selectEmpty: {\r\n marginTop: theme.spacing(2),\r\n },\r\n\r\n buttons: {\r\n marginTop: \"40px\",\r\n display: \"flex\",\r\n justifyContent: \"flex-end\",\r\n },\r\n createButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#0b990b\",\r\n \"&:hover\": {\r\n background: \"#25b425\",\r\n },\r\n },\r\n cancelButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#c71414\",\r\n \"&:hover\": {\r\n background: \"#ff0000\",\r\n },\r\n },\r\n}));\r\n\r\nconst validationSchema = Yup.object().shape({\r\n firstName: Yup.string().required(\"Required\"),\r\n lastName: Yup.string().required(\"Required\"),\r\n email: Yup.string()\r\n .email()\r\n .matches(\r\n /^([\\w-\\.]+@(?!gmail.com)(?!yahoo.com)(?!hotmail.com)(?!outlook.com)([\\w-]+\\.)+[\\w-]{2,4})?$/,\r\n \"free email services will not be allowed.\"\r\n )\r\n .required(\"Required\"),\r\n role: Yup.string().required(\"Select Role\"),\r\n});\r\n\r\nfunction CreateMember({ isSubmitted }) {\r\n const [roles, setRoles] = useState([]);\r\n const [isLoading, setIsLoading] = useState(true);\r\n const [error, setError] = useState(null);\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const history = useHistory();\r\n\r\n const classes = useStyles();\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const handleCancelMember = () => {\r\n history.push(\"/manageteam\");\r\n };\r\n\r\n useEffect(() => {\r\n api\r\n .get(\"api/User/Roles?v=1.0\", {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setRoles(response.data.data);\r\n setIsLoading(false);\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setError(error.message);\r\n });\r\n }, []);\r\n if (isLoading) return ;\r\n if (error) return
{error}
;\r\n\r\n return (\r\n {\r\n api\r\n .post(\r\n \"api/User/Create?v=1.0\",\r\n {\r\n firstName: values.firstName,\r\n lastName: values.lastName,\r\n email: values.email,\r\n partnerId: auth?.user?.pid,\r\n idsRole: [values.role],\r\n apiKey: \"\",\r\n },\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.data.isSuccess) {\r\n handleCancelMember();\r\n enqueueSnackbar(\"Member has been created successfully.\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n } else if (response.data.message === \"User Exist\") {\r\n enqueueSnackbar(\"There is a registered user with this email\", {\r\n variant: \"warning\",\r\n autoHideDuration: 3000,\r\n });\r\n setStatus({ sent: false });\r\n setSubmitting(false);\r\n }\r\n })\r\n .catch((error) => {\r\n setStatus({ sent: false });\r\n setErrors({ submit: error.message });\r\n setSubmitting(false);\r\n });\r\n }}\r\n >\r\n {({\r\n errors,\r\n handleBlur,\r\n handleChange,\r\n handleSubmit,\r\n touched,\r\n values,\r\n isSubmitting,\r\n }) => (\r\n <>\r\n \r\n\r\n \r\n \r\n \r\n Manage Team\r\n \r\n\r\n \r\n Pages\r\n Manage Team\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {roles.map((role) => (\r\n \r\n {role?.description}\r\n \r\n ))}\r\n \r\n \r\n\r\n \r\n \r\n {!isSubmitting && \"Create\"}\r\n {isSubmitting && (\r\n \r\n )}\r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default CreateMember;\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport styled from \"styled-components/macro\";\r\nimport ManageTeamTable from \"../../components/tables/ManageTeamTable\";\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport api from \"../../api/api\";\r\nimport {\r\n Breadcrumbs as MuiBreadcrumbs,\r\n Button,\r\n Grid,\r\n Divider as MuiDivider,\r\n Typography,\r\n} from \"@material-ui/core\";\r\n\r\nimport { spacing } from \"@material-ui/system\";\r\nimport Loader from \"../../components/Loader\";\r\nimport { Add as AddIcon } from \"@material-ui/icons\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport CreateUser from \"./CreateMember\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\nconst Breadcrumbs = styled(MuiBreadcrumbs)(spacing);\r\n\r\nconst Divider = styled(MuiDivider)(spacing);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n createButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#7FB741\",\r\n \"&:hover\": {\r\n background: \"#8AC747\",\r\n },\r\n },\r\n}));\r\n\r\nfunction ManageTeam() {\r\n const [users, setUsers] = useState([]);\r\n const [showCreateMember, setshowCreateMember] = useState(false);\r\n const [isLoading, setIsLoading] = useState(true);\r\n const [error, setError] = useState(null);\r\n const [isSubmitted, setIsSubmitted] = useState(false);\r\n const history = useHistory();\r\n\r\n const classes = useStyles();\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const handleShowCreateMember = () => {\r\n // setshowCreateMember(true);\r\n history.push(\"/createmember\");\r\n };\r\n\r\n const handleIsSubmitted = () => {\r\n setIsSubmitted(!isSubmitted);\r\n };\r\n\r\n useEffect(() => {\r\n api\r\n .get(\"api/User?v=1.0\", {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setUsers(response.data.data);\r\n setIsLoading(false);\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setError(error.message);\r\n });\r\n }, [isSubmitted]);\r\n\r\n if (isLoading) return ;\r\n if (error) return
{error}
;\r\n\r\n return (\r\n \r\n \r\n\r\n \r\n \r\n \r\n Manage Team\r\n \r\n\r\n \r\n Pages\r\n Manage Team\r\n \r\n \r\n \r\n \r\n \r\n Create New Member\r\n \r\n \r\n \r\n \r\n {!showCreateMember && (\r\n \r\n )}\r\n {showCreateMember && }\r\n \r\n );\r\n}\r\n\r\nexport default ManageTeam;\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { useHistory, useParams } from \"react-router-dom\";\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport {\r\n Breadcrumbs,\r\n Box,\r\n Button as MuiButton,\r\n Card as MuiCard,\r\n CardContent,\r\n CircularProgress,\r\n Divider as MuiDivider,\r\n Grid,\r\n FormControl,\r\n FormControlLabel,\r\n MenuItem,\r\n Switch,\r\n TextField as MuiTextField,\r\n Typography,\r\n} from \"@material-ui/core\";\r\nimport styled from \"styled-components/macro\";\r\nimport { Add as AddIcon } from \"@material-ui/icons\";\r\nimport { Formik, Form } from \"formik\";\r\nimport * as Yup from \"yup\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport api from \"../../api/api\";\r\nimport Loader from \"../../components/Loader\";\r\nimport { useSnackbar } from \"notistack\";\r\n\r\nconst Divider = styled(MuiDivider)(spacing);\r\n\r\nconst Card = styled(MuiCard)(spacing);\r\nconst Button = styled(MuiButton)(spacing);\r\nconst TextField = styled(MuiTextField)(spacing);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n text: {\r\n width: \"500px\",\r\n },\r\n buttons: {\r\n marginTop: \"40px\",\r\n display: \"flex\",\r\n justifyContent: \"flex-end\",\r\n },\r\n createMemberButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#7FB741\",\r\n \"&:hover\": {\r\n background: \"#8AC747\",\r\n },\r\n },\r\n updateButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#0b990b\",\r\n \"&:hover\": {\r\n background: \"#25b425\",\r\n },\r\n },\r\n cancelButton: {\r\n color: \"white\",\r\n padding: \"8px 20px\",\r\n background: \"#c71414\",\r\n \"&:hover\": {\r\n background: \"#ff0000\",\r\n },\r\n },\r\n}));\r\n\r\nconst validationSchema = Yup.object().shape({\r\n firstName: Yup.string().required(\"Required\"),\r\n lastName: Yup.string().required(\"Required\"),\r\n email: Yup.string()\r\n .email()\r\n .matches(\r\n /^([\\w-\\.]+@(?!gmail.com)(?!yahoo.com)(?!hotmail.com)(?!outlook.com)([\\w-]+\\.)+[\\w-]{2,4})?$/,\r\n \"free email services will not be allowed.\"\r\n )\r\n .required(\"Required\"),\r\n role: Yup.string().required(\"Required\"),\r\n});\r\n\r\nfunction MemberDetail() {\r\n const history = useHistory();\r\n const { userId } = useParams();\r\n const [member, setMember] = useState({});\r\n const [isLoading, setIsLoading] = useState(true);\r\n const [error, setError] = useState(null);\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const classes = useStyles();\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const handleCancelMember = () => {\r\n history.push(\"/manageteam\");\r\n };\r\n\r\n useEffect(() => {\r\n api\r\n .get(`api/User/${userId}?v=1.0`, {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n if (response.data.data) {\r\n setMember(response.data.data);\r\n setIsLoading(false);\r\n } else {\r\n if (response.data.errorCode === 404) {\r\n history.push(\"/404\");\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setError(error.message);\r\n });\r\n }, []);\r\n\r\n if (isLoading) return ;\r\n if (error) return
{error}
;\r\n return (\r\n {\r\n api\r\n .put(\r\n `api/User/Update/${userId}?v=1.0`,\r\n {\r\n firstName: values.firstName,\r\n lastName: values.lastName,\r\n email: values.email,\r\n idsRole: [values.role],\r\n status: values.status,\r\n apiKey: \"\",\r\n },\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.data.isSuccess) {\r\n setSubmitting(false);\r\n enqueueSnackbar(\"Member updated successfully\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n handleCancelMember();\r\n } else {\r\n if (response.data.errorMessage === \"User Exist\") {\r\n setSubmitting(false);\r\n enqueueSnackbar(\"User already exits.\", {\r\n variant: \"warning\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n setStatus({ sent: false });\r\n setErrors({ submit: error.message });\r\n setSubmitting(false);\r\n });\r\n }}\r\n >\r\n {({\r\n errors,\r\n handleBlur,\r\n handleChange,\r\n handleSubmit,\r\n touched,\r\n values,\r\n isSubmitting,\r\n }) => (\r\n <>\r\n \r\n\r\n \r\n \r\n \r\n Manage Team\r\n \r\n\r\n \r\n Pages\r\n Manage Team\r\n \r\n \r\n \r\n history.push(\"/createmember\")}\r\n className={classes.createMemberButton}\r\n >\r\n \r\n Create New Member\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {values.role === 4 ? (\r\n \r\n ) : (\r\n \r\n {member?.roles.map((role) => {\r\n if (role.id === 4) return null;\r\n else {\r\n return (\r\n \r\n {role.description}\r\n \r\n );\r\n }\r\n })}\r\n \r\n )}\r\n\r\n \r\n \r\n }\r\n label={values?.status ? \"Active\" : \"Inactive\"}\r\n />\r\n \r\n\r\n \r\n \r\n {!isSubmitting && \"Update\"}\r\n {isSubmitting && (\r\n \r\n )}\r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default MemberDetail;\r\n","import * as types from \"../../constants\";\r\n\r\nexport function setPartner(partner) {\r\n return {\r\n type: types.PARTNER_SET,\r\n partner: partner,\r\n };\r\n}\r\n\r\nexport function setActivePartner(partner) {\r\n return {\r\n type: types.PARTNER_SUCCESS,\r\n activePartner: partner,\r\n };\r\n}\r\n\r\nexport function setPartnerStatus(status) {\r\n return {\r\n type: types.PARTNER_STATUS,\r\n partnerStatus: status,\r\n };\r\n}\r\n\r\nexport function setAllPartners(partners) {\r\n return {\r\n type: types.PARTNER_STATUS,\r\n partners: partners,\r\n };\r\n}\r\n","import styled from \"styled-components/macro\";\r\nconst Badge = styled.span`\r\n font-size: 11px;\r\n background-color: ${(props) => props.color};\r\n color: white;\r\n border-radius: 8px;\r\n padding: 4px 8px;\r\n text-align: center;\r\n`;\r\n\r\nfunction PartnerStatus({ partnerStatusId, isBadge }) {\r\n let statusName, color;\r\n\r\n if (partnerStatusId === 0 || partnerStatusId === 1) {\r\n statusName = \"Open\";\r\n color = \"#54AAD1\";\r\n } else if (partnerStatusId === 2) {\r\n statusName = \"Accepted\";\r\n color = \"#76C893\";\r\n } else if (partnerStatusId === 3) {\r\n statusName = \"Rejected\";\r\n color = \"#EF233C\";\r\n }\r\n if (isBadge) {\r\n return {statusName};\r\n } else {\r\n return {statusName};\r\n }\r\n}\r\n\r\nexport default PartnerStatus;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport styled from \"styled-components/macro\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport Moment from \"react-moment\";\r\n\r\nimport {\r\n Box,\r\n Button as MuiButton,\r\n CircularProgress,\r\n Typography,\r\n} from \"@material-ui/core\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport { setPartnerStatus } from \"../../redux/actions/partnerActions\";\r\nimport PartnerStatus from \"../../components/PartnerStatus\";\r\nimport api from \"../../api/api\";\r\nimport Loader from \"../../components/Loader\";\r\nimport { useSnackbar } from \"notistack\";\r\n\r\nconst Button = styled(MuiButton)(spacing);\r\n\r\nconst Centered = styled.div`\r\n width: 100%;\r\n\r\n text-align: center;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n padding: 0 10px 2rem 10px;\r\n margin: 1rem 0;\r\n`;\r\n\r\nconst InnerBox = styled.div`\r\n text-align: center;\r\n display: flex;\r\n justify-content: flex-start;\r\n`;\r\nconst Buttons = styled.div`\r\n display: flex;\r\n`;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n container: {\r\n position: \"absolute\",\r\n top: \"50%\",\r\n left: \"50%\",\r\n transform: \"translate(-50%, -50%)\",\r\n width: \"90%\",\r\n minHeight: \"500px\",\r\n padding: \" 1rem 0\",\r\n background: \"white\",\r\n boxShadow: 24,\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n alignItems: \"center\",\r\n overflow: \"auto\",\r\n [theme.breakpoints.down(\"960\")]: {\r\n width: \"100%\",\r\n padding: \"2rem 0\",\r\n },\r\n // [theme.breakpoints.down(\"600\")]: {\r\n // width: \"80%\",\r\n // },\r\n },\r\n successButton: {\r\n color: \"white\",\r\n width: \"80px\",\r\n background: \"#0b990b\",\r\n \"&:hover\": {\r\n background: \"#25b425\",\r\n },\r\n },\r\n rejectButton: {\r\n color: \"white\",\r\n width: \"80px\",\r\n background: \"#c71414\",\r\n \"&:hover\": {\r\n background: \"#ff0000\",\r\n },\r\n },\r\n}));\r\n\r\nfunction PartnerRequest({ handleClose }) {\r\n const [partner, setPartner] = useState(\"\");\r\n const [isLoading, setIsLoading] = useState(true);\r\n const [error, setError] = useState(null);\r\n const [isSending, setIsSending] = useState({ accept: false, reject: false });\r\n const dispatch = useDispatch();\r\n const partnerState = useSelector((state) => state.partnerReducer);\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const { partnerStatus } = partnerState;\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const classes = useStyles();\r\n\r\n useEffect(() => {\r\n api\r\n .get(`api/Partner/GetPartner/${partnerState?.partner.id}?v=1.0`, {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setPartner(response.data.data);\r\n setIsLoading(false);\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setError(error.message);\r\n });\r\n }, [partnerStatus]);\r\n\r\n const acceptPartnerHandler = async () => {\r\n setIsSending({ accept: true, reject: false });\r\n\r\n api\r\n .post(`api/Partner/AcceptPartner/${partner?.id}?v=1.0`)\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setIsSending({ accept: false, reject: false });\r\n dispatch(setPartnerStatus(!partnerStatus));\r\n handleClose();\r\n enqueueSnackbar(\"Partner activated.\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n })\r\n .catch((error) => {\r\n setIsSending({ accept: false, reject: false });\r\n setError(error.message);\r\n });\r\n\r\n handleClose();\r\n };\r\n const rejectPartnerHandler = async () => {\r\n setIsSending({ accept: false, reject: true });\r\n api\r\n .post(`api/Partner/RejectPartner/${partner?.id}?v=1.0`)\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setIsSending({ accept: false, reject: false });\r\n dispatch(setPartnerStatus(!partnerStatus));\r\n handleClose();\r\n enqueueSnackbar(\"Partner deactivated.\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n })\r\n .catch((error) => {\r\n setIsSending({ accept: false, reject: false });\r\n setError(error.message);\r\n });\r\n };\r\n\r\n if (isLoading) return ;\r\n if (error) return
{error}
;\r\n return (\r\n \r\n \r\n \r\n Partner Request\r\n \r\n \r\n \r\n \r\n \r\n Organization:\r\n \r\n \r\n {partner.organizationName}\r\n \r\n \r\n \r\n \r\n First Name:\r\n \r\n \r\n {partner.firstName}\r\n
\r\n \r\n \r\n \r\n Last Name:\r\n \r\n \r\n {partner.lastName}\r\n \r\n \r\n \r\n \r\n Email:\r\n \r\n \r\n {partner.email}\r\n \r\n \r\n \r\n \r\n Telephone Number :\r\n \r\n \r\n {partner.phone}\r\n \r\n \r\n \r\n \r\n Website:\r\n \r\n \r\n {partner.webSite}\r\n \r\n \r\n \r\n \r\n Role:\r\n \r\n \r\n {partner.role}\r\n \r\n \r\n \r\n \r\n No of Bromcom Customers:\r\n \r\n \r\n {partner.customerCount}\r\n \r\n \r\n \r\n \r\n Services Provided to Bromcom Customers:\r\n \r\n \r\n {partner.servicesProvidedToBC}\r\n \r\n \r\n \r\n \r\n Planned Integrations:\r\n \r\n \r\n {partner.plannedIntegrations}\r\n \r\n \r\n \r\n \r\n Created Date:\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Status:\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {isSending.accept && !isSending.reject ? (\r\n \r\n ) : (\r\n \"Accept\"\r\n )}\r\n \r\n \r\n {!isSending.accept && isSending.reject ? (\r\n \r\n ) : (\r\n \"Reject\"\r\n )}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default PartnerRequest;\r\n","import styled from \"styled-components/macro\";\r\nimport { Box, Dialog, DialogContent, IconButton } from \"@material-ui/core/\";\r\nimport { makeStyles } from \"@material-ui/styles\";\r\nimport { createMuiTheme as createTheme } from \"@material-ui/core/styles\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\n\r\nconst defaultTheme = createTheme();\r\nconst useStyles = makeStyles(\r\n (theme) => ({\r\n paper: { minHeight: \"630px\" },\r\n dialogTitleContainer: {\r\n display: \"flex\",\r\n justifyContent: \"flex-end\",\r\n MinHeight: \"85px\",\r\n },\r\n closeIcon: {\r\n cursor: \"pointer\",\r\n float: \"right\",\r\n marginTop: \"5px\",\r\n width: \"20px\",\r\n },\r\n }),\r\n { defaultTheme }\r\n);\r\n\r\nconst Backdrop = styled(\"div\")`\r\n z-index: -1;\r\n position: fixed;\r\n right: 0;\r\n bottom: 0;\r\n top: 0;\r\n left: 0;\r\n background-color: rgba(0, 0, 0, 0.2);\r\n -webkit-tap-highlight-color: transparent;\r\n`;\r\n\r\nexport default function CustomDialog({ open, handleClose, children }) {\r\n const classes = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {children}\r\n \r\n );\r\n}\r\n","import React, { useState, useEffect } from \"react\";\r\nimport styled from \"styled-components/macro\";\r\nimport PropTypes from \"prop-types\";\r\nimport { useDispatch } from \"react-redux\";\r\n\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\n\r\nimport { DataGrid, getGridSingleSelectOperators } from \"@mui/x-data-grid\";\r\n\r\nimport MoreVertIcon from \"@material-ui/icons/MoreVert\";\r\nimport Moment from \"react-moment\";\r\n\r\nimport { setPartner } from \"../../redux/actions/partnerActions\";\r\n\r\n// const PartnerRequest = async(() => import(\"../../pages/pages/PartnerRequest\"));\r\nimport PartnerRequest from \"../../pages/pages/PartnerRequest\";\r\n\r\nimport QuickSearchToolbar from \"./QuickSearchToolbar\";\r\nimport CustomDialog from \"../CustomDialog\";\r\n\r\nconst Badge = styled.span`\r\n font-size: 11px;\r\n background-color: ${(props) => props.color};\r\n color: white;\r\n border-radius: 8px;\r\n padding: 4px 8px;\r\n text-align: center;\r\n`;\r\n\r\nfunction escapeRegExp(value) {\r\n return value.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, \"\\\\$&\");\r\n}\r\n\r\nQuickSearchToolbar.propTypes = {\r\n clearSearch: PropTypes.func.isRequired,\r\n onChange: PropTypes.func.isRequired,\r\n value: PropTypes.string.isRequired,\r\n};\r\n\r\nexport default function QuickFilteringGrid({ partners }) {\r\n const dispatch = useDispatch();\r\n\r\n const [searchText, setSearchText] = useState(\"\");\r\n\r\n const [rows, setRows] = useState(partners);\r\n\r\n const [open, setOpen] = useState(false);\r\n\r\n const [sortModel, setSortModel] = useState([\r\n {\r\n field: \"createdDate\",\r\n sort: \"desc\",\r\n },\r\n ]);\r\n\r\n const requestSearch = (searchValue) => {\r\n setSearchText(searchValue);\r\n const searchRegex = new RegExp(escapeRegExp(searchValue), \"i\");\r\n\r\n const filteredRows = partners.filter((row) => {\r\n return Object.keys(row).some((field) => {\r\n return searchRegex.test(row[field]?.toString());\r\n });\r\n });\r\n\r\n setRows(filteredRows);\r\n };\r\n\r\n useEffect(() => {\r\n setRows(partners);\r\n }, [partners]);\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const cols = [\r\n {\r\n field: \"organizationName\",\r\n headerName: \"Organisation Name\",\r\n flex: 1,\r\n minWidth: 150,\r\n filterable: false,\r\n },\r\n {\r\n field: \"firstName\",\r\n headerName: \"First Name\",\r\n flex: 1,\r\n minWidth: 150,\r\n filterable: false,\r\n },\r\n {\r\n field: \"lastName\",\r\n headerName: \"Last Name\",\r\n flex: 1,\r\n minWidth: 150,\r\n filterable: false,\r\n },\r\n {\r\n field: \"createdDate\",\r\n headerName: \"Created Date\",\r\n flex: 1,\r\n minWidth: 150,\r\n filterable: false,\r\n renderCell: (params) => (\r\n \r\n ),\r\n },\r\n {\r\n field: \"partnerStatus\",\r\n headerName: \"Status\",\r\n width: 110,\r\n align: \"center\",\r\n valueOptions: [\r\n { label: 'New', value: 'New' },\r\n { label: 'Open', value: 'Open' },\r\n { label: 'Accepted', value: 'Accepted' },\r\n { label: 'Rejected', value: 'Rejected' }\r\n ],\r\n filterOperators: getGridSingleSelectOperators().filter(\r\n (operator) => operator.value === 'is'\r\n ),\r\n renderCell: (params) => {\r\n if (params.value === \"Open\")\r\n return {params.value};\r\n else return {params.value};\r\n },\r\n },\r\n {\r\n field: \"action\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 110,\r\n align: \"center\",\r\n filterable: false,\r\n renderCell: (params) => {\r\n const onClick = () => {\r\n dispatch(\r\n setPartner(partners.find((partner) => partner.id === params.row.id))\r\n );\r\n setOpen(true);\r\n };\r\n return (\r\n <>\r\n \r\n Click\r\n \r\n\r\n {open && (\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 requestSearch(event.target.value),\r\n clearSearch: () => requestSearch(\" \"),\r\n },\r\n }}\r\n onSortModelChange={(model) => setSortModel(model)}\r\n disableSelectionOnClick\r\n scrollbarSize={30}\r\n onRowDoubleClick={(e) => {\r\n dispatch(\r\n setPartner(partners.find((partner) => partner.id === e.row.id))\r\n );\r\n setOpen(true);\r\n }}\r\n />\r\n
\r\n );\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\nimport styled from \"styled-components/macro\";\r\nimport { useSelector } from \"react-redux\";\r\n// import PartnerRequestsTable from \"../../components/tables/PartnerRequestsTable\";\r\nimport QuickFilteringGrid from \"../../components/tables/QuickFilteringGrid\";\r\n\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport Loader from \"../../components/Loader\";\r\n\r\nimport {\r\n Breadcrumbs as MuiBreadcrumbs,\r\n Divider as MuiDivider,\r\n Typography,\r\n} from \"@material-ui/core\";\r\n\r\nimport { spacing } from \"@material-ui/system\";\r\nimport api from \"../../api/api\";\r\n\r\nconst Breadcrumbs = styled(MuiBreadcrumbs)(spacing);\r\n\r\nconst Divider = styled(MuiDivider)(spacing);\r\n\r\nfunction PartnerRequests() {\r\n const partner = useSelector((state) => state.partnerReducer);\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const { partnerStatus } = partner;\r\n\r\n const [isLoading, setIsLoading] = useState(true);\r\n const [error, setError] = useState(null);\r\n const [partners, setPartners] = useState([]);\r\n\r\n useEffect(() => {\r\n api\r\n\r\n .get(\"api/Partner/GetPartnerRequests?v=1.0\", {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n if (response.data.isSuccess) {\r\n setPartners(response.data.data);\r\n }\r\n\r\n setIsLoading(false);\r\n })\r\n .catch((error) => {\r\n setError(error.message);\r\n });\r\n }, [partnerStatus]);\r\n\r\n if (isLoading) return ;\r\n if (error) return
{error}
;\r\n\r\n return (\r\n \r\n \r\n\r\n \r\n Partner Requests\r\n \r\n\r\n \r\n Pages\r\n Partner Requests\r\n \r\n\r\n \r\n\r\n {/* */}\r\n \r\n {/* \r\n \r\n */}\r\n \r\n );\r\n}\r\n\r\nexport default PartnerRequests;\r\n","import React, { useState, useEffect } from \"react\";\r\nimport styled from \"styled-components/macro\";\r\nimport PropTypes from \"prop-types\";\r\nimport Moment from \"react-moment\";\r\n\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\n\r\nimport { DataGrid, getGridSingleSelectOperators } from \"@mui/x-data-grid\";\r\n\r\nimport VisibilityIcon from \"@material-ui/icons/Visibility\";\r\n\r\nimport QuickSearchToolbar from \"./QuickSearchToolbar\";\r\n\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\nconst Badge = styled.span`\r\n font-size: 11px;\r\n background-color: ${(props) => props.color};\r\n color: white;\r\n border-radius: 8px;\r\n padding: 4px 8px;\r\n text-align: center;\r\n`;\r\n\r\nfunction escapeRegExp(value) {\r\n return value.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, \"\\\\$&\");\r\n}\r\n\r\nQuickSearchToolbar.propTypes = {\r\n clearSearch: PropTypes.func.isRequired,\r\n onChange: PropTypes.func.isRequired,\r\n value: PropTypes.string.isRequired,\r\n};\r\n\r\nexport default function PartnerAccountsTable({ partners }) {\r\n const [searchText, setSearchText] = useState(\"\");\r\n\r\n const [rows, setRows] = useState(partners);\r\n\r\n const history = useHistory();\r\n\r\n const requestSearch = (searchValue) => {\r\n setSearchText(searchValue);\r\n const searchRegex = new RegExp(escapeRegExp(searchValue), \"i\");\r\n\r\n const filteredRows = partners.filter((row) => {\r\n return Object.keys(row).some((field) => {\r\n return searchRegex.test(row[field]?.toString());\r\n });\r\n });\r\n\r\n setRows(filteredRows);\r\n };\r\n useEffect(() => {\r\n setRows(partners);\r\n }, [partners]);\r\n\r\n // useEffect(() => {\r\n // setRows(partners);\r\n // }, [filterValue]);\r\n\r\n // const onFilterChange = React.useCallback((filterModel) => {\r\n // if (\r\n // filterModel.items[0].value &&\r\n // capitalizeFirstLetter(filterModel.items[0].value) === \"Active\"\r\n // ) {\r\n // const newPartners = rows.filter((row) => row.partnerStatusId === 2);\r\n // console.log(newPartners);\r\n // // setRows();\r\n // } else if (\r\n // filterModel.items[0].value &&\r\n // capitalizeFirstLetter(filterModel.items[0].value) === \"Deactive\"\r\n // ) {\r\n // setRows(partners.filter((row) => row.partnerStatusId === 2));\r\n // }\r\n // }, []);\r\n\r\n const cols = [\r\n {\r\n field: \"organizationName\",\r\n headerName: \"Organisation Name\",\r\n flex: 2,\r\n minWidth: 150,\r\n filterable: false,\r\n },\r\n {\r\n field: \"accountOwner\",\r\n headerName: \"Account Owner\",\r\n flex: 1,\r\n minWidth: 150,\r\n filterable: false,\r\n },\r\n {\r\n field: \"applicationCount\",\r\n headerName: \"Number of Applications\",\r\n flex: 1,\r\n minWidth: 150,\r\n filterable: false,\r\n },\r\n {\r\n field: \"createdDate\",\r\n headerName: \"Created Date\",\r\n flex: 1,\r\n minWidth: 150,\r\n filterable: false,\r\n renderCell: (params) => (\r\n \r\n ),\r\n },\r\n {\r\n field: \"status\",\r\n headerName: \"Status\",\r\n width: 100,\r\n valueOptions: [\r\n { label: 'Active', value: 'Active' },\r\n { label: 'Deactive', value: 'Deactive' }\r\n ],\r\n filterOperators: getGridSingleSelectOperators().filter(\r\n (operator) => operator.value === \"is\"\r\n ),\r\n renderCell: (params) => {\r\n if (params.value === \"Active\")\r\n return {params.value};\r\n else return {params.value};\r\n },\r\n },\r\n\r\n {\r\n field: \"action\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 100,\r\n filterable: false,\r\n align: \"center\",\r\n renderCell: (params) => {\r\n const onClick = () => {\r\n history.push(`/partner-accounts/${params.row.id}`);\r\n };\r\n\r\n return (\r\n \r\n Click\r\n \r\n );\r\n },\r\n },\r\n ];\r\n\r\n return (\r\n
\r\n requestSearch(event.target.value),\r\n clearSearch: () => requestSearch(\" \"),\r\n },\r\n }}\r\n // onSortModelChange={(model) => setSortModel(model)}\r\n disableSelectionOnClick\r\n scrollbarSize={30}\r\n onRowDoubleClick={(e) => {\r\n history.push(`/partner-accounts/${e.row.id}`);\r\n }}\r\n />\r\n
\r\n );\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\nimport styled from \"styled-components/macro\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport Loader from \"../../components/Loader\";\r\n\r\nimport {\r\n Breadcrumbs as MuiBreadcrumbs,\r\n Divider as MuiDivider,\r\n Typography,\r\n} from \"@material-ui/core\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport api from \"../../api/api\";\r\nimport PartnerAccountsTable from \"../../components/tables/PartnerAccountsTable.\";\r\nimport { setIsGridLoading } from \"../../redux/actions/datagridActions\";\r\n\r\nconst Breadcrumbs = styled(MuiBreadcrumbs)(spacing);\r\n\r\nconst Divider = styled(MuiDivider)(spacing);\r\n\r\nfunction PartnerAccounts() {\r\n const dispatch = useDispatch();\r\n const auth = useSelector((state) => state.authReducer);\r\n\r\n const [partnerAccState, setPartnerAccState] = useState({\r\n partners: [],\r\n isLoading: true,\r\n error: null,\r\n });\r\n\r\n useEffect(() => {\r\n api\r\n .get(`api/Partner/GetPartners?&v=1.0`, {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n })\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setPartnerAccState({\r\n partners: response.data.data,\r\n totalCount: response.data.totalCount,\r\n isLoading: false,\r\n error: null,\r\n });\r\n dispatch(setIsGridLoading(false));\r\n }\r\n })\r\n .catch((error) => {\r\n setPartnerAccState({\r\n ...partnerAccState,\r\n isLoading: false,\r\n error: error.message,\r\n });\r\n });\r\n }, []);\r\n\r\n if (partnerAccState?.isLoading) return ;\r\n if (partnerAccState?.error)\r\n return
{partnerAccState.error}
;\r\n\r\n return (\r\n \r\n \r\n\r\n \r\n Partner Accounts\r\n \r\n\r\n \r\n Pages\r\n Partner Accounts\r\n \r\n\r\n \r\n\r\n \r\n \r\n );\r\n}\r\n\r\nexport default PartnerAccounts;\r\n","import React, { useState, useRef } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport styled from \"styled-components/macro\";\r\n\r\nimport {\r\n Box,\r\n Dialog,\r\n DialogContent,\r\n DialogTitle,\r\n IconButton,\r\n TextField as MuiTextField,\r\n Tooltip,\r\n Typography,\r\n Button,\r\n} from \"@material-ui/core\";\r\n\r\nimport { DataGrid } from \"@mui/x-data-grid\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport BlockRoundedIcon from \"@material-ui/icons/BlockRounded\";\r\nimport ViewModuleIcon from \"@material-ui/icons/ViewModule\";\r\nimport LockOpenIcon from \"@material-ui/icons/LockOpen\";\r\nimport InfoRoundedIcon from \"@material-ui/icons/InfoRounded\";\r\n\r\nimport { makeStyles } from \"@material-ui/styles\";\r\n\r\nimport PermissionPage from \"../../pages/pages/Permisson\";\r\nimport RegisteredSchools from \"../../pages/pages/RegisteredSchools\";\r\nimport api from \"../../api/api\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport { useSnackbar } from \"notistack\";\r\n\r\nconst TextField = styled(MuiTextField)(spacing);\r\n\r\nconst Badge = styled.span`\r\n font-size: 11px;\r\n background-color: ${(props) => props.color};\r\n color: white;\r\n border-radius: 8px;\r\n padding: 4px 8px;\r\n text-align: center;\r\n`;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n buttons: {\r\n marginTop: \"40px\",\r\n display: \"flex\",\r\n justifyContent: \"flex-end\",\r\n },\r\n cancelIconContainer: {\r\n position: \"relative\",\r\n },\r\n cancelIcon: {\r\n position: \"absolute\",\r\n right: \"10px\",\r\n top: \"10px\",\r\n cursor: \"pointer\",\r\n \"&:hover\": {\r\n opacity: \"0.6\",\r\n },\r\n },\r\n container: {\r\n minHeight: \"400px\",\r\n },\r\n dialogTitleContainer: {\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"center\",\r\n padding: \"0 10px 0 0\",\r\n },\r\n noRowsOverlay: {\r\n height: \"100%\",\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n alignItems: \"center\",\r\n },\r\n noRowsOverlayText: {\r\n transform: \"translateY(40px)\",\r\n },\r\n registeredSchool: {\r\n cursor: \"pointer\",\r\n borderBottom: \"2px solid #000\",\r\n \"&:hover\": {\r\n color: \"blue\",\r\n borderBottom: \"2px solid blue\",\r\n },\r\n },\r\n blockButton: {\r\n color: \"white\",\r\n background: \"#c71414\",\r\n marginRight: \"5px\",\r\n \"&:hover\": {\r\n background: \"#ff0000\",\r\n },\r\n },\r\n unblockButton: {\r\n color: \"white\",\r\n marginRight: \"5px\",\r\n background: \"#0b990b\",\r\n \"&:hover\": {\r\n background: \"#25b425\",\r\n },\r\n },\r\n infoIcon: {\r\n color: \"#999999\",\r\n marginLeft: \"3px\",\r\n },\r\n}));\r\n\r\nconst NoRowsOverlay = () => {\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n No Applications Found\r\n \r\n \r\n );\r\n};\r\n\r\nexport default function PartnerAccountsAppTable({\r\n applications,\r\n height,\r\n changeStatus,\r\n}) {\r\n const [selectedApp, setSelectedApp] = useState({});\r\n const [showVersions, setShowVersions] = useState(false);\r\n const [showRegisteredSchools, setShowRegisteredSchools] = useState(false);\r\n const [showBlockPage, setShowBlockPage] = useState(false);\r\n const noteRef = useRef();\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const classes = useStyles();\r\n\r\n const handleCloseVersions = () => {\r\n setShowVersions(false);\r\n };\r\n\r\n const handleCloseRegisteredSchools = () => {\r\n setShowRegisteredSchools(false);\r\n };\r\n\r\n const handleCloseBlockPage = () => {\r\n setShowBlockPage(false);\r\n };\r\n\r\n const handleBlock = async () => {\r\n if (noteRef.current.value.length === 0) {\r\n enqueueSnackbar(\"Please enter your reason for blocking\", {\r\n variant: \"warning\",\r\n autoHideDuration: 3000,\r\n });\r\n } else {\r\n api\r\n .put(\r\n `api/PartnerApplication/ChangeStatus/${selectedApp?.appId}?v=1.0`,\r\n {\r\n description: noteRef.current.value,\r\n statusId: 3,\r\n },\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n handleCloseBlockPage();\r\n changeStatus();\r\n enqueueSnackbar(\"The application has been successfully blocked\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error.message);\r\n });\r\n }\r\n };\r\n\r\n const handleUnblock = async () => {\r\n api\r\n .put(\r\n `api/PartnerApplication/ChangeStatus/${selectedApp?.appId}?v=1.0`,\r\n {\r\n description: \"asdasd\",\r\n statusId: 2,\r\n },\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n handleCloseBlockPage();\r\n changeStatus();\r\n enqueueSnackbar(\"The application has been successfully unblocked\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error.message);\r\n });\r\n };\r\n\r\n const cols = [\r\n {\r\n field: \"name\",\r\n headerName: \"Application Name\",\r\n flex: 1,\r\n minWidth: 200,\r\n },\r\n {\r\n field: \"status\",\r\n headerName: \"Status\",\r\n flex: 1,\r\n minWidth: 150,\r\n renderCell: (params) => {\r\n if (params.value === \"Publish\")\r\n return {params.value};\r\n else if (params.value === \"Unpublish\")\r\n return {params.value};\r\n else if (params.value === \"Blocked\") {\r\n return (\r\n <>\r\n {params.value}\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n },\r\n },\r\n {\r\n field: \"registeredSchool\",\r\n headerName: \"Registered Schools\",\r\n flex: 1,\r\n minWidth: 150,\r\n\r\n renderCell: (params) => {\r\n const onClick = () => {\r\n setSelectedApp({\r\n appId: params.row.id,\r\n versions: params.row.versions,\r\n });\r\n setShowRegisteredSchools(true);\r\n };\r\n\r\n return (\r\n \r\n \r\n {params.value}\r\n \r\n \r\n );\r\n },\r\n },\r\n\r\n {\r\n field: \"action\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 110,\r\n align: \"center\",\r\n\r\n renderCell: (params) => {\r\n const handleShowVersions = () => {\r\n setSelectedApp({\r\n appId: params.row.id,\r\n applicationId: params.row.applicationId,\r\n versions: params.row.versions,\r\n });\r\n setShowVersions(true);\r\n };\r\n\r\n const handleShowBlockPage = () => {\r\n setSelectedApp({\r\n appId: params.row.id,\r\n applicationId: params.row.applicationId,\r\n versions: params.row.versions,\r\n status: params.row.status,\r\n adminComment: params.row.adminComment,\r\n });\r\n setShowBlockPage(true);\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n {params.row.status === \"Blocked\" ? (\r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n \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 {!showVersions && !showRegisteredSchools && showBlockPage && (\r\n \r\n \r\n \r\n Confirmation\r\n \r\n \r\n \r\n \r\n \r\n Are you sure you want to{\" \"}\r\n {selectedApp.status === \"Blocked\" ? \"Unblock\" : \"Block \"} this\r\n application?\r\n \r\n {selectedApp.status === \"Blocked\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n\r\n \r\n {selectedApp.status === \"Blocked\" ? (\r\n \r\n Unblock\r\n \r\n ) : (\r\n \r\n Block\r\n \r\n )}\r\n\r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n )}\r\n\r\n {showVersions && !showRegisteredSchools && !showBlockPage && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n {!showVersions && showRegisteredSchools && !showBlockPage && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n
\r\n {\r\n setSelectedApp({\r\n appId: e.row.id,\r\n applicationId: e.row.applicationId,\r\n versions: e.row.versions,\r\n });\r\n setShowRegisteredSchools(true);\r\n }}\r\n hideFooterPagination\r\n />\r\n
\r\n \r\n );\r\n}\r\n","import React, { useState, useEffect } from \"react\";\r\nimport { useHistory, useParams } from \"react-router-dom\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport styled from \"styled-components/macro\";\r\nimport Moment from \"react-moment\";\r\n\r\nimport {\r\n Breadcrumbs,\r\n Box,\r\n Button,\r\n Dialog,\r\n DialogContent,\r\n DialogTitle,\r\n Divider as MuiDivider,\r\n IconButton,\r\n Typography,\r\n} from \"@material-ui/core/\";\r\n\r\nimport ArrowBackIcon from \"@material-ui/icons/ArrowBack\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\n\r\nimport api from \"../../api/api\";\r\n\r\nimport Loader from \"../../components/Loader\";\r\nimport axios from \"axios\";\r\nimport PartnerAccountsAppTable from \"../../components/tables/PartnerAccountsAppTable\";\r\nimport { useSnackbar } from \"notistack\";\r\n\r\nconst Divider = styled(MuiDivider)(spacing);\r\n\r\nconst InnerBox = styled.div`\r\n text-align: center;\r\n display: flex;\r\n justify-content: flex-start;\r\n`;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n detailHeader: {\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"center\",\r\n },\r\n detailTitle: {\r\n marginBottom: \"15px\",\r\n },\r\n detailContent: {\r\n backgroundColor: \"#fff\",\r\n marginTop: theme.spacing(1),\r\n borderRadius: \"5px\",\r\n padding: \"20px\",\r\n border: \"1px solid #e0e0e0\",\r\n },\r\n deactiveButton: {\r\n cursor: \"pointer\",\r\n color: \"white\",\r\n padding: \"0 10px\",\r\n height: \"30px\",\r\n backgroundColor: \"#c71414\",\r\n \"&:hover\": {\r\n backgroundColor: \"#ff0000\",\r\n },\r\n },\r\n activeButton: {\r\n cursor: \"pointer\",\r\n padding: \"0 10px\",\r\n color: \"white\",\r\n width: \"60px\",\r\n height: \"30px\",\r\n background: \"#0b990b\",\r\n \"&:hover\": {\r\n background: \"#25b425\",\r\n },\r\n },\r\n appTable: {\r\n marginTop: \"30px\",\r\n },\r\n buttons: {\r\n marginTop: \"40px\",\r\n display: \"flex\",\r\n justifyContent: \"flex-end\",\r\n },\r\n dialogTitleContainer: {\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"center\",\r\n padding: \"0 10px 0 0\",\r\n },\r\n\r\n cancelIcon: {\r\n cursor: \"pointer\",\r\n \"&:hover\": {\r\n opacity: \"0.6\",\r\n },\r\n },\r\n deactiveButtonInDialog: {\r\n color: \"white\",\r\n marginRight: \"5px\",\r\n backgroundColor: \"#c71414\",\r\n \"&:hover\": {\r\n backgroundColor: \"#ff0000\",\r\n },\r\n },\r\n activeButtonInDialog: {\r\n color: \"white\",\r\n marginRight: \"5px\",\r\n background: \"#0b990b\",\r\n \"&:hover\": {\r\n background: \"#25b425\",\r\n },\r\n },\r\n cancelButton: {\r\n background: \"#dbdbdb\",\r\n \"&:hover\": {\r\n background: \"#c4c4c4\",\r\n },\r\n },\r\n}));\r\n\r\nexport default function PartnerAccountsDetail() {\r\n const classes = useStyles();\r\n const { partnerId } = useParams();\r\n\r\n const [partner, setPartner] = useState({});\r\n const [isLoading, setIsLoading] = useState(true);\r\n\r\n const [error, setError] = useState(null);\r\n const [showDetail, setShowDetail] = useState(false);\r\n const [partnerStatus, setPartnerStatus] = useState(false);\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n const history = useHistory();\r\n const { enqueueSnackbar } = useSnackbar();\r\n\r\n const handleChangePartnerStatus = () => {\r\n setPartnerStatus(!partnerStatus);\r\n };\r\n\r\n const handleShowDetail = () => {\r\n setShowDetail(true);\r\n };\r\n\r\n const handleCloseDetail = () => {\r\n setShowDetail(false);\r\n };\r\n\r\n const handleDeactivate = async () => {\r\n setIsLoading(true);\r\n api\r\n .put(\r\n `api/Partner/Deactive/${partnerId}?v=1.0`,\r\n {},\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setPartnerStatus(!partnerStatus);\r\n setIsLoading(false);\r\n setShowDetail(false);\r\n\r\n enqueueSnackbar(\"Partner deactivated.\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setError(error.message);\r\n });\r\n };\r\n\r\n const handleActivate = async () => {\r\n setIsLoading(true);\r\n api\r\n .put(\r\n `api/Partner/Active/${partnerId}?v=1.0`,\r\n {},\r\n {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }\r\n )\r\n .then((response) => {\r\n if (response.status === 200) {\r\n setIsLoading(false);\r\n setPartnerStatus(!partnerStatus);\r\n setShowDetail(false);\r\n\r\n enqueueSnackbar(\"Partner activated.\", {\r\n variant: \"success\",\r\n autoHideDuration: 3000,\r\n });\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setError(error.message);\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n axios\r\n .all([\r\n api.get(`api/Partner/GetPartner/${partnerId}?v=1.0`, {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }),\r\n api.get(`api/PartnerApplication/List/${partnerId}?v=1.0`, {\r\n headers: {\r\n Authorization: `Bearer ${auth.user?.token}`,\r\n },\r\n }),\r\n ])\r\n .then(\r\n axios.spread(function (partner, applications) {\r\n if (partner.data.data) {\r\n setPartner({\r\n partner: partner.data.data,\r\n applications: applications.data.data,\r\n });\r\n setIsLoading(false);\r\n } else {\r\n if (partner.data.errorCode === 404) {\r\n history.push(\"/404\");\r\n }\r\n }\r\n })\r\n )\r\n .catch((error) => console.log(error));\r\n }, [partnerStatus]);\r\n\r\n if (isLoading) return ;\r\n if (error) return
{error}
;\r\n return (\r\n <>\r\n {showDetail && (\r\n \r\n \r\n \r\n Confirmation\r\n \r\n \r\n \r\n \r\n \r\n Are you sure you want to\r\n {partner?.partner?.isActive ? \" deactivate\" : \" activate\"} this\r\n partner ?\r\n \r\n \r\n {partner?.partner?.isActive ? (\r\n \r\n Deactivate\r\n \r\n ) : (\r\n \r\n Activate\r\n \r\n )}\r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n\r\n \r\n Partner Accounts\r\n \r\n\r\n \r\n Pages\r\n Partner Accounts\r\n \r\n\r\n \r\n \r\n history.push(\"/partner-accounts\")}>\r\n \r\n \r\n\r\n {partner?.partner?.isActive ? (\r\n \r\n Deactivate\r\n \r\n ) : (\r\n \r\n Activate\r\n \r\n )}\r\n \r\n\r\n \r\n \r\n Partner Detail\r\n \r\n \r\n \r\n Organization:\r\n \r\n \r\n {partner?.partner?.organizationName}\r\n \r\n \r\n \r\n \r\n First Name:\r\n \r\n \r\n {partner?.partner?.firstName}\r\n \r\n \r\n \r\n \r\n Last Name:\r\n \r\n \r\n {partner?.partner?.lastName}\r\n \r\n \r\n \r\n \r\n Email:\r\n \r\n \r\n {partner?.partner?.email}\r\n \r\n \r\n \r\n \r\n Telephone Number :\r\n \r\n \r\n {partner?.partner?.phone}\r\n \r\n \r\n \r\n \r\n Website:\r\n \r\n \r\n {partner?.partner?.webSite}\r\n \r\n \r\n \r\n \r\n Role:\r\n \r\n \r\n {partner?.partner?.role}\r\n \r\n \r\n \r\n \r\n No of Bromcom Customers:\r\n \r\n \r\n {partner?.partner?.customerCount}\r\n \r\n \r\n \r\n \r\n Services Provided to Bromcom Customers:\r\n \r\n \r\n {partner?.partner?.servicesProvidedToBC}\r\n \r\n \r\n \r\n \r\n Planned Integrations:\r\n \r\n \r\n {partner?.partner?.plannedIntegrations}\r\n \r\n \r\n \r\n \r\n Created Date:\r\n \r\n \r\n \r\n \r\n \r\n \r\n {partner?.applications.length > 0 ? (\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 } from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { Link } from \"react-router-dom\";\r\nimport styled from \"styled-components/macro\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport * as Yup from \"yup\";\r\nimport { Formik } from \"formik\";\r\nimport { signIn } from \"../../redux/actions/authActions\";\r\nimport AppLogo from \"../../components/AppLogo\";\r\n\r\nimport {\r\n Box,\r\n Button,\r\n Grid,\r\n TextField as MuiTextField,\r\n} from \"@material-ui/core\";\r\nimport { spacing } from \"@material-ui/system\";\r\nimport { Alert as MuiAlert } from \"@material-ui/lab\";\r\n\r\nconst Alert = styled(MuiAlert)(spacing);\r\n\r\nconst TextField = styled(MuiTextField)(spacing);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n gridItem: {\r\n minHeight: \"400px\",\r\n [theme.breakpoints.down(768)]: {\r\n minHeight: \"300px\",\r\n },\r\n },\r\n signInButton: {\r\n height: \"50px\",\r\n fontSize: \"16px\",\r\n color: \"white\",\r\n backgroundColor: \"#1D88E4\",\r\n \"&:hover\": { backgroundColor: \"#176dea\" },\r\n },\r\n signUpButton: {\r\n width: \"100px\",\r\n fontSize: \"15px\",\r\n color: \"white\",\r\n marginBottom: \"40px\",\r\n backgroundColor: \"#1d88E4\",\r\n \"&:hover\": { backgroundColor: \"#176dea\" },\r\n },\r\n}));\r\nconst Wrapper = styled.div`\r\n position: absolute;\r\n\r\n width: 900px;\r\n padding: ${(props) => props.theme.spacing(6)}px;\r\n\r\n @media (max-width: 768px) {\r\n width: 100%;\r\n top: 0;\r\n }\r\n`;\r\n\r\nconst LogoContainer = styled.div`\r\n display: flex;\r\n margin-bottom: 25px;\r\n`;\r\n\r\nconst Title = styled.h4`\r\n font-size: 20px;\r\n color: #212529;\r\n margin: 0;\r\n @media (max-width: 768px) {\r\n font-size: 15px;\r\n }\r\n`;\r\nconst Border = styled.div`\r\n height: 1px;\r\n width: 100%;\r\n background-color: #e9ecef;\r\n margin: 10px 0 25px 0;\r\n`;\r\n\r\nconst ForgotPasswordContainer = styled.div`\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n margin-top: 20px;\r\n width: 100%;\r\n`;\r\nconst Text = styled.p`\r\n font-size: 17px;\r\n`;\r\n\r\nconst FormContainer = styled.div``;\r\n\r\nconst RightSideContainer = styled.div`\r\n padding-left: 15px;\r\n margin-left: 55px;\r\n border-left: 1px solid #e0e0e0;\r\n\r\n @media (max-width: 768px) {\r\n margin-left: 0;\r\n border-left: none;\r\n }\r\n`;\r\n\r\nconst ForgotPasswordLink = styled(Link)`\r\n font-size: 17px;\r\n color: #6c757d;\r\n text-decoration: none;\r\n &:hover {\r\n text-decoration: underline;\r\n }\r\n`;\r\n\r\nfunction HomePage() {\r\n const dispatch = useDispatch();\r\n\r\n const classes = useStyles();\r\n\r\n const auth = useSelector((state) => state.authReducer);\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n Log in to Bromcom Partner Portal\r\n \r\n\r\n {\r\n try {\r\n await dispatch(\r\n signIn({\r\n username: values.email,\r\n password: values.password,\r\n type: \"partner\",\r\n })\r\n );\r\n } catch (error) {\r\n const message = error.message || \"Something went wrong\";\r\n\r\n setStatus({ success: false });\r\n setErrors({ submit: message });\r\n setSubmitting(false);\r\n }\r\n }}\r\n >\r\n {({\r\n errors,\r\n handleBlur,\r\n handleChange,\r\n handleSubmit,\r\n isSubmitting,\r\n touched,\r\n values,\r\n }) => (\r\n
\r\n {errors.submit && (\r\n \r\n {errors.submit}\r\n \r\n )}\r\n {!auth?.isSuccess && auth?.message === \"Wrong Password\" && (\r\n \r\n The password you entered is incorrect. Please try again.\r\n \r\n )}\r\n {!auth?.isSuccess && auth?.message === \"User Not Exist\" && (\r\n \r\n No users found with this email address. Please check your\r\n email address.\r\n \r\n )}\r\n {!auth?.isSuccess && auth?.message === \"User Not Active\" && (\r\n \r\n The account with this email is deactivated. Contact to{\" \"}\r\n {\r\n window.location = \"mailto:Partner.Portal@bromcom.com\";\r\n e.preventDefault();\r\n }}\r\n >\r\n Partner.Portal@bromcom.com\r\n \r\n \r\n )}\r\n \r\n \r\n\r\n \r\n \r\n Sign in\r\n \r\n \r\n \r\n Forgot your password?\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n
\r\n \r\n \r\n Not Registered?\r\n \r\n \r\n Create an account to get access to Bromcom API, FAQ, examples and\r\n connect with Bromcom schools.\r\n \r\n Click the button below to get started.\r\n \r\n Sign up\r\n \r\n\r\n \r\n Need help? Send us an email at Partner.Portal@bromcom.com\r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default HomePage;\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { Box, Typography } from \"@material-ui/core\";\r\n\r\nfunction CustomTabPanel(props) {\r\n const { children, value, index, id, ...other } = props;\r\n\r\n return (\r\n