{"version":3,"sources":["utils/gradients.js","utils/getInitials.js","components/Map/SemiCircle.js","components/MapCapacity/SemiCircle.js","components/MapGeneric/SemiCircle.js","components/MapCapacityGeneric/SemiCircle.js","actions/sessionActions.js","theme/palette.js","theme/typography.js","theme/overrides/MuiChip.js","theme/overrides/MuiIconButton.js","theme/overrides/MuiInputBase.js","theme/overrides/MuiLinearProgress.js","theme/overrides/MuiListItemIcon.js","theme/overrides/MuiTableHead.js","theme/overrides/index.js","theme/overrides/MuiButton.js","theme/overrides/MuiCardActions.js","theme/overrides/MuiCardContent.js","theme/overrides/MuiCardHeader.js","theme/overrides/MuiOutlinedInput.js","theme/overrides/MuiPaper.js","theme/overrides/MuiTableCell.js","theme/overrides/MuiTableRow.js","theme/overrides/MuiToggleButton.js","theme/overrides/MuiTypography.js","theme/index.js","views/EnergySmartScoreDashboard/requests/EnergySmartScoreDashboardRequests.js","views/EnergySmartScoreDashboard/actions/EnergySmartScoreDashboardActions.js","views/EnergySmartScoreDashboard/reducers/EnergySmartScoreDashboardReducer.js","reducers/sessionReducer.js","reducers/notifierReducer.js","views/Management/requests/UsersRequests.js","views/Management/actions/UsersActions.js","views/Management/reducers/UsersReducer.js","views/Management/requests/OperatorsRequests.js","views/Management/actions/OperatorsActions.js","views/Management/reducers/OperatorsReducer.js","views/Management/requests/SettingsRequests.js","views/Management/actions/SettingsActions.js","views/Management/reducers/SettingsReducer.js","views/Dashboard/requests/DashboardInspectRequests.js","views/Dashboard/actions/DashboardInspectActions.js","views/Dashboard/reducers/DashboardInspectReducer.js","components/Map/reducers/MapReducer.js","components/MapCapacity/reducers/MapReducer.js","components/MapGeneric/reducers/MapReducerGeneric.js","components/MapCapacityGeneric/reducers/MapReducerGeneric.js","views/MapDriveTests/requests/MapDriveTestsRequests.js","views/MapDriveTests/actions/MapDriveTestsActions.js","views/MapDriveTests/reducers/MapDriveTestsReducer.js","views/MapDriveTestsGeneric/requests/MapDriveTestsRequestsGeneric.js","views/MapDriveTestsGeneric/actions/MapDriveTestsActionsGeneric.js","views/MapDriveTestsGeneric/reducers/MapDriveTestsReducerGeneric.js","views/DatasetExport/requests/DatasetExportRequests.js","views/DatasetExport/actions/DatasetExportActions.js","views/DatasetExport/reducers/DatasetExportReducer.js","views/STTMAlgorithm/requests/STTMAlgorithmRequests.js","views/STTMAlgorithm/actions/STTMAlgorithmActions.js","views/STTMAlgorithm/reducers/STTMAlgorithmReducer.js","views/STTMAlgorithmGeneric/requests/STTMAlgorithmRequestsGeneric.js","views/STTMAlgorithmGeneric/actions/STTMAlgorithmActionsGeneric.js","views/STTMAlgorithmGeneric/reducers/STTMAlgorithmReducerGeneric.js","views/DualMap/requests/DualMapRequests.js","views/DualMap/actions/DualMapActions.js","views/DualMap/reducers/DualMapReducer.js","views/DualMapGeneric/requests/DualMapRequestsGeneric.js","views/DualMapGeneric/actions/DualMapActionsGeneric.js","views/DualMapGeneric/reducers/DualMapReducerGeneric.js","views/Home/requests/HomeRequests.js","views/Home/actions/HomeActions.js","views/Home/reducers/HomeReducer.js","reducers/index.js","views/ProjectList/components/Filter/components/MultiSelect/MultiSelect.js","views/Dashboard/components/Inspect/components/OptionsButton/OptionsButton.js","views/Dashboard/components/Inspect/DashboardInspect.js","views/EnergySmartScoreDashboard/EnergySmartScoreDashboard.js","layouts/Auth/components/Topbar/Topbar.js","layouts/Auth/Auth.js","layouts/Error/Error.js","components/NotificationHub/NotificationHub.js","layouts/Dashboard/components/NavBar/navigationConfig.js","layouts/Dashboard/components/NavBar/NavBar.js","layouts/Dashboard/components/TopBar/TopBar.js","utils/axios.js","layouts/Dashboard/Dashboard.js","layouts/Dashboard/components/ChatBar/ChatBar.js","views/DashboardAnalytics/components/EarningsSegmentation/components/Chart/Chart.js","views/DashboardAnalytics/components/EarningsSegmentation/EarningsSegmentation.js","views/DashboardAnalytics/components/FinancialStats/components/Chart/Chart.js","views/DashboardAnalytics/components/FinancialStats/FinancialStats.js","views/DashboardAnalytics/components/Header/Header.js","views/DashboardAnalytics/components/MostProfitableProducts/components/CircularProgress/CircularProgress.js","views/DashboardAnalytics/components/MostProfitableProducts/MostProfitableProducts.js","views/DashboardAnalytics/components/Overview/Overview.js","views/DashboardAnalytics/components/TopReferrals/TopReferrals.js","views/DashboardAnalytics/components/CustomerActivity/CustomerActivity.js","views/DashboardAnalytics/components/LatestOrders/LatestOrders.js","views/DashboardAnalytics/DashboardAnalytics.js","views/DashboardDefault/components/Header/Header.js","views/DashboardDefault/components/LatestProjects/LatestProjects.js","views/DashboardDefault/components/NewProjects/NewProjects.js","views/DashboardDefault/components/RoiPerCustomer/RoiPerCustomer.js","views/DashboardDefault/components/TeamTasks/components/TaskItem/TaskItem.js","views/DashboardDefault/components/TeamTasks/TeamTasks.js","views/DashboardDefault/components/TodaysMoney/TodaysMoney.js","views/DashboardDefault/components/SystemHealth/SystemHealth.js","views/DashboardDefault/components/RealTime/components/Chart/Chart.js","views/DashboardDefault/components/RealTime/RealTime.js","views/DashboardDefault/components/PerformanceOverTime/components/Chart/Chart.js","views/DashboardDefault/components/PerformanceOverTime/PerformanceOverTime.js","views/DashboardDefault/DashboardDefault.js","views/Overview/components/Header/Header.js","views/Overview/components/Statistics/Statistics.js","views/Overview/components/Notifications/Notifications.js","views/Overview/components/Projects/Projects.js","views/Overview/components/Todos/Todos.js","views/Overview/Overview.js","views/Home/components/Evolution.js","views/Home/Home.js","views/Presentation/components/FAQ/FAQ.js","views/Presentation/components/Header/Header.js","views/Presentation/components/PluginsSupport/PluginsSupport.js","views/Presentation/components/SourceFiles/SourceFiles.js","views/Presentation/components/UserFlows/UserFlows.js","views/Presentation/Presentation.js","views/Management/components/Users/components/Card/Card.js","views/Management/components/Users/components/UsersDataTable/UsersDataTable.js","components/ModalDialog/components/DialogTitle.js","components/ModalDialog/components/DialogContent.js","components/ModalDialog/ModalDialog.js","views/Management/components/Users/components/AddEditUserDialog/components/AddEditUserForm/AddEditUserForm.js","views/Management/components/Users/components/AddEditUserDialog/AddEditUserDialog.js","views/Management/components/Users/Users.js","views/Management/components/Operators/components/OperatorCard/OperatorCard.js","views/Management/components/Operators/components/OperatorsList/OperatorsList.js","views/Management/components/Operators/components/AddOperatorDialog/components/AddOperatorForm/AddOperatorForm.js","views/Management/components/Operators/components/AddOperatorDialog/AddOperatorDialog.js","views/Management/components/Operators/Operators.js","views/Management/components/OperatorDetails/components/Overview/components/Details/Details.js","views/Management/components/OperatorDetails/components/Overview/components/Picture/Picture.js","views/Management/components/OperatorDetails/components/Overview/Overview.js","views/Management/components/OperatorDetails/components/Projects/components/ProjectsDataTable/components/ActionsButton/ActionsButton.js","views/Management/components/OperatorDetails/components/Projects/components/ProjectsDataTable/ProjectsDataTable.js","views/Management/components/OperatorDetails/components/Projects/components/AddProjectDialog/components/AddProjectForm/AddProjectForm.js","views/Management/components/OperatorDetails/components/Projects/components/AddProjectDialog/AddProjectDialog.js","views/Management/components/OperatorDetails/components/Projects/Projects.js","views/Management/components/OperatorDetails/components/Users/components/UsersDataTable/UsersDataTable.js","views/Management/components/OperatorDetails/components/Users/Users.js","views/Management/components/OperatorDetails/OperatorDetails.js","views/Management/components/Settings/components/General/components/GeneralForm/GeneralForm.js","views/Management/components/Settings/components/General/General.js","views/Management/components/Settings/components/Notifications/Notifications.js","views/Management/components/Settings/components/Security/Security.js","views/Management/components/Settings/Settings.js","views/Management/components/Settings/components/Subscription/Subscription.js","views/MapDriveTests/components/components/TopToolBar.js","views/MapDriveTests/components/components/SideFilters.js","views/MapDriveTests/components/components/Components/Components/SummaryDialogForm.js","views/MapDriveTests/components/components/Components/SummaryDialog.js","views/MapDriveTests/components/MapDriveTests.js","views/MapDriveTestsGeneric/components/components/TopToolBarGeneric.js","views/MapDriveTestsGeneric/components/components/SideFiltersGeneric.js","views/MapDriveTestsGeneric/components/components/Components/Components/SummaryDialogFormGeneric.js","views/MapDriveTestsGeneric/components/components/Components/SummaryDialogGeneric.js","views/MapDriveTestsGeneric/components/MapDriveTestsGeneric.js","views/DatasetExport/DatasetExport.js","components/DataTable/DataTableStyled.js","views/STTMAlgorithm/components/STTMAlgorithmDatatable.js","views/STTMAlgorithm/STTMAlgorithm.js","views/STTMAlgorithmGeneric/components/STTMAlgorithmDatatableGeneric.js","views/STTMAlgorithmGeneric/STTMAlgorithmGeneric.js","views/SRCAAlgorithm/SRCAAlgorithm.js","views/SRCAAlgorithmGeneric/SRCAAlgorithmGeneric.js","views/SPFMAlgorithm/SPFMAlgorithm.js","views/SPFMAlgorithmGeneric/SPFMAlgorithmGeneric.js","views/DualMap/components/components/CompareBox.js","views/DualMap/components/components/FiltersTop.js","views/DualMap/components/components/FiltersTopCompare.js","views/DualMap/components/components/FiltersSide.js","views/DualMap/components/components/FiltersSideCompare.js","views/DualMap/components/components/UtilizationDates.js","views/DualMap/components/components/Components/DrivetestChart.js","views/DualMap/components/components/AdditionalInfo.js","views/DualMap/components/components/Components/Components/CarriersColorsDialogForm.js","views/DualMap/components/components/Components/CarriersColorsPickerDialog.js","views/DualMap/components/components/UtilizationDatesCompare.js","views/DualMap/components/DualMap.js","views/DualMapGeneric/components/components/CompareBox.js","views/DualMapGeneric/components/components/FiltersTop.js","views/DualMapGeneric/components/components/FiltersTopCompare.js","views/DualMapGeneric/components/components/FiltersSide.js","views/DualMapGeneric/components/components/FiltersSideCompare.js","views/DualMapGeneric/components/components/UtilizationDates.js","views/DualMapGeneric/components/components/Components/DrivetestChart.js","views/DualMapGeneric/components/components/AdditionalInfo.js","views/DualMapGeneric/components/components/Components/Components/CarriersColorsDialogForm.js","views/DualMapGeneric/components/components/Components/CarriersColorsPickerDialog.js","views/DualMapGeneric/components/components/UtilizationDatesCompare.js","views/DualMapGeneric/components/DualMapGeneric.js","routes.js","components/Notifier/Notifier.js","mixins/chartjs.js","mixins/moment.js","mixins/validate.js","utils/mock.js","mock/accountMock.js","mock/calendarMock.js","mock/chatMock.js","mock/customerMock.js","mock/mailMock.js","mock/projectMock.js","mock/socialFeedMock.js","mock/userMock.js","mock/invoiceMock.js","mock/kanbanMock.js","mock/taskMock.js","mock/orderMock.js","mock/dashboardMock.js","App.js","store/configureStore.js","serviceWorker.js","index.js","components/MapGeneric/actions/MapActionsGeneric.js","actions/notifierActions.js","components/SelectField/SelectField.js","components/MapCapacity/actions/MapActions.js","components/AddPost/AddPost.js","components/Alert/Alert.js","components/CodeBlock/CodeBlock.js","components/CookiesNotification/CookiesNotification.js","components/FilesDropzone/FilesDropzone.js","components/GenericMoreButton/GenericMoreButton.js","components/GoogleAnalytics/GoogleAnalytics.js","components/Markdown/Markdown.js","components/Navigation/components/NavigationListItem/NavigationListItem.js","components/Navigation/Navigation.js","components/NotificationsPopover/components/NotificationList/NotificationList.js","components/NotificationsPopover/components/EmptyList/EmptyList.js","components/NotificationsPopover/NotificationsPopover.js","components/Page/Page.js","components/Paginate/Paginate.js","components/PostCard/components/CommentBubble/CommentBubble.js","components/PostCard/components/CommentForm/CommentForm.js","components/PostCard/components/Reactions/Reactions.js","components/PostCard/PostCard.js","components/PricingModal/PricingModal.js","components/ProjectCard/ProjectCard.js","components/ReviewStars/ReviewStars.js","components/RichEditor/components/EditorToolbar/EditorToolbar.js","components/RichEditor/utils/block.js","components/ScrollReset/ScrollReset.js","components/RichEditor/RichEditor.js","components/SearchBar/components/Filter/Filter.js","components/SearchBar/components/Search/Search.js","components/SearchBar/SearchBar.js","components/StackAvatars/StackAvatars.js","components/StatusBullet/StatusBullet.js","components/TableEditBar/TableEditBar.js","components/Loading/Loading.js","components/Header/Header.js","components/DatePicker/Calendar.js","components/FilePicker/FilePicker.js","components/PowerBIDashboard/PowerBIDashboard.js","components/FiltersDrawer/FiltersDrawer.js","components/Map/Map.js","components/MapCapacity/MapCapacity.js","components/MapGeneric/MapGeneric.js","components/MapCapacityGeneric/MapCapacityGeneric.js","components/Chart/Chart.js","components/MapCapacityGeneric/actions/MapActionsGeneric.js","configuration/configuration.js","utils/AxiosRequest.js","components/Label/Label.js","components/TableauDashboard/TableauDashboard.js","components/Label/index.js","components/DatePicker/DatePicker.js","components/Checkbox/Checkbox.js","components/AuthGuard/AuthGuard.js","components/Map/actions/MapActions.js","utils/useRouter.js","components/DataTable/DataTable.js"],"names":["buildGradient","start","end","grey","colors","blue","indigo","green","orange","red","name","replace","split","slice","map","v","toUpperCase","join","define","L","DEG_TO_RAD","Math","PI","fixAngle","angle","rotated","p","r","add","point","cos","sin","multiplyBy","Point","prototype","this","semicircle","options","startAngle","stopAngle","innerRadius","setStartAngle","redraw","setStopAngle","setInnerRadius","radius","setDirection","direction","degrees","undefined","getDirection","isSemicircle","_containsPoint","normalize","atan2","y","_point","x","nStart","nStop","distanceTo","_radius","_clickTolerance","SemiCircle","Circle","extend","SemiCircleMarker","CircleMarker","semiCircle","latlng","semiCircleMarker","_updateCircleSVG","SVG","_updateCircle","_updateCircleCanvas","Canvas","include","layer","call","_empty","_setPath","_map","latLngToLayerPoint","_latlng","r2","round","_radiusY","largeArc","d","_mRadius","lng","lat","crs","latR","Earth","R","top","project","bottom","p2","divideBy","lat2","unproject","lngR","acos","Number","isNaN","subtract","getPixelOrigin","innerStart","innerEnd","innerR2","path","ctx","_ctx","s","save","scale","beginPath","moveTo","lineTo","arc","restore","_fillStroke","dest","i","j","len","src","arguments","length","latLngToPoint","zoom","projectedPoint","projection","transformation","_transform","pointToLatLng","untransformedPoint","untransform","pow","log","LN2","getProjectedBounds","infinite","b","bounds","min","transform","max","Bounds","wrapLatLng","wrapLng","wrapNum","wrapLat","alt","LatLng","wrapLatLngBounds","center","getCenter","newCenter","latShift","lngShift","sw","getSouthWest","ne","getNorthEast","newSw","newNe","LatLngBounds","distance","latlng1","latlng2","rad","lat1","sinDLat","sinDLon","a","c","sqrt","SESSION_LOGIN","SESSION_LOGOUT","SET_NOTIFICATIONS","USER_INFO","SET_LOADING","REDIRECT_TO_ERROR","onLogin","type","onRedirectToError","value","link","getUserInfo","token","dispatch","AxiosRequest","method","url","config","API_URL","headers","Authorization","then","response","data","user","login","email","password","localStorage","setItem","TOKEN_KEY","Error","message","logout","removeItem","RedirectToError","recover","CompleteRegistration","rpassword","ResetPassword","FetchNotifications","hasLoading","notifications","NotificationMarkAsRead","id","SetLoading","isLoading","UploadFile","file","formData","FormData","append","ShowFile","blob","filename","decodeURIComponent","newBlob","Blob","window","navigator","msSaveOrOpenBlob","URL","createObjectURL","document","createElement","href","download","body","appendChild","click","setTimeout","removeChild","revokeObjectURL","DownloadFile","filePath","responseType","white","black","primary","contrastText","dark","main","light","secondary","A400","error","text","blueGrey","icon","background","default","paper","divider","h1","color","palette","fontWeight","fontSize","letterSpacing","lineHeight","h2","h3","h4","h5","h6","subtitle1","subtitle2","body1","body2","button","caption","overline","textTransform","styleOverrides","root","backgroundColor","deletable","input","opacity","borderRadius","overflow","colorPrimary","minWidth","MuiButton","contained","boxShadow","MuiCardActions","padding","MuiCardContent","MuiCardHeader","MuiChip","MuiIconButton","MuiInputBase","MuiLinearProgress","MuiListItemIcon","MuiOutlinedInput","notchedOutline","borderColor","MuiPaper","elevation1","MuiTableHead","MuiTableCell","typography","borderBottom","MuiTableRow","MuiToggleButton","borderTopLeftRadius","borderBottomLeftRadius","borderTopRightRadius","borderBottomRightRadius","MuiTypography","gutterBottom","marginBottom","theme","createTheme","components","overrides","DownloadEnergyScore","exportList","ds","EXPORT_SELECTION","initialState","dashboard","smartScoreReducer","state","action","export","getItem","loggedIn","loadingCount","decoded","jwt","currentDate","Date","getTime","exp","sessionReducer","actionTypes","role","defaultState","GetUsersRequest","params","GetRolesRequest","GetOperatorProjectsRequest","operatorIds","GetUserRequest","userId","ResendConfirmationEmailRequest","DeactivateUserRequest","GET_USERS","GET_USERS_STATS","TOGGLE_ADD_EDIT_USER_DIALOG","GET_ROLES","GET_OPERATORS","GET_OPERATOR_PROJECTS","SET_FORM_STATE","GET_USER","GetUsers","users","catch","enqueueSnackbar","variant","GetUsersStats","usersStats","ToggleAddEditUserDialog","openAddEditUserDialog","openAddEditUserDialogId","onToggleAddEditUserDialog","SetFormState","formState","onSetFormState","roles","operators","operatorProjects","isValid","values","touched","errors","usersReducer","GetOperatorRequest","operatorId","UpdateImageRequest","operator","DeleteProjectRequest","projectId","UpdateOperatorRequest","TOGGLE_ADD_OPERATOR_DIALOG","NAVIGATE_DETAILS","GET_OPERATOR","TOGGLE_ADD_PROJECT_DIALOG","GetOperators","ToggleAddOperatorDialog","openAddEditOperatorDialog","openAddOperatorDialog","NavigateDetails","detailsOperatorId","onNavigateDetails","GetOperator","UpdateImage","ToggleAddProjectDialog","openAddEditProjectDialog","openAddProjectDialog","operatorsReducer","GetOperatorsRequest","UpdateSettingsRequest","ChangePasswordRequest","settingsReducer","DashboardInspectRequest","dashboardId","DASHBOARD_INSPECT","reportsReducer","lon","maps","mapUpdated","zoomToUpdate","AddNewMap","mapAlreadyExists","find","el","newAddMaps","filter","push","coordinates","CenterLatitude","CenterLongitude","topology","twoG","threeG","fourG","legend","legendElements","title","updateEnd","UpdateCoordinates","newUpdateMaps","item","newCoordinates","UpdateTopology","newTopologyMaps","newTopology","UpdateLegend","newLegendMaps","newLegend","UpdatePopup","newMaps","control","activePopup","UpdateOverlays","activeLayers","MapReducer","MapCapacityReducer","MapReducerGeneric","MapCapacityReducerGeneric","GetTopology4gRequest","tech","bands","GetTopologyLabels2gRequest","GetTopologyLabels3gRequest","GetTopologyLabels4gRequest","RESET_FIELDS","GET_TOPOLOGY_2G","GET_TOPOLOGY_3G","GET_TOPOLOGY_4G","GET_TOPOLOGY_LABELS_2G","GET_TOPOLOGY_LABELS_3G","GET_TOPOLOGY_LABELS_4G","GET_SITES_IDS","GET_SITE_ID_LOCATION","TOGGLE_FILTERS","CLEAR_FORM","TOGGLE_SUMMARY_DIALOG","GetTopology4g","topology4gData","GetTopologyLabels2g","topologyLabels2gData","GetTopologyLabels3g","topologyLabels3gData","GetTopologyLabels4g","topologyLabels4gData","ToggleSummaryDialog","visible","onToggleSummaryDialog","failuresFilters","failuresVoice","failuresPacket","cities","drives","dates","selectedDates","driveTests4g","driveTest","driveTestCodes","driveTestScanner","topology2gData","topology3gData","techBandVoice","techBandPacket","drivetestSummaryDropdown","drivetestSummary","sitesIds","siteIdLocation","openFilters","summaryDialogVisibility","mapAutoZoom","mapFilters","mapSize","scenario","mapDriveTestsReducer","mapDriveTestsReducerGeneric","GetDatabaseYearsRequest","databaseName","GetDatabaseMonthsRequest","year","DownloadDatabaseRequest","month","GET_DATABASE_NAMES","GET_DATABASE_YEARS","GET_DATABASE_MONTHS","SET_SELECTED_DATABASE","SET_SELECTED_YEAR","SET_SELECTED_MONTH","onSetSelectedYear","selectedYear","ResetFields","SetSelectedMonth","selectedMonth","databases","years","months","selectedDatabase","datasetExportReducer","GetSTTMAlgorithmDataRequest","GetWeekRequest","GET_STTM_ALGORITHM_DATA","GET_WEEK","week","STTMAlgorithmReducer","STTMAlgorithmReducerGeneric","GetFailuresFiltersRequest","GetFailuresPointsVoiceRequest","city","failureType","cfn1Level","GetFailuresPointsPacketRequest","GetDriveTestsCitiesRequest","userOperator","GetTopologyRequest","selectedUtilizationDate","selectedTrafficPctAdd","SET_SELECTED_UTILIZATION_DATE","GET_FAILURES_FILTERS","GET_FAILURES_VOICE","GET_FAILURES_PACKET","GET_DRIVETESTS_CITIES","GET_DRIVETESTS_DRIVES","GET_DRIVETESTS_DATES","SET_SELECTED_DATES","GET_DRIVETEST","GET_TOPOLOGY_5G","SET_SELECTED_TRAFFIC_PCT_ADD","SET_SELECTED_UTILIZATION_DATE_COMPARE","GET_FAILURES_FILTERS_COMPARE","GET_FAILURES_VOICE_COMPARE","GET_FAILURES_PACKET_COMPARE","GET_DRIVETESTS_CITIES_COMPARE","GET_DRIVETESTS_DRIVES_COMPARE","GET_DRIVETESTS_DATES_COMPARE","SET_SELECTED_DATES_COMPARE","GET_DRIVETEST_COMPARE","GET_TOPOLOGY_2G_COMPARE","GET_TOPOLOGY_3G_COMPARE","GET_TOPOLOGY_4G_COMPARE","GET_TOPOLOGY_5G_COMPARE","GET_TRAFFIC_PCT_ADD_OPTIONS","GET_UTILIZATION_DATES","TOGGLE_CARRIERS_COLORS_DIALOG","GET_CARRIERS_COLORS","TOGGLE_CARRIERS_COLORS_PICKER_DIALOG","SetSelectedUtilizationDate","onSetSelectedUtilizationDate","GetFailuresPointsVoice","GetFailuresPointsPacket","SetSelectedDates","SetSelectedTrafficPctAdd","onSetSelectedTrafficPctAdd","SetSelectedUtilizationDateCompare","selectedUtilizationDateCompare","onSetSelectedUtilizationDateCompare","GetFailuresPointsVoiceCompare","failuresVoiceCompare","GetFailuresPointsPacketCompare","failuresPacketCompare","SetSelectedDatesCompare","selectedDatesCompare","GetTopology4gCompare","topology4gDataCompare","topology5gData","topologyLabelsData","failuresFiltersSideCompare","drivesCompare","datesCompare","driveTestCompare","topology2gDataCompare","topology3gDataCompare","topology5gDataCompare","topologyLabelsDataCompare","techBandVoiceCompare","techBandPacketCompare","trafficPctAddOptions","utilizationDates","carriersColorsDialogVisibility","carriersColorsPickerDialogVisibility","carriersColors","currentColorCode","selectedDate","selectedCity","selectedDrive","voiceActive","packetActive","failureTypeVoice","failureTypePacket","cfn1LevelVoice","cfn1LevelPacket","mapCompare","mapFrameSize","mapSync","selectedCityCompare","selectedDriveCompare","voiceActiveCompare","packetActiveCompare","techBandVoiceActiveCompare","techBandPacketActiveCompare","failureTypeVoiceCompare","failureTypePacketCompare","cfn1LevelVoiceCompare","cfn1LevelPacketCompare","dualMapReducer","topologyLabelsDto","citiesCompare","tableIdColorCode","dualMapReducerGeneric","GetDatasetInfoRequest","GET_DATASET_INFO","GET_DATASET_INFO_EVO","DatasetInfo","DatasetInfoEVO","homeReducer","rootReducer","combineReducers","session","notifierReducer","ENQUEUE_SNACKBAR","key","notification","CLOSE_SNACKBAR","dismissAll","dismissed","REMOVE_SNACKBAR","dashboardInspectReducer","mapReducer","mapCapacityReducer","mapReducerGeneric","mapCapacityReducerGeneric","useStyles","makeStyles","menuItem","formControlLabel","spacing","width","margin","MultiSelect","props","label","onChange","classes","anchorRef","useRef","useState","openMenu","setOpenMenu","handleOptionToggle","event","newValue","target","checked","Button","onClick","ref","Menu","anchorEl","current","className","menu","onClose","open","PaperProps","style","option","MenuItem","FormControlLabel","Checkbox","indexOf","OptionsButton","exportPdf","fullScreen","moreRef","useDispatch","Tooltip","IconButton","size","anchorOrigin","vertical","horizontal","transformOrigin","ListItemIcon","ListItemText","memo","maxWidth","tabs","marginTop","alert","content","DashboardInspect","match","pageTitle","headerHidden","module","handle","useFullScreenHandle","useSelector","children","_getDashboard","_fullScreen","enter","useEffect","hidden","view","actions","ShowExportPDFDialog","clsx","TableauDashboard","reportId","serverId","accessToken","spaced","hint","exportBtn","marginLeft","EnergySmartScoreDashboard","selectedExports","setSelectedExports","Paper","elevation","Typography","list","ExportTables","display","Topbar","rest","AppBar","Toolbar","to","maxHeight","height","paddingTop","breakpoints","up","Auth","route","fallback","LinearProgress","renderRoutes","routes","startSignalRConnection","connection","origin","err","NotificationHub","NotificationRecieved","info","random","urlRoot","connectionHub","HubConnectionBuilder","withUrl","build","on","onclose","stop","pages","HomeIcon","SettingsInputAntennaIcon","ViewModuleIcon","MemoryIcon","TableChartIcon","BoltIcon","SupervisorAccountIcon","DesktopMacIcon","SettingsIcon","overflowY","profile","flexDirection","alignItems","minHeight","avatar","navigation","NavBar","openMobile","onMobileClose","router","useRouter","location","pathname","projects","projectsMenu","FolderIcon","management","navigationConfig","hangfire","hangfireindex","findIndex","splice","managementIndex","navbarContent","Avatar","component","RouterLink","getInitials","firstname","lastname","Divider","includes","_","intersection","userRole","userProjects","Hidden","lgUp","Drawer","anchor","lgDown","square","flexGrow","search","flexBasis","searchIcon","marginRight","searchInput","searchPopper","zIndex","appBar","searchPopperContent","trialButton","trialIcon","notificationsButton","notificationsBadge","logoutButton","logoutIcon","TopBar","onOpenNavBarMobile","history","notificationsRef","pricingModalOpen","setPricingModalOpen","openNotifications","setOpenNotifications","shallowEqual","Badge","badgeContent","readed","badge","instance","axios","create","drawer","listItemText","lastActivity","whiteSpace","fab","position","right","topBar","container","flex","navBar","Dashboard","openNavBarMobile","setOpenNavBarMobile","paddingBottom","chartContainer","chart","statsContainer","statsItem","justifyContent","borderRight","inner","calendarTodayIcon","Header","moment","startDate","setStartDate","endDate","setEndDate","selectEdge","setSelectEdge","calendarDate","setCalendarDate","handleCalendarOpen","edge","Boolean","Grid","lg","xs","ButtonGroup","format","DatePicker","maxDate","onAccept","date","isAfter","isBefore","defaultProps","circle1","stroke","fill","strokeWidth","circle2","animation","strokeDasharray","details","image","flexShrink","subscriptions","fontWeightMedium","price","conversion","conversionStats","arrowForwardIcon","textAlign","down","valueContainer","fontWeightBold","progressContainer","startDateButton","endDateButton","author","tags","flexWrap","backgroundImage","gradients","critical","indicator","borderWidth","borderStyle","viewButton","progress","itemDivider","borderBottomColor","buttons","summaryButton","barChartIcon","titleWrapper","header","left","arrowIcon","addIcon","done","textDecoration","statistics","todos","chartTitle","Evolution","React","setAnchorEl","chartData","labels","weekEnd","datasets","indicatorValues","tension","currentTarget","Popover","scales","xAxes","ticks","fontStyle","logo","h25","desc","Home","datasetInfo","datasetInfoEVO","_getDatasetInfo","useCallback","_getDatasetInfoEVO","avgUDATCell","avgUUATCell","avgDRBURCell","avgConsTimeSite","avgConsStorageSite","avgCarbonSite","line","md","sm","align","qtyMonths","qtyDays","qtyAlarms","qtyFaults","qtyEvents","qtyAlarmNames","validDataPM","validDataFM","validDataCM","Box","mediaContainer","media","stats","statsInner","TodaysMoney","Card","nameCell","primaryButton","errorButton","UsersDataTable","_resendConfirmationEmail","ResendConfirmationEmail","_deactivateUser","DeactivateUser","_renderActions","tableMeta","rowData","DataTable","columns","viewColumns","filterType","customBodyRender","sortBy","val","index","Label","sort","empty","updateValue","rowsPerPage","tableBodyMaxHeight","tableBodyCellMaxWidth","selectableRows","expandableRows","DialogTitle","withStyles","closeButton","disableTypography","DialogContent","MuiDialogContent","ModalDialog","cancelLabel","confirmLabel","hasConfirm","onConfirmClicked","isDisabled","modal","autoScrollBodyContent","dialogProps","Dialog","fullWidth","disableEscapeKeyDown","DialogActions","disabled","schema","presence","allowEmpty","roleId","fields","submitButton","AddEditUserForm","isEdit","setFormState","hasOperatorIdsChanged","usePrevious","validate","handleChange","hasError","field","TextField","helperText","SelectField","hintText","menuItems","isMultiSelect","projectIds","AddEditUserDialog","alignContent","applyButton","onApply","getData","userData","CreateUser","Users","_addUser","online","active","client","registered","results","description","detailsButton","deleteButton","OperatorCard","deleteOperator","navigateDetails","CardHeader","CardContent","gridList","Projects","AddOperatorForm","AddOperatorDialog","Operators","_addOperator","OperatorsList","saveButton","Details","CardActions","UpdateOperator","textAlgin","removeButton","addButton","Picture","inputFile","updateOperator","accept","files","reader","FileReader","addEventListener","result","readAsDataURL","deliverables","members","Overview","xl","ActionsButton","ProjectsDataTable","_deleteProject","DeleteProject","AddProjectForm","AddProjectDialog","projectList","OperatorDetails","tab","setTab","t","Tabs","scrollButtons","Tab","userList","GeneralForm","General","oldpassword","newpassword","confirmnewpassword","equality","Security","overview","product","productImage","notice","Settings","buttonIcon","contentSection","contentSectionHeader","cursor","contentSectionContent","formGroup","fieldGroup","minAmount","maxAmount","radioGroup","nested","paddingLeft","nestedTwo","bands2g","bands3g","bands4g","SideFilters","onFilter","filterDisabled","onClear","mapOne","openTopology","setOpenTopology","openTopology4g","setOpenTopology4g","topology2g900","topology2g1800","topologyLabels2g","topology3g900","topology3g2100","topologyLabels3g","topology4g800","topology4g2100","topology4g2600","topology4g700","topology4g900","topology4g1800","topologyLabels4g","setState","allBands4g","setAllBands4g","_removeLayerById","RemoveLayerById","mapBoundsPoints","northEast","southWest","getSites","handleChangeTopology4g","mapContext","useMemo","updateTopology2g","topology2gDto","addTopologyLabels","topologyLabels2gDto","updateTopology3g","topology3gDto","topologyLabels3gDto","updateTopology4g","topology4gDto","topologyLabels4gDto","cardStyle","mapBounds","getBounds","_northEast","_southWest","List","ListItem","Collapse","in","timeout","unmountOnExit","disablePadding","FormGroup","SummaryDialogForm","drivetestSummaryCompare","SummaryDialog","generate","MapDriveTests","_getData","layerName","flyTo","markers","packetIcondrop","iconUrl","iconAnchor","popupAnchor","isEmpty","marker","latitude","longitude","failureId","bindPopup","siteId","autoPan","layerGroup","addTo","_addSiteLocation","invalidateSize","reason","SideFiltersGeneric","SummaryDialogFormGeneric","SummaryDialogGeneric","MapDriveTestsGeneric","DatasetExport","defaultValue","alignItem","DownloadDatabase","DataTableStyled","getMuiTheme","outerTheme","MUIDataTableHeadCell","head","MUIDataTableBodyRow","MUIDataTablePagination","MUIDataTableViewCol","MUIDataTableSearch","MUIDataTableToolbar","MUIDataTableFilter","MUIDataTableFilterList","MUIDataTableBodyCell","showDownload","showPrint","ThemeProvider","rowsPerPageOptions","print","responsive","onRowSelectionChange","_onRowSelection","fixedSelectColumn","Component","infoButton","STTMAlgorithmDatatable","updateDate","dateuploaded","firstDay","lastDay","_headRender","columnMeta","updateDirection","alignSelf","fontFamily","_generalColumnOptions","customHeadRender","_statusColumnOptions","setCellProps","_handleStyle","renderActions","dataIndex","reportPath","cell","GetSTTMAlgorithmData","GetWeek","sx","substring","enablePinning","pinnedColumns","customBodyRenderLite","date_kpi","renderDate","fixedHeader","marginAdjust","STTMAlgorithm","setValue","TabContext","TabList","TabPanel","STTMAlgorithmDatatableGeneric","STTMAlgorithmGeneric","SRCAAlgorithm","SRCAAlgorithmGeneric","SPFMAlgorithm","SPFMAlgorithmGeneric","CompareBox","mapTwo","createFilterOptions","limit","Switch","labelPlacement","currentZoom","getZoom","setZoom","legendHeader","legendBody","FiltersSide","colorChanges","low","medium","high","exceeded","techBandVoiceSelection","techBandPacketSelection","voice","packet","topologyLabels","topology5g78","makeDetailsTable","cfn2Level","cfn3Level","_addLayerFailures","fitBounds","voiceIconBlocked","iconSize","voiceIconBlockedQoe","voiceIconDropped","voiceIconDroppedQoe","forEach","group","featureGroup","_addLayerTechBandKpi","circle","fillColor","fillOpacity","band","makeDetailsTechBandKpi","onUpdateLegend","updateTopology5g","topology5gDto","driveTestTechBand","driveTestTechBandLegend","_voiceFilter","_packetFilter","utilizationPct","FiltersSideCompare","utilizationPct_FINAL","UtilizationDates","UtilizationDatesCompare","DualMap","GetDriveTestsCities","GetFailuresFilters","GetFailuresFiltersSideCompare","_addLayerKpi","kpi","makeDetailsTableKpis","driveTestLegend","driveTestPoints","selectedKpiTech","topologyColors","updateTopologyCarriersColors","selectedKpiTechCompare","sync","selectedKpiScannerTech","selectedKpiScannerTechCompare","columnSpacing","DualMapGeneric","exact","AuthGuard","DashboardLayout","AuthLayout","lazy","ErrorLayout","displayed","Notifier","store","useSnackbar","closeSnackbar","myKey","onExited","removeSnackbar","Chart","helpers","elements","Rectangle","draw","signX","signY","borderSkipped","_chart","vm","_view","cornerRadius","base","barSize","abs","halfStroke","borderLeft","borderTop","fillStyle","strokeStyle","lineWidth","corners","startCorner","cornerAt","corner","nextCornerId","floor","xTl","xTr","yTl","yTr","xBl","xBr","yBl","yBr","quadraticCurveTo","updateLocale","relativeTime","future","past","ss","m","mm","h","hh","dd","M","MM","yy","validators","regex","RegExp","pattern","test","AxiosMockAdapter","delayResponse","mock","onGet","reply","canHire","country","firstName","isPublic","lastName","phone","timezone","payout","visitors","watching","uuid","currency","updated_at","deadline","created_at","subscription","proposalsLeft","templatesLeft","invitesLeft","adsLeft","hasAnalytics","hasEmailAlerts","settings","draft","events","allDay","conversations","otherUser","messages","sender","authUser","contentType","unread","groups","connections","customers","spent","rating","summary","zipCode","address1","address2","iban","autoCC","verified","invoices","vat","balance","emails","paymentMethod","status","logs","IP","seen","favorited","subject","receiver","start_date","end_date","bio","brief","mimeType","activities","subject_type","action_type","action_desc","subscribers","cover","common_connections","posts","liked","likes","comments","reviews","reviewer","pricePerHour","hours","common","invoice","due_date","issue_date","customer","company","nzbn","address","products","subtotal","taxes","total","lists","tasks","orders","payment","order","promoCode","items","cuantity","billing","referrals","initials","cyan","earnings","createBrowserHistory","basename","process","preloadedState","middlewares","thunkMiddleware","middlewareEnhancer","composeWithDevTools","applyMiddleware","enhancers","composedEnhancers","compose","createStore","configureStore","interceptor","App","StyledEngineProvider","injectFirst","maxSnack","autoHideDuration","LocalizationProvider","dateAdapter","DateAdapter","hostname","ReactDOM","render","getElementById","serviceWorker","ready","registration","unregister","UPDATE_COORDINATES","ADD_MAP","UPDATE_TOPOLOGY","UPDATE_LEGEND","UPDATE_POPUP","UPDATE_OVERLAYS","onAddMap","onUpdateCoordinates","onUpdateTopology","onUpdatePopup","onUpdateOverlays","chips","chip","formControlStyle","customRenderValue","setLabelWidth","InputLabelRef","offsetWidth","htmlFor","multiple","inputProps","renderValue","selected","fileInput","shape","success","lightBlue","warning","icons","Alert","forwardRef","setOpen","displayName","trimCode","codeLines","trim","shift","pop","indexOfFirstChar","output","substr","CodeBlock","async","source","language","Prism","outline","CookiesNotification","Cookies","get","Link","underline","agreeButton","set","dropZone","border","dragActive","GenericMoreButton","REACT_APP_GA_MEASUREMENT_ID","CustomRouterLink","itemLeaf","buttonLeaf","fontWeightRegular","expandIcon","NavigationListItem","depth","Icon","openProp","disableGutters","o","activeClassName","NavigationList","reduce","page","matchPath","reduceChildRoutes","Navigation","listItem","avatarBlue","avatarGreen","avatarOrange","avatarRed","NotificationList","avatars","ListItemAvatar","primaryTypographyProps","addedDate","backgroundPositionX","backgroundPositionY","backgroundRepeat","backgroundSize","EmptyList","NotificationsPopover","GA_MEASUREMENT_ID","Page","gtag","page_path","page_name","Helmet","listStyle","userSelect","activeLink","break","breakLink","next","nextLink","pageLink","previous","previousLink","Paginate","pageCount","pageRangeDisplayed","onPageChange","activeLinkClassName","breakClassName","breakLabel","breakLinkClassName","containerClassName","disabledClassName","marginPagesDisplayed","nextClassName","nextLabel","nextLinkClassName","pageClassName","pageLinkClassName","previousClassName","previousLabel","previousLinkClassName","subContainerClassName","bubble","time","likeButton","likedButton","shareButton","shareIcon","subheader","accessTimeIcon","mediaArea","backgroundPosition","transition","transitions","easing","sharp","duration","leavingScreen","recommended","contact","startButton","PricingModal","subtitle","learnMoreButton","ProjectCard","setLiked","fromNow","colo","tag","starIcon","starFilledIcon","amber","starBorderIcon","ReviewStars","starCount","starNodes","starNode","activeButton","alpha","FormatQuoteIcon","FormatListBulletedIcon","FormatListNumberedIcon","CodeIcon","FormatAlignLeftIcon","FormatAlignCenterIcon","FormatAlignRightIcon","FormatAlignJustifyIcon","FormatBoldIcon","FormatItalicIcon","FormatUnderlined","newBlockRenderMap","Map","unstyled","element","paragraph","ScrollReset","DefaultDraftBlockRenderMap","merge","editorContainer","textAlignLeft","textAlignCenter","textAlignRight","textAlignJustify","scrollTo","searchButton","filterButton","filterIcon","more","StackAvatars","avatarNodes","small","large","StatusBullet","rootClassName","backdrop","Loading","Backdrop","CircularProgress","iconButton","handleDateChange","useSate","selectedStateDate","setSelectedDate","CalendarPicker","PowerBIDashboard","embedConfig","embedUrl","tokenType","models","TokenType","Aad","panes","filters","expanded","BackgroundType","Default","cssClassName","getEmbeddedComponent","embeddedReport","report","_self","Layer2G","Layer3G","Layer4G","overlays","layerControl","LegendElements","Title","initMap","getActiveOverlays","getActivePopup","isUndefined","AddLegend","osmBase","tileLayer","baseMaps","Satellite","attributionControl","preferCanvas","groupedLayers","that","e","GetMapDataBounds","Markers","coords","latLng","textMarker","divIcon","html","technology","cellName","code","azimuth","Markers2G","GetRadius","beamWidth","cellColor","cellRadius","weight","makeDetailsTableTopologySeparated","Markers3G","Markers4G","RemoveLayer","intToRGB","invertColor","makeDetailsTableTopology","addOverlay","TopRightCornerLatitude","getNorth","TopRightCornerLongitude","getEast","BottomLeftCornerLatitude","getSouth","BottomLeftCornerLongitude","getWest","thatState","_layers","obj","_update","eachLayer","removeLayer","layerId","hasLayer","pane","getPopup","isOpen","Control","removeControl","onAdd","div","DomUtil","innerHTML","legendColor","legendValue","toString","hex","_hex","parseInt","g","padZero","str","_len","Array","connect","bindActionCreators","MapActions","MapCapacity","utilizationPctFinal","Markers5G","colorCode","MapGeneric","genericSite","genericCellName","MapActionsGeneric","_getChartOptions","dataLabels","legendPosition","yAxes","callback","_getScaleValue","parseFloat","decimal","String","difference","finalValue","toFixed","_createChart","elem","ChartJs","_updateChart","destroy","update","canvasHeight","canvasWidth","interceptors","request","use","configuration","Promise","reject","statusCode","errorObject","isString","rounded","finalStyle","viz","showExportPDFDialog","dispose","containerDiv","hideToolbar","onFirstVizSizeKnown","innerHeight","setAttribute","tableau","Viz","_initViz","onOpen","renderInput","inputFormat","inputVariant","emptyLabel","MaterialCheckbox","onCheck","labelStyle","muiName","propTypes","PropTypes","node","array","isRequired","useContext","__RouterContext","actionColumnWidth","adaptV4Theme","MUIDataTable","MUIDataTableHead","MUIDataTableHeadRow","MUIDataTableBody","currentRowsSelected","allRowsSelected","rowsSelected","onRowSelection","dt"],"mappings":"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","file":"static/js/main.f96127ee.chunk.js","sourcesContent":["import { colors } from '@mui/material';\r\n\r\nconst buildGradient = (start, end) => `linear-gradient(180deg, ${start} 0%, ${end} 100%)`;\r\n\r\nconst grey = buildGradient(colors.grey[400], colors.grey[600]);\r\nconst blue = buildGradient(colors.blue[700], colors.blue[900]);\r\nconst indigo = buildGradient(colors.indigo[400], colors.indigo[600]);\r\nconst green = buildGradient(colors.green[400], colors.green[600]);\r\nconst orange = buildGradient(colors.orange[400], colors.orange[700]);\r\nconst red = buildGradient(colors.red[500], colors.red[700]);\r\n\r\nexport default {\r\n\tgrey,\r\n\tblue,\r\n\tindigo,\r\n\tgreen,\r\n\torange,\r\n\tred,\r\n};\r\n","export default (name = '') => name\r\n\t.replace(/\\s+/, ' ')\r\n\t.split(' ')\r\n\t.slice(0, 2)\r\n\t.map((v) => v && v[0].toUpperCase())\r\n\t.join('');\r\n","/* eslint-disable no-restricted-properties */\r\n/* eslint-disable no-restricted-syntax */\r\n/* eslint-disable prefer-rest-params */\r\n/* eslint-disable guard-for-in */\r\n/* eslint-disable no-mixed-operators */\r\n/* eslint-disable no-use-before-define */\r\n/* eslint-disable consistent-return */\r\n/* eslint-disable no-param-reassign */\r\n/* eslint-disable no-throw-literal */\r\n/* eslint-disable global-require */\r\n/* eslint-disable no-undef */\r\n/* eslint-disable func-names */\r\n/**\r\n * Semicircle extension for L.Circle.\r\n * Jan Pieter Waagmeester \r\n *\r\n * This version is tested with leaflet 1.0.2\r\n */\r\n(function (factory) {\r\n\tif (typeof define === 'function' && define.amd) {\r\n\t\t// AMD\r\n\t\tdefine(['leaflet'], factory);\r\n\t} else if (typeof module !== 'undefined' && typeof require !== 'undefined') {\r\n\t\t// Node/CommonJS\r\n\t\tmodule.exports = factory(require('leaflet'));\r\n\t} else {\r\n\t\t// Browser globals\r\n\t\tif (typeof window.L === 'undefined') {\r\n\t\t\tthrow 'Leaflet must be loaded first';\r\n\t\t}\r\n\t\tfactory(window.L);\r\n\t}\r\n}((L) => {\r\n\tconst DEG_TO_RAD = Math.PI / 180;\r\n\r\n\t// make sure 0 degrees is up (North) and convert to radians.\r\n\tfunction fixAngle(angle) {\r\n\t\treturn (angle - 90) * DEG_TO_RAD;\r\n\t}\r\n\r\n\t// rotate point [x + r, y+r] around [x, y] by `angle` radians.\r\n\tfunction rotated(p, angle, r) {\r\n\t\treturn p.add(\r\n\t\t\tL.point(Math.cos(angle), Math.sin(angle)).multiplyBy(r)\r\n\t\t);\r\n\t}\r\n\r\n\tL.Point.prototype.rotated = function (angle, r) {\r\n\t\treturn rotated(this, angle, r);\r\n\t};\r\n\r\n\tconst semicircle = {\r\n\t\toptions: {\r\n\t\t\tstartAngle: 0,\r\n\t\t\tstopAngle: 359.9999,\r\n\t\t\tinnerRadius: 0\r\n\t\t},\r\n\r\n\t\tstartAngle() {\r\n\t\t\tif (this.options.startAngle < this.options.stopAngle) {\r\n\t\t\t\treturn fixAngle(this.options.startAngle);\r\n\t\t\t}\r\n\t\t\treturn fixAngle(this.options.stopAngle);\r\n\t\t},\r\n\t\tstopAngle() {\r\n\t\t\tif (this.options.startAngle < this.options.stopAngle) {\r\n\t\t\t\treturn fixAngle(this.options.stopAngle);\r\n\t\t\t}\r\n\t\t\treturn fixAngle(this.options.startAngle);\r\n\t\t},\r\n\r\n\t\tsetStartAngle(angle) {\r\n\t\t\tthis.options.startAngle = angle;\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\r\n\t\tsetStopAngle(angle) {\r\n\t\t\tthis.options.stopAngle = angle;\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\r\n\t\tsetInnerRadius(radius) {\r\n\t\t\tthis.options.innerRadius = radius;\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\r\n\t\tsetDirection(direction, degrees) {\r\n\t\t\tif (degrees === undefined) {\r\n\t\t\t\tdegrees = 10;\r\n\t\t\t}\r\n\t\t\tthis.options.startAngle = direction - (degrees / 2);\r\n\t\t\tthis.options.stopAngle = direction + (degrees / 2);\r\n\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\t\tgetDirection() {\r\n\t\t\treturn this.stopAngle() - (this.stopAngle() - this.startAngle()) / 2;\r\n\t\t},\r\n\r\n\t\tisSemicircle() {\r\n\t\t\tconst { startAngle } = this.options;\r\n\t\t\tconst { stopAngle } = this.options;\r\n\r\n\t\t\treturn (\r\n\t\t\t\t!(startAngle === 0 && stopAngle > 359)\r\n\t\t\t\t&& !(startAngle === stopAngle)\r\n\t\t\t);\r\n\t\t},\r\n\t\t_containsPoint(p) {\r\n\t\t\tfunction normalize(angle) {\r\n\t\t\t\twhile (angle <= -Math.PI) {\r\n\t\t\t\t\tangle += 2.0 * Math.PI;\r\n\t\t\t\t}\r\n\t\t\t\twhile (angle > Math.PI) {\r\n\t\t\t\t\tangle -= 2.0 * Math.PI;\r\n\t\t\t\t}\r\n\t\t\t\treturn angle;\r\n\t\t\t}\r\n\t\t\tlet angle = Math.atan2(p.y - this._point.y, p.x - this._point.x);\r\n\t\t\tconst nStart = normalize(this.startAngle());\r\n\t\t\tlet nStop = normalize(this.stopAngle());\r\n\t\t\tif (nStop <= nStart) {\r\n\t\t\t\tnStop += 2.0 * Math.PI;\r\n\t\t\t}\r\n\t\t\tif (angle <= nStart) {\r\n\t\t\t\tangle += 2.0 * Math.PI;\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\tnStart < angle && angle <= nStop\r\n\t\t\t\t&& p.distanceTo(this._point) <= this._radius + this._clickTolerance()\r\n\t\t\t);\r\n\t\t}\r\n\t};\r\n\r\n\tL.SemiCircle = L.Circle.extend(semicircle);\r\n\tL.SemiCircleMarker = L.CircleMarker.extend(semicircle);\r\n\r\n\tL.semiCircle = function (latlng, options) {\r\n\t\treturn new L.SemiCircle(latlng, options);\r\n\t};\r\n\tL.semiCircleMarker = function (latlng, options) {\r\n\t\treturn new L.SemiCircleMarker(latlng, options);\r\n\t};\r\n\r\n\tconst _updateCircleSVG = L.SVG.prototype._updateCircle;\r\n\tconst _updateCircleCanvas = L.Canvas.prototype._updateCircle;\r\n\r\n\tL.SVG.include({\r\n\t\t_updateCircle(layer) {\r\n\t\t\t// If we want a circle, we use the original function\r\n\t\t\tif (!(layer instanceof L.SemiCircle || layer instanceof L.SemiCircleMarker)\r\n\t\t\t\t|| !layer.isSemicircle()) {\r\n\t\t\t\treturn _updateCircleSVG.call(this, layer);\r\n\t\t\t}\r\n\t\t\tif (layer._empty()) {\r\n\t\t\t\treturn this._setPath(layer, 'M0 0');\r\n\t\t\t}\r\n\r\n\t\t\tconst p = layer._map.latLngToLayerPoint(layer._latlng);\r\n\t\t\tconst r = layer._radius;\r\n\t\t\tconst r2 = Math.round(layer._radiusY || r);\r\n\t\t\tconst start = p.rotated(layer.startAngle(), r);\r\n\t\t\tconst end = p.rotated(layer.stopAngle(), r);\r\n\r\n\t\t\tconst largeArc = (layer.options.stopAngle - layer.options.startAngle >= 180) ? '1' : '0';\r\n\r\n\t\t\tif (layer.options.innerRadius === 0 || layer.options.innerRadius === undefined) {\r\n\t\t\t\tconst d = `M${p.x},${p.y\r\n\t\t\t\t\t// line to first start point\r\n\t\t\t\t}L${start.x},${start.y\r\n\t\t\t\t}A ${r},${r2},0,${largeArc},1,${end.x},${end.y\r\n\t\t\t\t} z`;\r\n\r\n\t\t\t\tthis._setPath(layer, d);\r\n\t\t\t} else {\r\n\t\t\t\tif (layer.options.innerRadius >= layer.options.radius) {\r\n\t\t\t\t\tthis._mRadius = layer.options.radius - 1;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis._mRadius = layer.options.innerRadius;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst { lng } = layer._latlng;\r\n\t\t\t\tconst { lat } = layer._latlng;\r\n\t\t\t\tconst map = layer._map;\r\n\t\t\t\tconst { crs } = map.options;\r\n\r\n\t\t\t\tconst d = Math.PI / 180;\r\n\t\t\t\tconst latR = (this._mRadius / Earth.R) / d;\r\n\t\t\t\tconst top = map.project([lat + latR, lng]);\r\n\t\t\t\tconst bottom = map.project([lat - latR, lng]);\r\n\t\t\t\tconst p2 = top.add(bottom).divideBy(2);\r\n\t\t\t\tconst lat2 = map.unproject(p2).lat;\r\n\t\t\t\tlet lngR = Math.acos((Math.cos(latR * d) - Math.sin(lat * d) * Math.sin(lat2 * d))\r\n\t\t\t\t\t/ (Math.cos(lat * d) * Math.cos(lat2 * d))) / d;\r\n\r\n\t\t\t\tif (Number.isNaN(lngR) || lngR === 0) {\r\n\t\t\t\t\tlngR = latR / Math.cos(Math.PI / 180 * lat); // Fallback for edge case, #2425\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis._point = p2.subtract(map.getPixelOrigin());\r\n\t\t\t\tthis._radius = Number.isNaN(lngR) ? 0 : p2.x - map.project([lat2, lng - lngR]).x;\r\n\t\t\t\tthis._radiusY = p2.y - top.y;\r\n\r\n\t\t\t\tconst innerStart = p.rotated(layer.startAngle(), this._radius);\r\n\t\t\t\tconst innerEnd = p.rotated(layer.stopAngle(), this._radius);\r\n\t\t\t\tconst innerR2 = Math.round(this._radiusY || this._radius);\r\n\r\n\t\t\t\tconst path = `M${innerStart.x},${innerStart.y\r\n\t\t\t\t\t// line to first start point\r\n\t\t\t\t}L${start.x},${start.y\r\n\t\t\t\t}A ${r},${r2},0,${largeArc},1,${end.x},${end.y\r\n\t\t\t\t}L ${innerEnd.x},${innerEnd.y\r\n\t\t\t\t}M${innerStart.x},${innerStart.y\r\n\t\t\t\t}A ${this._radius},${innerR2},0,${largeArc},1,${innerEnd.x},${innerEnd.y\r\n\t\t\t\t}`;\r\n\r\n\t\t\t\tthis._setPath(layer, path);\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\tL.Canvas.include({\r\n\t\t_updateCircle(layer) {\r\n\t\t\t// If we want a circle, we use the original function\r\n\t\t\tif (!(layer instanceof L.SemiCircle || layer instanceof L.SemiCircleMarker)\r\n\t\t\t\t|| !layer.isSemicircle()) {\r\n\t\t\t\treturn _updateCircleCanvas.call(this, layer);\r\n\t\t\t}\r\n\r\n\t\t\tconst p = layer._point;\r\n\t\t\tconst ctx = this._ctx;\r\n\t\t\tconst r = layer._radius;\r\n\t\t\tconst s = (layer._radiusY || r) / r;\r\n\t\t\tconst start = p.rotated(layer.startAngle(), r);\r\n\r\n\t\t\t// comentado porque dá erro\r\n\t\t\t// console.log(layer)\r\n\t\t\t// console.log(this)\r\n\t\t\t// this._drawnLayers[layer._leaflet_id] = layer;\r\n\r\n\t\t\tif (s !== 1) {\r\n\t\t\t\tctx.save();\r\n\t\t\t\tctx.scale(1, s);\r\n\t\t\t}\r\n\r\n\t\t\tif (layer.options.innerRadius === 0 || layer.options.innerRadius === undefined) {\r\n\t\t\t\tctx.beginPath();\r\n\t\t\t\tctx.moveTo(p.x, p.y);\r\n\t\t\t\tctx.lineTo(start.x, start.y);\r\n\t\t\t\tctx.arc(p.x, p.y, r, layer.startAngle(), layer.stopAngle());\r\n\t\t\t\tctx.lineTo(p.x, p.y);\r\n\t\t\t} else {\r\n\t\t\t\tif (layer.options.innerRadius >= layer.options.radius) {\r\n\t\t\t\t\tthis._mRadius = layer.options.radius - 1;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis._mRadius = layer.options.innerRadius;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst { lng } = layer._latlng;\r\n\t\t\t\tconst { lat } = layer._latlng;\r\n\t\t\t\tconst map = layer._map;\r\n\t\t\t\tconst { crs } = map.options;\r\n\r\n\t\t\t\tconst d = Math.PI / 180;\r\n\t\t\t\tconst latR = (this._mRadius / Earth.R) / d;\r\n\t\t\t\tconst top = map.project([lat + latR, lng]);\r\n\t\t\t\tconst bottom = map.project([lat - latR, lng]);\r\n\t\t\t\tconst p2 = top.add(bottom).divideBy(2);\r\n\t\t\t\tconst lat2 = map.unproject(p2).lat;\r\n\t\t\t\tlet lngR = Math.acos((Math.cos(latR * d) - Math.sin(lat * d) * Math.sin(lat2 * d))\r\n\t\t\t\t\t/ (Math.cos(lat * d) * Math.cos(lat2 * d))) / d;\r\n\r\n\t\t\t\tif (Number.isNaN(lngR) || lngR === 0) {\r\n\t\t\t\t\tlngR = latR / Math.cos(Math.PI / 180 * lat); // Fallback for edge case, #2425\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis._point = p2.subtract(map.getPixelOrigin());\r\n\t\t\t\tthis._radius = Number.isNaN(lngR) ? 0 : p2.x - map.project([lat2, lng - lngR]).x;\r\n\t\t\t\tthis._radiusY = p2.y - top.y;\r\n\r\n\t\t\t\tconst innerStart = p.rotated(layer.startAngle(), this._radius);\r\n\t\t\t\tconst innerEnd = p.rotated(layer.stopAngle(), this._radius);\r\n\r\n\t\t\t\tctx.beginPath();\r\n\t\t\t\tctx.moveTo(innerStart.x, innerStart.y);\r\n\t\t\t\tctx.lineTo(start.x, start.y);\r\n\t\t\t\tctx.arc(p.x, p.y, r, layer.startAngle(), layer.stopAngle());\r\n\t\t\t\tctx.lineTo(innerEnd.x, innerEnd.y);\r\n\t\t\t\tctx.arc(p.x, p.y, this._radius, layer.startAngle(), layer.stopAngle());\r\n\t\t\t}\r\n\r\n\t\t\tif (s !== 1) {\r\n\t\t\t\tctx.restore();\r\n\t\t\t}\r\n\r\n\t\t\tthis._fillStroke(ctx, layer);\r\n\t\t}\r\n\t});\r\n}));\r\n\r\n// @function extend(dest: Object, src?: Object): Object\r\n// Merges the properties of the `src` object (or multiple objects) into `dest` object and returns the latter. Has an `L.extend` shortcut.\r\nfunction extend(dest) {\r\n\tlet i; let j; let len; let\r\n\t\tsrc;\r\n\r\n\tfor (j = 1, len = arguments.length; j < len; j++) {\r\n\t\tsrc = arguments[j];\r\n\t\tfor (i in src) {\r\n\t\t\tdest[i] = src[i];\r\n\t\t}\r\n\t}\r\n\treturn dest;\r\n}\r\n\r\nconst CRS = {\r\n\t// @method latLngToPoint(latlng: LatLng, zoom: Number): Point\r\n\t// Projects geographical coordinates into pixel coordinates for a given zoom.\r\n\tlatLngToPoint(latlng, zoom) {\r\n\t\tconst projectedPoint = this.projection.project(latlng);\r\n\t\tconst scale = this.scale(zoom);\r\n\r\n\t\treturn this.transformation._transform(projectedPoint, scale);\r\n\t},\r\n\r\n\t// @method pointToLatLng(point: Point, zoom: Number): LatLng\r\n\t// The inverse of `latLngToPoint`. Projects pixel coordinates on a given\r\n\t// zoom into geographical coordinates.\r\n\tpointToLatLng(point, zoom) {\r\n\t\tconst scale = this.scale(zoom);\r\n\t\tconst untransformedPoint = this.transformation.untransform(point, scale);\r\n\r\n\t\treturn this.projection.unproject(untransformedPoint);\r\n\t},\r\n\r\n\t// @method project(latlng: LatLng): Point\r\n\t// Projects geographical coordinates into coordinates in units accepted for\r\n\t// this CRS (e.g. meters for EPSG:3857, for passing it to WMS services).\r\n\tproject(latlng) {\r\n\t\treturn this.projection.project(latlng);\r\n\t},\r\n\r\n\t// @method unproject(point: Point): LatLng\r\n\t// Given a projected coordinate returns the corresponding LatLng.\r\n\t// The inverse of `project`.\r\n\tunproject(point) {\r\n\t\treturn this.projection.unproject(point);\r\n\t},\r\n\r\n\t// @method scale(zoom: Number): Number\r\n\t// Returns the scale used when transforming projected coordinates into\r\n\t// pixel coordinates for a particular zoom. For example, it returns\r\n\t// `256 * 2^zoom` for Mercator-based CRS.\r\n\tscale(zoom) {\r\n\t\treturn 256 * Math.pow(2, zoom);\r\n\t},\r\n\r\n\t// @method zoom(scale: Number): Number\r\n\t// Inverse of `scale()`, returns the zoom level corresponding to a scale\r\n\t// factor of `scale`.\r\n\tzoom(scale) {\r\n\t\treturn Math.log(scale / 256) / Math.LN2;\r\n\t},\r\n\r\n\t// @method getProjectedBounds(zoom: Number): Bounds\r\n\t// Returns the projection's bounds scaled and transformed for the provided `zoom`.\r\n\tgetProjectedBounds(zoom) {\r\n\t\tif (this.infinite) { return null; }\r\n\r\n\t\tconst b = this.projection.bounds;\r\n\t\tconst s = this.scale(zoom);\r\n\t\tconst min = this.transformation.transform(b.min, s);\r\n\t\tconst max = this.transformation.transform(b.max, s);\r\n\r\n\t\treturn new Bounds(min, max);\r\n\t},\r\n\r\n\t// @method distance(latlng1: LatLng, latlng2: LatLng): Number\r\n\t// Returns the distance between two geographical coordinates.\r\n\r\n\t// @property code: String\r\n\t// Standard code name of the CRS passed into WMS services (e.g. `'EPSG:3857'`)\r\n\t//\r\n\t// @property wrapLng: Number[]\r\n\t// An array of two numbers defining whether the longitude (horizontal) coordinate\r\n\t// axis wraps around a given range and how. Defaults to `[-180, 180]` in most\r\n\t// geographical CRSs. If `undefined`, the longitude axis does not wrap around.\r\n\t//\r\n\t// @property wrapLat: Number[]\r\n\t// Like `wrapLng`, but for the latitude (vertical) axis.\r\n\r\n\t// wrapLng: [min, max],\r\n\t// wrapLat: [min, max],\r\n\r\n\t// @property infinite: Boolean\r\n\t// If true, the coordinate space will be unbounded (infinite in both axes)\r\n\tinfinite: false,\r\n\r\n\t// @method wrapLatLng(latlng: LatLng): LatLng\r\n\t// Returns a `LatLng` where lat and lng has been wrapped according to the\r\n\t// CRS's `wrapLat` and `wrapLng` properties, if they are outside the CRS's bounds.\r\n\twrapLatLng(latlng) {\r\n\t\tconst lng = this.wrapLng ? wrapNum(latlng.lng, this.wrapLng, true) : latlng.lng;\r\n\t\tconst lat = this.wrapLat ? wrapNum(latlng.lat, this.wrapLat, true) : latlng.lat;\r\n\t\tconst { alt } = latlng;\r\n\r\n\t\treturn new LatLng(lat, lng, alt);\r\n\t},\r\n\r\n\t// @method wrapLatLngBounds(bounds: LatLngBounds): LatLngBounds\r\n\t// Returns a `LatLngBounds` with the same size as the given one, ensuring\r\n\t// that its center is within the CRS's bounds.\r\n\t// Only accepts actual `L.LatLngBounds` instances, not arrays.\r\n\twrapLatLngBounds(bounds) {\r\n\t\tconst center = bounds.getCenter();\r\n\t\tconst newCenter = this.wrapLatLng(center);\r\n\t\tconst latShift = center.lat - newCenter.lat;\r\n\t\tconst lngShift = center.lng - newCenter.lng;\r\n\r\n\t\tif (latShift === 0 && lngShift === 0) {\r\n\t\t\treturn bounds;\r\n\t\t}\r\n\r\n\t\tconst sw = bounds.getSouthWest();\r\n\t\tconst ne = bounds.getNorthEast();\r\n\t\tconst newSw = new LatLng(sw.lat - latShift, sw.lng - lngShift);\r\n\t\tconst newNe = new LatLng(ne.lat - latShift, ne.lng - lngShift);\r\n\r\n\t\treturn new LatLngBounds(newSw, newNe);\r\n\t}\r\n};\r\n\r\n/*\r\n * @namespace CRS\r\n * @crs L.CRS.Earth\r\n *\r\n * Serves as the base for CRS that are global such that they cover the earth.\r\n * Can only be used as the base for other CRS and cannot be used directly,\r\n * since it does not have a `code`, `projection` or `transformation`. `distance()` returns\r\n * meters.\r\n */\r\n\r\nconst Earth = extend({}, CRS, {\r\n\twrapLng: [-180, 180],\r\n\r\n\t// Mean Earth Radius, as recommended for use by\r\n\t// the International Union of Geodesy and Geophysics,\r\n\t// see http://rosettacode.org/wiki/Haversine_formula\r\n\tR: 6371000,\r\n\r\n\t// distance between two geographical points using spherical law of cosines approximation\r\n\tdistance(latlng1, latlng2) {\r\n\t\tconst rad = Math.PI / 180;\r\n\t\tconst lat1 = latlng1.lat * rad;\r\n\t\tconst lat2 = latlng2.lat * rad;\r\n\t\tconst sinDLat = Math.sin((latlng2.lat - latlng1.lat) * rad / 2);\r\n\t\tconst sinDLon = Math.sin((latlng2.lng - latlng1.lng) * rad / 2);\r\n\t\tconst a = sinDLat * sinDLat + Math.cos(lat1) * Math.cos(lat2) * sinDLon * sinDLon;\r\n\t\tconst c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));\r\n\t\treturn this.R * c;\r\n\t}\r\n});\r\n","/* eslint-disable no-restricted-properties */\r\n/* eslint-disable no-restricted-syntax */\r\n/* eslint-disable prefer-rest-params */\r\n/* eslint-disable guard-for-in */\r\n/* eslint-disable no-mixed-operators */\r\n/* eslint-disable no-use-before-define */\r\n/* eslint-disable consistent-return */\r\n/* eslint-disable no-param-reassign */\r\n/* eslint-disable no-throw-literal */\r\n/* eslint-disable global-require */\r\n/* eslint-disable no-undef */\r\n/* eslint-disable func-names */\r\n/**\r\n * Semicircle extension for L.Circle.\r\n * Jan Pieter Waagmeester \r\n *\r\n * This version is tested with leaflet 1.0.2\r\n */\r\n(function (factory) {\r\n\tif (typeof define === 'function' && define.amd) {\r\n\t\t// AMD\r\n\t\tdefine(['leaflet'], factory);\r\n\t} else if (typeof module !== 'undefined' && typeof require !== 'undefined') {\r\n\t\t// Node/CommonJS\r\n\t\tmodule.exports = factory(require('leaflet'));\r\n\t} else {\r\n\t\t// Browser globals\r\n\t\tif (typeof window.L === 'undefined') {\r\n\t\t\tthrow 'Leaflet must be loaded first';\r\n\t\t}\r\n\t\tfactory(window.L);\r\n\t}\r\n}((L) => {\r\n\tconst DEG_TO_RAD = Math.PI / 180;\r\n\r\n\t// make sure 0 degrees is up (North) and convert to radians.\r\n\tfunction fixAngle(angle) {\r\n\t\treturn (angle - 90) * DEG_TO_RAD;\r\n\t}\r\n\r\n\t// rotate point [x + r, y+r] around [x, y] by `angle` radians.\r\n\tfunction rotated(p, angle, r) {\r\n\t\treturn p.add(\r\n\t\t\tL.point(Math.cos(angle), Math.sin(angle)).multiplyBy(r)\r\n\t\t);\r\n\t}\r\n\r\n\tL.Point.prototype.rotated = function (angle, r) {\r\n\t\treturn rotated(this, angle, r);\r\n\t};\r\n\r\n\tconst semicircle = {\r\n\t\toptions: {\r\n\t\t\tstartAngle: 0,\r\n\t\t\tstopAngle: 359.9999,\r\n\t\t\tinnerRadius: 0\r\n\t\t},\r\n\r\n\t\tstartAngle() {\r\n\t\t\tif (this.options.startAngle < this.options.stopAngle) {\r\n\t\t\t\treturn fixAngle(this.options.startAngle);\r\n\t\t\t}\r\n\t\t\treturn fixAngle(this.options.stopAngle);\r\n\t\t},\r\n\t\tstopAngle() {\r\n\t\t\tif (this.options.startAngle < this.options.stopAngle) {\r\n\t\t\t\treturn fixAngle(this.options.stopAngle);\r\n\t\t\t}\r\n\t\t\treturn fixAngle(this.options.startAngle);\r\n\t\t},\r\n\r\n\t\tsetStartAngle(angle) {\r\n\t\t\tthis.options.startAngle = angle;\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\r\n\t\tsetStopAngle(angle) {\r\n\t\t\tthis.options.stopAngle = angle;\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\r\n\t\tsetInnerRadius(radius) {\r\n\t\t\tthis.options.innerRadius = radius;\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\r\n\t\tsetDirection(direction, degrees) {\r\n\t\t\tif (degrees === undefined) {\r\n\t\t\t\tdegrees = 10;\r\n\t\t\t}\r\n\t\t\tthis.options.startAngle = direction - (degrees / 2);\r\n\t\t\tthis.options.stopAngle = direction + (degrees / 2);\r\n\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\t\tgetDirection() {\r\n\t\t\treturn this.stopAngle() - (this.stopAngle() - this.startAngle()) / 2;\r\n\t\t},\r\n\r\n\t\tisSemicircle() {\r\n\t\t\tconst { startAngle } = this.options;\r\n\t\t\tconst { stopAngle } = this.options;\r\n\r\n\t\t\treturn (\r\n\t\t\t\t!(startAngle === 0 && stopAngle > 359)\r\n\t\t\t\t&& !(startAngle === stopAngle)\r\n\t\t\t);\r\n\t\t},\r\n\t\t_containsPoint(p) {\r\n\t\t\tfunction normalize(angle) {\r\n\t\t\t\twhile (angle <= -Math.PI) {\r\n\t\t\t\t\tangle += 2.0 * Math.PI;\r\n\t\t\t\t}\r\n\t\t\t\twhile (angle > Math.PI) {\r\n\t\t\t\t\tangle -= 2.0 * Math.PI;\r\n\t\t\t\t}\r\n\t\t\t\treturn angle;\r\n\t\t\t}\r\n\t\t\tlet angle = Math.atan2(p.y - this._point.y, p.x - this._point.x);\r\n\t\t\tconst nStart = normalize(this.startAngle());\r\n\t\t\tlet nStop = normalize(this.stopAngle());\r\n\t\t\tif (nStop <= nStart) {\r\n\t\t\t\tnStop += 2.0 * Math.PI;\r\n\t\t\t}\r\n\t\t\tif (angle <= nStart) {\r\n\t\t\t\tangle += 2.0 * Math.PI;\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\tnStart < angle && angle <= nStop\r\n\t\t\t\t&& p.distanceTo(this._point) <= this._radius + this._clickTolerance()\r\n\t\t\t);\r\n\t\t}\r\n\t};\r\n\r\n\tL.SemiCircle = L.Circle.extend(semicircle);\r\n\tL.SemiCircleMarker = L.CircleMarker.extend(semicircle);\r\n\r\n\tL.semiCircle = function (latlng, options) {\r\n\t\treturn new L.SemiCircle(latlng, options);\r\n\t};\r\n\tL.semiCircleMarker = function (latlng, options) {\r\n\t\treturn new L.SemiCircleMarker(latlng, options);\r\n\t};\r\n\r\n\tconst _updateCircleSVG = L.SVG.prototype._updateCircle;\r\n\tconst _updateCircleCanvas = L.Canvas.prototype._updateCircle;\r\n\r\n\tL.SVG.include({\r\n\t\t_updateCircle(layer) {\r\n\t\t\t// If we want a circle, we use the original function\r\n\t\t\tif (!(layer instanceof L.SemiCircle || layer instanceof L.SemiCircleMarker)\r\n\t\t\t\t|| !layer.isSemicircle()) {\r\n\t\t\t\treturn _updateCircleSVG.call(this, layer);\r\n\t\t\t}\r\n\t\t\tif (layer._empty()) {\r\n\t\t\t\treturn this._setPath(layer, 'M0 0');\r\n\t\t\t}\r\n\r\n\t\t\tconst p = layer._map.latLngToLayerPoint(layer._latlng);\r\n\t\t\tconst r = layer._radius;\r\n\t\t\tconst r2 = Math.round(layer._radiusY || r);\r\n\t\t\tconst start = p.rotated(layer.startAngle(), r);\r\n\t\t\tconst end = p.rotated(layer.stopAngle(), r);\r\n\r\n\t\t\tconst largeArc = (layer.options.stopAngle - layer.options.startAngle >= 180) ? '1' : '0';\r\n\r\n\t\t\tif (layer.options.innerRadius === 0 || layer.options.innerRadius === undefined) {\r\n\t\t\t\tconst d = `M${p.x},${p.y\r\n\t\t\t\t\t// line to first start point\r\n\t\t\t\t}L${start.x},${start.y\r\n\t\t\t\t}A ${r},${r2},0,${largeArc},1,${end.x},${end.y\r\n\t\t\t\t} z`;\r\n\r\n\t\t\t\tthis._setPath(layer, d);\r\n\t\t\t} else {\r\n\t\t\t\tif (layer.options.innerRadius >= layer.options.radius) {\r\n\t\t\t\t\tthis._mRadius = layer.options.radius - 1;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis._mRadius = layer.options.innerRadius;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst { lng } = layer._latlng;\r\n\t\t\t\tconst { lat } = layer._latlng;\r\n\t\t\t\tconst map = layer._map;\r\n\t\t\t\tconst { crs } = map.options;\r\n\r\n\t\t\t\tconst d = Math.PI / 180;\r\n\t\t\t\tconst latR = (this._mRadius / Earth.R) / d;\r\n\t\t\t\tconst top = map.project([lat + latR, lng]);\r\n\t\t\t\tconst bottom = map.project([lat - latR, lng]);\r\n\t\t\t\tconst p2 = top.add(bottom).divideBy(2);\r\n\t\t\t\tconst lat2 = map.unproject(p2).lat;\r\n\t\t\t\tlet lngR = Math.acos((Math.cos(latR * d) - Math.sin(lat * d) * Math.sin(lat2 * d))\r\n\t\t\t\t\t/ (Math.cos(lat * d) * Math.cos(lat2 * d))) / d;\r\n\r\n\t\t\t\tif (Number.isNaN(lngR) || lngR === 0) {\r\n\t\t\t\t\tlngR = latR / Math.cos(Math.PI / 180 * lat); // Fallback for edge case, #2425\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis._point = p2.subtract(map.getPixelOrigin());\r\n\t\t\t\tthis._radius = Number.isNaN(lngR) ? 0 : p2.x - map.project([lat2, lng - lngR]).x;\r\n\t\t\t\tthis._radiusY = p2.y - top.y;\r\n\r\n\t\t\t\tconst innerStart = p.rotated(layer.startAngle(), this._radius);\r\n\t\t\t\tconst innerEnd = p.rotated(layer.stopAngle(), this._radius);\r\n\t\t\t\tconst innerR2 = Math.round(this._radiusY || this._radius);\r\n\r\n\t\t\t\tconst path = `M${innerStart.x},${innerStart.y\r\n\t\t\t\t\t// line to first start point\r\n\t\t\t\t}L${start.x},${start.y\r\n\t\t\t\t}A ${r},${r2},0,${largeArc},1,${end.x},${end.y\r\n\t\t\t\t}L ${innerEnd.x},${innerEnd.y\r\n\t\t\t\t}M${innerStart.x},${innerStart.y\r\n\t\t\t\t}A ${this._radius},${innerR2},0,${largeArc},1,${innerEnd.x},${innerEnd.y\r\n\t\t\t\t}`;\r\n\r\n\t\t\t\tthis._setPath(layer, path);\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\tL.Canvas.include({\r\n\t\t_updateCircle(layer) {\r\n\t\t\t// If we want a circle, we use the original function\r\n\t\t\tif (!(layer instanceof L.SemiCircle || layer instanceof L.SemiCircleMarker)\r\n\t\t\t\t|| !layer.isSemicircle()) {\r\n\t\t\t\treturn _updateCircleCanvas.call(this, layer);\r\n\t\t\t}\r\n\r\n\t\t\tconst p = layer._point;\r\n\t\t\tconst ctx = this._ctx;\r\n\t\t\tconst r = layer._radius;\r\n\t\t\tconst s = (layer._radiusY || r) / r;\r\n\t\t\tconst start = p.rotated(layer.startAngle(), r);\r\n\r\n\t\t\t// comentado porque dá erro\r\n\t\t\t// console.log(layer)\r\n\t\t\t// console.log(this)\r\n\t\t\t// this._drawnLayers[layer._leaflet_id] = layer;\r\n\r\n\t\t\tif (s !== 1) {\r\n\t\t\t\tctx.save();\r\n\t\t\t\tctx.scale(1, s);\r\n\t\t\t}\r\n\r\n\t\t\tif (layer.options.innerRadius === 0 || layer.options.innerRadius === undefined) {\r\n\t\t\t\tctx.beginPath();\r\n\t\t\t\tctx.moveTo(p.x, p.y);\r\n\t\t\t\tctx.lineTo(start.x, start.y);\r\n\t\t\t\tctx.arc(p.x, p.y, r, layer.startAngle(), layer.stopAngle());\r\n\t\t\t\tctx.lineTo(p.x, p.y);\r\n\t\t\t} else {\r\n\t\t\t\tif (layer.options.innerRadius >= layer.options.radius) {\r\n\t\t\t\t\tthis._mRadius = layer.options.radius - 1;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis._mRadius = layer.options.innerRadius;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst { lng } = layer._latlng;\r\n\t\t\t\tconst { lat } = layer._latlng;\r\n\t\t\t\tconst map = layer._map;\r\n\t\t\t\tconst { crs } = map.options;\r\n\r\n\t\t\t\tconst d = Math.PI / 180;\r\n\t\t\t\tconst latR = (this._mRadius / Earth.R) / d;\r\n\t\t\t\tconst top = map.project([lat + latR, lng]);\r\n\t\t\t\tconst bottom = map.project([lat - latR, lng]);\r\n\t\t\t\tconst p2 = top.add(bottom).divideBy(2);\r\n\t\t\t\tconst lat2 = map.unproject(p2).lat;\r\n\t\t\t\tlet lngR = Math.acos((Math.cos(latR * d) - Math.sin(lat * d) * Math.sin(lat2 * d))\r\n\t\t\t\t\t/ (Math.cos(lat * d) * Math.cos(lat2 * d))) / d;\r\n\r\n\t\t\t\tif (Number.isNaN(lngR) || lngR === 0) {\r\n\t\t\t\t\tlngR = latR / Math.cos(Math.PI / 180 * lat); // Fallback for edge case, #2425\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis._point = p2.subtract(map.getPixelOrigin());\r\n\t\t\t\tthis._radius = Number.isNaN(lngR) ? 0 : p2.x - map.project([lat2, lng - lngR]).x;\r\n\t\t\t\tthis._radiusY = p2.y - top.y;\r\n\r\n\t\t\t\tconst innerStart = p.rotated(layer.startAngle(), this._radius);\r\n\t\t\t\tconst innerEnd = p.rotated(layer.stopAngle(), this._radius);\r\n\r\n\t\t\t\tctx.beginPath();\r\n\t\t\t\tctx.moveTo(innerStart.x, innerStart.y);\r\n\t\t\t\tctx.lineTo(start.x, start.y);\r\n\t\t\t\tctx.arc(p.x, p.y, r, layer.startAngle(), layer.stopAngle());\r\n\t\t\t\tctx.lineTo(innerEnd.x, innerEnd.y);\r\n\t\t\t\tctx.arc(p.x, p.y, this._radius, layer.startAngle(), layer.stopAngle());\r\n\t\t\t}\r\n\r\n\t\t\tif (s !== 1) {\r\n\t\t\t\tctx.restore();\r\n\t\t\t}\r\n\r\n\t\t\tthis._fillStroke(ctx, layer);\r\n\t\t}\r\n\t});\r\n}));\r\n\r\n// @function extend(dest: Object, src?: Object): Object\r\n// Merges the properties of the `src` object (or multiple objects) into `dest` object and returns the latter. Has an `L.extend` shortcut.\r\nfunction extend(dest) {\r\n\tlet i; let j; let len; let\r\n\t\tsrc;\r\n\r\n\tfor (j = 1, len = arguments.length; j < len; j++) {\r\n\t\tsrc = arguments[j];\r\n\t\tfor (i in src) {\r\n\t\t\tdest[i] = src[i];\r\n\t\t}\r\n\t}\r\n\treturn dest;\r\n}\r\n\r\nconst CRS = {\r\n\t// @method latLngToPoint(latlng: LatLng, zoom: Number): Point\r\n\t// Projects geographical coordinates into pixel coordinates for a given zoom.\r\n\tlatLngToPoint(latlng, zoom) {\r\n\t\tconst projectedPoint = this.projection.project(latlng);\r\n\t\tconst scale = this.scale(zoom);\r\n\r\n\t\treturn this.transformation._transform(projectedPoint, scale);\r\n\t},\r\n\r\n\t// @method pointToLatLng(point: Point, zoom: Number): LatLng\r\n\t// The inverse of `latLngToPoint`. Projects pixel coordinates on a given\r\n\t// zoom into geographical coordinates.\r\n\tpointToLatLng(point, zoom) {\r\n\t\tconst scale = this.scale(zoom);\r\n\t\tconst untransformedPoint = this.transformation.untransform(point, scale);\r\n\r\n\t\treturn this.projection.unproject(untransformedPoint);\r\n\t},\r\n\r\n\t// @method project(latlng: LatLng): Point\r\n\t// Projects geographical coordinates into coordinates in units accepted for\r\n\t// this CRS (e.g. meters for EPSG:3857, for passing it to WMS services).\r\n\tproject(latlng) {\r\n\t\treturn this.projection.project(latlng);\r\n\t},\r\n\r\n\t// @method unproject(point: Point): LatLng\r\n\t// Given a projected coordinate returns the corresponding LatLng.\r\n\t// The inverse of `project`.\r\n\tunproject(point) {\r\n\t\treturn this.projection.unproject(point);\r\n\t},\r\n\r\n\t// @method scale(zoom: Number): Number\r\n\t// Returns the scale used when transforming projected coordinates into\r\n\t// pixel coordinates for a particular zoom. For example, it returns\r\n\t// `256 * 2^zoom` for Mercator-based CRS.\r\n\tscale(zoom) {\r\n\t\treturn 256 * Math.pow(2, zoom);\r\n\t},\r\n\r\n\t// @method zoom(scale: Number): Number\r\n\t// Inverse of `scale()`, returns the zoom level corresponding to a scale\r\n\t// factor of `scale`.\r\n\tzoom(scale) {\r\n\t\treturn Math.log(scale / 256) / Math.LN2;\r\n\t},\r\n\r\n\t// @method getProjectedBounds(zoom: Number): Bounds\r\n\t// Returns the projection's bounds scaled and transformed for the provided `zoom`.\r\n\tgetProjectedBounds(zoom) {\r\n\t\tif (this.infinite) { return null; }\r\n\r\n\t\tconst b = this.projection.bounds;\r\n\t\tconst s = this.scale(zoom);\r\n\t\tconst min = this.transformation.transform(b.min, s);\r\n\t\tconst max = this.transformation.transform(b.max, s);\r\n\r\n\t\treturn new Bounds(min, max);\r\n\t},\r\n\r\n\t// @method distance(latlng1: LatLng, latlng2: LatLng): Number\r\n\t// Returns the distance between two geographical coordinates.\r\n\r\n\t// @property code: String\r\n\t// Standard code name of the CRS passed into WMS services (e.g. `'EPSG:3857'`)\r\n\t//\r\n\t// @property wrapLng: Number[]\r\n\t// An array of two numbers defining whether the longitude (horizontal) coordinate\r\n\t// axis wraps around a given range and how. Defaults to `[-180, 180]` in most\r\n\t// geographical CRSs. If `undefined`, the longitude axis does not wrap around.\r\n\t//\r\n\t// @property wrapLat: Number[]\r\n\t// Like `wrapLng`, but for the latitude (vertical) axis.\r\n\r\n\t// wrapLng: [min, max],\r\n\t// wrapLat: [min, max],\r\n\r\n\t// @property infinite: Boolean\r\n\t// If true, the coordinate space will be unbounded (infinite in both axes)\r\n\tinfinite: false,\r\n\r\n\t// @method wrapLatLng(latlng: LatLng): LatLng\r\n\t// Returns a `LatLng` where lat and lng has been wrapped according to the\r\n\t// CRS's `wrapLat` and `wrapLng` properties, if they are outside the CRS's bounds.\r\n\twrapLatLng(latlng) {\r\n\t\tconst lng = this.wrapLng ? wrapNum(latlng.lng, this.wrapLng, true) : latlng.lng;\r\n\t\tconst lat = this.wrapLat ? wrapNum(latlng.lat, this.wrapLat, true) : latlng.lat;\r\n\t\tconst { alt } = latlng;\r\n\r\n\t\treturn new LatLng(lat, lng, alt);\r\n\t},\r\n\r\n\t// @method wrapLatLngBounds(bounds: LatLngBounds): LatLngBounds\r\n\t// Returns a `LatLngBounds` with the same size as the given one, ensuring\r\n\t// that its center is within the CRS's bounds.\r\n\t// Only accepts actual `L.LatLngBounds` instances, not arrays.\r\n\twrapLatLngBounds(bounds) {\r\n\t\tconst center = bounds.getCenter();\r\n\t\tconst newCenter = this.wrapLatLng(center);\r\n\t\tconst latShift = center.lat - newCenter.lat;\r\n\t\tconst lngShift = center.lng - newCenter.lng;\r\n\r\n\t\tif (latShift === 0 && lngShift === 0) {\r\n\t\t\treturn bounds;\r\n\t\t}\r\n\r\n\t\tconst sw = bounds.getSouthWest();\r\n\t\tconst ne = bounds.getNorthEast();\r\n\t\tconst newSw = new LatLng(sw.lat - latShift, sw.lng - lngShift);\r\n\t\tconst newNe = new LatLng(ne.lat - latShift, ne.lng - lngShift);\r\n\r\n\t\treturn new LatLngBounds(newSw, newNe);\r\n\t}\r\n};\r\n\r\n/*\r\n * @namespace CRS\r\n * @crs L.CRS.Earth\r\n *\r\n * Serves as the base for CRS that are global such that they cover the earth.\r\n * Can only be used as the base for other CRS and cannot be used directly,\r\n * since it does not have a `code`, `projection` or `transformation`. `distance()` returns\r\n * meters.\r\n */\r\n\r\nconst Earth = extend({}, CRS, {\r\n\twrapLng: [-180, 180],\r\n\r\n\t// Mean Earth Radius, as recommended for use by\r\n\t// the International Union of Geodesy and Geophysics,\r\n\t// see http://rosettacode.org/wiki/Haversine_formula\r\n\tR: 6371000,\r\n\r\n\t// distance between two geographical points using spherical law of cosines approximation\r\n\tdistance(latlng1, latlng2) {\r\n\t\tconst rad = Math.PI / 180;\r\n\t\tconst lat1 = latlng1.lat * rad;\r\n\t\tconst lat2 = latlng2.lat * rad;\r\n\t\tconst sinDLat = Math.sin((latlng2.lat - latlng1.lat) * rad / 2);\r\n\t\tconst sinDLon = Math.sin((latlng2.lng - latlng1.lng) * rad / 2);\r\n\t\tconst a = sinDLat * sinDLat + Math.cos(lat1) * Math.cos(lat2) * sinDLon * sinDLon;\r\n\t\tconst c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));\r\n\t\treturn this.R * c;\r\n\t}\r\n});\r\n","/* eslint-disable no-restricted-properties */\r\n/* eslint-disable no-restricted-syntax */\r\n/* eslint-disable prefer-rest-params */\r\n/* eslint-disable guard-for-in */\r\n/* eslint-disable no-mixed-operators */\r\n/* eslint-disable no-use-before-define */\r\n/* eslint-disable consistent-return */\r\n/* eslint-disable no-param-reassign */\r\n/* eslint-disable no-throw-literal */\r\n/* eslint-disable global-require */\r\n/* eslint-disable no-undef */\r\n/* eslint-disable func-names */\r\n/**\r\n * Semicircle extension for L.Circle.\r\n * Jan Pieter Waagmeester \r\n *\r\n * This version is tested with leaflet 1.0.2\r\n */\r\n(function (factory) {\r\n\tif (typeof define === 'function' && define.amd) {\r\n\t\t// AMD\r\n\t\tdefine(['leaflet'], factory);\r\n\t} else if (typeof module !== 'undefined' && typeof require !== 'undefined') {\r\n\t\t// Node/CommonJS\r\n\t\tmodule.exports = factory(require('leaflet'));\r\n\t} else {\r\n\t\t// Browser globals\r\n\t\tif (typeof window.L === 'undefined') {\r\n\t\t\tthrow 'Leaflet must be loaded first';\r\n\t\t}\r\n\t\tfactory(window.L);\r\n\t}\r\n}((L) => {\r\n\tconst DEG_TO_RAD = Math.PI / 180;\r\n\r\n\t// make sure 0 degrees is up (North) and convert to radians.\r\n\tfunction fixAngle(angle) {\r\n\t\treturn (angle - 90) * DEG_TO_RAD;\r\n\t}\r\n\r\n\t// rotate point [x + r, y+r] around [x, y] by `angle` radians.\r\n\tfunction rotated(p, angle, r) {\r\n\t\treturn p.add(\r\n\t\t\tL.point(Math.cos(angle), Math.sin(angle)).multiplyBy(r)\r\n\t\t);\r\n\t}\r\n\r\n\tL.Point.prototype.rotated = function (angle, r) {\r\n\t\treturn rotated(this, angle, r);\r\n\t};\r\n\r\n\tconst semicircle = {\r\n\t\toptions: {\r\n\t\t\tstartAngle: 0,\r\n\t\t\tstopAngle: 359.9999,\r\n\t\t\tinnerRadius: 0\r\n\t\t},\r\n\r\n\t\tstartAngle() {\r\n\t\t\tif (this.options.startAngle < this.options.stopAngle) {\r\n\t\t\t\treturn fixAngle(this.options.startAngle);\r\n\t\t\t}\r\n\t\t\treturn fixAngle(this.options.stopAngle);\r\n\t\t},\r\n\t\tstopAngle() {\r\n\t\t\tif (this.options.startAngle < this.options.stopAngle) {\r\n\t\t\t\treturn fixAngle(this.options.stopAngle);\r\n\t\t\t}\r\n\t\t\treturn fixAngle(this.options.startAngle);\r\n\t\t},\r\n\r\n\t\tsetStartAngle(angle) {\r\n\t\t\tthis.options.startAngle = angle;\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\r\n\t\tsetStopAngle(angle) {\r\n\t\t\tthis.options.stopAngle = angle;\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\r\n\t\tsetInnerRadius(radius) {\r\n\t\t\tthis.options.innerRadius = radius;\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\r\n\t\tsetDirection(direction, degrees) {\r\n\t\t\tif (degrees === undefined) {\r\n\t\t\t\tdegrees = 10;\r\n\t\t\t}\r\n\t\t\tthis.options.startAngle = direction - (degrees / 2);\r\n\t\t\tthis.options.stopAngle = direction + (degrees / 2);\r\n\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\t\tgetDirection() {\r\n\t\t\treturn this.stopAngle() - (this.stopAngle() - this.startAngle()) / 2;\r\n\t\t},\r\n\r\n\t\tisSemicircle() {\r\n\t\t\tconst { startAngle } = this.options;\r\n\t\t\tconst { stopAngle } = this.options;\r\n\r\n\t\t\treturn (\r\n\t\t\t\t!(startAngle === 0 && stopAngle > 359)\r\n\t\t\t\t&& !(startAngle === stopAngle)\r\n\t\t\t);\r\n\t\t},\r\n\t\t_containsPoint(p) {\r\n\t\t\tfunction normalize(angle) {\r\n\t\t\t\twhile (angle <= -Math.PI) {\r\n\t\t\t\t\tangle += 2.0 * Math.PI;\r\n\t\t\t\t}\r\n\t\t\t\twhile (angle > Math.PI) {\r\n\t\t\t\t\tangle -= 2.0 * Math.PI;\r\n\t\t\t\t}\r\n\t\t\t\treturn angle;\r\n\t\t\t}\r\n\t\t\tlet angle = Math.atan2(p.y - this._point.y, p.x - this._point.x);\r\n\t\t\tconst nStart = normalize(this.startAngle());\r\n\t\t\tlet nStop = normalize(this.stopAngle());\r\n\t\t\tif (nStop <= nStart) {\r\n\t\t\t\tnStop += 2.0 * Math.PI;\r\n\t\t\t}\r\n\t\t\tif (angle <= nStart) {\r\n\t\t\t\tangle += 2.0 * Math.PI;\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\tnStart < angle && angle <= nStop\r\n\t\t\t\t&& p.distanceTo(this._point) <= this._radius + this._clickTolerance()\r\n\t\t\t);\r\n\t\t}\r\n\t};\r\n\r\n\tL.SemiCircle = L.Circle.extend(semicircle);\r\n\tL.SemiCircleMarker = L.CircleMarker.extend(semicircle);\r\n\r\n\tL.semiCircle = function (latlng, options) {\r\n\t\treturn new L.SemiCircle(latlng, options);\r\n\t};\r\n\tL.semiCircleMarker = function (latlng, options) {\r\n\t\treturn new L.SemiCircleMarker(latlng, options);\r\n\t};\r\n\r\n\tconst _updateCircleSVG = L.SVG.prototype._updateCircle;\r\n\tconst _updateCircleCanvas = L.Canvas.prototype._updateCircle;\r\n\r\n\tL.SVG.include({\r\n\t\t_updateCircle(layer) {\r\n\t\t\t// If we want a circle, we use the original function\r\n\t\t\tif (!(layer instanceof L.SemiCircle || layer instanceof L.SemiCircleMarker)\r\n\t\t\t\t|| !layer.isSemicircle()) {\r\n\t\t\t\treturn _updateCircleSVG.call(this, layer);\r\n\t\t\t}\r\n\t\t\tif (layer._empty()) {\r\n\t\t\t\treturn this._setPath(layer, 'M0 0');\r\n\t\t\t}\r\n\r\n\t\t\tconst p = layer._map.latLngToLayerPoint(layer._latlng);\r\n\t\t\tconst r = layer._radius;\r\n\t\t\tconst r2 = Math.round(layer._radiusY || r);\r\n\t\t\tconst start = p.rotated(layer.startAngle(), r);\r\n\t\t\tconst end = p.rotated(layer.stopAngle(), r);\r\n\r\n\t\t\tconst largeArc = (layer.options.stopAngle - layer.options.startAngle >= 180) ? '1' : '0';\r\n\r\n\t\t\tif (layer.options.innerRadius === 0 || layer.options.innerRadius === undefined) {\r\n\t\t\t\tconst d = `M${p.x},${p.y\r\n\t\t\t\t\t// line to first start point\r\n\t\t\t\t}L${start.x},${start.y\r\n\t\t\t\t}A ${r},${r2},0,${largeArc},1,${end.x},${end.y\r\n\t\t\t\t} z`;\r\n\r\n\t\t\t\tthis._setPath(layer, d);\r\n\t\t\t} else {\r\n\t\t\t\tif (layer.options.innerRadius >= layer.options.radius) {\r\n\t\t\t\t\tthis._mRadius = layer.options.radius - 1;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis._mRadius = layer.options.innerRadius;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst { lng } = layer._latlng;\r\n\t\t\t\tconst { lat } = layer._latlng;\r\n\t\t\t\tconst map = layer._map;\r\n\t\t\t\tconst { crs } = map.options;\r\n\r\n\t\t\t\tconst d = Math.PI / 180;\r\n\t\t\t\tconst latR = (this._mRadius / Earth.R) / d;\r\n\t\t\t\tconst top = map.project([lat + latR, lng]);\r\n\t\t\t\tconst bottom = map.project([lat - latR, lng]);\r\n\t\t\t\tconst p2 = top.add(bottom).divideBy(2);\r\n\t\t\t\tconst lat2 = map.unproject(p2).lat;\r\n\t\t\t\tlet lngR = Math.acos((Math.cos(latR * d) - Math.sin(lat * d) * Math.sin(lat2 * d))\r\n\t\t\t\t\t/ (Math.cos(lat * d) * Math.cos(lat2 * d))) / d;\r\n\r\n\t\t\t\tif (Number.isNaN(lngR) || lngR === 0) {\r\n\t\t\t\t\tlngR = latR / Math.cos(Math.PI / 180 * lat); // Fallback for edge case, #2425\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis._point = p2.subtract(map.getPixelOrigin());\r\n\t\t\t\tthis._radius = Number.isNaN(lngR) ? 0 : p2.x - map.project([lat2, lng - lngR]).x;\r\n\t\t\t\tthis._radiusY = p2.y - top.y;\r\n\r\n\t\t\t\tconst innerStart = p.rotated(layer.startAngle(), this._radius);\r\n\t\t\t\tconst innerEnd = p.rotated(layer.stopAngle(), this._radius);\r\n\t\t\t\tconst innerR2 = Math.round(this._radiusY || this._radius);\r\n\r\n\t\t\t\tconst path = `M${innerStart.x},${innerStart.y\r\n\t\t\t\t\t// line to first start point\r\n\t\t\t\t}L${start.x},${start.y\r\n\t\t\t\t}A ${r},${r2},0,${largeArc},1,${end.x},${end.y\r\n\t\t\t\t}L ${innerEnd.x},${innerEnd.y\r\n\t\t\t\t}M${innerStart.x},${innerStart.y\r\n\t\t\t\t}A ${this._radius},${innerR2},0,${largeArc},1,${innerEnd.x},${innerEnd.y\r\n\t\t\t\t}`;\r\n\r\n\t\t\t\tthis._setPath(layer, path);\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\tL.Canvas.include({\r\n\t\t_updateCircle(layer) {\r\n\t\t\t// If we want a circle, we use the original function\r\n\t\t\tif (!(layer instanceof L.SemiCircle || layer instanceof L.SemiCircleMarker)\r\n\t\t\t\t|| !layer.isSemicircle()) {\r\n\t\t\t\treturn _updateCircleCanvas.call(this, layer);\r\n\t\t\t}\r\n\r\n\t\t\tconst p = layer._point;\r\n\t\t\tconst ctx = this._ctx;\r\n\t\t\tconst r = layer._radius;\r\n\t\t\tconst s = (layer._radiusY || r) / r;\r\n\t\t\tconst start = p.rotated(layer.startAngle(), r);\r\n\r\n\t\t\t// comentado porque dá erro\r\n\t\t\t// console.log(layer)\r\n\t\t\t// console.log(this)\r\n\t\t\t// this._drawnLayers[layer._leaflet_id] = layer;\r\n\r\n\t\t\tif (s !== 1) {\r\n\t\t\t\tctx.save();\r\n\t\t\t\tctx.scale(1, s);\r\n\t\t\t}\r\n\r\n\t\t\tif (layer.options.innerRadius === 0 || layer.options.innerRadius === undefined) {\r\n\t\t\t\tctx.beginPath();\r\n\t\t\t\tctx.moveTo(p.x, p.y);\r\n\t\t\t\tctx.lineTo(start.x, start.y);\r\n\t\t\t\tctx.arc(p.x, p.y, r, layer.startAngle(), layer.stopAngle());\r\n\t\t\t\tctx.lineTo(p.x, p.y);\r\n\t\t\t} else {\r\n\t\t\t\tif (layer.options.innerRadius >= layer.options.radius) {\r\n\t\t\t\t\tthis._mRadius = layer.options.radius - 1;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis._mRadius = layer.options.innerRadius;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst { lng } = layer._latlng;\r\n\t\t\t\tconst { lat } = layer._latlng;\r\n\t\t\t\tconst map = layer._map;\r\n\t\t\t\tconst { crs } = map.options;\r\n\r\n\t\t\t\tconst d = Math.PI / 180;\r\n\t\t\t\tconst latR = (this._mRadius / Earth.R) / d;\r\n\t\t\t\tconst top = map.project([lat + latR, lng]);\r\n\t\t\t\tconst bottom = map.project([lat - latR, lng]);\r\n\t\t\t\tconst p2 = top.add(bottom).divideBy(2);\r\n\t\t\t\tconst lat2 = map.unproject(p2).lat;\r\n\t\t\t\tlet lngR = Math.acos((Math.cos(latR * d) - Math.sin(lat * d) * Math.sin(lat2 * d))\r\n\t\t\t\t\t/ (Math.cos(lat * d) * Math.cos(lat2 * d))) / d;\r\n\r\n\t\t\t\tif (Number.isNaN(lngR) || lngR === 0) {\r\n\t\t\t\t\tlngR = latR / Math.cos(Math.PI / 180 * lat); // Fallback for edge case, #2425\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis._point = p2.subtract(map.getPixelOrigin());\r\n\t\t\t\tthis._radius = Number.isNaN(lngR) ? 0 : p2.x - map.project([lat2, lng - lngR]).x;\r\n\t\t\t\tthis._radiusY = p2.y - top.y;\r\n\r\n\t\t\t\tconst innerStart = p.rotated(layer.startAngle(), this._radius);\r\n\t\t\t\tconst innerEnd = p.rotated(layer.stopAngle(), this._radius);\r\n\r\n\t\t\t\tctx.beginPath();\r\n\t\t\t\tctx.moveTo(innerStart.x, innerStart.y);\r\n\t\t\t\tctx.lineTo(start.x, start.y);\r\n\t\t\t\tctx.arc(p.x, p.y, r, layer.startAngle(), layer.stopAngle());\r\n\t\t\t\tctx.lineTo(innerEnd.x, innerEnd.y);\r\n\t\t\t\tctx.arc(p.x, p.y, this._radius, layer.startAngle(), layer.stopAngle());\r\n\t\t\t}\r\n\r\n\t\t\tif (s !== 1) {\r\n\t\t\t\tctx.restore();\r\n\t\t\t}\r\n\r\n\t\t\tthis._fillStroke(ctx, layer);\r\n\t\t}\r\n\t});\r\n}));\r\n\r\n// @function extend(dest: Object, src?: Object): Object\r\n// Merges the properties of the `src` object (or multiple objects) into `dest` object and returns the latter. Has an `L.extend` shortcut.\r\nfunction extend(dest) {\r\n\tlet i; let j; let len; let\r\n\t\tsrc;\r\n\r\n\tfor (j = 1, len = arguments.length; j < len; j++) {\r\n\t\tsrc = arguments[j];\r\n\t\tfor (i in src) {\r\n\t\t\tdest[i] = src[i];\r\n\t\t}\r\n\t}\r\n\treturn dest;\r\n}\r\n\r\nconst CRS = {\r\n\t// @method latLngToPoint(latlng: LatLng, zoom: Number): Point\r\n\t// Projects geographical coordinates into pixel coordinates for a given zoom.\r\n\tlatLngToPoint(latlng, zoom) {\r\n\t\tconst projectedPoint = this.projection.project(latlng);\r\n\t\tconst scale = this.scale(zoom);\r\n\r\n\t\treturn this.transformation._transform(projectedPoint, scale);\r\n\t},\r\n\r\n\t// @method pointToLatLng(point: Point, zoom: Number): LatLng\r\n\t// The inverse of `latLngToPoint`. Projects pixel coordinates on a given\r\n\t// zoom into geographical coordinates.\r\n\tpointToLatLng(point, zoom) {\r\n\t\tconst scale = this.scale(zoom);\r\n\t\tconst untransformedPoint = this.transformation.untransform(point, scale);\r\n\r\n\t\treturn this.projection.unproject(untransformedPoint);\r\n\t},\r\n\r\n\t// @method project(latlng: LatLng): Point\r\n\t// Projects geographical coordinates into coordinates in units accepted for\r\n\t// this CRS (e.g. meters for EPSG:3857, for passing it to WMS services).\r\n\tproject(latlng) {\r\n\t\treturn this.projection.project(latlng);\r\n\t},\r\n\r\n\t// @method unproject(point: Point): LatLng\r\n\t// Given a projected coordinate returns the corresponding LatLng.\r\n\t// The inverse of `project`.\r\n\tunproject(point) {\r\n\t\treturn this.projection.unproject(point);\r\n\t},\r\n\r\n\t// @method scale(zoom: Number): Number\r\n\t// Returns the scale used when transforming projected coordinates into\r\n\t// pixel coordinates for a particular zoom. For example, it returns\r\n\t// `256 * 2^zoom` for Mercator-based CRS.\r\n\tscale(zoom) {\r\n\t\treturn 256 * Math.pow(2, zoom);\r\n\t},\r\n\r\n\t// @method zoom(scale: Number): Number\r\n\t// Inverse of `scale()`, returns the zoom level corresponding to a scale\r\n\t// factor of `scale`.\r\n\tzoom(scale) {\r\n\t\treturn Math.log(scale / 256) / Math.LN2;\r\n\t},\r\n\r\n\t// @method getProjectedBounds(zoom: Number): Bounds\r\n\t// Returns the projection's bounds scaled and transformed for the provided `zoom`.\r\n\tgetProjectedBounds(zoom) {\r\n\t\tif (this.infinite) { return null; }\r\n\r\n\t\tconst b = this.projection.bounds;\r\n\t\tconst s = this.scale(zoom);\r\n\t\tconst min = this.transformation.transform(b.min, s);\r\n\t\tconst max = this.transformation.transform(b.max, s);\r\n\r\n\t\treturn new Bounds(min, max);\r\n\t},\r\n\r\n\t// @method distance(latlng1: LatLng, latlng2: LatLng): Number\r\n\t// Returns the distance between two geographical coordinates.\r\n\r\n\t// @property code: String\r\n\t// Standard code name of the CRS passed into WMS services (e.g. `'EPSG:3857'`)\r\n\t//\r\n\t// @property wrapLng: Number[]\r\n\t// An array of two numbers defining whether the longitude (horizontal) coordinate\r\n\t// axis wraps around a given range and how. Defaults to `[-180, 180]` in most\r\n\t// geographical CRSs. If `undefined`, the longitude axis does not wrap around.\r\n\t//\r\n\t// @property wrapLat: Number[]\r\n\t// Like `wrapLng`, but for the latitude (vertical) axis.\r\n\r\n\t// wrapLng: [min, max],\r\n\t// wrapLat: [min, max],\r\n\r\n\t// @property infinite: Boolean\r\n\t// If true, the coordinate space will be unbounded (infinite in both axes)\r\n\tinfinite: false,\r\n\r\n\t// @method wrapLatLng(latlng: LatLng): LatLng\r\n\t// Returns a `LatLng` where lat and lng has been wrapped according to the\r\n\t// CRS's `wrapLat` and `wrapLng` properties, if they are outside the CRS's bounds.\r\n\twrapLatLng(latlng) {\r\n\t\tconst lng = this.wrapLng ? wrapNum(latlng.lng, this.wrapLng, true) : latlng.lng;\r\n\t\tconst lat = this.wrapLat ? wrapNum(latlng.lat, this.wrapLat, true) : latlng.lat;\r\n\t\tconst { alt } = latlng;\r\n\r\n\t\treturn new LatLng(lat, lng, alt);\r\n\t},\r\n\r\n\t// @method wrapLatLngBounds(bounds: LatLngBounds): LatLngBounds\r\n\t// Returns a `LatLngBounds` with the same size as the given one, ensuring\r\n\t// that its center is within the CRS's bounds.\r\n\t// Only accepts actual `L.LatLngBounds` instances, not arrays.\r\n\twrapLatLngBounds(bounds) {\r\n\t\tconst center = bounds.getCenter();\r\n\t\tconst newCenter = this.wrapLatLng(center);\r\n\t\tconst latShift = center.lat - newCenter.lat;\r\n\t\tconst lngShift = center.lng - newCenter.lng;\r\n\r\n\t\tif (latShift === 0 && lngShift === 0) {\r\n\t\t\treturn bounds;\r\n\t\t}\r\n\r\n\t\tconst sw = bounds.getSouthWest();\r\n\t\tconst ne = bounds.getNorthEast();\r\n\t\tconst newSw = new LatLng(sw.lat - latShift, sw.lng - lngShift);\r\n\t\tconst newNe = new LatLng(ne.lat - latShift, ne.lng - lngShift);\r\n\r\n\t\treturn new LatLngBounds(newSw, newNe);\r\n\t}\r\n};\r\n\r\n/*\r\n * @namespace CRS\r\n * @crs L.CRS.Earth\r\n *\r\n * Serves as the base for CRS that are global such that they cover the earth.\r\n * Can only be used as the base for other CRS and cannot be used directly,\r\n * since it does not have a `code`, `projection` or `transformation`. `distance()` returns\r\n * meters.\r\n */\r\n\r\nconst Earth = extend({}, CRS, {\r\n\twrapLng: [-180, 180],\r\n\r\n\t// Mean Earth Radius, as recommended for use by\r\n\t// the International Union of Geodesy and Geophysics,\r\n\t// see http://rosettacode.org/wiki/Haversine_formula\r\n\tR: 6371000,\r\n\r\n\t// distance between two geographical points using spherical law of cosines approximation\r\n\tdistance(latlng1, latlng2) {\r\n\t\tconst rad = Math.PI / 180;\r\n\t\tconst lat1 = latlng1.lat * rad;\r\n\t\tconst lat2 = latlng2.lat * rad;\r\n\t\tconst sinDLat = Math.sin((latlng2.lat - latlng1.lat) * rad / 2);\r\n\t\tconst sinDLon = Math.sin((latlng2.lng - latlng1.lng) * rad / 2);\r\n\t\tconst a = sinDLat * sinDLat + Math.cos(lat1) * Math.cos(lat2) * sinDLon * sinDLon;\r\n\t\tconst c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));\r\n\t\treturn this.R * c;\r\n\t}\r\n});\r\n","/* eslint-disable no-restricted-properties */\r\n/* eslint-disable no-restricted-syntax */\r\n/* eslint-disable prefer-rest-params */\r\n/* eslint-disable guard-for-in */\r\n/* eslint-disable no-mixed-operators */\r\n/* eslint-disable no-use-before-define */\r\n/* eslint-disable consistent-return */\r\n/* eslint-disable no-param-reassign */\r\n/* eslint-disable no-throw-literal */\r\n/* eslint-disable global-require */\r\n/* eslint-disable no-undef */\r\n/* eslint-disable func-names */\r\n/**\r\n * Semicircle extension for L.Circle.\r\n * Jan Pieter Waagmeester \r\n *\r\n * This version is tested with leaflet 1.0.2\r\n */\r\n(function (factory) {\r\n\tif (typeof define === 'function' && define.amd) {\r\n\t\t// AMD\r\n\t\tdefine(['leaflet'], factory);\r\n\t} else if (typeof module !== 'undefined' && typeof require !== 'undefined') {\r\n\t\t// Node/CommonJS\r\n\t\tmodule.exports = factory(require('leaflet'));\r\n\t} else {\r\n\t\t// Browser globals\r\n\t\tif (typeof window.L === 'undefined') {\r\n\t\t\tthrow 'Leaflet must be loaded first';\r\n\t\t}\r\n\t\tfactory(window.L);\r\n\t}\r\n}((L) => {\r\n\tconst DEG_TO_RAD = Math.PI / 180;\r\n\r\n\t// make sure 0 degrees is up (North) and convert to radians.\r\n\tfunction fixAngle(angle) {\r\n\t\treturn (angle - 90) * DEG_TO_RAD;\r\n\t}\r\n\r\n\t// rotate point [x + r, y+r] around [x, y] by `angle` radians.\r\n\tfunction rotated(p, angle, r) {\r\n\t\treturn p.add(\r\n\t\t\tL.point(Math.cos(angle), Math.sin(angle)).multiplyBy(r)\r\n\t\t);\r\n\t}\r\n\r\n\tL.Point.prototype.rotated = function (angle, r) {\r\n\t\treturn rotated(this, angle, r);\r\n\t};\r\n\r\n\tconst semicircle = {\r\n\t\toptions: {\r\n\t\t\tstartAngle: 0,\r\n\t\t\tstopAngle: 359.9999,\r\n\t\t\tinnerRadius: 0\r\n\t\t},\r\n\r\n\t\tstartAngle() {\r\n\t\t\tif (this.options.startAngle < this.options.stopAngle) {\r\n\t\t\t\treturn fixAngle(this.options.startAngle);\r\n\t\t\t}\r\n\t\t\treturn fixAngle(this.options.stopAngle);\r\n\t\t},\r\n\t\tstopAngle() {\r\n\t\t\tif (this.options.startAngle < this.options.stopAngle) {\r\n\t\t\t\treturn fixAngle(this.options.stopAngle);\r\n\t\t\t}\r\n\t\t\treturn fixAngle(this.options.startAngle);\r\n\t\t},\r\n\r\n\t\tsetStartAngle(angle) {\r\n\t\t\tthis.options.startAngle = angle;\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\r\n\t\tsetStopAngle(angle) {\r\n\t\t\tthis.options.stopAngle = angle;\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\r\n\t\tsetInnerRadius(radius) {\r\n\t\t\tthis.options.innerRadius = radius;\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\r\n\t\tsetDirection(direction, degrees) {\r\n\t\t\tif (degrees === undefined) {\r\n\t\t\t\tdegrees = 10;\r\n\t\t\t}\r\n\t\t\tthis.options.startAngle = direction - (degrees / 2);\r\n\t\t\tthis.options.stopAngle = direction + (degrees / 2);\r\n\r\n\t\t\treturn this.redraw();\r\n\t\t},\r\n\t\tgetDirection() {\r\n\t\t\treturn this.stopAngle() - (this.stopAngle() - this.startAngle()) / 2;\r\n\t\t},\r\n\r\n\t\tisSemicircle() {\r\n\t\t\tconst { startAngle } = this.options;\r\n\t\t\tconst { stopAngle } = this.options;\r\n\r\n\t\t\treturn (\r\n\t\t\t\t!(startAngle === 0 && stopAngle > 359)\r\n\t\t\t\t&& !(startAngle === stopAngle)\r\n\t\t\t);\r\n\t\t},\r\n\t\t_containsPoint(p) {\r\n\t\t\tfunction normalize(angle) {\r\n\t\t\t\twhile (angle <= -Math.PI) {\r\n\t\t\t\t\tangle += 2.0 * Math.PI;\r\n\t\t\t\t}\r\n\t\t\t\twhile (angle > Math.PI) {\r\n\t\t\t\t\tangle -= 2.0 * Math.PI;\r\n\t\t\t\t}\r\n\t\t\t\treturn angle;\r\n\t\t\t}\r\n\t\t\tlet angle = Math.atan2(p.y - this._point.y, p.x - this._point.x);\r\n\t\t\tconst nStart = normalize(this.startAngle());\r\n\t\t\tlet nStop = normalize(this.stopAngle());\r\n\t\t\tif (nStop <= nStart) {\r\n\t\t\t\tnStop += 2.0 * Math.PI;\r\n\t\t\t}\r\n\t\t\tif (angle <= nStart) {\r\n\t\t\t\tangle += 2.0 * Math.PI;\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\tnStart < angle && angle <= nStop\r\n\t\t\t\t&& p.distanceTo(this._point) <= this._radius + this._clickTolerance()\r\n\t\t\t);\r\n\t\t}\r\n\t};\r\n\r\n\tL.SemiCircle = L.Circle.extend(semicircle);\r\n\tL.SemiCircleMarker = L.CircleMarker.extend(semicircle);\r\n\r\n\tL.semiCircle = function (latlng, options) {\r\n\t\treturn new L.SemiCircle(latlng, options);\r\n\t};\r\n\tL.semiCircleMarker = function (latlng, options) {\r\n\t\treturn new L.SemiCircleMarker(latlng, options);\r\n\t};\r\n\r\n\tconst _updateCircleSVG = L.SVG.prototype._updateCircle;\r\n\tconst _updateCircleCanvas = L.Canvas.prototype._updateCircle;\r\n\r\n\tL.SVG.include({\r\n\t\t_updateCircle(layer) {\r\n\t\t\t// If we want a circle, we use the original function\r\n\t\t\tif (!(layer instanceof L.SemiCircle || layer instanceof L.SemiCircleMarker)\r\n\t\t\t\t|| !layer.isSemicircle()) {\r\n\t\t\t\treturn _updateCircleSVG.call(this, layer);\r\n\t\t\t}\r\n\t\t\tif (layer._empty()) {\r\n\t\t\t\treturn this._setPath(layer, 'M0 0');\r\n\t\t\t}\r\n\r\n\t\t\tconst p = layer._map.latLngToLayerPoint(layer._latlng);\r\n\t\t\tconst r = layer._radius;\r\n\t\t\tconst r2 = Math.round(layer._radiusY || r);\r\n\t\t\tconst start = p.rotated(layer.startAngle(), r);\r\n\t\t\tconst end = p.rotated(layer.stopAngle(), r);\r\n\r\n\t\t\tconst largeArc = (layer.options.stopAngle - layer.options.startAngle >= 180) ? '1' : '0';\r\n\r\n\t\t\tif (layer.options.innerRadius === 0 || layer.options.innerRadius === undefined) {\r\n\t\t\t\tconst d = `M${p.x},${p.y\r\n\t\t\t\t\t// line to first start point\r\n\t\t\t\t}L${start.x},${start.y\r\n\t\t\t\t}A ${r},${r2},0,${largeArc},1,${end.x},${end.y\r\n\t\t\t\t} z`;\r\n\r\n\t\t\t\tthis._setPath(layer, d);\r\n\t\t\t} else {\r\n\t\t\t\tif (layer.options.innerRadius >= layer.options.radius) {\r\n\t\t\t\t\tthis._mRadius = layer.options.radius - 1;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis._mRadius = layer.options.innerRadius;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst { lng } = layer._latlng;\r\n\t\t\t\tconst { lat } = layer._latlng;\r\n\t\t\t\tconst map = layer._map;\r\n\t\t\t\tconst { crs } = map.options;\r\n\r\n\t\t\t\tconst d = Math.PI / 180;\r\n\t\t\t\tconst latR = (this._mRadius / Earth.R) / d;\r\n\t\t\t\tconst top = map.project([lat + latR, lng]);\r\n\t\t\t\tconst bottom = map.project([lat - latR, lng]);\r\n\t\t\t\tconst p2 = top.add(bottom).divideBy(2);\r\n\t\t\t\tconst lat2 = map.unproject(p2).lat;\r\n\t\t\t\tlet lngR = Math.acos((Math.cos(latR * d) - Math.sin(lat * d) * Math.sin(lat2 * d))\r\n\t\t\t\t\t/ (Math.cos(lat * d) * Math.cos(lat2 * d))) / d;\r\n\r\n\t\t\t\tif (Number.isNaN(lngR) || lngR === 0) {\r\n\t\t\t\t\tlngR = latR / Math.cos(Math.PI / 180 * lat); // Fallback for edge case, #2425\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis._point = p2.subtract(map.getPixelOrigin());\r\n\t\t\t\tthis._radius = Number.isNaN(lngR) ? 0 : p2.x - map.project([lat2, lng - lngR]).x;\r\n\t\t\t\tthis._radiusY = p2.y - top.y;\r\n\r\n\t\t\t\tconst innerStart = p.rotated(layer.startAngle(), this._radius);\r\n\t\t\t\tconst innerEnd = p.rotated(layer.stopAngle(), this._radius);\r\n\t\t\t\tconst innerR2 = Math.round(this._radiusY || this._radius);\r\n\r\n\t\t\t\tconst path = `M${innerStart.x},${innerStart.y\r\n\t\t\t\t\t// line to first start point\r\n\t\t\t\t}L${start.x},${start.y\r\n\t\t\t\t}A ${r},${r2},0,${largeArc},1,${end.x},${end.y\r\n\t\t\t\t}L ${innerEnd.x},${innerEnd.y\r\n\t\t\t\t}M${innerStart.x},${innerStart.y\r\n\t\t\t\t}A ${this._radius},${innerR2},0,${largeArc},1,${innerEnd.x},${innerEnd.y\r\n\t\t\t\t}`;\r\n\r\n\t\t\t\tthis._setPath(layer, path);\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\tL.Canvas.include({\r\n\t\t_updateCircle(layer) {\r\n\t\t\t// If we want a circle, we use the original function\r\n\t\t\tif (!(layer instanceof L.SemiCircle || layer instanceof L.SemiCircleMarker)\r\n\t\t\t\t|| !layer.isSemicircle()) {\r\n\t\t\t\treturn _updateCircleCanvas.call(this, layer);\r\n\t\t\t}\r\n\r\n\t\t\tconst p = layer._point;\r\n\t\t\tconst ctx = this._ctx;\r\n\t\t\tconst r = layer._radius;\r\n\t\t\tconst s = (layer._radiusY || r) / r;\r\n\t\t\tconst start = p.rotated(layer.startAngle(), r);\r\n\r\n\t\t\t// comentado porque dá erro\r\n\t\t\t// console.log(layer)\r\n\t\t\t// console.log(this)\r\n\t\t\t// this._drawnLayers[layer._leaflet_id] = layer;\r\n\r\n\t\t\tif (s !== 1) {\r\n\t\t\t\tctx.save();\r\n\t\t\t\tctx.scale(1, s);\r\n\t\t\t}\r\n\r\n\t\t\tif (layer.options.innerRadius === 0 || layer.options.innerRadius === undefined) {\r\n\t\t\t\tctx.beginPath();\r\n\t\t\t\tctx.moveTo(p.x, p.y);\r\n\t\t\t\tctx.lineTo(start.x, start.y);\r\n\t\t\t\tctx.arc(p.x, p.y, r, layer.startAngle(), layer.stopAngle());\r\n\t\t\t\tctx.lineTo(p.x, p.y);\r\n\t\t\t} else {\r\n\t\t\t\tif (layer.options.innerRadius >= layer.options.radius) {\r\n\t\t\t\t\tthis._mRadius = layer.options.radius - 1;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis._mRadius = layer.options.innerRadius;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst { lng } = layer._latlng;\r\n\t\t\t\tconst { lat } = layer._latlng;\r\n\t\t\t\tconst map = layer._map;\r\n\t\t\t\tconst { crs } = map.options;\r\n\r\n\t\t\t\tconst d = Math.PI / 180;\r\n\t\t\t\tconst latR = (this._mRadius / Earth.R) / d;\r\n\t\t\t\tconst top = map.project([lat + latR, lng]);\r\n\t\t\t\tconst bottom = map.project([lat - latR, lng]);\r\n\t\t\t\tconst p2 = top.add(bottom).divideBy(2);\r\n\t\t\t\tconst lat2 = map.unproject(p2).lat;\r\n\t\t\t\tlet lngR = Math.acos((Math.cos(latR * d) - Math.sin(lat * d) * Math.sin(lat2 * d))\r\n\t\t\t\t\t/ (Math.cos(lat * d) * Math.cos(lat2 * d))) / d;\r\n\r\n\t\t\t\tif (Number.isNaN(lngR) || lngR === 0) {\r\n\t\t\t\t\tlngR = latR / Math.cos(Math.PI / 180 * lat); // Fallback for edge case, #2425\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis._point = p2.subtract(map.getPixelOrigin());\r\n\t\t\t\tthis._radius = Number.isNaN(lngR) ? 0 : p2.x - map.project([lat2, lng - lngR]).x;\r\n\t\t\t\tthis._radiusY = p2.y - top.y;\r\n\r\n\t\t\t\tconst innerStart = p.rotated(layer.startAngle(), this._radius);\r\n\t\t\t\tconst innerEnd = p.rotated(layer.stopAngle(), this._radius);\r\n\r\n\t\t\t\tctx.beginPath();\r\n\t\t\t\tctx.moveTo(innerStart.x, innerStart.y);\r\n\t\t\t\tctx.lineTo(start.x, start.y);\r\n\t\t\t\tctx.arc(p.x, p.y, r, layer.startAngle(), layer.stopAngle());\r\n\t\t\t\tctx.lineTo(innerEnd.x, innerEnd.y);\r\n\t\t\t\tctx.arc(p.x, p.y, this._radius, layer.startAngle(), layer.stopAngle());\r\n\t\t\t}\r\n\r\n\t\t\tif (s !== 1) {\r\n\t\t\t\tctx.restore();\r\n\t\t\t}\r\n\r\n\t\t\tthis._fillStroke(ctx, layer);\r\n\t\t}\r\n\t});\r\n}));\r\n\r\n// @function extend(dest: Object, src?: Object): Object\r\n// Merges the properties of the `src` object (or multiple objects) into `dest` object and returns the latter. Has an `L.extend` shortcut.\r\nfunction extend(dest) {\r\n\tlet i; let j; let len; let\r\n\t\tsrc;\r\n\r\n\tfor (j = 1, len = arguments.length; j < len; j++) {\r\n\t\tsrc = arguments[j];\r\n\t\tfor (i in src) {\r\n\t\t\tdest[i] = src[i];\r\n\t\t}\r\n\t}\r\n\treturn dest;\r\n}\r\n\r\nconst CRS = {\r\n\t// @method latLngToPoint(latlng: LatLng, zoom: Number): Point\r\n\t// Projects geographical coordinates into pixel coordinates for a given zoom.\r\n\tlatLngToPoint(latlng, zoom) {\r\n\t\tconst projectedPoint = this.projection.project(latlng);\r\n\t\tconst scale = this.scale(zoom);\r\n\r\n\t\treturn this.transformation._transform(projectedPoint, scale);\r\n\t},\r\n\r\n\t// @method pointToLatLng(point: Point, zoom: Number): LatLng\r\n\t// The inverse of `latLngToPoint`. Projects pixel coordinates on a given\r\n\t// zoom into geographical coordinates.\r\n\tpointToLatLng(point, zoom) {\r\n\t\tconst scale = this.scale(zoom);\r\n\t\tconst untransformedPoint = this.transformation.untransform(point, scale);\r\n\r\n\t\treturn this.projection.unproject(untransformedPoint);\r\n\t},\r\n\r\n\t// @method project(latlng: LatLng): Point\r\n\t// Projects geographical coordinates into coordinates in units accepted for\r\n\t// this CRS (e.g. meters for EPSG:3857, for passing it to WMS services).\r\n\tproject(latlng) {\r\n\t\treturn this.projection.project(latlng);\r\n\t},\r\n\r\n\t// @method unproject(point: Point): LatLng\r\n\t// Given a projected coordinate returns the corresponding LatLng.\r\n\t// The inverse of `project`.\r\n\tunproject(point) {\r\n\t\treturn this.projection.unproject(point);\r\n\t},\r\n\r\n\t// @method scale(zoom: Number): Number\r\n\t// Returns the scale used when transforming projected coordinates into\r\n\t// pixel coordinates for a particular zoom. For example, it returns\r\n\t// `256 * 2^zoom` for Mercator-based CRS.\r\n\tscale(zoom) {\r\n\t\treturn 256 * Math.pow(2, zoom);\r\n\t},\r\n\r\n\t// @method zoom(scale: Number): Number\r\n\t// Inverse of `scale()`, returns the zoom level corresponding to a scale\r\n\t// factor of `scale`.\r\n\tzoom(scale) {\r\n\t\treturn Math.log(scale / 256) / Math.LN2;\r\n\t},\r\n\r\n\t// @method getProjectedBounds(zoom: Number): Bounds\r\n\t// Returns the projection's bounds scaled and transformed for the provided `zoom`.\r\n\tgetProjectedBounds(zoom) {\r\n\t\tif (this.infinite) { return null; }\r\n\r\n\t\tconst b = this.projection.bounds;\r\n\t\tconst s = this.scale(zoom);\r\n\t\tconst min = this.transformation.transform(b.min, s);\r\n\t\tconst max = this.transformation.transform(b.max, s);\r\n\r\n\t\treturn new Bounds(min, max);\r\n\t},\r\n\r\n\t// @method distance(latlng1: LatLng, latlng2: LatLng): Number\r\n\t// Returns the distance between two geographical coordinates.\r\n\r\n\t// @property code: String\r\n\t// Standard code name of the CRS passed into WMS services (e.g. `'EPSG:3857'`)\r\n\t//\r\n\t// @property wrapLng: Number[]\r\n\t// An array of two numbers defining whether the longitude (horizontal) coordinate\r\n\t// axis wraps around a given range and how. Defaults to `[-180, 180]` in most\r\n\t// geographical CRSs. If `undefined`, the longitude axis does not wrap around.\r\n\t//\r\n\t// @property wrapLat: Number[]\r\n\t// Like `wrapLng`, but for the latitude (vertical) axis.\r\n\r\n\t// wrapLng: [min, max],\r\n\t// wrapLat: [min, max],\r\n\r\n\t// @property infinite: Boolean\r\n\t// If true, the coordinate space will be unbounded (infinite in both axes)\r\n\tinfinite: false,\r\n\r\n\t// @method wrapLatLng(latlng: LatLng): LatLng\r\n\t// Returns a `LatLng` where lat and lng has been wrapped according to the\r\n\t// CRS's `wrapLat` and `wrapLng` properties, if they are outside the CRS's bounds.\r\n\twrapLatLng(latlng) {\r\n\t\tconst lng = this.wrapLng ? wrapNum(latlng.lng, this.wrapLng, true) : latlng.lng;\r\n\t\tconst lat = this.wrapLat ? wrapNum(latlng.lat, this.wrapLat, true) : latlng.lat;\r\n\t\tconst { alt } = latlng;\r\n\r\n\t\treturn new LatLng(lat, lng, alt);\r\n\t},\r\n\r\n\t// @method wrapLatLngBounds(bounds: LatLngBounds): LatLngBounds\r\n\t// Returns a `LatLngBounds` with the same size as the given one, ensuring\r\n\t// that its center is within the CRS's bounds.\r\n\t// Only accepts actual `L.LatLngBounds` instances, not arrays.\r\n\twrapLatLngBounds(bounds) {\r\n\t\tconst center = bounds.getCenter();\r\n\t\tconst newCenter = this.wrapLatLng(center);\r\n\t\tconst latShift = center.lat - newCenter.lat;\r\n\t\tconst lngShift = center.lng - newCenter.lng;\r\n\r\n\t\tif (latShift === 0 && lngShift === 0) {\r\n\t\t\treturn bounds;\r\n\t\t}\r\n\r\n\t\tconst sw = bounds.getSouthWest();\r\n\t\tconst ne = bounds.getNorthEast();\r\n\t\tconst newSw = new LatLng(sw.lat - latShift, sw.lng - lngShift);\r\n\t\tconst newNe = new LatLng(ne.lat - latShift, ne.lng - lngShift);\r\n\r\n\t\treturn new LatLngBounds(newSw, newNe);\r\n\t}\r\n};\r\n\r\n/*\r\n * @namespace CRS\r\n * @crs L.CRS.Earth\r\n *\r\n * Serves as the base for CRS that are global such that they cover the earth.\r\n * Can only be used as the base for other CRS and cannot be used directly,\r\n * since it does not have a `code`, `projection` or `transformation`. `distance()` returns\r\n * meters.\r\n */\r\n\r\nconst Earth = extend({}, CRS, {\r\n\twrapLng: [-180, 180],\r\n\r\n\t// Mean Earth Radius, as recommended for use by\r\n\t// the International Union of Geodesy and Geophysics,\r\n\t// see http://rosettacode.org/wiki/Haversine_formula\r\n\tR: 6371000,\r\n\r\n\t// distance between two geographical points using spherical law of cosines approximation\r\n\tdistance(latlng1, latlng2) {\r\n\t\tconst rad = Math.PI / 180;\r\n\t\tconst lat1 = latlng1.lat * rad;\r\n\t\tconst lat2 = latlng2.lat * rad;\r\n\t\tconst sinDLat = Math.sin((latlng2.lat - latlng1.lat) * rad / 2);\r\n\t\tconst sinDLon = Math.sin((latlng2.lng - latlng1.lng) * rad / 2);\r\n\t\tconst a = sinDLat * sinDLat + Math.cos(lat1) * Math.cos(lat2) * sinDLon * sinDLon;\r\n\t\tconst c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));\r\n\t\treturn this.R * c;\r\n\t}\r\n});\r\n","import AxiosRequest from 'utils/AxiosRequest';\r\nimport config from '../configuration/configuration.js';\r\n\r\nexport const SESSION_LOGIN = 'SESSION_LOGIN';\r\nexport const SESSION_LOGOUT = 'SESSION_LOGOUT';\r\nexport const SET_NOTIFICATIONS = 'SET_NOTIFICATIONS';\r\nexport const USER_INFO = 'USER_INFO';\r\nexport const SET_LOADING = 'SET_LOADING';\r\nexport const REDIRECT_TO_ERROR = 'REDIRECT_TO_ERROR';\r\n\r\nconst onSetNotifications = (value) => ({\r\n\ttype: SET_NOTIFICATIONS,\r\n\tnotifications: value\r\n});\r\n\r\nconst onLogin = () => ({\r\n\ttype: SESSION_LOGIN,\r\n});\r\n\r\nconst onGetUserInfo = (value) => ({\r\n\ttype: USER_INFO,\r\n\tuser: value\r\n});\r\n\r\nconst onSetLoading = (value) => ({\r\n\ttype: SET_LOADING,\r\n\tisLoading: value\r\n});\r\n\r\nconst onRedirectToError = (value) => ({\r\n\ttype: REDIRECT_TO_ERROR,\r\n\tlink: value\r\n});\r\n\r\nexport const getUserInfo = (token) => async (dispatch) => {\r\n\ttry {\r\n\t\tawait AxiosRequest(\r\n\t\t\t{\r\n\t\t\t\tmethod: 'POST',\r\n\t\t\t\turl: `${config.API_URL}account/GetUserInfo`,\r\n\t\t\t\theaders: { Authorization: `Bearer ${token}` }\r\n\t\t\t}\r\n\t\t).then(response => {\r\n\t\t\tdispatch(onGetUserInfo(response.data));\r\n\t\t});\r\n\t} catch (error) {\r\n\t\t// do nothing\r\n\t}\r\n};\r\n\r\nexport const login = (email, password) => async (dispatch) => {\r\n\ttry {\r\n\t\tawait AxiosRequest({\r\n\t\t\tmethod: 'POST',\r\n\t\t\turl: `${config.API_URL}auth/login`,\r\n\t\t\tdata: { email, password }\r\n\t\t}).then(response => {\r\n\t\t\tlocalStorage.setItem(config.TOKEN_KEY, response.data.token);\r\n\t\t\tdispatch(onRedirectToError());\r\n\t\t\tdispatch(getUserInfo(response.data.token));\r\n\t\t\tdispatch(onLogin());\r\n\t\t});\r\n\t} catch (error) {\r\n\t\tthrow new Error(error ? error.message : 'Network error!');\r\n\t}\r\n};\r\n\r\nexport const logout = () => (dispatch) => {\r\n\tlocalStorage.removeItem(config.TOKEN_KEY);\r\n\tdispatch({\r\n\t\ttype: SESSION_LOGOUT,\r\n\t});\r\n};\r\n\r\nexport const RedirectToError = (link) => (dispatch) => {\r\n\tdispatch(onRedirectToError(link));\r\n};\r\n\r\nexport const recover = (email) => async (dispatch) => {\r\n\ttry {\r\n\t\tawait AxiosRequest({\r\n\t\t\tmethod: 'POST',\r\n\t\t\turl: `${config.API_URL}auth/recover`,\r\n\t\t\tdata: {\r\n\t\t\t\temail\r\n\t\t\t}\r\n\t\t}).then(response => response);\r\n\t} catch (error) {\r\n\t\tthrow new Error(error ? error.message : 'Network error!');\r\n\t}\r\n};\r\n\r\nexport const CompleteRegistration = (password, rpassword, token, email) => async (dispatch) => {\r\n\ttry {\r\n\t\tawait AxiosRequest({\r\n\t\t\tmethod: 'POST',\r\n\t\t\turl: `${config.API_URL}auth/completeRegistration`,\r\n\t\t\tdata: {\r\n\t\t\t\tpassword,\r\n\t\t\t\trpassword,\r\n\t\t\t\ttoken,\r\n\t\t\t\tuser: email\r\n\t\t\t}\r\n\t\t}).then(response => {\r\n\t\t\tlocalStorage.setItem(config.TOKEN_KEY, response.data.token);\r\n\t\t\tdispatch(onLogin());\r\n\t\t\tdispatch(getUserInfo(response.data.token));\r\n\t\t});\r\n\t} catch (error) {\r\n\t\tthrow new Error(error ? error.message : 'Network error!');\r\n\t}\r\n};\r\n\r\nexport const ResetPassword = (password, rpassword, token, email) => async (dispatch) => {\r\n\ttry {\r\n\t\tawait AxiosRequest({\r\n\t\t\tmethod: 'POST',\r\n\t\t\turl: `${config.API_URL}auth/recoverconfirmation`,\r\n\t\t\tdata: {\r\n\t\t\t\tpassword,\r\n\t\t\t\trpassword,\r\n\t\t\t\ttoken,\r\n\t\t\t\tuser: email\r\n\t\t\t}\r\n\t\t}).then(response => {\r\n\t\t\tlocalStorage.setItem(config.TOKEN_KEY, response.data.token);\r\n\t\t\tdispatch(onLogin());\r\n\t\t\tdispatch(getUserInfo(response.data.token));\r\n\t\t});\r\n\t} catch (error) {\r\n\t\tthrow new Error(error ? error.message : 'Network error!');\r\n\t}\r\n};\r\n\r\nexport const FetchNotifications = () => async (dispatch) => {\r\n\ttry {\r\n\t\tawait AxiosRequest(\r\n\t\t\t{\r\n\t\t\t\tmethod: 'GET',\r\n\t\t\t\turl: `${config.API_URL}Notification/Notifications`,\r\n\t\t\t\thasLoading: false\r\n\t\t\t}\r\n\t\t).then(response => {\r\n\t\t\tdispatch(onSetNotifications(response.data));\r\n\t\t});\r\n\t} catch (error) {\r\n\t\t// do nothing\r\n\t}\r\n};\r\n\r\nexport const NotificationMarkAsRead = (id) => async (dispatch) => {\r\n\ttry {\r\n\t\tawait AxiosRequest(\r\n\t\t\t{\r\n\t\t\t\tmethod: 'PUT',\r\n\t\t\t\turl: `${config.API_URL}Notification/MarkAsRead/${id}`,\r\n\t\t\t\thasLoading: false\r\n\t\t\t}\r\n\t\t).then(response => {\r\n\t\t\tdispatch(FetchNotifications());\r\n\t\t});\r\n\t} catch (error) {\r\n\t\t// do nothing\r\n\t}\r\n};\r\n\r\nexport const SetLoading = (isLoading) => dispatch => {\r\n\tdispatch(onSetLoading(isLoading));\r\n};\r\n\r\nexport const UploadFile = (file) => {\r\n\tconst formData = new FormData();\r\n\tformData.append('file', file);\r\n\treturn AxiosRequest({\r\n\t\tmethod: 'POST',\r\n\t\turl: `${config.API_URL}File/Upload`,\r\n\t\tdata: formData,\r\n\t\theaders: {\r\n\t\t\t'Content-Type': 'multipart/form-data'\r\n\t\t}\r\n\t});\r\n};\r\n\r\nconst ShowFile = (response) => {\r\n\tconst blob = response.data;\r\n\tconst filename = decodeURIComponent(response.headers['content-disposition'].split('\\'')[2]);\r\n\t// It is necessary to create a new blob object with mime-type\r\n\t// explicitly set otherwise only Chrome works like it should\r\n\tconst newBlob = new Blob([blob], { type: 'application/force-download' });\r\n\r\n\t// IE doesn't allow using a blob object directly as link href\r\n\t// instead it is necessary to use msSaveOrOpenBlob\r\n\tif (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n\t\twindow.navigator.msSaveOrOpenBlob(newBlob);\r\n\t\treturn;\r\n\t}\r\n\r\n\t// For other browsers:\r\n\t// Create a link pointing to the ObjectURL containing the blob.\r\n\tconst data = window.URL.createObjectURL(newBlob);\r\n\tconst link = document.createElement('a');\r\n\tlink.href = data;\r\n\tlink.download = filename;\r\n\tdocument.body.appendChild(link);\r\n\tlink.click();\r\n\tsetTimeout(() => {\r\n\t\t// For Firefox it is necessary to delay revoking the ObjectURL\r\n\t\tdocument.body.removeChild(link);\r\n\t\twindow.URL.revokeObjectURL(data);\r\n\t}, 100);\r\n};\r\n\r\nexport const DownloadFile = (filePath) => async dispatch => {\r\n\ttry {\r\n\t\tawait AxiosRequest(\r\n\t\t\t{\r\n\t\t\t\tmethod: 'GET',\r\n\t\t\t\turl: `${config.API_URL}File/Download?file=${filePath}`,\r\n\t\t\t\tresponseType: 'blob'\r\n\t\t\t}\r\n\t\t).then(response => {\r\n\t\t\tShowFile(response);\r\n\t\t});\r\n\t} catch (error) {\r\n\t\t// do nothing\r\n\t}\r\n};\r\n","import { colors } from '@mui/material';\r\n\r\nconst white = '#FFFFFF';\r\nconst black = '#000000';\r\n\r\nexport default {\r\n\tblack,\r\n\twhite,\r\n\tprimary: {\r\n\t\tcontrastText: white,\r\n\t\tdark: colors.blue[900],\r\n\t\tmain: colors.blue[800],\r\n\t\tlight: colors.blue[100],\r\n\t},\r\n\tsecondary: {\r\n\t\tcontrastText: white,\r\n\t\tdark: colors.blue[900],\r\n\t\tmain: colors.blue.A400,\r\n\t\tlight: colors.blue.A400,\r\n\t},\r\n\terror: {\r\n\t\tcontrastText: white,\r\n\t\tdark: colors.red[900],\r\n\t\tmain: colors.red[600],\r\n\t\tlight: colors.red[400],\r\n\t},\r\n\ttext: {\r\n\t\tprimary: colors.blueGrey[900],\r\n\t\tsecondary: colors.blueGrey[600],\r\n\t\tlink: colors.blue[600],\r\n\t},\r\n\tlink: colors.blue[800],\r\n\ticon: colors.blueGrey[600],\r\n\tbackground: {\r\n\t\tdefault: '#F4F6F8',\r\n\t\tpaper: white,\r\n\t},\r\n\tdivider: colors.grey[200],\r\n};\r\n","import palette from './palette';\r\n\r\nexport default {\r\n\th1: {\r\n\t\tcolor: palette.text.primary,\r\n\t\tfontWeight: 500,\r\n\t\tfontSize: '35px',\r\n\t\tletterSpacing: '-0.24px',\r\n\t\tlineHeight: '40px',\r\n\t},\r\n\th2: {\r\n\t\tcolor: palette.text.primary,\r\n\t\tfontWeight: 500,\r\n\t\tfontSize: '29px',\r\n\t\tletterSpacing: '-0.24px',\r\n\t\tlineHeight: '32px',\r\n\t},\r\n\th3: {\r\n\t\tcolor: palette.text.primary,\r\n\t\tfontWeight: 500,\r\n\t\tfontSize: '24px',\r\n\t\tletterSpacing: '-0.06px',\r\n\t\tlineHeight: '28px',\r\n\t},\r\n\th4: {\r\n\t\tcolor: palette.text.primary,\r\n\t\tfontWeight: 500,\r\n\t\tfontSize: '20px',\r\n\t\tletterSpacing: '-0.06px',\r\n\t\tlineHeight: '24px',\r\n\t},\r\n\th5: {\r\n\t\tcolor: palette.text.primary,\r\n\t\tfontWeight: 500,\r\n\t\tfontSize: '16px',\r\n\t\tletterSpacing: '-0.05px',\r\n\t\tlineHeight: '20px',\r\n\t},\r\n\th6: {\r\n\t\tcolor: palette.text.primary,\r\n\t\tfontWeight: 500,\r\n\t\tfontSize: '14px',\r\n\t\tletterSpacing: '-0.05px',\r\n\t\tlineHeight: '20px',\r\n\t},\r\n\tsubtitle1: {\r\n\t\tcolor: palette.text.primary,\r\n\t\tfontSize: '16px',\r\n\t\tletterSpacing: '-0.05px',\r\n\t\tlineHeight: '25px',\r\n\t},\r\n\tsubtitle2: {\r\n\t\tcolor: palette.text.secondary,\r\n\t\tfontWeight: 400,\r\n\t\tfontSize: '14px',\r\n\t\tletterSpacing: '-0.05px',\r\n\t\tlineHeight: '21px',\r\n\t},\r\n\tbody1: {\r\n\t\tcolor: palette.text.primary,\r\n\t\tfontSize: '14px',\r\n\t\tletterSpacing: '-0.05px',\r\n\t\tlineHeight: '21px',\r\n\t},\r\n\tbody2: {\r\n\t\tcolor: palette.text.secondary,\r\n\t\tfontSize: '12px',\r\n\t\tletterSpacing: '-0.04px',\r\n\t\tlineHeight: '18px',\r\n\t},\r\n\tbutton: {\r\n\t\tcolor: palette.text.primary,\r\n\t\tfontSize: '14px',\r\n\t},\r\n\tcaption: {\r\n\t\tcolor: palette.text.secondary,\r\n\t\tfontSize: '11px',\r\n\t\tletterSpacing: '0.33px',\r\n\t\tlineHeight: '13px',\r\n\t},\r\n\toverline: {\r\n\t\tcolor: palette.text.secondary,\r\n\t\tfontSize: '11px',\r\n\t\tfontWeight: 500,\r\n\t\tletterSpacing: '0.33px',\r\n\t\tlineHeight: '13px',\r\n\t\ttextTransform: 'uppercase',\r\n\t},\r\n};\r\n","import { colors } from '@mui/material';\r\n\r\nexport default {\r\n\tstyleOverrides: {\r\n\t\troot: {\r\n\t\t\tbackgroundColor: colors.blueGrey[50],\r\n\t\t\tcolor: colors.blueGrey[900],\r\n\t\t},\r\n\t\tdeletable: {\r\n\t\t\t'&:focus': {\r\n\t\t\t\tbackgroundColor: colors.blueGrey[100],\r\n\t\t\t},\r\n\t\t},\r\n\t},\r\n};\r\n","import palette from '../palette';\r\n\r\nexport default {\r\n\troot: {\r\n\t\tcolor: palette.icon,\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: 'rgba(0, 0, 0, 0.03)',\r\n\t\t},\r\n\t},\r\n};\r\n","import palette from '../palette';\r\n\r\nexport default {\r\n\tstyleOverrides: {\r\n\t\troot: {},\r\n\t\tinput: {\r\n\t\t\t'&::placeholder': {\r\n\t\t\t\topacity: 1,\r\n\t\t\t\tcolor: palette.text.secondary,\r\n\t\t\t},\r\n\t\t},\r\n\t},\r\n};\r\n","import { colors } from '@mui/material';\r\n\r\nexport default {\r\n\tstyleOverrides: {\r\n\t\troot: {\r\n\t\t\tborderRadius: 3,\r\n\t\t\toverflow: 'hidden',\r\n\t\t},\r\n\t\tcolorPrimary: {\r\n\t\t\tbackgroundColor: colors.blueGrey[50],\r\n\t\t},\r\n\t},\r\n};\r\n","import palette from '../palette';\r\n\r\nexport default {\r\n\tstyleOverrides: {\r\n\t\troot: {\r\n\t\t\tcolor: palette.icon,\r\n\t\t\tminWidth: 32,\r\n\t\t},\r\n\t},\r\n};\r\n","import { colors } from '@mui/material';\r\n\r\nexport default {\r\n\tstyleOverrides: {\r\n\t\troot: {\r\n\t\t\tbackgroundColor: colors.grey[50],\r\n\t\t},\r\n\t},\r\n};\r\n","import MuiButton from './MuiButton';\r\nimport MuiCardActions from './MuiCardActions';\r\nimport MuiCardContent from './MuiCardContent';\r\nimport MuiCardHeader from './MuiCardHeader';\r\nimport MuiChip from './MuiChip';\r\nimport MuiIconButton from './MuiIconButton';\r\nimport MuiInputBase from './MuiInputBase';\r\nimport MuiLinearProgress from './MuiLinearProgress';\r\nimport MuiListItemIcon from './MuiListItemIcon';\r\nimport MuiOutlinedInput from './MuiOutlinedInput';\r\nimport MuiPaper from './MuiPaper';\r\nimport MuiTableHead from './MuiTableHead';\r\nimport MuiTableCell from './MuiTableCell';\r\nimport MuiTableRow from './MuiTableRow';\r\nimport MuiToggleButton from './MuiToggleButton';\r\nimport MuiTypography from './MuiTypography';\r\n\r\nexport default {\r\n\tMuiButton,\r\n\tMuiCardActions,\r\n\tMuiCardContent,\r\n\tMuiCardHeader,\r\n\tMuiChip,\r\n\tMuiIconButton,\r\n\tMuiInputBase,\r\n\tMuiLinearProgress,\r\n\tMuiListItemIcon,\r\n\tMuiOutlinedInput,\r\n\tMuiPaper,\r\n\tMuiTableHead,\r\n\tMuiTableCell,\r\n\tMuiTableRow,\r\n\tMuiToggleButton,\r\n\tMuiTypography,\r\n};\r\n","export default {\r\n\tcontained: {\r\n\t\tboxShadow:\r\n\t\t\t'0 1px 1px 0 rgba(0,0,0,0.14), 0 2px 1px -1px rgba(0,0,0,0.12), 0 1px 3px 0 rgba(0,0,0,0.20)',\r\n\t\tbackgroundColor: '#FFFFFF',\r\n\t},\r\n};\r\n","export default {\r\n\tstyleOverrides: {\r\n\t\troot: {\r\n\t\t\tpadding: '16px 24px',\r\n\t\t},\r\n\t},\r\n};\r\n","export default {\r\n\tstyleOverrides: {\r\n\t\troot: {\r\n\t\t\tpadding: '24px'\r\n\t\t},\r\n\t},\r\n};\r\n","export default {\r\n\tstyleOverrides: {\r\n\t\troot: {\r\n\t\t\tpadding: '16px 24px',\r\n\t\t},\r\n\t},\r\n};\r\n","export default {\r\n\tstyleOverrides: {\r\n\t\troot: {},\r\n\t\tnotchedOutline: {\r\n\t\t\tborderColor: 'rgba(0,0,0,0.15)',\r\n\t\t},\r\n\t},\r\n};\r\n","export default {\r\n\tstyleOverrides: {\r\n\t\troot: {},\r\n\t\televation1: {\r\n\t\t\tboxShadow:\r\n\t\t\t\t'0 0 0 1px rgba(63,63,68,0.05), 0 1px 3px 0 rgba(63,63,68,0.15)',\r\n\t\t},\r\n\t},\r\n};\r\n","import palette from '../palette';\r\nimport typography from '../typography';\r\n\r\nexport default {\r\n\tstyleOverrides: {\r\n\t\troot: {\r\n\t\t\t...typography.body1,\r\n\t\t\tborderBottom: `1px solid ${palette.divider}`,\r\n\t\t},\r\n\t},\r\n};\r\n","import palette from '../palette';\r\n\r\nexport default {\r\n\tstyleOverrides: {\r\n\t\troot: {\r\n\t\t\t'&$selected': {\r\n\t\t\t\tbackgroundColor: palette.background.default,\r\n\t\t\t},\r\n\t\t\t'&$hover': {\r\n\t\t\t\t'&:hover': {\r\n\t\t\t\t\tbackgroundColor: palette.background.default,\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t},\r\n\t},\r\n};\r\n","import { colors } from '@mui/material';\r\n\r\nimport palette from '../palette';\r\n\r\nexport default {\r\n\tstyleOverrides: {\r\n\t\troot: {\r\n\t\t\tcolor: palette.icon,\r\n\t\t\t'&:hover': {\r\n\t\t\t\tbackgroundColor: colors.grey[100],\r\n\t\t\t},\r\n\t\t\t'&$selected': {\r\n\t\t\t\tbackgroundColor: colors.grey[50],\r\n\t\t\t\tcolor: palette.primary.main,\r\n\t\t\t\t'&:hover': {\r\n\t\t\t\t\tbackgroundColor: colors.grey[100],\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t\t'&:first-child': {\r\n\t\t\t\tborderTopLeftRadius: 4,\r\n\t\t\t\tborderBottomLeftRadius: 4,\r\n\t\t\t},\r\n\t\t\t'&:last-child': {\r\n\t\t\t\tborderTopRightRadius: 4,\r\n\t\t\t\tborderBottomRightRadius: 4,\r\n\t\t\t},\r\n\t\t},\r\n\t},\r\n};\r\n","export default {\r\n\tstyleOverrides: {\r\n\t\tgutterBottom: {\r\n\t\t\tmarginBottom: '8px',\r\n\t\t},\r\n\t},\r\n};\r\n","import { createTheme } from '@mui/material';\r\n\r\nimport palette from './palette';\r\nimport typography from './typography';\r\nimport overrides from './overrides';\r\n\r\nconst theme = createTheme({\r\n\tpalette,\r\n\ttypography,\r\n\tcomponents: overrides,\r\n});\r\n\r\nexport default theme;\r\n","import config from '../../../configuration/configuration.js';\r\nimport AxiosRequest from '../../../utils/AxiosRequest';\r\n\r\nexport const DownloadEnergyScore = (exportList, project) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}EnergyScore/DownloadEnergyScore?project=${project}&${exportList.map(ds => `datasetNames=${ds}`).join('&')}`\r\n});\r\n","import { DownloadFile, enqueueSnackbar } from 'actions';\r\nimport { DownloadEnergyScore } from '../requests/EnergySmartScoreDashboardRequests';\r\n\r\nexport const EXPORT_SELECTION = 'EXPORT_SELECTION';\r\n\r\nconst onSetExportSelection = (value) => ({\r\n\ttype: EXPORT_SELECTION,\r\n\texportList: value\r\n});\r\n\r\nexport const SetExportSelection = (list) => dispatch => {\r\n\tdispatch(onSetExportSelection(list));\r\n};\r\n\r\nexport const ExportTables = (list, project) => async dispatch => {\r\n\tdispatch(enqueueSnackbar({ message: 'Export started...', options: { variant: 'info' } }));\r\n\tawait DownloadEnergyScore(list, project).then(response => {\r\n\t\tdispatch(enqueueSnackbar({ message: 'Export finished.', options: { variant: 'success' } }));\r\n\t\tdispatch(DownloadFile(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n","import {\r\n\tEXPORT_SELECTION\r\n} from '../actions/EnergySmartScoreDashboardActions';\r\n\r\nconst initialState = {\r\n\tdashboard: {\r\n\t}\r\n};\r\n\r\nconst smartScoreReducer = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase EXPORT_SELECTION: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\texport: action.exportList\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default smartScoreReducer;\r\n","import jwt from 'jwt-decode';\r\nimport * as actionTypes from 'actions';\r\nimport config from 'configuration/configuration.js';\r\n\r\nconst token = localStorage.getItem(config.TOKEN_KEY);\r\nlet initialState = {\r\n\tloggedIn: false,\r\n\tuser: {\r\n\t},\r\n\tnotifications: [],\r\n\tisLoading: false,\r\n\tloadingCount: 0,\r\n};\r\n\r\nif (token) {\r\n\tconst decoded = jwt(token);\r\n\tconst currentDate = new Date().getTime() / 1000;\r\n\tif (decoded.exp > currentDate) {\r\n\t\tinitialState = { ...initialState, loggedIn: true, user: { ...decoded } };\r\n\t}\r\n}\r\n\r\nconst sessionReducer = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase actionTypes.REDIRECT_TO_ERROR: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tlink: action.link\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase actionTypes.SESSION_LOGIN: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tloggedIn: true\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase actionTypes.USER_INFO: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tuser: { ...state.user, ...action.user }\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase actionTypes.SESSION_LOGOUT: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tloggedIn: false,\r\n\t\t\t\t\t\t\tuser: {\r\n\t\t\t\t\t\t\t\trole: 'Client',\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase actionTypes.SET_NOTIFICATIONS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tnotifications: action.notifications || [],\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase actionTypes.SET_LOADING: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\t// eslint-disable-next-line no-param-reassign\r\n\t\t\t\t\t\t\tloadingCount: action.isLoading ? state.loadingCount++ : state.loadingCount--,\r\n\t\t\t\t\t\t\tisLoading: state.loadingCount > 0,\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default sessionReducer;\r\n","import { ENQUEUE_SNACKBAR, CLOSE_SNACKBAR, REMOVE_SNACKBAR } from 'actions';\r\n\r\nconst defaultState = {\r\n\tnotifications: [],\r\n};\r\n\r\nexport default (state = defaultState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase ENQUEUE_SNACKBAR:\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tnotifications: [\r\n\t\t\t\t\t\t\t\t...state.notifications,\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tkey: action.key,\r\n\t\t\t\t\t\t\t\t\t...action.notification,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t],\r\n\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\tcase CLOSE_SNACKBAR:\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tnotifications: state.notifications.map(notification => (\r\n\t\t\t\t\t\t\t\t(action.dismissAll || notification.key === action.key)\r\n\t\t\t\t\t\t\t\t\t? { ...notification, dismissed: true }\r\n\t\t\t\t\t\t\t\t\t: { ...notification }\r\n\t\t\t\t\t\t\t)),\r\n\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\tcase REMOVE_SNACKBAR:\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tnotifications: state.notifications.filter(\r\n\t\t\t\t\t\t\t\tnotification => notification.key !== action.key,\r\n\t\t\t\t\t\t\t),\r\n\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\tdefault:\r\n\t\t\t\t\t\treturn state;\r\n\t}\r\n};\r\n","import config from '../../../configuration/configuration.js';\r\nimport AxiosRequest from '../../../utils/AxiosRequest';\r\n\r\nexport const GetUsersRequest = (role) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Users/GetUsers`,\r\n\tparams: { role }\r\n});\r\n\r\nexport const GetUsersStatsRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Users/GetUsersStats`,\r\n\tparams: {}\r\n});\r\n\r\nexport const GetRolesRequest = (role) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Users/GetRoles`,\r\n\tparams: { role }\r\n});\r\n\r\nexport const GetOperatorsRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Users/GetOperators`,\r\n\tparams: {}\r\n});\r\n\r\nexport const GetOperatorProjectsRequest = (operatorIds) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Users/GetOperatorProjects`,\r\n\tparams: { operatorIds }\r\n});\r\n\r\nexport const CreateUserRequest = (user) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Users/CreateUser`,\r\n\tdata: user\r\n});\r\n\r\nexport const EditUserRequest = (user) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Users/EditUser`,\r\n\tdata: user\r\n});\r\n\r\nexport const GetUserRequest = (userId) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Users/GetUserById`,\r\n\tparams: { userId }\r\n});\r\n\r\nexport const ResendConfirmationEmailRequest = (userId) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Users/ResendConfirmationEmail`,\r\n\tparams: { userId }\r\n});\r\n\r\nexport const DeactivateUserRequest = (userId) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Users/DeactivateUser`,\r\n\tparams: { userId }\r\n});\r\n","import { enqueueSnackbar } from 'actions';\r\n\r\nimport {\r\n\tGetUsersRequest,\r\n\tGetUsersStatsRequest,\r\n\tGetRolesRequest,\r\n\tGetOperatorsRequest,\r\n\tGetOperatorProjectsRequest,\r\n\tCreateUserRequest,\r\n\tGetUserRequest,\r\n\tEditUserRequest,\r\n\tResendConfirmationEmailRequest,\r\n\tDeactivateUserRequest,\r\n} from '../requests/UsersRequests.js';\r\n\r\nexport const GET_USERS = 'GET_USERS';\r\nexport const GET_USERS_STATS = 'GET_USERS_STATS';\r\nexport const TOGGLE_ADD_EDIT_USER_DIALOG = 'TOGGLE_ADD_EDIT_USER_DIALOG';\r\nexport const GET_ROLES = 'GET_ROLES';\r\nexport const GET_OPERATORS = 'GET_OPERATORS';\r\nexport const GET_OPERATOR_PROJECTS = 'GET_OPERATOR_PROJECTS';\r\nexport const SET_FORM_STATE = 'SET_FORM_STATE';\r\nexport const GET_USER = 'GET_USER';\r\n\r\nconst onGetUsers = (value) => ({\r\n\ttype: GET_USERS,\r\n\tusers: value\r\n});\r\n\r\nconst onGetUsersStats = (value) => ({\r\n\ttype: GET_USERS_STATS,\r\n\tusersStats: value\r\n});\r\n\r\nconst onToggleAddEditUserDialog = (openAddEditUserDialog, openAddEditUserDialogId) => ({\r\n\ttype: TOGGLE_ADD_EDIT_USER_DIALOG,\r\n\topenAddEditUserDialog,\r\n\topenAddEditUserDialogId\r\n});\r\n\r\nconst onGetRoles = (value) => ({\r\n\ttype: GET_ROLES,\r\n\troles: value\r\n});\r\n\r\nconst onGetOperators = (value) => ({\r\n\ttype: GET_OPERATORS,\r\n\toperators: value\r\n});\r\n\r\nconst onGetOperatorProjects = (value) => ({\r\n\ttype: GET_OPERATOR_PROJECTS,\r\n\toperatorProjects: value\r\n});\r\n\r\nconst onSetFormState = (value) => ({\r\n\ttype: SET_FORM_STATE,\r\n\tformState: value\r\n});\r\n\r\nconst onGetUser = (value) => ({\r\n\ttype: GET_USER,\r\n\tuser: value\r\n});\r\n\r\nexport const GetUsers = (role) => async (dispatch) => {\r\n\tawait GetUsersRequest(role).then(response => {\r\n\t\tdispatch(onGetUsers(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetUsersStats = () => async (dispatch) => {\r\n\tawait GetUsersStatsRequest().then(response => {\r\n\t\tdispatch(onGetUsersStats(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const ToggleAddEditUserDialog = (openAddEditUserDialog, openAddEditUserDialogId) => (dispatch) => {\r\n\tdispatch(onToggleAddEditUserDialog(openAddEditUserDialog, openAddEditUserDialogId));\r\n};\r\n\r\nexport const GetRoles = (role) => async (dispatch) => {\r\n\tawait GetRolesRequest(role).then(response => {\r\n\t\tdispatch(onGetRoles(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetOperators = () => async (dispatch) => {\r\n\tawait GetOperatorsRequest().then(response => {\r\n\t\tdispatch(onGetOperators(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetOperatorProjects = (operatorIds) => async (dispatch) => {\r\n\tawait GetOperatorProjectsRequest(operatorIds).then(response => {\r\n\t\tdispatch(onGetOperatorProjects(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const SetFormState = (value) => (dispatch) => {\r\n\tdispatch(onSetFormState(value));\r\n};\r\n\r\nexport const CreateUser = (userData, role) => async (dispatch) => {\r\n\tawait CreateUserRequest(userData).then(response => {\r\n\t\tdispatch(enqueueSnackbar({ message: 'New user created!', options: { key: new Date().getTime() + Math.random(), variant: 'success' } }));\r\n\t\tdispatch(GetUsers(role));\r\n\t\tdispatch(GetUsersStats());\r\n\t\tdispatch(ToggleAddEditUserDialog(false));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const EditUser = (userData, role) => async (dispatch) => {\r\n\tawait EditUserRequest(userData).then(response => {\r\n\t\tdispatch(GetUsers(role));\r\n\t\tdispatch(GetUsersStats());\r\n\t\tdispatch(ToggleAddEditUserDialog(false));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetUser = (userId) => async (dispatch) => {\r\n\tawait GetUserRequest(userId).then(response => {\r\n\t\tdispatch(onGetUser(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const ResendConfirmationEmail = (userId) => async (dispatch) => {\r\n\tawait ResendConfirmationEmailRequest(userId).then(response => {\r\n\t\tdispatch(enqueueSnackbar({ message: 'Confirmation email sent!', options: { key: new Date().getTime() + Math.random(), variant: 'success' } }));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const DeactivateUser = (userId, role) => async (dispatch) => {\r\n\tawait DeactivateUserRequest(userId).then(response => {\r\n\t\tdispatch(GetUsers(role));\r\n\t\tdispatch(GetUsersStats());\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n","import {\r\n\tGET_USERS,\r\n\tGET_USERS_STATS,\r\n\tTOGGLE_ADD_EDIT_USER_DIALOG,\r\n\tGET_ROLES,\r\n\tGET_OPERATORS,\r\n\tGET_OPERATOR_PROJECTS,\r\n\tSET_FORM_STATE,\r\n\tGET_USER\r\n} from '../actions/UsersActions.js';\r\n\r\nconst initialState = {\r\n\tusers: [],\r\n\tusersStats: {},\r\n\topenAddEditUserDialog: false,\r\n\topenAddEditUserDialogId: null,\r\n\troles: [],\r\n\toperators: [],\r\n\toperatorProjects: [],\r\n\tformState: {\r\n\t\tisValid: false,\r\n\t\tvalues: {},\r\n\t\ttouched: {},\r\n\t\terrors: {},\r\n\t}\r\n};\r\n\r\nconst usersReducer = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase GET_USERS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tusers: action.users\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_USERS_STATS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tusersStats: action.usersStats\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase TOGGLE_ADD_EDIT_USER_DIALOG: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\topenAddEditUserDialog: action.openAddEditUserDialog,\r\n\t\t\t\t\t\t\topenAddEditUserDialogId: action.openAddEditUserDialogId,\r\n\t\t\t\t\t\t\tformState: initialState.formState,\r\n\t\t\t\t\t\t\troles: [],\r\n\t\t\t\t\t\t\toperators: [],\r\n\t\t\t\t\t\t\toperatorProjects: [],\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_ROLES: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\troles: action.roles\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_OPERATORS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\toperators: action.operators\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_OPERATOR_PROJECTS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\toperatorProjects: action.operatorProjects\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase SET_FORM_STATE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tformState: action.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_USER: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tformState: {\r\n\t\t\t\t\t\t\t\t...state.formState,\r\n\t\t\t\t\t\t\t\tvalues: { ...action.user }\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default usersReducer;\r\n","import config from '../../../configuration/configuration.js';\r\nimport AxiosRequest from '../../../utils/AxiosRequest';\r\n\r\nexport const GetOperatorsRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Operators/GetOperators`,\r\n\tparams: {}\r\n});\r\n\r\nexport const CreateOperatorRequest = (operator) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Operators/CreateOperator`,\r\n\tdata: operator\r\n});\r\n\r\nexport const DeleteOperatorRequest = (operator) => AxiosRequest({\r\n\tmethod: 'DELETE',\r\n\turl: `${config.API_URL}Operators/DeleteOperator`,\r\n\tdata: operator\r\n});\r\n\r\nexport const GetOperatorRequest = (operatorId) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Operators/GetOperator`,\r\n\tparams: { operatorId }\r\n});\r\n\r\nexport const UpdateImageRequest = (operator) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Operators/UpdateImage`,\r\n\tdata: operator\r\n});\r\n\r\nexport const DeleteProjectRequest = (projectId) => AxiosRequest({\r\n\tmethod: 'DELETE',\r\n\turl: `${config.API_URL}Operators/DeleteProject`,\r\n\tparams: { projectId }\r\n});\r\n\r\nexport const CreateProjectRequest = (project) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Operators/CreateProject`,\r\n\tdata: project\r\n});\r\n\r\nexport const UpdateOperatorRequest = (operator) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Operators/UpdateOperator`,\r\n\tdata: operator\r\n});\r\n","import { enqueueSnackbar } from 'actions';\r\n\r\nimport {\r\n\tGetOperatorsRequest,\r\n\tCreateOperatorRequest,\r\n\tDeleteOperatorRequest,\r\n\tGetOperatorRequest,\r\n\tUpdateImageRequest,\r\n\tDeleteProjectRequest,\r\n\tCreateProjectRequest,\r\n\tUpdateOperatorRequest\r\n} from '../requests/OperatorsRequests.js';\r\n\r\nexport const GET_OPERATORS = 'GET_OPERATORS';\r\nexport const TOGGLE_ADD_OPERATOR_DIALOG = 'TOGGLE_ADD_OPERATOR_DIALOG';\r\nexport const SET_FORM_STATE = 'SET_FORM_STATE';\r\nexport const NAVIGATE_DETAILS = 'NAVIGATE_DETAILS';\r\nexport const GET_OPERATOR = 'GET_OPERATOR';\r\nexport const TOGGLE_ADD_PROJECT_DIALOG = 'TOGGLE_ADD_PROJECT_DIALOG';\r\n\r\nconst onGetOperators = (value) => ({\r\n\ttype: GET_OPERATORS,\r\n\toperators: value\r\n});\r\n\r\nconst onToggleAddOperatorDialog = (openAddOperatorDialog) => ({\r\n\ttype: TOGGLE_ADD_OPERATOR_DIALOG,\r\n\topenAddOperatorDialog,\r\n});\r\n\r\nconst onSetFormState = (value) => ({\r\n\ttype: SET_FORM_STATE,\r\n\tformState: value\r\n});\r\n\r\nconst onNavigateDetails = (value) => ({\r\n\ttype: NAVIGATE_DETAILS,\r\n\tdetailsOperatorId: value\r\n});\r\n\r\nconst onGetOperator = (value) => ({\r\n\ttype: GET_OPERATOR,\r\n\toperator: value\r\n});\r\n\r\nconst onToggleAddProjectDialog = (openAddProjectDialog) => ({\r\n\ttype: TOGGLE_ADD_PROJECT_DIALOG,\r\n\topenAddProjectDialog,\r\n});\r\n\r\nexport const GetOperators = () => async (dispatch) => {\r\n\tawait GetOperatorsRequest().then(response => {\r\n\t\tdispatch(onGetOperators(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const ToggleAddOperatorDialog = (openAddEditOperatorDialog) => (dispatch) => {\r\n\tdispatch(onToggleAddOperatorDialog(openAddEditOperatorDialog));\r\n};\r\n\r\nexport const CreateOperator = (data) => async (dispatch) => {\r\n\tawait CreateOperatorRequest(data).then(response => {\r\n\t\tdispatch(enqueueSnackbar({ message: 'New operator created!', options: { key: new Date().getTime() + Math.random(), variant: 'success' } }));\r\n\t\tdispatch(GetOperators());\r\n\t\tdispatch(ToggleAddOperatorDialog(false));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const DeleteOperator = (data) => async (dispatch) => {\r\n\tawait DeleteOperatorRequest(data).then(response => {\r\n\t\tdispatch(GetOperators());\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const SetFormState = (value) => (dispatch) => {\r\n\tdispatch(onSetFormState(value));\r\n};\r\n\r\nexport const NavigateDetails = (value) => (dispatch) => {\r\n\tdispatch(onNavigateDetails(value));\r\n};\r\n\r\nexport const GetOperator = (operatorId) => async (dispatch) => {\r\n\tawait GetOperatorRequest(operatorId).then(response => {\r\n\t\tdispatch(onGetOperator(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const UpdateImage = (operator) => async (dispatch) => {\r\n\tawait UpdateImageRequest(operator).then(response => {\r\n\t\tdispatch(GetOperator(operator.id));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const DeleteProject = (projectId, operatorId) => async (dispatch) => {\r\n\tawait DeleteProjectRequest(projectId).then(response => {\r\n\t\tdispatch(GetOperator(operatorId));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const ToggleAddProjectDialog = (openAddEditProjectDialog) => (dispatch) => {\r\n\tdispatch(onToggleAddProjectDialog(openAddEditProjectDialog));\r\n};\r\n\r\nexport const CreateProject = (data) => async (dispatch) => {\r\n\tawait CreateProjectRequest(data).then(response => {\r\n\t\tdispatch(enqueueSnackbar({ message: 'New project created!', options: { key: new Date().getTime() + Math.random(), variant: 'success' } }));\r\n\t\tdispatch(GetOperator(data.operatorId));\r\n\t\tdispatch(ToggleAddProjectDialog(false));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const UpdateOperator = (operator) => async (dispatch) => {\r\n\tawait UpdateOperatorRequest(operator).then(response => {\r\n\t\tdispatch(enqueueSnackbar({ message: 'Operator updated!', options: { key: new Date().getTime() + Math.random(), variant: 'success' } }));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n","import {\r\n\tTOGGLE_ADD_OPERATOR_DIALOG,\r\n\tGET_OPERATORS,\r\n\tSET_FORM_STATE,\r\n\tNAVIGATE_DETAILS,\r\n\tGET_OPERATOR,\r\n\tTOGGLE_ADD_PROJECT_DIALOG\r\n} from '../actions/OperatorsActions.js';\r\n\r\nconst initialState = {\r\n\toperators: [],\r\n\topenAddOperatorDialog: false,\r\n\tdetailsOperatorId: null,\r\n\toperator: {},\r\n\tformState: {\r\n\t\tisValid: false,\r\n\t\tvalues: {},\r\n\t\ttouched: {},\r\n\t\terrors: {},\r\n\t},\r\n\topenAddProjectDialog: false,\r\n};\r\n\r\nconst operatorsReducer = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase GET_OPERATORS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\toperators: action.operators\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase TOGGLE_ADD_OPERATOR_DIALOG: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\topenAddOperatorDialog: action.openAddOperatorDialog,\r\n\t\t\t\t\t\t\tformState: initialState.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase SET_FORM_STATE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tformState: action.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase NAVIGATE_DETAILS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdetailsOperatorId: action.detailsOperatorId\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_OPERATOR: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\toperator: action.operator,\r\n\t\t\t\t\t\t\tformState: {\r\n\t\t\t\t\t\t\t\t...state.formState,\r\n\t\t\t\t\t\t\t\tvalues: { ...action.operator }\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase TOGGLE_ADD_PROJECT_DIALOG: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\topenAddProjectDialog: action.openAddProjectDialog,\r\n\t\t\t\t\t\t\tformState: initialState.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default operatorsReducer;\r\n","import config from '../../../configuration/configuration.js';\r\nimport AxiosRequest from '../../../utils/AxiosRequest';\r\n\r\nexport const GetOperatorsRequest = (userId) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Account/GetUserOperators`,\r\n\tparams: { userId }\r\n});\r\n\r\nexport const UpdateSettingsRequest = (data) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Account/UpdateSettings`,\r\n\tdata\r\n});\r\n\r\nexport const ChangePasswordRequest = (data) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Account/ChangePassword`,\r\n\tdata\r\n});\r\n","import { enqueueSnackbar, getUserInfo } from 'actions';\r\nimport config from 'configuration/configuration.js';\r\n\r\nimport {\r\n\tGetOperatorsRequest,\r\n\tUpdateSettingsRequest,\r\n\tChangePasswordRequest\r\n} from '../requests/SettingsRequests.js';\r\n\r\nexport const GET_OPERATORS = 'GET_OPERATORS';\r\nexport const SET_FORM_STATE = 'SET_FORM_STATE';\r\n\r\nconst onGetOperators = (value) => ({\r\n\ttype: GET_OPERATORS,\r\n\toperators: value\r\n});\r\n\r\nconst onSetFormState = (value) => ({\r\n\ttype: SET_FORM_STATE,\r\n\tformState: value\r\n});\r\n\r\nexport const GetOperators = (userId) => async (dispatch) => {\r\n\tawait GetOperatorsRequest(userId).then(response => {\r\n\t\tdispatch(onGetOperators(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const SetFormState = (value) => (dispatch) => {\r\n\tdispatch(onSetFormState(value));\r\n};\r\n\r\nexport const UpdateSettings = (data) => async (dispatch) => {\r\n\tawait UpdateSettingsRequest(data).then(response => {\r\n\t\tdispatch(getUserInfo(localStorage.getItem(config.TOKEN_KEY)));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const ChangePassword = (data) => async (dispatch) => {\r\n\tawait ChangePasswordRequest(data).then(response => {\r\n\t\tdispatch(enqueueSnackbar({ message: 'Password changed!', options: { key: new Date().getTime() + Math.random(), variant: 'success' } }));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n","import {\r\n\tGET_OPERATORS,\r\n\tSET_FORM_STATE\r\n} from '../actions/SettingsActions.js';\r\n\r\nconst initialState = {\r\n\toperators: [],\r\n\tformState: {\r\n\t\tisValid: false,\r\n\t\tvalues: {},\r\n\t\ttouched: {},\r\n\t\terrors: {},\r\n\t}\r\n};\r\n\r\nconst settingsReducer = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase GET_OPERATORS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\toperators: action.operators\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase SET_FORM_STATE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tformState: action.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default settingsReducer;\r\n","import config from '../../../configuration/configuration.js';\r\nimport AxiosRequest from '../../../utils/AxiosRequest';\r\n\r\nexport const DashboardInspectRequest = (dashboardId, userId) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Dashboard/Inspect`,\r\n\tparams: { dashboardId, userId }\r\n});\r\n","import { enqueueSnackbar } from 'actions';\r\n\r\nimport {\r\n\tDashboardInspectRequest,\r\n} from '../requests/DashboardInspectRequests.js';\r\n\r\nexport const DASHBOARD_INSPECT = 'DASHBOARD_INSPECT';\r\n\r\nconst onDashboardInspect = (value) => ({\r\n\ttype: DASHBOARD_INSPECT,\r\n\tdashboard: value\r\n});\r\n\r\nexport const DashboardInspect = (dashboardId, userId) => async dispatch => {\r\n\tawait DashboardInspectRequest(dashboardId, userId).then(response => {\r\n\t\tdispatch(onDashboardInspect(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n","import {\r\n\tDASHBOARD_INSPECT\r\n} from '../actions/DashboardInspectActions.js';\r\n\r\nconst initialState = {\r\n\tdashboard: {\r\n\t}\r\n};\r\n\r\nconst reportsReducer = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase DASHBOARD_INSPECT: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdashboard: action.dashboard\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default reportsReducer;\r\n","import * as actionTypes from '../actions/MapActions.js';\r\n\r\n// 36.746675\r\n// -6.375104\r\nconst initialState = {\r\n\tlat: 40.3241184,\r\n\tlon: -3.8467939,\r\n\tzoom: 14,\r\n\tmaps: [],\r\n\tmapUpdated: undefined,\r\n\tzoomToUpdate: 9\r\n};\r\n\r\nconst AddNewMap = (state, action) => {\r\n\tconst mapAlreadyExists = state.maps.find((el) => el.id === action.value.id) !== undefined;\r\n\t// make a copy of the existing array\r\n\tlet newAddMaps = state.maps.slice();\r\n\r\n\tif (mapAlreadyExists) {\r\n\t\tnewAddMaps = newAddMaps.filter(map => map.id !== action.value.id);\r\n\t\tnewAddMaps.push({\r\n\t\t\t...action.value,\r\n\t\t\tcoordinates: {\r\n\t\t\t\tCenterLatitude: state.lat,\r\n\t\t\t\tCenterLongitude: state.lon,\r\n\t\t\t\tzoom: state.zoom\r\n\t\t\t},\r\n\t\t\ttopology: { twoG: [], threeG: [], fourG: [] },\r\n\t\t\tlegend: { legendElements: [], title: '' },\r\n\t\t\tupdateEnd: false\r\n\t\t});\r\n\t} else {\r\n\t\t// modify the COPY, not the original\r\n\t\tnewAddMaps.push({\r\n\t\t\t...action.value,\r\n\t\t\tcoordinates: {\r\n\t\t\t\tCenterLatitude: state.lat,\r\n\t\t\t\tCenterLongitude: state.lon,\r\n\t\t\t\tzoom: state.zoom\r\n\t\t\t},\r\n\t\t\ttopology: { twoG: [], threeG: [], fourG: [] },\r\n\t\t\tlegend: { legendElements: [], title: '' },\r\n\t\t\tupdateEnd: false\r\n\t\t});\r\n\t}\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newAddMaps\r\n\t};\r\n};\r\n\r\nconst UpdateCoordinates = (state, action) => {\r\n\tconst newUpdateMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tcoordinates: action.value.newCoordinates,\r\n\t\t\tupdateEnd: false\r\n\t\t};\r\n\t});\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newUpdateMaps,\r\n\t\tmapUpdated: action.value.id,\r\n\t};\r\n};\r\n\r\nconst UpdateTopology = (state, action) => {\r\n\tconst newTopologyMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\ttopology: action.value.newTopology,\r\n\t\t\tupdateEnd: true\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newTopologyMaps,\r\n\t\tmapUpdated: action.value.id,\r\n\t};\r\n};\r\n\r\nconst UpdateLegend = (state, action) => {\r\n\t// console.log('update legend', action.value.id)\r\n\tconst newLegendMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tlegend: action.value.newLegend,\r\n\t\t\tupdateEnd: true\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newLegendMaps,\r\n\t\tmapUpdated: action.value.id,\r\n\t};\r\n};\r\n\r\nconst UpdatePopup = (state, action) => {\r\n\tconst newMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tcontrol: {\r\n\t\t\t\t...item.control,\r\n\t\t\t\tstate: {\r\n\t\t\t\t\t...item.control.state,\r\n\t\t\t\t\tactivePopup: [...action.value.activePopup]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newMaps,\r\n\t\tmapUpdated: null,\r\n\t};\r\n};\r\n\r\nconst UpdateOverlays = (state, action) => {\r\n\tconst newMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tcontrol: {\r\n\t\t\t\t...item.control,\r\n\t\t\t\tstate: {\r\n\t\t\t\t\t...item.control.state,\r\n\t\t\t\t\tactiveLayers: [...action.value.activeLayers]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newMaps,\r\n\t\tmapUpdated: null,\r\n\t};\r\n};\r\n\r\nconst MapReducer = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase actionTypes.ADD_MAP:\r\n\t\t\t\t\t\treturn AddNewMap(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_COORDINATES:\r\n\t\t\t\t\t\treturn UpdateCoordinates(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_TOPOLOGY:\r\n\t\t\t\t\t\treturn UpdateTopology(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_LEGEND:\r\n\t\t\t\t\t\treturn UpdateLegend(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_POPUP:\r\n\t\t\t\t\t\treturn UpdatePopup(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_OVERLAYS:\r\n\t\t\t\t\t\treturn UpdateOverlays(state, action);\r\n\t\t\t\t\tdefault:\r\n\t\t\t\t\t\treturn state;\r\n\t}\r\n};\r\n\r\nexport default MapReducer;\r\n","import * as actionTypes from '../actions/MapActions.js';\r\n\r\n// 36.746675\r\n// -6.375104\r\nconst initialState = {\r\n\tlat: 40.3241184,\r\n\tlon: -3.8467939,\r\n\tzoom: 13,\r\n\tmaps: [],\r\n\tmapUpdated: undefined,\r\n\tzoomToUpdate: 9\r\n};\r\n\r\nconst AddNewMap = (state, action) => {\r\n\tconst mapAlreadyExists = state.maps.find((el) => el.id === action.value.id) !== undefined;\r\n\t// make a copy of the existing array\r\n\tlet newAddMaps = state.maps.slice();\r\n\r\n\tif (mapAlreadyExists) {\r\n\t\tnewAddMaps = newAddMaps.filter(map => map.id !== action.value.id);\r\n\t\tnewAddMaps.push({\r\n\t\t\t...action.value,\r\n\t\t\tcoordinates: {\r\n\t\t\t\tCenterLatitude: state.lat,\r\n\t\t\t\tCenterLongitude: state.lon,\r\n\t\t\t\tzoom: state.zoom\r\n\t\t\t},\r\n\t\t\ttopology: { twoG: [], threeG: [], fourG: [] },\r\n\t\t\tlegend: { legendElements: [], title: '' },\r\n\t\t\tupdateEnd: false\r\n\t\t});\r\n\t} else {\r\n\t\t// modify the COPY, not the original\r\n\t\tnewAddMaps.push({\r\n\t\t\t...action.value,\r\n\t\t\tcoordinates: {\r\n\t\t\t\tCenterLatitude: state.lat,\r\n\t\t\t\tCenterLongitude: state.lon,\r\n\t\t\t\tzoom: state.zoom\r\n\t\t\t},\r\n\t\t\ttopology: { twoG: [], threeG: [], fourG: [] },\r\n\t\t\tlegend: { legendElements: [], title: '' },\r\n\t\t\tupdateEnd: false\r\n\t\t});\r\n\t}\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newAddMaps\r\n\t};\r\n};\r\n\r\nconst UpdateCoordinates = (state, action) => {\r\n\tconst newUpdateMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tcoordinates: action.value.newCoordinates,\r\n\t\t\tupdateEnd: false\r\n\t\t};\r\n\t});\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newUpdateMaps,\r\n\t\tmapUpdated: action.value.id,\r\n\t};\r\n};\r\n\r\nconst UpdateTopology = (state, action) => {\r\n\tconst newTopologyMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\ttopology: action.value.newTopology,\r\n\t\t\tupdateEnd: true\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newTopologyMaps,\r\n\t\tmapUpdated: action.value.id,\r\n\t};\r\n};\r\n\r\nconst UpdateLegend = (state, action) => {\r\n\t// console.log('update legend', action.value.id)\r\n\tconst newLegendMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tlegend: action.value.newLegend,\r\n\t\t\tupdateEnd: true\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newLegendMaps,\r\n\t\tmapUpdated: action.value.id,\r\n\t};\r\n};\r\n\r\nconst UpdatePopup = (state, action) => {\r\n\tconst newMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tcontrol: {\r\n\t\t\t\t...item.control,\r\n\t\t\t\tstate: {\r\n\t\t\t\t\t...item.control.state,\r\n\t\t\t\t\tactivePopup: [...action.value.activePopup]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newMaps,\r\n\t\tmapUpdated: null,\r\n\t};\r\n};\r\n\r\nconst UpdateOverlays = (state, action) => {\r\n\tconst newMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tcontrol: {\r\n\t\t\t\t...item.control,\r\n\t\t\t\tstate: {\r\n\t\t\t\t\t...item.control.state,\r\n\t\t\t\t\tactiveLayers: [...action.value.activeLayers]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newMaps,\r\n\t\tmapUpdated: null,\r\n\t};\r\n};\r\n\r\nconst MapCapacityReducer = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase actionTypes.ADD_MAP:\r\n\t\t\t\t\t\treturn AddNewMap(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_COORDINATES:\r\n\t\t\t\t\t\treturn UpdateCoordinates(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_TOPOLOGY:\r\n\t\t\t\t\t\treturn UpdateTopology(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_LEGEND:\r\n\t\t\t\t\t\treturn UpdateLegend(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_POPUP:\r\n\t\t\t\t\t\treturn UpdatePopup(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_OVERLAYS:\r\n\t\t\t\t\t\treturn UpdateOverlays(state, action);\r\n\t\t\t\t\tdefault:\r\n\t\t\t\t\t\treturn state;\r\n\t}\r\n};\r\n\r\nexport default MapCapacityReducer;\r\n","import * as actionTypes from '../actions/MapActionsGeneric.js';\r\n\r\n// 36.746675\r\n// -6.375104\r\nconst initialState = {\r\n\tlat: 40.3241184,\r\n\tlon: -3.8467939,\r\n\tzoom: 14,\r\n\tmaps: [],\r\n\tmapUpdated: undefined,\r\n\tzoomToUpdate: 9\r\n};\r\n\r\nconst AddNewMap = (state, action) => {\r\n\tconst mapAlreadyExists = state.maps.find((el) => el.id === action.value.id) !== undefined;\r\n\t// make a copy of the existing array\r\n\tlet newAddMaps = state.maps.slice();\r\n\r\n\tif (mapAlreadyExists) {\r\n\t\tnewAddMaps = newAddMaps.filter(map => map.id !== action.value.id);\r\n\t\tnewAddMaps.push({\r\n\t\t\t...action.value,\r\n\t\t\tcoordinates: {\r\n\t\t\t\tCenterLatitude: state.lat,\r\n\t\t\t\tCenterLongitude: state.lon,\r\n\t\t\t\tzoom: state.zoom\r\n\t\t\t},\r\n\t\t\ttopology: { twoG: [], threeG: [], fourG: [] },\r\n\t\t\tlegend: { legendElements: [], title: '' },\r\n\t\t\tupdateEnd: false\r\n\t\t});\r\n\t} else {\r\n\t\t// modify the COPY, not the original\r\n\t\tnewAddMaps.push({\r\n\t\t\t...action.value,\r\n\t\t\tcoordinates: {\r\n\t\t\t\tCenterLatitude: state.lat,\r\n\t\t\t\tCenterLongitude: state.lon,\r\n\t\t\t\tzoom: state.zoom\r\n\t\t\t},\r\n\t\t\ttopology: { twoG: [], threeG: [], fourG: [] },\r\n\t\t\tlegend: { legendElements: [], title: '' },\r\n\t\t\tupdateEnd: false\r\n\t\t});\r\n\t}\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newAddMaps\r\n\t};\r\n};\r\n\r\nconst UpdateCoordinates = (state, action) => {\r\n\tconst newUpdateMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tcoordinates: action.value.newCoordinates,\r\n\t\t\tupdateEnd: false\r\n\t\t};\r\n\t});\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newUpdateMaps,\r\n\t\tmapUpdated: action.value.id,\r\n\t};\r\n};\r\n\r\nconst UpdateTopology = (state, action) => {\r\n\tconst newTopologyMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\ttopology: action.value.newTopology,\r\n\t\t\tupdateEnd: true\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newTopologyMaps,\r\n\t\tmapUpdated: action.value.id,\r\n\t};\r\n};\r\n\r\nconst UpdateLegend = (state, action) => {\r\n\t// console.log('update legend', action.value.id)\r\n\tconst newLegendMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tlegend: action.value.newLegend,\r\n\t\t\tupdateEnd: true\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newLegendMaps,\r\n\t\tmapUpdated: action.value.id,\r\n\t};\r\n};\r\n\r\nconst UpdatePopup = (state, action) => {\r\n\tconst newMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tcontrol: {\r\n\t\t\t\t...item.control,\r\n\t\t\t\tstate: {\r\n\t\t\t\t\t...item.control.state,\r\n\t\t\t\t\tactivePopup: [...action.value.activePopup]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newMaps,\r\n\t\tmapUpdated: null,\r\n\t};\r\n};\r\n\r\nconst UpdateOverlays = (state, action) => {\r\n\tconst newMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tcontrol: {\r\n\t\t\t\t...item.control,\r\n\t\t\t\tstate: {\r\n\t\t\t\t\t...item.control.state,\r\n\t\t\t\t\tactiveLayers: [...action.value.activeLayers]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newMaps,\r\n\t\tmapUpdated: null,\r\n\t};\r\n};\r\n\r\nconst MapReducerGeneric = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase actionTypes.ADD_MAP:\r\n\t\t\t\t\t\treturn AddNewMap(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_COORDINATES:\r\n\t\t\t\t\t\treturn UpdateCoordinates(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_TOPOLOGY:\r\n\t\t\t\t\t\treturn UpdateTopology(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_LEGEND:\r\n\t\t\t\t\t\treturn UpdateLegend(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_POPUP:\r\n\t\t\t\t\t\treturn UpdatePopup(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_OVERLAYS:\r\n\t\t\t\t\t\treturn UpdateOverlays(state, action);\r\n\t\t\t\t\tdefault:\r\n\t\t\t\t\t\treturn state;\r\n\t}\r\n};\r\n\r\nexport default MapReducerGeneric;\r\n","import * as actionTypes from '../actions/MapActionsGeneric.js';\r\n\r\n// 36.746675\r\n// -6.375104\r\nconst initialState = {\r\n\tlat: 40.3241184,\r\n\tlon: -3.8467939,\r\n\tzoom: 13,\r\n\tmaps: [],\r\n\tmapUpdated: undefined,\r\n\tzoomToUpdate: 9\r\n};\r\n\r\nconst AddNewMap = (state, action) => {\r\n\tconst mapAlreadyExists = state.maps.find((el) => el.id === action.value.id) !== undefined;\r\n\t// make a copy of the existing array\r\n\tlet newAddMaps = state.maps.slice();\r\n\r\n\tif (mapAlreadyExists) {\r\n\t\tnewAddMaps = newAddMaps.filter(map => map.id !== action.value.id);\r\n\t\tnewAddMaps.push({\r\n\t\t\t...action.value,\r\n\t\t\tcoordinates: {\r\n\t\t\t\tCenterLatitude: state.lat,\r\n\t\t\t\tCenterLongitude: state.lon,\r\n\t\t\t\tzoom: state.zoom\r\n\t\t\t},\r\n\t\t\ttopology: { twoG: [], threeG: [], fourG: [] },\r\n\t\t\tlegend: { legendElements: [], title: '' },\r\n\t\t\tupdateEnd: false\r\n\t\t});\r\n\t} else {\r\n\t\t// modify the COPY, not the original\r\n\t\tnewAddMaps.push({\r\n\t\t\t...action.value,\r\n\t\t\tcoordinates: {\r\n\t\t\t\tCenterLatitude: state.lat,\r\n\t\t\t\tCenterLongitude: state.lon,\r\n\t\t\t\tzoom: state.zoom\r\n\t\t\t},\r\n\t\t\ttopology: { twoG: [], threeG: [], fourG: [] },\r\n\t\t\tlegend: { legendElements: [], title: '' },\r\n\t\t\tupdateEnd: false\r\n\t\t});\r\n\t}\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newAddMaps\r\n\t};\r\n};\r\n\r\nconst UpdateCoordinates = (state, action) => {\r\n\tconst newUpdateMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tcoordinates: action.value.newCoordinates,\r\n\t\t\tupdateEnd: false\r\n\t\t};\r\n\t});\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newUpdateMaps,\r\n\t\tmapUpdated: action.value.id,\r\n\t};\r\n};\r\n\r\nconst UpdateTopology = (state, action) => {\r\n\tconst newTopologyMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\ttopology: action.value.newTopology,\r\n\t\t\tupdateEnd: true\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newTopologyMaps,\r\n\t\tmapUpdated: action.value.id,\r\n\t};\r\n};\r\n\r\nconst UpdateLegend = (state, action) => {\r\n\t// console.log('update legend', action.value.id)\r\n\tconst newLegendMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tlegend: action.value.newLegend,\r\n\t\t\tupdateEnd: true\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newLegendMaps,\r\n\t\tmapUpdated: action.value.id,\r\n\t};\r\n};\r\n\r\nconst UpdatePopup = (state, action) => {\r\n\tconst newMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tcontrol: {\r\n\t\t\t\t...item.control,\r\n\t\t\t\tstate: {\r\n\t\t\t\t\t...item.control.state,\r\n\t\t\t\t\tactivePopup: [...action.value.activePopup]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newMaps,\r\n\t\tmapUpdated: null,\r\n\t};\r\n};\r\n\r\nconst UpdateOverlays = (state, action) => {\r\n\tconst newMaps = state.maps.map((item) => {\r\n\t\tif (item.id !== action.value.id) {\r\n\t\t\t// This isn't the item we care about - keep it as-is\r\n\t\t\treturn item;\r\n\t\t}\r\n\t\t// Otherwise, this is the one we want - return an updated value\r\n\t\treturn {\r\n\t\t\t...item,\r\n\t\t\tcontrol: {\r\n\t\t\t\t...item.control,\r\n\t\t\t\tstate: {\r\n\t\t\t\t\t...item.control.state,\r\n\t\t\t\t\tactiveLayers: [...action.value.activeLayers]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\t});\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\tmaps: newMaps,\r\n\t\tmapUpdated: null,\r\n\t};\r\n};\r\n\r\nconst MapCapacityReducerGeneric = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase actionTypes.ADD_MAP:\r\n\t\t\t\t\t\treturn AddNewMap(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_COORDINATES:\r\n\t\t\t\t\t\treturn UpdateCoordinates(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_TOPOLOGY:\r\n\t\t\t\t\t\treturn UpdateTopology(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_LEGEND:\r\n\t\t\t\t\t\treturn UpdateLegend(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_POPUP:\r\n\t\t\t\t\t\treturn UpdatePopup(state, action);\r\n\t\t\t\t\tcase actionTypes.UPDATE_OVERLAYS:\r\n\t\t\t\t\t\treturn UpdateOverlays(state, action);\r\n\t\t\t\t\tdefault:\r\n\t\t\t\t\t\treturn state;\r\n\t}\r\n};\r\n\r\nexport default MapCapacityReducerGeneric;\r\n","import config from '../../../configuration/configuration.js';\r\nimport AxiosRequest from '../../../utils/AxiosRequest';\r\n\r\nexport const GetTopology2gRequest = (userId, tech, bands, coordinates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Map/GetTopology`,\r\n\tdata: { userId, tech, bands, coordinates }\r\n});\r\n\r\nexport const GetTopology3gRequest = (userId, tech, bands, coordinates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Map/GetTopology`,\r\n\tdata: { userId, tech, bands, coordinates }\r\n});\r\n\r\nexport const GetTopology4gRequest = (userId, tech, bands, coordinates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Map/GetTopology`,\r\n\tdata: { userId, tech, bands, coordinates }\r\n});\r\n\r\nexport const GetTopologyLabels2gRequest = (userId, tech, bands, coordinates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Map/GetTopologyLabels`,\r\n\tdata: { userId, tech, bands, coordinates }\r\n});\r\n\r\nexport const GetTopologyLabels3gRequest = (userId, tech, bands, coordinates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Map/GetTopologyLabels`,\r\n\tdata: { userId, tech, bands, coordinates }\r\n});\r\n\r\nexport const GetTopologyLabels4gRequest = (userId, tech, bands, coordinates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Map/GetTopologyLabels`,\r\n\tdata: { userId, tech, bands, coordinates }\r\n});\r\n\r\nexport const GetSitesIdsRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Map/GetSitesIds`,\r\n});\r\n\r\nexport const GetSiteIdLocationRequest = (siteId) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Map/GetSiteIdLocation`,\r\n\tparams: { siteId }\r\n});\r\n","import { enqueueSnackbar } from 'actions';\r\n\r\nimport {\r\n\tGetTopology2gRequest,\r\n\tGetTopology3gRequest,\r\n\tGetTopology4gRequest,\r\n\tGetTopologyLabels2gRequest,\r\n\tGetTopologyLabels3gRequest,\r\n\tGetTopologyLabels4gRequest,\r\n\tGetSitesIdsRequest,\r\n\tGetSiteIdLocationRequest\r\n} from '../requests/MapDriveTestsRequests';\r\n\r\nexport const SET_FORM_STATE = 'SET_FORM_STATE';\r\nexport const RESET_FIELDS = 'RESET_FIELDS';\r\nexport const GET_TOPOLOGY_2G = 'GET_TOPOLOGY_2G';\r\nexport const GET_TOPOLOGY_3G = 'GET_TOPOLOGY_3G';\r\nexport const GET_TOPOLOGY_4G = 'GET_TOPOLOGY_4G';\r\nexport const GET_TOPOLOGY_LABELS_2G = 'GET_TOPOLOGY_LABELS_2G';\r\nexport const GET_TOPOLOGY_LABELS_3G = 'GET_TOPOLOGY_LABELS_3G';\r\nexport const GET_TOPOLOGY_LABELS_4G = 'GET_TOPOLOGY_LABELS_4G';\r\nexport const GET_SITES_IDS = 'GET_SITES_IDS';\r\nexport const GET_SITE_ID_LOCATION = 'GET_SITE_ID_LOCATION';\r\nexport const TOGGLE_FILTERS = 'TOGGLE_FILTERS';\r\nexport const CLEAR_FORM = 'CLEAR_FORM';\r\nexport const TOGGLE_SUMMARY_DIALOG = 'TOGGLE_SUMMARY_DIALOG';\r\n\r\nconst onSetFormState = (value) => ({\r\n\ttype: SET_FORM_STATE,\r\n\tformState: value\r\n});\r\n\r\nconst onResetFields = () => ({\r\n\ttype: RESET_FIELDS,\r\n});\r\n\r\nconst onGetTopology2g = (value) => ({\r\n\ttype: GET_TOPOLOGY_2G,\r\n\ttopology2gData: value\r\n});\r\n\r\nconst onGetTopology3g = (value) => ({\r\n\ttype: GET_TOPOLOGY_3G,\r\n\ttopology3gData: value\r\n});\r\n\r\nconst onGetTopology4g = (value) => ({\r\n\ttype: GET_TOPOLOGY_4G,\r\n\ttopology4gData: value\r\n});\r\n\r\nconst onGetTopologyLabels2g = (value) => ({\r\n\ttype: GET_TOPOLOGY_LABELS_2G,\r\n\ttopologyLabels2gData: value\r\n});\r\n\r\nconst onGetTopologyLabels3g = (value) => ({\r\n\ttype: GET_TOPOLOGY_LABELS_3G,\r\n\ttopologyLabels3gData: value\r\n});\r\n\r\nconst onGetTopologyLabels4g = (value) => ({\r\n\ttype: GET_TOPOLOGY_LABELS_4G,\r\n\ttopologyLabels4gData: value\r\n});\r\n\r\nconst onGetSitesIds = (value) => ({\r\n\ttype: GET_SITES_IDS,\r\n\tsitesIds: value\r\n});\r\n\r\nconst onGetSiteIdLocation = (value) => ({\r\n\ttype: GET_SITE_ID_LOCATION,\r\n\tsiteIdLocation: value\r\n});\r\n\r\nconst onToggleFilters = (openFilters) => ({\r\n\ttype: TOGGLE_FILTERS,\r\n\topenFilters,\r\n});\r\n\r\nconst onClearForm = () => ({\r\n\ttype: CLEAR_FORM\r\n});\r\n\r\nconst onToggleSummaryDialog = (visible) => ({\r\n\ttype: TOGGLE_SUMMARY_DIALOG,\r\n\tvisible\r\n});\r\n\r\nexport const SetFormState = (value) => (dispatch) => {\r\n\tdispatch(onSetFormState(value));\r\n};\r\n\r\nexport const ResetFields = () => (dispatch) => {\r\n\tdispatch(onResetFields());\r\n};\r\n\r\nexport const GetTopology2g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopology2gRequest(userId, '2G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology2g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology3g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopology3gRequest(userId, '3G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology3g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology4g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopology4gRequest(userId, '4G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology4g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopologyLabels2g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyLabels2gRequest(userId, '2G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopologyLabels2g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopologyLabels3g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyLabels3gRequest(userId, '3G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopologyLabels3g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopologyLabels4g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyLabels4gRequest(userId, '4G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopologyLabels4g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const ToggleFilters = (openFilters) => (dispatch) => {\r\n\tdispatch(onToggleFilters(openFilters));\r\n};\r\n\r\nexport const ClearForm = () => (dispatch) => {\r\n\tdispatch(onClearForm());\r\n};\r\n\r\nexport const ToggleSummaryDialog = (visible) => (dispatch) => {\r\n\tdispatch(onToggleSummaryDialog(visible));\r\n};\r\n\r\nexport const GetSitesIds = () => async (dispatch) => {\r\n\tawait GetSitesIdsRequest().then(response => {\r\n\t\tdispatch(onGetSitesIds(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetSiteIdLocation = (siteId) => async (dispatch) => {\r\n\tawait GetSiteIdLocationRequest(siteId).then(response => {\r\n\t\tdispatch(onGetSiteIdLocation(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n","import {\r\n\tSET_FORM_STATE,\r\n\tRESET_FIELDS,\r\n\tGET_TOPOLOGY_2G,\r\n\tGET_TOPOLOGY_3G,\r\n\tGET_TOPOLOGY_4G,\r\n\tGET_TOPOLOGY_LABELS_2G,\r\n\tGET_TOPOLOGY_LABELS_3G,\r\n\tGET_TOPOLOGY_LABELS_4G,\r\n\tGET_SITES_IDS,\r\n\tGET_SITE_ID_LOCATION,\r\n\tTOGGLE_FILTERS,\r\n\tCLEAR_FORM,\r\n\tTOGGLE_SUMMARY_DIALOG,\r\n} from '../actions/MapDriveTestsActions';\r\n\r\nconst initialState = {\r\n\tfailuresFilters: [],\r\n\tfailuresVoice: [],\r\n\tfailuresPacket: [],\r\n\tcities: [],\r\n\tdrives: [],\r\n\tdates: [],\r\n\tselectedDates: [],\r\n\tdriveTests4g: [],\r\n\tdriveTest: [],\r\n\tdriveTestCodes: [],\r\n\tdriveTestScanner: [],\r\n\ttopology2gData: [],\r\n\ttopology3gData: [],\r\n\ttopology4gData: [],\r\n\ttopologyLabels2gData: [],\r\n\ttopologyLabels3gData: [],\r\n\ttopologyLabels4gData: [],\r\n\ttechBandVoice: [],\r\n\ttechBandPacket: [],\r\n\tdrivetestSummaryDropdown: [],\r\n\tdrivetestSummary: [],\r\n\tsitesIds: [],\r\n\tsiteIdLocation: [],\r\n\topenFilters: false,\r\n\tsummaryDialogVisibility: false,\r\n\tformState: {\r\n\t\tisValid: false,\r\n\t\tvalues: {\r\n\t\t\tmapAutoZoom: true,\r\n\t\t\tmapFilters: true,\r\n\t\t\tmapSize: 10,\r\n\t\t\tscenario: 'all'\r\n\t\t},\r\n\t\ttouched: {},\r\n\t\terrors: {},\r\n\t},\r\n};\r\n\r\nconst mapDriveTestsReducer = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase SET_FORM_STATE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tformState: action.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase RESET_FIELDS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdrives: [],\r\n\t\t\t\t\t\t\tdates: [],\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_2G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology2gData: action.topology2gData\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_3G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology3gData: action.topology3gData\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_4G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology4gData: action.topology4gData\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_LABELS_2G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopologyLabels2gData: action.topologyLabels2gData\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_LABELS_3G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopologyLabels3gData: action.topologyLabels3gData\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_LABELS_4G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopologyLabels4gData: action.topologyLabels4gData\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_SITES_IDS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tsitesIds: action.sitesIds\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_SITE_ID_LOCATION: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tsiteIdLocation: action.siteIdLocation\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase TOGGLE_FILTERS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\topenFilters: action.openFilters\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase CLEAR_FORM: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tformState: initialState.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase TOGGLE_SUMMARY_DIALOG: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tsummaryDialogVisibility: action.visible\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default mapDriveTestsReducer;\r\n","import config from '../../../configuration/configuration.js';\r\nimport AxiosRequest from '../../../utils/AxiosRequest';\r\n\r\nexport const GetTopology2gRequest = (userId, tech, bands, coordinates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Map/GetTopology`,\r\n\tdata: { userId, tech, bands, coordinates }\r\n});\r\n\r\nexport const GetTopology3gRequest = (userId, tech, bands, coordinates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Map/GetTopology`,\r\n\tdata: { userId, tech, bands, coordinates }\r\n});\r\n\r\nexport const GetTopology4gRequest = (userId, tech, bands, coordinates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Map/GetTopology`,\r\n\tdata: { userId, tech, bands, coordinates }\r\n});\r\n\r\nexport const GetTopologyLabels2gRequest = (userId, tech, bands, coordinates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Map/GetTopologyLabels`,\r\n\tdata: { userId, tech, bands, coordinates }\r\n});\r\n\r\nexport const GetTopologyLabels3gRequest = (userId, tech, bands, coordinates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Map/GetTopologyLabels`,\r\n\tdata: { userId, tech, bands, coordinates }\r\n});\r\n\r\nexport const GetTopologyLabels4gRequest = (userId, tech, bands, coordinates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}Map/GetTopologyLabels`,\r\n\tdata: { userId, tech, bands, coordinates }\r\n});\r\n\r\nexport const GetSitesIdsRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Map/GetSitesIds`,\r\n});\r\n\r\nexport const GetSiteIdLocationRequest = (siteId) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Map/GetSiteIdLocation`,\r\n\tparams: { siteId }\r\n});\r\n","import { enqueueSnackbar } from 'actions';\r\n\r\nimport {\r\n\tGetTopology2gRequest,\r\n\tGetTopology3gRequest,\r\n\tGetTopology4gRequest,\r\n\tGetTopologyLabels2gRequest,\r\n\tGetTopologyLabels3gRequest,\r\n\tGetTopologyLabels4gRequest,\r\n\tGetSitesIdsRequest,\r\n\tGetSiteIdLocationRequest\r\n} from '../requests/MapDriveTestsRequestsGeneric';\r\n\r\nexport const SET_FORM_STATE = 'SET_FORM_STATE';\r\nexport const RESET_FIELDS = 'RESET_FIELDS';\r\nexport const GET_TOPOLOGY_2G = 'GET_TOPOLOGY_2G';\r\nexport const GET_TOPOLOGY_3G = 'GET_TOPOLOGY_3G';\r\nexport const GET_TOPOLOGY_4G = 'GET_TOPOLOGY_4G';\r\nexport const GET_TOPOLOGY_LABELS_2G = 'GET_TOPOLOGY_LABELS_2G';\r\nexport const GET_TOPOLOGY_LABELS_3G = 'GET_TOPOLOGY_LABELS_3G';\r\nexport const GET_TOPOLOGY_LABELS_4G = 'GET_TOPOLOGY_LABELS_4G';\r\nexport const GET_SITES_IDS = 'GET_SITES_IDS';\r\nexport const GET_SITE_ID_LOCATION = 'GET_SITE_ID_LOCATION';\r\nexport const TOGGLE_FILTERS = 'TOGGLE_FILTERS';\r\nexport const CLEAR_FORM = 'CLEAR_FORM';\r\nexport const TOGGLE_SUMMARY_DIALOG = 'TOGGLE_SUMMARY_DIALOG';\r\n\r\nconst onSetFormState = (value) => ({\r\n\ttype: SET_FORM_STATE,\r\n\tformState: value\r\n});\r\n\r\nconst onResetFields = () => ({\r\n\ttype: RESET_FIELDS,\r\n});\r\n\r\nconst onGetTopology2g = (value) => ({\r\n\ttype: GET_TOPOLOGY_2G,\r\n\ttopology2gData: value\r\n});\r\n\r\nconst onGetTopology3g = (value) => ({\r\n\ttype: GET_TOPOLOGY_3G,\r\n\ttopology3gData: value\r\n});\r\n\r\nconst onGetTopology4g = (value) => ({\r\n\ttype: GET_TOPOLOGY_4G,\r\n\ttopology4gData: value\r\n});\r\n\r\nconst onGetTopologyLabels2g = (value) => ({\r\n\ttype: GET_TOPOLOGY_LABELS_2G,\r\n\ttopologyLabels2gData: value\r\n});\r\n\r\nconst onGetTopologyLabels3g = (value) => ({\r\n\ttype: GET_TOPOLOGY_LABELS_3G,\r\n\ttopologyLabels3gData: value\r\n});\r\n\r\nconst onGetTopologyLabels4g = (value) => ({\r\n\ttype: GET_TOPOLOGY_LABELS_4G,\r\n\ttopologyLabels4gData: value\r\n});\r\n\r\nconst onGetSitesIds = (value) => ({\r\n\ttype: GET_SITES_IDS,\r\n\tsitesIds: value\r\n});\r\n\r\nconst onGetSiteIdLocation = (value) => ({\r\n\ttype: GET_SITE_ID_LOCATION,\r\n\tsiteIdLocation: value\r\n});\r\n\r\nconst onToggleFilters = (openFilters) => ({\r\n\ttype: TOGGLE_FILTERS,\r\n\topenFilters,\r\n});\r\n\r\nconst onClearForm = () => ({\r\n\ttype: CLEAR_FORM\r\n});\r\n\r\nconst onToggleSummaryDialog = (visible) => ({\r\n\ttype: TOGGLE_SUMMARY_DIALOG,\r\n\tvisible\r\n});\r\n\r\nexport const SetFormState = (value) => (dispatch) => {\r\n\tdispatch(onSetFormState(value));\r\n};\r\n\r\nexport const ResetFields = () => (dispatch) => {\r\n\tdispatch(onResetFields());\r\n};\r\n\r\nexport const GetTopology2g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopology2gRequest(userId, '2G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology2g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology3g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopology3gRequest(userId, '3G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology3g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology4g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopology4gRequest(userId, '4G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology4g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopologyLabels2g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyLabels2gRequest(userId, '2G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopologyLabels2g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopologyLabels3g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyLabels3gRequest(userId, '3G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopologyLabels3g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopologyLabels4g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyLabels4gRequest(userId, '4G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopologyLabels4g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const ToggleFilters = (openFilters) => (dispatch) => {\r\n\tdispatch(onToggleFilters(openFilters));\r\n};\r\n\r\nexport const ClearForm = () => (dispatch) => {\r\n\tdispatch(onClearForm());\r\n};\r\n\r\nexport const ToggleSummaryDialog = (visible) => (dispatch) => {\r\n\tdispatch(onToggleSummaryDialog(visible));\r\n};\r\n\r\nexport const GetSitesIds = () => async (dispatch) => {\r\n\tawait GetSitesIdsRequest().then(response => {\r\n\t\tdispatch(onGetSitesIds(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetSiteIdLocation = (siteId) => async (dispatch) => {\r\n\tawait GetSiteIdLocationRequest(siteId).then(response => {\r\n\t\tdispatch(onGetSiteIdLocation(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n","import {\r\n\tSET_FORM_STATE,\r\n\tRESET_FIELDS,\r\n\tGET_TOPOLOGY_2G,\r\n\tGET_TOPOLOGY_3G,\r\n\tGET_TOPOLOGY_4G,\r\n\tGET_TOPOLOGY_LABELS_2G,\r\n\tGET_TOPOLOGY_LABELS_3G,\r\n\tGET_TOPOLOGY_LABELS_4G,\r\n\tGET_SITES_IDS,\r\n\tGET_SITE_ID_LOCATION,\r\n\tTOGGLE_FILTERS,\r\n\tCLEAR_FORM,\r\n\tTOGGLE_SUMMARY_DIALOG,\r\n} from '../actions/MapDriveTestsActionsGeneric';\r\n\r\nconst initialState = {\r\n\tfailuresFilters: [],\r\n\tfailuresVoice: [],\r\n\tfailuresPacket: [],\r\n\tcities: [],\r\n\tdrives: [],\r\n\tdates: [],\r\n\tselectedDates: [],\r\n\tdriveTests4g: [],\r\n\tdriveTest: [],\r\n\tdriveTestCodes: [],\r\n\tdriveTestScanner: [],\r\n\ttopology2gData: [],\r\n\ttopology3gData: [],\r\n\ttopology4gData: [],\r\n\ttopologyLabels2gData: [],\r\n\ttopologyLabels3gData: [],\r\n\ttopologyLabels4gData: [],\r\n\ttechBandVoice: [],\r\n\ttechBandPacket: [],\r\n\tdrivetestSummaryDropdown: [],\r\n\tdrivetestSummary: [],\r\n\tsitesIds: [],\r\n\tsiteIdLocation: [],\r\n\topenFilters: false,\r\n\tsummaryDialogVisibility: false,\r\n\tformState: {\r\n\t\tisValid: false,\r\n\t\tvalues: {\r\n\t\t\tmapAutoZoom: true,\r\n\t\t\tmapFilters: true,\r\n\t\t\tmapSize: 10,\r\n\t\t\tscenario: 'all'\r\n\t\t},\r\n\t\ttouched: {},\r\n\t\terrors: {},\r\n\t},\r\n};\r\n\r\nconst mapDriveTestsReducerGeneric = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase SET_FORM_STATE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tformState: action.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase RESET_FIELDS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdrives: [],\r\n\t\t\t\t\t\t\tdates: [],\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_2G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology2gData: action.topology2gData\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_3G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology3gData: action.topology3gData\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_4G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology4gData: action.topology4gData\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_LABELS_2G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopologyLabels2gData: action.topologyLabels2gData\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_LABELS_3G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopologyLabels3gData: action.topologyLabels3gData\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_LABELS_4G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopologyLabels4gData: action.topologyLabels4gData\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_SITES_IDS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tsitesIds: action.sitesIds\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_SITE_ID_LOCATION: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tsiteIdLocation: action.siteIdLocation\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase TOGGLE_FILTERS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\topenFilters: action.openFilters\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase CLEAR_FORM: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tformState: initialState.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase TOGGLE_SUMMARY_DIALOG: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tsummaryDialogVisibility: action.visible\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default mapDriveTestsReducerGeneric;\r\n","import config from '../../../configuration/configuration.js';\r\nimport AxiosRequest from '../../../utils/AxiosRequest';\r\n\r\nexport const GetDatabaseNamesRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DatasetExport/GetDatabaseNames`,\r\n});\r\n\r\nexport const GetDatabaseYearsRequest = (databaseName) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DatasetExport/GetDatabaseYears`,\r\n\tparams: { databaseName }\r\n});\r\n\r\nexport const GetDatabaseMonthsRequest = (databaseName, year) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DatasetExport/GetDatabaseMonths`,\r\n\tparams: { databaseName, year }\r\n});\r\n\r\nexport const DownloadDatabaseRequest = (databaseName, month, year, userId) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DatasetExport/DownloadDatabase`,\r\n\tparams: { databaseName, month, year, userId }\r\n});\r\n","import { enqueueSnackbar, DownloadFile } from 'actions';\r\n\r\nimport {\r\n\tGetDatabaseNamesRequest,\r\n\tGetDatabaseYearsRequest,\r\n\tGetDatabaseMonthsRequest,\r\n\tDownloadDatabaseRequest\r\n\r\n} from '../requests/DatasetExportRequests';\r\n\r\nexport const SET_FORM_STATE = 'SET_FORM_STATE';\r\nexport const RESET_FIELDS = 'RESET_FIELDS';\r\n\r\nexport const GET_DATABASE_NAMES = 'GET_DATABASE_NAMES';\r\nexport const GET_DATABASE_YEARS = 'GET_DATABASE_YEARS';\r\nexport const GET_DATABASE_MONTHS = 'GET_DATABASE_MONTHS';\r\n\r\nexport const SET_SELECTED_DATABASE = 'SET_SELECTED_DATABASE';\r\nexport const SET_SELECTED_YEAR = 'SET_SELECTED_YEAR';\r\nexport const SET_SELECTED_MONTH = 'SET_SELECTED_MONTH';\r\n\r\nconst onSetFormState = (value) => ({\r\n\ttype: SET_FORM_STATE,\r\n\tformState: value\r\n});\r\n\r\nconst onResetFields = () => ({\r\n\ttype: RESET_FIELDS,\r\n});\r\n\r\nconst onSetSelectedDatabase = (value) => ({\r\n\ttype: SET_SELECTED_DATABASE,\r\n\tselectedDatabase: value\r\n});\r\n\r\nconst onSetSelectedYear = (value) => ({\r\n\ttype: SET_SELECTED_YEAR,\r\n\tselectedYear: value\r\n});\r\n\r\nconst onSetSelectedMonth = (value) => ({\r\n\ttype: SET_SELECTED_MONTH,\r\n\tselectedMonth: value\r\n});\r\n\r\nconst onGetDatabaseNames = (value) => ({\r\n\ttype: GET_DATABASE_NAMES,\r\n\tdatabases: value\r\n});\r\n\r\nconst onGetDatabaseYears = (value) => ({\r\n\ttype: GET_DATABASE_YEARS,\r\n\tyears: value\r\n});\r\n\r\nconst onGetDatabaseMonths = (value) => ({\r\n\ttype: GET_DATABASE_MONTHS,\r\n\tmonths: value\r\n});\r\n\r\nexport const SetFormState = (value) => (dispatch) => {\r\n\tdispatch(onSetFormState(value));\r\n};\r\n\r\nexport const ResetFields = () => (dispatch) => {\r\n\tdispatch(onResetFields());\r\n};\r\n\r\nexport const SetSelectedDatabase = (selectedDatabase) => (dispatch) => {\r\n\tdispatch(onSetSelectedYear(selectedDatabase));\r\n};\r\n\r\nexport const SetSelectedYear = (selectedYear) => (dispatch) => {\r\n\tdispatch(onSetSelectedYear(selectedYear));\r\n};\r\n\r\nexport const SetSelectedMonth = (selectedMonth) => (dispatch) => {\r\n\tdispatch(onSetSelectedMonth(selectedMonth));\r\n};\r\n\r\nexport const GetDatabaseNames = () => async (dispatch) => {\r\n\tawait GetDatabaseNamesRequest().then(response => {\r\n\t\tdispatch(onGetDatabaseNames(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDatabaseYears = (databaseName) => async (dispatch) => {\r\n\tawait GetDatabaseYearsRequest(databaseName).then(response => {\r\n\t\tdispatch(onGetDatabaseYears(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDatabaseMonths = (databaseName, year) => async (dispatch) => {\r\n\tawait GetDatabaseMonthsRequest(databaseName, year).then(response => {\r\n\t\tdispatch(onGetDatabaseMonths(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const DownloadDatabase = (databaseName, month, year, userId) => async (dispatch) => {\r\n\tawait DownloadDatabaseRequest(databaseName, month, year, userId).then(response => {\r\n\t\tdispatch(DownloadFile(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n","import {\r\n\tSET_FORM_STATE,\r\n\tRESET_FIELDS,\r\n\tSET_SELECTED_DATABASE,\r\n\tSET_SELECTED_YEAR,\r\n\tSET_SELECTED_MONTH,\r\n\tGET_DATABASE_NAMES,\r\n\tGET_DATABASE_YEARS,\r\n\tGET_DATABASE_MONTHS,\r\n\r\n} from '../actions/DatasetExportActions';\r\n\r\nconst initialState = {\r\n\tdatabases: [],\r\n\tyears: [],\r\n\tmonths: [],\r\n\tformState: {\r\n\t\tisValid: false,\r\n\t\tvalues: {\r\n\t\t\tselectedDatabase: '',\r\n\t\t\tselectedYear: '',\r\n\t\t\tselectedMonth: '',\r\n\t\t}\r\n\t},\r\n\ttouched: {},\r\n\terrors: {},\r\n\r\n};\r\n\r\nconst datasetExportReducer = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase SET_FORM_STATE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tformState: action.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase RESET_FIELDS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tyears: [],\r\n\t\t\t\t\t\t\tmonths: []\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase SET_SELECTED_DATABASE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tselectedDatabase: action.selectedDatabase\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase SET_SELECTED_YEAR: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tselectedYear: action.selectedYear\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase SET_SELECTED_MONTH: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tselectedMonth: action.selectedMonth\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DATABASE_NAMES: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdatabases: action.databases\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DATABASE_YEARS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tyears: action.years\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DATABASE_MONTHS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tmonths: action.months\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default datasetExportReducer;\r\n","import config from '../../../configuration/configuration.js';\r\nimport AxiosRequest from '../../../utils/AxiosRequest';\r\n\r\nexport const GetSTTMAlgorithmDataRequest = (userId, role) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Research/Get_STTM_DAILY_STATUS_4G`,\r\n\tparams: { userId, role }\r\n});\r\n\r\nexport const GetWeekRequest = (userId, role) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Research/Get_Week`,\r\n\tparams: { userId, role }\r\n});\r\n\r\n// export const GetHTMLStringRequest = (id, cell, userId) => AxiosRequest({\r\n// \tmethod: 'GET',\r\n// \turl: `${config.API_URL}Research/Get_HTMLString`,\r\n// \tparams: { id, cell, userId }\r\n// });\r\n","import { enqueueSnackbar, DownloadFile } from 'actions';\r\n\r\nimport {\r\n\tGetSTTMAlgorithmDataRequest,\r\n\tGetWeekRequest,\r\n\t// GetHTMLStringRequest,\r\n\r\n} from '../requests/STTMAlgorithmRequests';\r\n\r\nexport const GET_STTM_ALGORITHM_DATA = 'GET_STTM_ALGORITHM_DATA';\r\nexport const GET_WEEK = 'GET_WEEK';\r\n// export const GET_HTML_STRING = 'GET_HTML_STRING';\r\n\r\nconst onGetSTTMAlgorithmData = (value) => ({\r\n\ttype: GET_STTM_ALGORITHM_DATA,\r\n\tdata: value\r\n});\r\n\r\nconst onGetWeek = (value) => ({\r\n\ttype: GET_WEEK,\r\n\tweek: value\r\n});\r\n\r\n// const onGetHTMLString = (value) => ({\r\n// \ttype: GET_HTML_STRING,\r\n// \tdata: value\r\n// });\r\n\r\nexport const GetSTTMAlgorithmData = (userId, role) => async (dispatch) => {\r\n\tawait GetSTTMAlgorithmDataRequest(userId, role).then(response => {\r\n\t\tdispatch(onGetSTTMAlgorithmData(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetWeek = (userId, role) => async (dispatch) => {\r\n\tawait GetWeekRequest(userId, role).then(response => {\r\n\t\tdispatch(onGetWeek(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\n// export const GetHTMLString = (id, cell, userId) => async (dispatch) => {\r\n// \tawait GetHTMLStringRequest(id, cell, userId).then(response => {\r\n// \t\tdispatch(onGetHTMLString(response.data));\r\n// \t}).catch((error) => {\r\n// \t\tif (error) {\r\n// \t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n// \t\t}\r\n// \t});\r\n// };\r\n","import {\r\n\tGET_STTM_ALGORITHM_DATA,\r\n\tGET_WEEK\r\n\t// GET_HTML_STRING\r\n} from '../actions/STTMAlgorithmActions';\r\n\r\nconst initialState = {\r\n\tdata: [],\r\n\tweek: []\r\n\t// htmlString: '',\r\n\t// years: [],\r\n\t// months: [],\r\n\t// formState: {\r\n\t// \tisValid: false,\r\n\t// \tvalues: {\r\n\t// \t\tselectedDatabase: '',\r\n\t// \t\tselectedYear: '',\r\n\t// \t\tselectedMonth: '',\r\n\t// \t}\r\n\t// },\r\n\t// touched: {},\r\n\t// errors: {},\r\n\r\n};\r\n\r\nconst STTMAlgorithmReducer = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase GET_STTM_ALGORITHM_DATA: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdata: action.data\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_WEEK: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tweek: action.week\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// case GET_HTML_STRING: {\r\n\t\t\t\t\t// \treturn {\r\n\t\t\t\t\t// \t\t...state,\r\n\t\t\t\t\t// \t\thtmlString: action.data\r\n\t\t\t\t\t// \t};\r\n\t\t\t\t\t// }\r\n\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default STTMAlgorithmReducer;\r\n","import config from '../../../configuration/configuration.js';\r\nimport AxiosRequest from '../../../utils/AxiosRequest';\r\n\r\nexport const GetSTTMAlgorithmDataRequest = (userId, role) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Research/Get_STTM_DAILY_STATUS_4G_GENERIC`,\r\n\tparams: { userId, role }\r\n});\r\n\r\nexport const GetWeekRequest = (userId, role) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}Research/Get_Week`,\r\n\tparams: { userId, role }\r\n});\r\n\r\n// export const GetHTMLStringRequest = (id, cell, userId) => AxiosRequest({\r\n// \tmethod: 'GET',\r\n// \turl: `${config.API_URL}Research/Get_HTMLString`,\r\n// \tparams: { id, cell, userId }\r\n// });\r\n","import { enqueueSnackbar, DownloadFile } from 'actions';\r\n\r\nimport {\r\n\tGetSTTMAlgorithmDataRequest,\r\n\tGetWeekRequest,\r\n\t// GetHTMLStringRequest,\r\n\r\n} from '../requests/STTMAlgorithmRequestsGeneric';\r\n\r\nexport const GET_STTM_ALGORITHM_DATA = 'GET_STTM_ALGORITHM_DATA';\r\nexport const GET_WEEK = 'GET_WEEK';\r\n// export const GET_HTML_STRING = 'GET_HTML_STRING';\r\n\r\nconst onGetSTTMAlgorithmData = (value) => ({\r\n\ttype: GET_STTM_ALGORITHM_DATA,\r\n\tdata: value\r\n});\r\n\r\nconst onGetWeek = (value) => ({\r\n\ttype: GET_WEEK,\r\n\tweek: value\r\n});\r\n\r\n// const onGetHTMLString = (value) => ({\r\n// \ttype: GET_HTML_STRING,\r\n// \tdata: value\r\n// });\r\n\r\nexport const GetSTTMAlgorithmData = (userId, role) => async (dispatch) => {\r\n\tawait GetSTTMAlgorithmDataRequest(userId, role).then(response => {\r\n\t\tdispatch(onGetSTTMAlgorithmData(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetWeek = (userId, role) => async (dispatch) => {\r\n\tawait GetWeekRequest(userId, role).then(response => {\r\n\t\tdispatch(onGetWeek(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\n// export const GetHTMLString = (id, cell, userId) => async (dispatch) => {\r\n// \tawait GetHTMLStringRequest(id, cell, userId).then(response => {\r\n// \t\tdispatch(onGetHTMLString(response.data));\r\n// \t}).catch((error) => {\r\n// \t\tif (error) {\r\n// \t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n// \t\t}\r\n// \t});\r\n// };\r\n","import {\r\n\tGET_STTM_ALGORITHM_DATA,\r\n\tGET_WEEK,\r\n\t// GET_HTML_STRING\r\n} from '../actions/STTMAlgorithmActionsGeneric';\r\n\r\nconst initialState = {\r\n\tdata: [],\r\n\tweek: [],\r\n\t// htmlString: '',\r\n\t// years: [],\r\n\t// months: [],\r\n\t// formState: {\r\n\t// \tisValid: false,\r\n\t// \tvalues: {\r\n\t// \t\tselectedDatabase: '',\r\n\t// \t\tselectedYear: '',\r\n\t// \t\tselectedMonth: '',\r\n\t// \t}\r\n\t// },\r\n\t// touched: {},\r\n\t// errors: {},\r\n\r\n};\r\n\r\nconst STTMAlgorithmReducerGeneric = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase GET_STTM_ALGORITHM_DATA: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdata: action.data\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_WEEK: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tweek: action.week\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// case GET_HTML_STRING: {\r\n\t\t\t\t\t// \treturn {\r\n\t\t\t\t\t// \t\t...state,\r\n\t\t\t\t\t// \t\thtmlString: action.data\r\n\t\t\t\t\t// \t};\r\n\t\t\t\t\t// }\r\n\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default STTMAlgorithmReducerGeneric;\r\n","import config from '../../../configuration/configuration.js';\r\nimport AxiosRequest from '../../../utils/AxiosRequest';\r\n\r\nexport const GetTrafficPctAddOptionsRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetTrafficPctAddOptions`,\r\n});\r\n\r\nexport const GetUtilizationDatesRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetUtilizationDates`,\r\n});\r\n\r\nexport const GetFailuresFiltersRequest = (role) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetFailuresFilters`,\r\n\tparams: { role }\r\n});\r\n\r\nexport const GetFailuresPointsVoiceRequest = (userId, role, type, city, dates, failureType, cfn1Level) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}DualMap/GetFailuresPoints`,\r\n\tdata: { userId, role, type, city, dates, failureType, cfn1Level }\r\n});\r\n\r\nexport const GetFailuresPointsPacketRequest = (userId, role, type, city, dates, failureType, cfn1Level) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}DualMap/GetFailuresPoints`,\r\n\tdata: { userId, role, type, city, dates, failureType, cfn1Level }\r\n});\r\n\r\nexport const GetDriveTestsCitiesRequest = (userId, userOperator) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetDriveTestsCities`,\r\n\tparams: { userId, userOperator }\r\n});\r\n\r\nexport const GetDriveTestsDrivesRequest = (city) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetDriveTestsDrives`,\r\n\tparams: { city }\r\n});\r\n\r\nexport const GetDriveTestsDatesRequest = (city, drive) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetDriveTestsDates`,\r\n\tparams: { city, drive }\r\n});\r\n\r\nexport const GetDriveTestRequest = (userId, tech, city, dates, kpi) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}DualMap/GetDriveTest`,\r\n\tdata: { userId, tech, city, dates, kpi }\r\n});\r\n\r\nexport const GetTopologyRequest = (userId, tech, bands, coordinates, selectedUtilizationDate, selectedTrafficPctAdd) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}DualMap/GetTopology`,\r\n\tdata: { userId, tech, bands, coordinates, selectedUtilizationDate, selectedTrafficPctAdd }\r\n});\r\n\r\nexport const GetScannerRouteRequest = (userId, city, dates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}DualMap/GetScannerRoute`,\r\n\tdata: { userId, city, dates }\r\n});\r\n\r\nexport const GetSitesIdsRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetSitesIds`,\r\n});\r\n\r\nexport const GetSiteIdLocationRequest = (siteId) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetSiteIdLocation`,\r\n\tparams: { siteId }\r\n});\r\n\r\nexport const GetCarriersColorsRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetCarriersColors`,\r\n});\r\n\r\nexport const SaveCarrierColorRequest = (userId, tableId, colorCode) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}DualMap/SaveCarrierColor`,\r\n\tdata: { userId, tableId, colorCode }\r\n});\r\n","import { enqueueSnackbar } from 'actions';\r\n\r\nimport {\r\n\tGetTrafficPctAddOptionsRequest,\r\n\tGetUtilizationDatesRequest,\r\n\tGetFailuresFiltersRequest,\r\n\tGetFailuresPointsVoiceRequest,\r\n\tGetFailuresPointsPacketRequest,\r\n\tGetDriveTestsCitiesRequest,\r\n\tGetDriveTestsDrivesRequest,\r\n\tGetDriveTestsDatesRequest,\r\n\tGetDriveTestRequest,\r\n\tGetTopologyRequest,\r\n\tGetSitesIdsRequest,\r\n\tGetSiteIdLocationRequest,\r\n\tGetScannerRouteRequest,\r\n\tGetCarriersColorsRequest,\r\n\tSaveCarrierColorRequest,\r\n} from '../requests/DualMapRequests';\r\n\r\nexport const SET_SELECTED_UTILIZATION_DATE = 'SET_SELECTED_UTILIZATION_DATE';\r\nexport const SET_FORM_STATE = 'SET_FORM_STATE';\r\nexport const RESET_FIELDS = 'RESET_FIELDS';\r\nexport const GET_FAILURES_FILTERS = 'GET_FAILURES_FILTERS';\r\nexport const GET_FAILURES_VOICE = 'GET_FAILURES_VOICE';\r\nexport const GET_FAILURES_PACKET = 'GET_FAILURES_PACKET';\r\nexport const GET_DRIVETESTS_CITIES = 'GET_DRIVETESTS_CITIES';\r\nexport const GET_DRIVETESTS_DRIVES = 'GET_DRIVETESTS_DRIVES';\r\nexport const GET_DRIVETESTS_DATES = 'GET_DRIVETESTS_DATES';\r\nexport const SET_SELECTED_DATES = 'SET_SELECTED_DATES';\r\nexport const GET_DRIVETEST = 'GET_DRIVETEST';\r\nexport const GET_DRIVETEST_COMMON = 'GET_DRIVETEST_COMMON';\r\nexport const GET_TOPOLOGY_2G = 'GET_TOPOLOGY_2G';\r\nexport const GET_TOPOLOGY_3G = 'GET_TOPOLOGY_3G';\r\nexport const GET_TOPOLOGY_4G = 'GET_TOPOLOGY_4G';\r\nexport const GET_TOPOLOGY_5G = 'GET_TOPOLOGY_5G';\r\nexport const GET_SITES_IDS = 'GET_SITES_IDS';\r\nexport const GET_SITE_ID_LOCATION = 'GET_SITE_ID_LOCATION';\r\n\r\n// Map Compare\r\nexport const SET_SELECTED_TRAFFIC_PCT_ADD = 'SET_SELECTED_TRAFFIC_PCT_ADD';\r\nexport const SET_SELECTED_UTILIZATION_DATE_COMPARE = 'SET_SELECTED_UTILIZATION_DATE_COMPARE';\r\nexport const GET_FAILURES_FILTERS_COMPARE = 'GET_FAILURES_FILTERS_COMPARE';\r\nexport const GET_FAILURES_VOICE_COMPARE = 'GET_FAILURES_VOICE_COMPARE';\r\nexport const GET_FAILURES_PACKET_COMPARE = 'GET_FAILURES_PACKET_COMPARE';\r\nexport const GET_DRIVETESTS_CITIES_COMPARE = 'GET_DRIVETESTS_CITIES_COMPARE';\r\nexport const GET_DRIVETESTS_DRIVES_COMPARE = 'GET_DRIVETESTS_DRIVES_COMPARE';\r\nexport const GET_DRIVETESTS_DATES_COMPARE = 'GET_DRIVETESTS_DATES_COMPARE';\r\nexport const SET_SELECTED_DATES_COMPARE = 'SET_SELECTED_DATES_COMPARE';\r\nexport const GET_DRIVETEST_COMPARE = 'GET_DRIVETEST_COMPARE';\r\nexport const GET_DRIVETEST_SCANNER_CODES_COMPARE = 'GET_DRIVETEST_SCANNER_CODES_COMPARE';\r\nexport const GET_DRIVETEST_SCANNER_COMPARE = 'GET_DRIVETEST_SCANNER_COMPARE';\r\nexport const GET_TOPOLOGY_2G_COMPARE = 'GET_TOPOLOGY_2G_COMPARE';\r\nexport const GET_TOPOLOGY_3G_COMPARE = 'GET_TOPOLOGY_3G_COMPARE';\r\nexport const GET_TOPOLOGY_4G_COMPARE = 'GET_TOPOLOGY_4G_COMPARE';\r\nexport const GET_TOPOLOGY_5G_COMPARE = 'GET_TOPOLOGY_5G_COMPARE';\r\n\r\n// Global\r\nexport const GET_TRAFFIC_PCT_ADD_OPTIONS = 'GET_TRAFFIC_PCT_ADD_OPTIONS';\r\nexport const GET_UTILIZATION_DATES = 'GET_UTILIZATION_DATES';\r\nexport const TOGGLE_FILTERS = 'TOGGLE_FILTERS';\r\nexport const CLEAR_FORM = 'CLEAR_FORM';\r\nexport const TOGGLE_SUMMARY_DIALOG = 'TOGGLE_SUMMARY_DIALOG';\r\nexport const TOGGLE_CARRIERS_COLORS_DIALOG = 'TOGGLE_CARRIERS_COLORS_DIALOG';\r\nexport const GET_CARRIERS_COLORS = 'GET_CARRIERS_COLORS';\r\nexport const TOGGLE_CARRIERS_COLORS_PICKER_DIALOG = 'TOGGLE_CARRIERS_COLORS_PICKER_DIALOG';\r\n\r\nconst onSetSelectedUtilizationDate = (value) => ({\r\n\ttype: SET_SELECTED_UTILIZATION_DATE,\r\n\tselectedUtilizationDate: value\r\n});\r\n\r\nconst onSetFormState = (value) => ({\r\n\ttype: SET_FORM_STATE,\r\n\tformState: value\r\n});\r\n\r\nconst onResetFields = () => ({\r\n\ttype: RESET_FIELDS,\r\n});\r\n\r\nconst onGetFailuresFilters = (value) => ({\r\n\ttype: GET_FAILURES_FILTERS,\r\n\tfailuresFilters: value\r\n});\r\n\r\nconst onGetFailuresPointsVoice = (value) => ({\r\n\ttype: GET_FAILURES_VOICE,\r\n\tfailuresVoice: value\r\n});\r\n\r\nconst onGetFailuresPointsPacket = (value) => ({\r\n\ttype: GET_FAILURES_PACKET,\r\n\tfailuresPacket: value\r\n});\r\n\r\nconst onGetDriveTestsCities = (value) => ({\r\n\ttype: GET_DRIVETESTS_CITIES,\r\n\tcities: value\r\n});\r\n\r\nconst onGetDriveTestsDrives = (value) => ({\r\n\ttype: GET_DRIVETESTS_DRIVES,\r\n\tdrives: value\r\n});\r\n\r\nconst onGetDriveTestsDates = (value) => ({\r\n\ttype: GET_DRIVETESTS_DATES,\r\n\tdates: value\r\n});\r\n\r\nconst onSetSelectedDates = (value) => ({\r\n\ttype: SET_SELECTED_DATES,\r\n\tselectedDates: value\r\n});\r\n\r\nconst onGetDriveTest = (value) => ({\r\n\ttype: GET_DRIVETEST,\r\n\tdriveTest: value\r\n});\r\n\r\nconst onGetTopology2g = (value) => ({\r\n\ttype: GET_TOPOLOGY_2G,\r\n\ttopology2gData: value\r\n});\r\n\r\nconst onGetTopology3g = (value) => ({\r\n\ttype: GET_TOPOLOGY_3G,\r\n\ttopology3gData: value\r\n});\r\n\r\nconst onGetTopology4g = (value) => ({\r\n\ttype: GET_TOPOLOGY_4G,\r\n\ttopology4gData: value\r\n});\r\n\r\nconst onGetTopology5g = (value) => ({\r\n\ttype: GET_TOPOLOGY_5G,\r\n\ttopology5gData: value\r\n});\r\n\r\n// Map Compare\r\nconst onSetSelectedTrafficPctAdd = (value) => ({\r\n\ttype: SET_SELECTED_TRAFFIC_PCT_ADD,\r\n\tselectedTrafficPctAdd: value\r\n});\r\nconst onSetSelectedUtilizationDateCompare = (value) => ({\r\n\ttype: SET_SELECTED_UTILIZATION_DATE_COMPARE,\r\n\tselectedUtilizationDateCompare: value\r\n});\r\n\r\nconst onGetFailuresFiltersSideCompare = (value) => ({\r\n\ttype: GET_FAILURES_FILTERS_COMPARE,\r\n\tfailuresFiltersSideCompare: value\r\n});\r\nconst onGetFailuresPointsVoiceCompare = (value) => ({\r\n\ttype: GET_FAILURES_VOICE_COMPARE,\r\n\tfailuresVoiceCompare: value\r\n});\r\n\r\nconst onGetFailuresPointsPacketCompare = (value) => ({\r\n\ttype: GET_FAILURES_PACKET_COMPARE,\r\n\tfailuresPacketCompare: value\r\n});\r\n\r\nconst onGetDriveTestsCitiesCompare = (value) => ({\r\n\ttype: GET_DRIVETESTS_CITIES_COMPARE,\r\n\tcitiesCompare: value\r\n});\r\n\r\nconst onGetDriveTestsDrivesCompare = (value) => ({\r\n\ttype: GET_DRIVETESTS_DRIVES_COMPARE,\r\n\tdrivesCompare: value\r\n});\r\n\r\nconst onGetDriveTestsDatesCompare = (value) => ({\r\n\ttype: GET_DRIVETESTS_DATES_COMPARE,\r\n\tdatesCompare: value\r\n});\r\n\r\nconst onSetSelectedDatesCompare = (value) => ({\r\n\ttype: SET_SELECTED_DATES_COMPARE,\r\n\tselectedDatesCompare: value\r\n});\r\n\r\nconst onGetDriveTestCompare = (value) => ({\r\n\ttype: GET_DRIVETEST_COMPARE,\r\n\tdriveTestCompare: value\r\n});\r\n\r\nconst onGetDriveTestScannerCodesCompare = (value) => ({\r\n\ttype: GET_DRIVETEST_SCANNER_CODES_COMPARE,\r\n\tdriveTestScannerCodesCompare: value\r\n});\r\n\r\nconst onGetDriveTestScannerCompare = (value) => ({\r\n\ttype: GET_DRIVETEST_SCANNER_COMPARE,\r\n\tdriveTestScannerCompare: value\r\n});\r\n\r\nconst onGetTopology2gCompare = (value) => ({\r\n\ttype: GET_TOPOLOGY_2G_COMPARE,\r\n\ttopology2gDataCompare: value\r\n});\r\n\r\nconst onGetTopology3gCompare = (value) => ({\r\n\ttype: GET_TOPOLOGY_3G_COMPARE,\r\n\ttopology3gDataCompare: value\r\n});\r\n\r\nconst onGetTopology4gCompare = (value) => ({\r\n\ttype: GET_TOPOLOGY_4G_COMPARE,\r\n\ttopology4gDataCompare: value\r\n});\r\n\r\nconst onGetTopology5gCompare = (value) => ({\r\n\ttype: GET_TOPOLOGY_5G_COMPARE,\r\n\ttopology5gDataCompare: value\r\n});\r\n\r\n// Global\r\nconst onGetTrafficPctAddOptions = (value) => ({\r\n\ttype: GET_TRAFFIC_PCT_ADD_OPTIONS,\r\n\ttrafficPctAddOptions: value\r\n});\r\n\r\nconst onGetUtilizationDates = (value) => ({\r\n\ttype: GET_UTILIZATION_DATES,\r\n\tutilizationDates: value\r\n});\r\n\r\nconst onToggleFilters = (openFilters) => ({\r\n\ttype: TOGGLE_FILTERS,\r\n\topenFilters,\r\n});\r\n\r\nconst onClearForm = () => ({\r\n\ttype: CLEAR_FORM\r\n});\r\n\r\nconst onToggleSummaryDialog = (visible) => ({\r\n\ttype: TOGGLE_SUMMARY_DIALOG,\r\n\tvisible\r\n});\r\n\r\nconst onToggleCarriersColorsDialog = (visible) => ({\r\n\ttype: TOGGLE_CARRIERS_COLORS_DIALOG,\r\n\tvisible\r\n});\r\n\r\nconst onToggleCarriersColorsPickerDialog = (visible, tableIdColorCode, currentColorCode) => ({\r\n\ttype: TOGGLE_CARRIERS_COLORS_PICKER_DIALOG,\r\n\tvisible,\r\n\ttableIdColorCode,\r\n\tcurrentColorCode\r\n});\r\n\r\nconst onGetSitesIds = (value) => ({\r\n\ttype: GET_SITES_IDS,\r\n\tsitesIds: value\r\n});\r\n\r\nconst onGetSiteIdLocation = (value) => ({\r\n\ttype: GET_SITE_ID_LOCATION,\r\n\tsiteIdLocation: value\r\n});\r\n\r\nconst onGetCarriersColors = (value) => ({\r\n\ttype: GET_CARRIERS_COLORS,\r\n\tcarriersColors: value\r\n});\r\n\r\nexport const SetSelectedUtilizationDate = (value) => (dispatch) => {\r\n\tdispatch(onSetSelectedUtilizationDate(value));\r\n};\r\n\r\nexport const SetFormState = (value) => (dispatch) => {\r\n\tdispatch(onSetFormState(value));\r\n};\r\n\r\nexport const ResetFields = () => (dispatch) => {\r\n\tdispatch(onResetFields());\r\n};\r\n\r\nexport const GetFailuresFilters = (role) => async (dispatch) => {\r\n\tawait GetFailuresFiltersRequest(role).then(response => {\r\n\t\tdispatch(onGetFailuresFilters(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetFailuresPointsVoice = (userId, role, city, dates, failureType, cfn1Level) => async (dispatch) => {\r\n\tawait GetFailuresPointsVoiceRequest(userId, role, 'voice', city, dates, failureType, cfn1Level).then(response => {\r\n\t\tdispatch(onGetFailuresPointsVoice(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetFailuresPointsPacket = (userId, role, city, dates, failureType, cfn1Level) => async (dispatch) => {\r\n\tawait GetFailuresPointsPacketRequest(userId, role, 'packet', city, dates, failureType, cfn1Level).then(response => {\r\n\t\tdispatch(onGetFailuresPointsPacket(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDriveTestsCities = (userId, userOperator) => async (dispatch) => {\r\n\tawait GetDriveTestsCitiesRequest(userId, userOperator).then(response => {\r\n\t\tdispatch(onGetDriveTestsCities(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDriveTestsDrives = (city) => async (dispatch) => {\r\n\tawait GetDriveTestsDrivesRequest(city).then(response => {\r\n\t\tdispatch(onGetDriveTestsDrives(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDriveTestsDates = (city, drive) => async (dispatch) => {\r\n\tawait GetDriveTestsDatesRequest(city, drive).then(response => {\r\n\t\tdispatch(onGetDriveTestsDates(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const SetSelectedDates = (selectedDates) => (dispatch) => {\r\n\tdispatch(onSetSelectedDates(selectedDates));\r\n};\r\n\r\nexport const GetDriveTest = (userId, tech, city, dates, kpi) => async (dispatch) => {\r\n\tawait GetDriveTestRequest(userId, tech, city, dates, kpi).then(response => {\r\n\t\tdispatch(onGetDriveTest(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology2g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '2G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology2g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology3g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '3G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology3g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology4g = (userId, bands, coordinates, selectedUtilizationDate, selectedTrafficPctAdd) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '4G', bands, coordinates, selectedUtilizationDate, selectedTrafficPctAdd).then(response => {\r\n\t\tdispatch(onGetTopology4g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology5g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '5G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology5g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const ToggleFilters = (openFilters) => (dispatch) => {\r\n\tdispatch(onToggleFilters(openFilters));\r\n};\r\n\r\nexport const ClearForm = () => (dispatch) => {\r\n\tdispatch(onClearForm());\r\n};\r\n\r\nexport const ToggleSummaryDialog = (visible) => (dispatch) => {\r\n\tdispatch(onToggleSummaryDialog(visible));\r\n};\r\n\r\nexport const ToggleCarriersColorsDialog = (visible) => (dispatch) => {\r\n\tdispatch(onToggleCarriersColorsDialog(visible));\r\n};\r\n\r\nexport const ToggleCarriersColorsPickerDialog = (visible, tableIdColorCode, currentColorCode) => (dispatch) => {\r\n\tdispatch(onToggleCarriersColorsPickerDialog(visible, tableIdColorCode, currentColorCode));\r\n};\r\n\r\n// Map Compare\r\nexport const SetSelectedTrafficPctAdd = (value) => (dispatch) => {\r\n\tdispatch(onSetSelectedTrafficPctAdd(value));\r\n};\r\n\r\nexport const SetSelectedUtilizationDateCompare = (value) => (dispatch) => {\r\n\tdispatch(onSetSelectedUtilizationDateCompare(value));\r\n};\r\n\r\nexport const GetFailuresFiltersSideCompare = (role) => async (dispatch) => {\r\n\tawait GetFailuresFiltersRequest(role).then(response => {\r\n\t\tdispatch(onGetFailuresFiltersSideCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetFailuresPointsVoiceCompare = (userId, role, city, dates, failureType, cfn1Level) => async (dispatch) => {\r\n\tawait GetFailuresPointsVoiceRequest(userId, role, 'voice', city, dates, failureType, cfn1Level).then(response => {\r\n\t\tdispatch(onGetFailuresPointsVoiceCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetFailuresPointsPacketCompare = (userId, role, city, dates, failureType, cfn1Level) => async (dispatch) => {\r\n\tawait GetFailuresPointsPacketRequest(userId, role, 'packet', city, dates, failureType, cfn1Level).then(response => {\r\n\t\tdispatch(onGetFailuresPointsPacketCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDriveTestsCitiesCompare = (userId, userOperator) => async (dispatch) => {\r\n\tawait GetDriveTestsCitiesRequest(userId, userOperator).then(response => {\r\n\t\tdispatch(onGetDriveTestsCitiesCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDriveTestsDrivesCompare = (city) => async (dispatch) => {\r\n\tawait GetDriveTestsDrivesRequest(city).then(response => {\r\n\t\tdispatch(onGetDriveTestsDrivesCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDriveTestsDatesCompare = (city, drive) => async (dispatch) => {\r\n\tawait GetDriveTestsDatesRequest(city, drive).then(response => {\r\n\t\tdispatch(onGetDriveTestsDatesCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const SetSelectedDatesCompare = (selectedDates) => (dispatch) => {\r\n\tdispatch(onSetSelectedDatesCompare(selectedDates));\r\n};\r\n\r\nexport const GetDriveTestCompare = (userId, tech, city, dates, kpi) => async (dispatch) => {\r\n\tawait GetDriveTestRequest(userId, tech, city, dates, kpi).then(response => {\r\n\t\tdispatch(onGetDriveTestCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology2gCompare = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '2G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology2gCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology3gCompare = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '3G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology3gCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology4gCompare = (userId, bands, coordinates, selectedUtilizationDateCompare, selectedTrafficPctAdd) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '4G', bands, coordinates, selectedUtilizationDateCompare, selectedTrafficPctAdd).then(response => {\r\n\t\tdispatch(onGetTopology4gCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology5gCompare = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '5G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology5gCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\n// Global\r\nexport const GetTrafficPctAddOptions = (user) => async (dispatch) => {\r\n\tawait GetTrafficPctAddOptionsRequest(user).then(response => {\r\n\t\tdispatch(onGetTrafficPctAddOptions(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetUtilizationDates = (user) => async (dispatch) => {\r\n\tawait GetUtilizationDatesRequest(user).then(response => {\r\n\t\tdispatch(onGetUtilizationDates(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetSitesIds = () => async (dispatch) => {\r\n\tawait GetSitesIdsRequest().then(response => {\r\n\t\tdispatch(onGetSitesIds(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetSiteIdLocation = (siteId) => async (dispatch) => {\r\n\tawait GetSiteIdLocationRequest(siteId).then(response => {\r\n\t\tdispatch(onGetSiteIdLocation(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetCarriersColors = () => async (dispatch) => {\r\n\tawait GetCarriersColorsRequest().then(response => {\r\n\t\tdispatch(onGetCarriersColors(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const SaveCarrierColor = (userId, tableId, colorCode) => async (dispatch) => {\r\n\tawait SaveCarrierColorRequest(userId, tableId, colorCode).then(response => {\r\n\t\tdispatch(GetCarriersColors());\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n","import { useDispatch } from 'react-redux';\r\n\r\nimport {\r\n\tSET_FORM_STATE,\r\n\tRESET_FIELDS,\r\n\t// Map\r\n\tSET_SELECTED_UTILIZATION_DATE,\r\n\tGET_FAILURES_FILTERS,\r\n\tGET_FAILURES_VOICE,\r\n\tGET_FAILURES_PACKET,\r\n\tGET_DRIVETESTS_CITIES,\r\n\tGET_DRIVETESTS_DRIVES,\r\n\tGET_DRIVETESTS_DATES,\r\n\tSET_SELECTED_DATES,\r\n\tGET_DRIVETEST,\r\n\tGET_TOPOLOGY_2G,\r\n\tGET_TOPOLOGY_3G,\r\n\tGET_TOPOLOGY_4G,\r\n\tGET_TOPOLOGY_5G,\r\n\t// Map Compare\r\n\tSET_SELECTED_TRAFFIC_PCT_ADD,\r\n\tSET_SELECTED_UTILIZATION_DATE_COMPARE,\r\n\tGET_FAILURES_FILTERS_COMPARE,\r\n\tGET_FAILURES_VOICE_COMPARE,\r\n\tGET_FAILURES_PACKET_COMPARE,\r\n\tGET_DRIVETESTS_CITIES_COMPARE,\r\n\tGET_DRIVETESTS_DRIVES_COMPARE,\r\n\tGET_DRIVETESTS_DATES_COMPARE,\r\n\tSET_SELECTED_DATES_COMPARE,\r\n\tGET_DRIVETEST_COMPARE,\r\n\tGET_TOPOLOGY_2G_COMPARE,\r\n\tGET_TOPOLOGY_3G_COMPARE,\r\n\tGET_TOPOLOGY_4G_COMPARE,\r\n\tGET_TOPOLOGY_5G_COMPARE,\r\n\t// Global\r\n\tGET_TRAFFIC_PCT_ADD_OPTIONS,\r\n\tGET_UTILIZATION_DATES,\r\n\tTOGGLE_FILTERS,\r\n\tCLEAR_FORM,\r\n\tTOGGLE_CARRIERS_COLORS_DIALOG,\r\n\tGET_CARRIERS_COLORS,\r\n\tGET_SITES_IDS,\r\n\tGET_SITE_ID_LOCATION,\r\n\tTOGGLE_CARRIERS_COLORS_PICKER_DIALOG,\r\n} from '../actions/DualMapActions';\r\n\r\nconst initialState = {\r\n\t// Map\r\n\tselectedUtilizationDate: '',\r\n\tfailuresFilters: [],\r\n\tfailuresVoice: [],\r\n\tfailuresPacket: [],\r\n\tcities: [],\r\n\tdrives: [],\r\n\tdates: [],\r\n\tselectedDates: [],\r\n\tdriveTest: [],\r\n\ttopology2gData: [],\r\n\ttopology3gData: [],\r\n\ttopology4gData: [],\r\n\ttopology5gData: [],\r\n\ttopologyLabelsData: [],\r\n\ttechBandVoice: [],\r\n\ttechBandPacket: [],\r\n\t// Map Compare\r\n\tselectedTrafficPctAdd: '0',\r\n\tselectedUtilizationDateCompare: '',\r\n\tfailuresFiltersSideCompare: [],\r\n\tfailuresVoiceCompare: [],\r\n\tfailuresPacketCompare: [],\r\n\tdrivesCompare: [],\r\n\tdatesCompare: [],\r\n\tselectedDatesCompare: [],\r\n\tdriveTestCompare: [],\r\n\ttopology2gDataCompare: [],\r\n\ttopology3gDataCompare: [],\r\n\ttopology4gDataCompare: [],\r\n\ttopology5gDataCompare: [],\r\n\ttopologyLabelsDataCompare: [],\r\n\ttechBandVoiceCompare: [],\r\n\ttechBandPacketCompare: [],\r\n\t// Global\r\n\t// colorChangesArray: [],\r\n\ttrafficPctAddOptions: [],\r\n\tutilizationDates: [],\r\n\topenFilters: false,\r\n\tcarriersColorsDialogVisibility: false,\r\n\tcarriersColorsPickerDialogVisibility: false,\r\n\tsitesIds: [],\r\n\tsiteIdLocation: [],\r\n\tcarriersColors: [],\r\n\tcurrentColorCode: 'white',\r\n\tformState: {\r\n\t\tisValid: false,\r\n\t\tvalues: {\r\n\t\t\t// Map\r\n\t\t\tselectedDate: '',\r\n\t\t\tselectedCity: '',\r\n\t\t\tselectedDrive: '',\r\n\t\t\tvoiceActive: false,\r\n\t\t\tpacketActive: false,\r\n\t\t\tfailureTypeVoice: 'all',\r\n\t\t\tfailureTypePacket: 'all',\r\n\t\t\tcfn1LevelVoice: 'all',\r\n\t\t\tcfn1LevelPacket: 'all',\r\n\t\t\tmapAutoZoom: true,\r\n\t\t\tmapCompare: false,\r\n\t\t\tmapFrameSize: '80vw',\r\n\t\t\tmapSync: true,\r\n\t\t\tmapFilters: true,\r\n\t\t\tmapSize: 10,\r\n\t\t\t// Map Compare\r\n\t\t\tselectedCityCompare: '',\r\n\t\t\tselectedDriveCompare: '',\r\n\t\t\tvoiceActiveCompare: false,\r\n\t\t\tpacketActiveCompare: false,\r\n\t\t\ttechBandVoiceActiveCompare: false,\r\n\t\t\ttechBandPacketActiveCompare: false,\r\n\t\t\tfailureTypeVoiceCompare: 'all',\r\n\t\t\tfailureTypePacketCompare: 'all',\r\n\t\t\tcfn1LevelVoiceCompare: 'all',\r\n\t\t\tcfn1LevelPacketCompare: 'all',\r\n\t\t},\r\n\t\ttouched: {},\r\n\t\terrors: {},\r\n\t},\r\n};\r\n\r\nconst dualMapReducer = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase SET_SELECTED_UTILIZATION_DATE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tselectedUtilizationDate: action.selectedUtilizationDate\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tcase SET_FORM_STATE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tformState: action.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase RESET_FIELDS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdrives: [],\r\n\t\t\t\t\t\t\tdates: [],\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// Map\r\n\t\t\t\t\tcase GET_FAILURES_FILTERS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tfailuresFilters: action.failuresFilters,\r\n\t\t\t\t\t\t\tformState: initialState.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_FAILURES_VOICE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tfailuresVoice: action.failuresVoice\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_FAILURES_PACKET: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tfailuresPacket: action.failuresPacket\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETESTS_CITIES: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tcities: action.cities\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETESTS_DRIVES: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdrives: action.drives\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETESTS_DATES: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdates: action.dates\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase SET_SELECTED_DATES: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tselectedDates: action.selectedDates\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETEST: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdriveTest: action.driveTest\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_2G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology2gData: action.topology2gData,\r\n\t\t\t\t\t\t\ttopologyLabelsData: action.topology2gData.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_3G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology3gData: action.topology3gData,\r\n\t\t\t\t\t\t\ttopologyLabelsData: action.topology3gData.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_4G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology4gData: action.topology4gData,\r\n\t\t\t\t\t\t\ttopologyLabelsData: action.topology4gData.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_5G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology5gData: action.topology5gData,\r\n\t\t\t\t\t\t\ttopologyLabelsData: action.topology5gData.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// Map Compare\r\n\t\t\t\t\tcase SET_SELECTED_TRAFFIC_PCT_ADD: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tselectedTrafficPctAdd: action.selectedTrafficPctAdd\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase SET_SELECTED_UTILIZATION_DATE_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tselectedUtilizationDateCompare: action.selectedUtilizationDateCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_FAILURES_FILTERS_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tfailuresFiltersSideCompare: action.failuresFiltersSideCompare,\r\n\t\t\t\t\t\t\tformState: initialState.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_FAILURES_VOICE_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tfailuresVoiceCompare: action.failuresVoiceCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_FAILURES_PACKET_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tfailuresPacketCompare: action.failuresPacketCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETESTS_CITIES_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tcitiesCompare: action.citiesCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETESTS_DRIVES_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdrivesCompare: action.drivesCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETESTS_DATES_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdatesCompare: action.datesCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase SET_SELECTED_DATES_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tselectedDatesCompare: action.selectedDatesCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETEST_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdriveTestCompare: action.driveTestCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_2G_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology2gDataCompare: action.topology2gDataCompare,\r\n\t\t\t\t\t\t\ttopologyLabelsDataCompare: action.topology2gDataCompare.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_3G_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology3gDataCompare: action.topology3gDataCompare,\r\n\t\t\t\t\t\t\ttopologyLabelsDataCompare: action.topology3gDataCompare.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_4G_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology4gDataCompare: action.topology4gDataCompare,\r\n\t\t\t\t\t\t\ttopologyLabelsDataCompare: action.topology4gDataCompare.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_5G_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology5gDataCompare: action.topology5gDataCompare,\r\n\t\t\t\t\t\t\ttopologyLabelsDataCompare: action.topology5gDataCompare.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// Global\r\n\t\t\t\t\tcase GET_TRAFFIC_PCT_ADD_OPTIONS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttrafficPctAddOptions: action.trafficPctAddOptions\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_UTILIZATION_DATES: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tutilizationDates: action.utilizationDates\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase TOGGLE_FILTERS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\topenFilters: action.openFilters\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase CLEAR_FORM: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tformState: initialState.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_SITES_IDS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tsitesIds: action.sitesIds\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_SITE_ID_LOCATION: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tsiteIdLocation: action.siteIdLocation\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase TOGGLE_CARRIERS_COLORS_DIALOG: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tcarriersColorsDialogVisibility: action.visible\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase TOGGLE_CARRIERS_COLORS_PICKER_DIALOG: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tcarriersColorsPickerDialogVisibility: action.visible,\r\n\t\t\t\t\t\t\ttableIdColorCode: action.tableIdColorCode,\r\n\t\t\t\t\t\t\tcurrentColorCode: action.currentColorCode\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_CARRIERS_COLORS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tcarriersColors: action.carriersColors\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default dualMapReducer;\r\n","import config from '../../../configuration/configuration.js';\r\nimport AxiosRequest from '../../../utils/AxiosRequest';\r\n\r\nexport const GetTrafficPctAddOptionsRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetTrafficPctAddOptions`,\r\n});\r\n\r\nexport const GetUtilizationDatesRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetUtilizationDates`,\r\n});\r\n\r\nexport const GetFailuresFiltersRequest = (role) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetFailuresFilters`,\r\n\tparams: { role }\r\n});\r\n\r\nexport const GetFailuresPointsVoiceRequest = (userId, role, type, city, dates, failureType, cfn1Level) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}DualMap/GetFailuresPoints`,\r\n\tdata: { userId, role, type, city, dates, failureType, cfn1Level }\r\n});\r\n\r\nexport const GetFailuresPointsPacketRequest = (userId, role, type, city, dates, failureType, cfn1Level) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}DualMap/GetFailuresPoints`,\r\n\tdata: { userId, role, type, city, dates, failureType, cfn1Level }\r\n});\r\n\r\nexport const GetDriveTestsCitiesRequest = (userId, userOperator) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetDriveTestsCities`,\r\n\tparams: { userId, userOperator }\r\n});\r\n\r\nexport const GetDriveTestsDrivesRequest = (city) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetDriveTestsDrives`,\r\n\tparams: { city }\r\n});\r\n\r\nexport const GetDriveTestsDatesRequest = (city, drive) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetDriveTestsDates`,\r\n\tparams: { city, drive }\r\n});\r\n\r\nexport const GetDriveTestRequest = (userId, tech, city, dates, kpi) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}DualMap/GetDriveTest`,\r\n\tdata: { userId, tech, city, dates, kpi }\r\n});\r\n\r\nexport const GetTopologyRequest = (userId, tech, bands, coordinates, selectedUtilizationDate, selectedTrafficPctAdd) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}DualMap/GetTopology`,\r\n\tdata: { userId, tech, bands, coordinates, selectedUtilizationDate, selectedTrafficPctAdd }\r\n});\r\n\r\nexport const GetScannerRouteRequest = (userId, city, dates) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}DualMap/GetScannerRoute`,\r\n\tdata: { userId, city, dates }\r\n});\r\n\r\nexport const GetSitesIdsRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetSitesIds`,\r\n});\r\n\r\nexport const GetSiteIdLocationRequest = (siteId) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetSiteIdLocation`,\r\n\tparams: { siteId }\r\n});\r\n\r\nexport const GetCarriersColorsRequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DualMap/GetCarriersColors`,\r\n});\r\n\r\nexport const SaveCarrierColorRequest = (userId, tableId, colorCode) => AxiosRequest({\r\n\tmethod: 'POST',\r\n\turl: `${config.API_URL}DualMap/SaveCarrierColor`,\r\n\tdata: { userId, tableId, colorCode }\r\n});\r\n","import { enqueueSnackbar } from 'actions';\r\n\r\nimport {\r\n\tGetTrafficPctAddOptionsRequest,\r\n\tGetUtilizationDatesRequest,\r\n\tGetFailuresFiltersRequest,\r\n\tGetFailuresPointsVoiceRequest,\r\n\tGetFailuresPointsPacketRequest,\r\n\tGetDriveTestsCitiesRequest,\r\n\tGetDriveTestsDrivesRequest,\r\n\tGetDriveTestsDatesRequest,\r\n\tGetDriveTestRequest,\r\n\tGetTopologyRequest,\r\n\tGetSitesIdsRequest,\r\n\tGetSiteIdLocationRequest,\r\n\tGetScannerRouteRequest,\r\n\tGetCarriersColorsRequest,\r\n\tSaveCarrierColorRequest,\r\n} from '../requests/DualMapRequestsGeneric';\r\n\r\nexport const SET_SELECTED_UTILIZATION_DATE = 'SET_SELECTED_UTILIZATION_DATE';\r\nexport const SET_FORM_STATE = 'SET_FORM_STATE';\r\nexport const RESET_FIELDS = 'RESET_FIELDS';\r\nexport const GET_FAILURES_FILTERS = 'GET_FAILURES_FILTERS';\r\nexport const GET_FAILURES_VOICE = 'GET_FAILURES_VOICE';\r\nexport const GET_FAILURES_PACKET = 'GET_FAILURES_PACKET';\r\nexport const GET_DRIVETESTS_CITIES = 'GET_DRIVETESTS_CITIES';\r\nexport const GET_DRIVETESTS_DRIVES = 'GET_DRIVETESTS_DRIVES';\r\nexport const GET_DRIVETESTS_DATES = 'GET_DRIVETESTS_DATES';\r\nexport const SET_SELECTED_DATES = 'SET_SELECTED_DATES';\r\nexport const GET_DRIVETEST = 'GET_DRIVETEST';\r\nexport const GET_DRIVETEST_COMMON = 'GET_DRIVETEST_COMMON';\r\nexport const GET_TOPOLOGY_2G = 'GET_TOPOLOGY_2G';\r\nexport const GET_TOPOLOGY_3G = 'GET_TOPOLOGY_3G';\r\nexport const GET_TOPOLOGY_4G = 'GET_TOPOLOGY_4G';\r\nexport const GET_TOPOLOGY_5G = 'GET_TOPOLOGY_5G';\r\nexport const GET_SITES_IDS = 'GET_SITES_IDS';\r\nexport const GET_SITE_ID_LOCATION = 'GET_SITE_ID_LOCATION';\r\n\r\n// Map Compare\r\nexport const SET_SELECTED_TRAFFIC_PCT_ADD = 'SET_SELECTED_TRAFFIC_PCT_ADD';\r\nexport const SET_SELECTED_UTILIZATION_DATE_COMPARE = 'SET_SELECTED_UTILIZATION_DATE_COMPARE';\r\nexport const GET_FAILURES_FILTERS_COMPARE = 'GET_FAILURES_FILTERS_COMPARE';\r\nexport const GET_FAILURES_VOICE_COMPARE = 'GET_FAILURES_VOICE_COMPARE';\r\nexport const GET_FAILURES_PACKET_COMPARE = 'GET_FAILURES_PACKET_COMPARE';\r\nexport const GET_DRIVETESTS_CITIES_COMPARE = 'GET_DRIVETESTS_CITIES_COMPARE';\r\nexport const GET_DRIVETESTS_DRIVES_COMPARE = 'GET_DRIVETESTS_DRIVES_COMPARE';\r\nexport const GET_DRIVETESTS_DATES_COMPARE = 'GET_DRIVETESTS_DATES_COMPARE';\r\nexport const SET_SELECTED_DATES_COMPARE = 'SET_SELECTED_DATES_COMPARE';\r\nexport const GET_DRIVETEST_COMPARE = 'GET_DRIVETEST_COMPARE';\r\nexport const GET_DRIVETEST_SCANNER_CODES_COMPARE = 'GET_DRIVETEST_SCANNER_CODES_COMPARE';\r\nexport const GET_DRIVETEST_SCANNER_COMPARE = 'GET_DRIVETEST_SCANNER_COMPARE';\r\nexport const GET_TOPOLOGY_2G_COMPARE = 'GET_TOPOLOGY_2G_COMPARE';\r\nexport const GET_TOPOLOGY_3G_COMPARE = 'GET_TOPOLOGY_3G_COMPARE';\r\nexport const GET_TOPOLOGY_4G_COMPARE = 'GET_TOPOLOGY_4G_COMPARE';\r\nexport const GET_TOPOLOGY_5G_COMPARE = 'GET_TOPOLOGY_5G_COMPARE';\r\n\r\n// Global\r\nexport const GET_TRAFFIC_PCT_ADD_OPTIONS = 'GET_TRAFFIC_PCT_ADD_OPTIONS';\r\nexport const GET_UTILIZATION_DATES = 'GET_UTILIZATION_DATES';\r\nexport const TOGGLE_FILTERS = 'TOGGLE_FILTERS';\r\nexport const CLEAR_FORM = 'CLEAR_FORM';\r\nexport const TOGGLE_SUMMARY_DIALOG = 'TOGGLE_SUMMARY_DIALOG';\r\nexport const TOGGLE_CARRIERS_COLORS_DIALOG = 'TOGGLE_CARRIERS_COLORS_DIALOG';\r\nexport const GET_CARRIERS_COLORS = 'GET_CARRIERS_COLORS';\r\nexport const TOGGLE_CARRIERS_COLORS_PICKER_DIALOG = 'TOGGLE_CARRIERS_COLORS_PICKER_DIALOG';\r\n\r\nconst onSetSelectedUtilizationDate = (value) => ({\r\n\ttype: SET_SELECTED_UTILIZATION_DATE,\r\n\tselectedUtilizationDate: value\r\n});\r\n\r\nconst onSetFormState = (value) => ({\r\n\ttype: SET_FORM_STATE,\r\n\tformState: value\r\n});\r\n\r\nconst onResetFields = () => ({\r\n\ttype: RESET_FIELDS,\r\n});\r\n\r\nconst onGetFailuresFilters = (value) => ({\r\n\ttype: GET_FAILURES_FILTERS,\r\n\tfailuresFilters: value\r\n});\r\n\r\nconst onGetFailuresPointsVoice = (value) => ({\r\n\ttype: GET_FAILURES_VOICE,\r\n\tfailuresVoice: value\r\n});\r\n\r\nconst onGetFailuresPointsPacket = (value) => ({\r\n\ttype: GET_FAILURES_PACKET,\r\n\tfailuresPacket: value\r\n});\r\n\r\nconst onGetDriveTestsCities = (value) => ({\r\n\ttype: GET_DRIVETESTS_CITIES,\r\n\tcities: value\r\n});\r\n\r\nconst onGetDriveTestsDrives = (value) => ({\r\n\ttype: GET_DRIVETESTS_DRIVES,\r\n\tdrives: value\r\n});\r\n\r\nconst onGetDriveTestsDates = (value) => ({\r\n\ttype: GET_DRIVETESTS_DATES,\r\n\tdates: value\r\n});\r\n\r\nconst onSetSelectedDates = (value) => ({\r\n\ttype: SET_SELECTED_DATES,\r\n\tselectedDates: value\r\n});\r\n\r\nconst onGetDriveTest = (value) => ({\r\n\ttype: GET_DRIVETEST,\r\n\tdriveTest: value\r\n});\r\n\r\nconst onGetTopology2g = (value) => ({\r\n\ttype: GET_TOPOLOGY_2G,\r\n\ttopology2gData: value\r\n});\r\n\r\nconst onGetTopology3g = (value) => ({\r\n\ttype: GET_TOPOLOGY_3G,\r\n\ttopology3gData: value\r\n});\r\n\r\nconst onGetTopology4g = (value) => ({\r\n\ttype: GET_TOPOLOGY_4G,\r\n\ttopology4gData: value\r\n});\r\n\r\nconst onGetTopology5g = (value) => ({\r\n\ttype: GET_TOPOLOGY_5G,\r\n\ttopology5gData: value\r\n});\r\n\r\n// Map Compare\r\nconst onSetSelectedTrafficPctAdd = (value) => ({\r\n\ttype: SET_SELECTED_TRAFFIC_PCT_ADD,\r\n\tselectedTrafficPctAdd: value\r\n});\r\nconst onSetSelectedUtilizationDateCompare = (value) => ({\r\n\ttype: SET_SELECTED_UTILIZATION_DATE_COMPARE,\r\n\tselectedUtilizationDateCompare: value\r\n});\r\n\r\nconst onGetFailuresFiltersSideCompare = (value) => ({\r\n\ttype: GET_FAILURES_FILTERS_COMPARE,\r\n\tfailuresFiltersSideCompare: value\r\n});\r\nconst onGetFailuresPointsVoiceCompare = (value) => ({\r\n\ttype: GET_FAILURES_VOICE_COMPARE,\r\n\tfailuresVoiceCompare: value\r\n});\r\n\r\nconst onGetFailuresPointsPacketCompare = (value) => ({\r\n\ttype: GET_FAILURES_PACKET_COMPARE,\r\n\tfailuresPacketCompare: value\r\n});\r\n\r\nconst onGetDriveTestsCitiesCompare = (value) => ({\r\n\ttype: GET_DRIVETESTS_CITIES_COMPARE,\r\n\tcitiesCompare: value\r\n});\r\n\r\nconst onGetDriveTestsDrivesCompare = (value) => ({\r\n\ttype: GET_DRIVETESTS_DRIVES_COMPARE,\r\n\tdrivesCompare: value\r\n});\r\n\r\nconst onGetDriveTestsDatesCompare = (value) => ({\r\n\ttype: GET_DRIVETESTS_DATES_COMPARE,\r\n\tdatesCompare: value\r\n});\r\n\r\nconst onSetSelectedDatesCompare = (value) => ({\r\n\ttype: SET_SELECTED_DATES_COMPARE,\r\n\tselectedDatesCompare: value\r\n});\r\n\r\nconst onGetDriveTestCompare = (value) => ({\r\n\ttype: GET_DRIVETEST_COMPARE,\r\n\tdriveTestCompare: value\r\n});\r\n\r\nconst onGetDriveTestScannerCodesCompare = (value) => ({\r\n\ttype: GET_DRIVETEST_SCANNER_CODES_COMPARE,\r\n\tdriveTestScannerCodesCompare: value\r\n});\r\n\r\nconst onGetDriveTestScannerCompare = (value) => ({\r\n\ttype: GET_DRIVETEST_SCANNER_COMPARE,\r\n\tdriveTestScannerCompare: value\r\n});\r\n\r\nconst onGetTopology2gCompare = (value) => ({\r\n\ttype: GET_TOPOLOGY_2G_COMPARE,\r\n\ttopology2gDataCompare: value\r\n});\r\n\r\nconst onGetTopology3gCompare = (value) => ({\r\n\ttype: GET_TOPOLOGY_3G_COMPARE,\r\n\ttopology3gDataCompare: value\r\n});\r\n\r\nconst onGetTopology4gCompare = (value) => ({\r\n\ttype: GET_TOPOLOGY_4G_COMPARE,\r\n\ttopology4gDataCompare: value\r\n});\r\n\r\nconst onGetTopology5gCompare = (value) => ({\r\n\ttype: GET_TOPOLOGY_5G_COMPARE,\r\n\ttopology5gDataCompare: value\r\n});\r\n\r\n// Global\r\nconst onGetTrafficPctAddOptions = (value) => ({\r\n\ttype: GET_TRAFFIC_PCT_ADD_OPTIONS,\r\n\ttrafficPctAddOptions: value\r\n});\r\n\r\nconst onGetUtilizationDates = (value) => ({\r\n\ttype: GET_UTILIZATION_DATES,\r\n\tutilizationDates: value\r\n});\r\n\r\nconst onToggleFilters = (openFilters) => ({\r\n\ttype: TOGGLE_FILTERS,\r\n\topenFilters,\r\n});\r\n\r\nconst onClearForm = () => ({\r\n\ttype: CLEAR_FORM\r\n});\r\n\r\nconst onToggleSummaryDialog = (visible) => ({\r\n\ttype: TOGGLE_SUMMARY_DIALOG,\r\n\tvisible\r\n});\r\n\r\nconst onToggleCarriersColorsDialog = (visible) => ({\r\n\ttype: TOGGLE_CARRIERS_COLORS_DIALOG,\r\n\tvisible\r\n});\r\n\r\nconst onToggleCarriersColorsPickerDialog = (visible, tableIdColorCode, currentColorCode) => ({\r\n\ttype: TOGGLE_CARRIERS_COLORS_PICKER_DIALOG,\r\n\tvisible,\r\n\ttableIdColorCode,\r\n\tcurrentColorCode\r\n});\r\n\r\nconst onGetSitesIds = (value) => ({\r\n\ttype: GET_SITES_IDS,\r\n\tsitesIds: value\r\n});\r\n\r\nconst onGetSiteIdLocation = (value) => ({\r\n\ttype: GET_SITE_ID_LOCATION,\r\n\tsiteIdLocation: value\r\n});\r\n\r\nconst onGetCarriersColors = (value) => ({\r\n\ttype: GET_CARRIERS_COLORS,\r\n\tcarriersColors: value\r\n});\r\n\r\nexport const SetSelectedUtilizationDate = (value) => (dispatch) => {\r\n\tdispatch(onSetSelectedUtilizationDate(value));\r\n};\r\n\r\nexport const SetFormState = (value) => (dispatch) => {\r\n\tdispatch(onSetFormState(value));\r\n};\r\n\r\nexport const ResetFields = () => (dispatch) => {\r\n\tdispatch(onResetFields());\r\n};\r\n\r\nexport const GetFailuresFilters = (role) => async (dispatch) => {\r\n\tawait GetFailuresFiltersRequest(role).then(response => {\r\n\t\tdispatch(onGetFailuresFilters(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetFailuresPointsVoice = (userId, role, city, dates, failureType, cfn1Level) => async (dispatch) => {\r\n\tawait GetFailuresPointsVoiceRequest(userId, role, 'voice', city, dates, failureType, cfn1Level).then(response => {\r\n\t\tdispatch(onGetFailuresPointsVoice(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetFailuresPointsPacket = (userId, role, city, dates, failureType, cfn1Level) => async (dispatch) => {\r\n\tawait GetFailuresPointsPacketRequest(userId, role, 'packet', city, dates, failureType, cfn1Level).then(response => {\r\n\t\tdispatch(onGetFailuresPointsPacket(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDriveTestsCities = (userId, userOperator) => async (dispatch) => {\r\n\tawait GetDriveTestsCitiesRequest(userId, userOperator).then(response => {\r\n\t\tdispatch(onGetDriveTestsCities(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDriveTestsDrives = (city) => async (dispatch) => {\r\n\tawait GetDriveTestsDrivesRequest(city).then(response => {\r\n\t\tdispatch(onGetDriveTestsDrives(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDriveTestsDates = (city, drive) => async (dispatch) => {\r\n\tawait GetDriveTestsDatesRequest(city, drive).then(response => {\r\n\t\tdispatch(onGetDriveTestsDates(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const SetSelectedDates = (selectedDates) => (dispatch) => {\r\n\tdispatch(onSetSelectedDates(selectedDates));\r\n};\r\n\r\nexport const GetDriveTest = (userId, tech, city, dates, kpi) => async (dispatch) => {\r\n\tawait GetDriveTestRequest(userId, tech, city, dates, kpi).then(response => {\r\n\t\tdispatch(onGetDriveTest(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology2g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '2G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology2g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology3g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '3G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology3g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology4g = (userId, bands, coordinates, selectedUtilizationDate, selectedTrafficPctAdd) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '4G', bands, coordinates, selectedUtilizationDate, selectedTrafficPctAdd).then(response => {\r\n\t\tdispatch(onGetTopology4g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology5g = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '5G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology5g(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const ToggleFilters = (openFilters) => (dispatch) => {\r\n\tdispatch(onToggleFilters(openFilters));\r\n};\r\n\r\nexport const ClearForm = () => (dispatch) => {\r\n\tdispatch(onClearForm());\r\n};\r\n\r\nexport const ToggleSummaryDialog = (visible) => (dispatch) => {\r\n\tdispatch(onToggleSummaryDialog(visible));\r\n};\r\n\r\nexport const ToggleCarriersColorsDialog = (visible) => (dispatch) => {\r\n\tdispatch(onToggleCarriersColorsDialog(visible));\r\n};\r\n\r\nexport const ToggleCarriersColorsPickerDialog = (visible, tableIdColorCode, currentColorCode) => (dispatch) => {\r\n\tdispatch(onToggleCarriersColorsPickerDialog(visible, tableIdColorCode, currentColorCode));\r\n};\r\n\r\n// Map Compare\r\nexport const SetSelectedTrafficPctAdd = (value) => (dispatch) => {\r\n\tdispatch(onSetSelectedTrafficPctAdd(value));\r\n};\r\n\r\nexport const SetSelectedUtilizationDateCompare = (value) => (dispatch) => {\r\n\tdispatch(onSetSelectedUtilizationDateCompare(value));\r\n};\r\n\r\nexport const GetFailuresFiltersSideCompare = (role) => async (dispatch) => {\r\n\tawait GetFailuresFiltersRequest(role).then(response => {\r\n\t\tdispatch(onGetFailuresFiltersSideCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetFailuresPointsVoiceCompare = (userId, role, city, dates, failureType, cfn1Level) => async (dispatch) => {\r\n\tawait GetFailuresPointsVoiceRequest(userId, role, 'voice', city, dates, failureType, cfn1Level).then(response => {\r\n\t\tdispatch(onGetFailuresPointsVoiceCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetFailuresPointsPacketCompare = (userId, role, city, dates, failureType, cfn1Level) => async (dispatch) => {\r\n\tawait GetFailuresPointsPacketRequest(userId, role, 'packet', city, dates, failureType, cfn1Level).then(response => {\r\n\t\tdispatch(onGetFailuresPointsPacketCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDriveTestsCitiesCompare = (userId, userOperator) => async (dispatch) => {\r\n\tawait GetDriveTestsCitiesRequest(userId, userOperator).then(response => {\r\n\t\tdispatch(onGetDriveTestsCitiesCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDriveTestsDrivesCompare = (city) => async (dispatch) => {\r\n\tawait GetDriveTestsDrivesRequest(city).then(response => {\r\n\t\tdispatch(onGetDriveTestsDrivesCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDriveTestsDatesCompare = (city, drive) => async (dispatch) => {\r\n\tawait GetDriveTestsDatesRequest(city, drive).then(response => {\r\n\t\tdispatch(onGetDriveTestsDatesCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const SetSelectedDatesCompare = (selectedDates) => (dispatch) => {\r\n\tdispatch(onSetSelectedDatesCompare(selectedDates));\r\n};\r\n\r\nexport const GetDriveTestCompare = (userId, tech, city, dates, kpi) => async (dispatch) => {\r\n\tawait GetDriveTestRequest(userId, tech, city, dates, kpi).then(response => {\r\n\t\tdispatch(onGetDriveTestCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology2gCompare = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '2G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology2gCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology3gCompare = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '3G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology3gCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology4gCompare = (userId, bands, coordinates, selectedUtilizationDateCompare, selectedTrafficPctAdd) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '4G', bands, coordinates, selectedUtilizationDateCompare, selectedTrafficPctAdd).then(response => {\r\n\t\tdispatch(onGetTopology4gCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetTopology5gCompare = (userId, bands, coordinates) => async (dispatch) => {\r\n\tawait GetTopologyRequest(userId, '5G', bands, coordinates).then(response => {\r\n\t\tdispatch(onGetTopology5gCompare(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\n// Global\r\nexport const GetTrafficPctAddOptions = (user) => async (dispatch) => {\r\n\tawait GetTrafficPctAddOptionsRequest(user).then(response => {\r\n\t\tdispatch(onGetTrafficPctAddOptions(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetUtilizationDates = (user) => async (dispatch) => {\r\n\tawait GetUtilizationDatesRequest(user).then(response => {\r\n\t\tdispatch(onGetUtilizationDates(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetSitesIds = () => async (dispatch) => {\r\n\tawait GetSitesIdsRequest().then(response => {\r\n\t\tdispatch(onGetSitesIds(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetSiteIdLocation = (siteId) => async (dispatch) => {\r\n\tawait GetSiteIdLocationRequest(siteId).then(response => {\r\n\t\tdispatch(onGetSiteIdLocation(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetCarriersColors = () => async (dispatch) => {\r\n\tawait GetCarriersColorsRequest().then(response => {\r\n\t\tdispatch(onGetCarriersColors(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const SaveCarrierColor = (userId, tableId, colorCode) => async (dispatch) => {\r\n\tawait SaveCarrierColorRequest(userId, tableId, colorCode).then(response => {\r\n\t\tdispatch(GetCarriersColors());\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n","import { useDispatch } from 'react-redux';\r\n\r\nimport {\r\n\tSET_FORM_STATE,\r\n\tRESET_FIELDS,\r\n\t// Map\r\n\tSET_SELECTED_UTILIZATION_DATE,\r\n\tGET_FAILURES_FILTERS,\r\n\tGET_FAILURES_VOICE,\r\n\tGET_FAILURES_PACKET,\r\n\tGET_DRIVETESTS_CITIES,\r\n\tGET_DRIVETESTS_DRIVES,\r\n\tGET_DRIVETESTS_DATES,\r\n\tSET_SELECTED_DATES,\r\n\tGET_DRIVETEST,\r\n\tGET_TOPOLOGY_2G,\r\n\tGET_TOPOLOGY_3G,\r\n\tGET_TOPOLOGY_4G,\r\n\tGET_TOPOLOGY_5G,\r\n\t// Map Compare\r\n\tSET_SELECTED_TRAFFIC_PCT_ADD,\r\n\tSET_SELECTED_UTILIZATION_DATE_COMPARE,\r\n\tGET_FAILURES_FILTERS_COMPARE,\r\n\tGET_FAILURES_VOICE_COMPARE,\r\n\tGET_FAILURES_PACKET_COMPARE,\r\n\tGET_DRIVETESTS_CITIES_COMPARE,\r\n\tGET_DRIVETESTS_DRIVES_COMPARE,\r\n\tGET_DRIVETESTS_DATES_COMPARE,\r\n\tSET_SELECTED_DATES_COMPARE,\r\n\tGET_DRIVETEST_COMPARE,\r\n\tGET_TOPOLOGY_2G_COMPARE,\r\n\tGET_TOPOLOGY_3G_COMPARE,\r\n\tGET_TOPOLOGY_4G_COMPARE,\r\n\tGET_TOPOLOGY_5G_COMPARE,\r\n\t// Global\r\n\tGET_TRAFFIC_PCT_ADD_OPTIONS,\r\n\tGET_UTILIZATION_DATES,\r\n\tTOGGLE_FILTERS,\r\n\tCLEAR_FORM,\r\n\tTOGGLE_CARRIERS_COLORS_DIALOG,\r\n\tGET_CARRIERS_COLORS,\r\n\tGET_SITES_IDS,\r\n\tGET_SITE_ID_LOCATION,\r\n\tTOGGLE_CARRIERS_COLORS_PICKER_DIALOG,\r\n} from '../actions/DualMapActionsGeneric';\r\n\r\nconst initialState = {\r\n\t// Map\r\n\tselectedUtilizationDate: '',\r\n\tfailuresFilters: [],\r\n\tfailuresVoice: [],\r\n\tfailuresPacket: [],\r\n\tcities: [],\r\n\tdrives: [],\r\n\tdates: [],\r\n\tselectedDates: [],\r\n\tdriveTest: [],\r\n\ttopology2gData: [],\r\n\ttopology3gData: [],\r\n\ttopology4gData: [],\r\n\ttopology5gData: [],\r\n\ttopologyLabelsData: [],\r\n\ttechBandVoice: [],\r\n\ttechBandPacket: [],\r\n\t// Map Compare\r\n\tselectedTrafficPctAdd: '0',\r\n\tselectedUtilizationDateCompare: '',\r\n\tfailuresFiltersSideCompare: [],\r\n\tfailuresVoiceCompare: [],\r\n\tfailuresPacketCompare: [],\r\n\tdrivesCompare: [],\r\n\tdatesCompare: [],\r\n\tselectedDatesCompare: [],\r\n\tdriveTestCompare: [],\r\n\ttopology2gDataCompare: [],\r\n\ttopology3gDataCompare: [],\r\n\ttopology4gDataCompare: [],\r\n\ttopology5gDataCompare: [],\r\n\ttopologyLabelsDataCompare: [],\r\n\ttechBandVoiceCompare: [],\r\n\ttechBandPacketCompare: [],\r\n\t// Global\r\n\t// colorChangesArray: [],\r\n\ttrafficPctAddOptions: [],\r\n\tutilizationDates: [],\r\n\topenFilters: false,\r\n\tcarriersColorsDialogVisibility: false,\r\n\tcarriersColorsPickerDialogVisibility: false,\r\n\tsitesIds: [],\r\n\tsiteIdLocation: [],\r\n\tcarriersColors: [],\r\n\tcurrentColorCode: 'white',\r\n\tformState: {\r\n\t\tisValid: false,\r\n\t\tvalues: {\r\n\t\t\t// Map\r\n\t\t\tselectedDate: '',\r\n\t\t\tselectedCity: '',\r\n\t\t\tselectedDrive: '',\r\n\t\t\tvoiceActive: false,\r\n\t\t\tpacketActive: false,\r\n\t\t\tfailureTypeVoice: 'all',\r\n\t\t\tfailureTypePacket: 'all',\r\n\t\t\tcfn1LevelVoice: 'all',\r\n\t\t\tcfn1LevelPacket: 'all',\r\n\t\t\tmapAutoZoom: true,\r\n\t\t\tmapCompare: false,\r\n\t\t\tmapFrameSize: '80vw',\r\n\t\t\tmapSync: true,\r\n\t\t\tmapFilters: true,\r\n\t\t\tmapSize: 10,\r\n\t\t\t// Map Compare\r\n\t\t\tselectedCityCompare: '',\r\n\t\t\tselectedDriveCompare: '',\r\n\t\t\tvoiceActiveCompare: false,\r\n\t\t\tpacketActiveCompare: false,\r\n\t\t\ttechBandVoiceActiveCompare: false,\r\n\t\t\ttechBandPacketActiveCompare: false,\r\n\t\t\tfailureTypeVoiceCompare: 'all',\r\n\t\t\tfailureTypePacketCompare: 'all',\r\n\t\t\tcfn1LevelVoiceCompare: 'all',\r\n\t\t\tcfn1LevelPacketCompare: 'all',\r\n\t\t},\r\n\t\ttouched: {},\r\n\t\terrors: {},\r\n\t},\r\n};\r\n\r\nconst dualMapReducerGeneric = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase SET_SELECTED_UTILIZATION_DATE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tselectedUtilizationDate: action.selectedUtilizationDate\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tcase SET_FORM_STATE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tformState: action.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase RESET_FIELDS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdrives: [],\r\n\t\t\t\t\t\t\tdates: [],\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// Map\r\n\t\t\t\t\tcase GET_FAILURES_FILTERS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tfailuresFilters: action.failuresFilters,\r\n\t\t\t\t\t\t\tformState: initialState.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_FAILURES_VOICE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tfailuresVoice: action.failuresVoice\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_FAILURES_PACKET: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tfailuresPacket: action.failuresPacket\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETESTS_CITIES: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tcities: action.cities\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETESTS_DRIVES: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdrives: action.drives\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETESTS_DATES: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdates: action.dates\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase SET_SELECTED_DATES: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tselectedDates: action.selectedDates\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETEST: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdriveTest: action.driveTest\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_2G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology2gData: action.topology2gData,\r\n\t\t\t\t\t\t\ttopologyLabelsData: action.topology2gData.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_3G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology3gData: action.topology3gData,\r\n\t\t\t\t\t\t\ttopologyLabelsData: action.topology3gData.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_4G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology4gData: action.topology4gData,\r\n\t\t\t\t\t\t\ttopologyLabelsData: action.topology4gData.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_5G: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology5gData: action.topology5gData,\r\n\t\t\t\t\t\t\ttopologyLabelsData: action.topology5gData.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// Map Compare\r\n\t\t\t\t\tcase SET_SELECTED_TRAFFIC_PCT_ADD: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tselectedTrafficPctAdd: action.selectedTrafficPctAdd\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase SET_SELECTED_UTILIZATION_DATE_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tselectedUtilizationDateCompare: action.selectedUtilizationDateCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_FAILURES_FILTERS_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tfailuresFiltersSideCompare: action.failuresFiltersSideCompare,\r\n\t\t\t\t\t\t\tformState: initialState.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_FAILURES_VOICE_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tfailuresVoiceCompare: action.failuresVoiceCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_FAILURES_PACKET_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tfailuresPacketCompare: action.failuresPacketCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETESTS_CITIES_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tcitiesCompare: action.citiesCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETESTS_DRIVES_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdrivesCompare: action.drivesCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETESTS_DATES_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdatesCompare: action.datesCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase SET_SELECTED_DATES_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tselectedDatesCompare: action.selectedDatesCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DRIVETEST_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tdriveTestCompare: action.driveTestCompare\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_2G_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology2gDataCompare: action.topology2gDataCompare,\r\n\t\t\t\t\t\t\ttopologyLabelsDataCompare: action.topology2gDataCompare.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_3G_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology3gDataCompare: action.topology3gDataCompare,\r\n\t\t\t\t\t\t\ttopologyLabelsDataCompare: action.topology3gDataCompare.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_4G_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology4gDataCompare: action.topology4gDataCompare,\r\n\t\t\t\t\t\t\ttopologyLabelsDataCompare: action.topology4gDataCompare.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_TOPOLOGY_5G_COMPARE: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttopology5gDataCompare: action.topology5gDataCompare,\r\n\t\t\t\t\t\t\ttopologyLabelsDataCompare: action.topology5gDataCompare.topologyLabelsDto\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// Global\r\n\t\t\t\t\tcase GET_TRAFFIC_PCT_ADD_OPTIONS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\ttrafficPctAddOptions: action.trafficPctAddOptions\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_UTILIZATION_DATES: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tutilizationDates: action.utilizationDates\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase TOGGLE_FILTERS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\topenFilters: action.openFilters\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase CLEAR_FORM: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tformState: initialState.formState\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_SITES_IDS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tsitesIds: action.sitesIds\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_SITE_ID_LOCATION: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tsiteIdLocation: action.siteIdLocation\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase TOGGLE_CARRIERS_COLORS_DIALOG: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tcarriersColorsDialogVisibility: action.visible\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase TOGGLE_CARRIERS_COLORS_PICKER_DIALOG: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tcarriersColorsPickerDialogVisibility: action.visible,\r\n\t\t\t\t\t\t\ttableIdColorCode: action.tableIdColorCode,\r\n\t\t\t\t\t\t\tcurrentColorCode: action.currentColorCode\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_CARRIERS_COLORS: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tcarriersColors: action.carriersColors\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default dualMapReducerGeneric;\r\n","import config from '../../../configuration/configuration.js';\r\nimport AxiosRequest from '../../../utils/AxiosRequest';\r\n\r\nexport const GetDatasetInfoRequest = (userId) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DatasetInfo/GetDatasetInfo`,\r\n\tparams: { userId }\r\n});\r\n\r\nexport const GetDatasetInfoEVORequest = () => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}DatasetInfo/GetDatasetInfoEVO`\r\n});\r\n","import { enqueueSnackbar } from 'actions';\r\nimport { GetDatasetInfoRequest, GetDatasetInfoEVORequest } from '../requests/HomeRequests';\r\n\r\nexport const GET_DATASET_INFO = 'GET_DATASET_INFO';\r\nexport const GET_DATASET_INFO_EVO = 'GET_DATASET_INFO_EVO';\r\n\r\nconst onGetDatasetInfo = (value) => ({\r\n\ttype: GET_DATASET_INFO,\r\n\tDatasetInfo: value\r\n});\r\n\r\nconst onGetDatasetInfoEVO = (value) => ({\r\n\ttype: GET_DATASET_INFO_EVO,\r\n\tDatasetInfoEVO: value\r\n});\r\n\r\nexport const GetDatasetInfo = (userId) => async (dispatch) => {\r\n\tawait GetDatasetInfoRequest(userId).then(response => {\r\n\t\tdispatch(onGetDatasetInfo(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n\r\nexport const GetDatasetInfoEVO = () => async (dispatch) => {\r\n\tawait GetDatasetInfoEVORequest().then(response => {\r\n\t\tdispatch(onGetDatasetInfoEVO(response.data));\r\n\t}).catch((error) => {\r\n\t\tif (error) {\r\n\t\t\tdispatch(enqueueSnackbar({ message: error.message, options: { variant: error.variant } }));\r\n\t\t}\r\n\t});\r\n};\r\n","import { GET_DATASET_INFO, GET_DATASET_INFO_EVO } from '../actions/HomeActions';\r\n\r\nconst initialState = {\r\n\tDatasetInfo: [],\r\n\tDatasetInfoEVO: []\r\n};\r\n\r\nconst homeReducer = (state = initialState, action) => {\r\n\tswitch (action.type) {\r\n\t\t\t\t\tcase GET_DATASET_INFO: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tDatasetInfo: action.DatasetInfo\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcase GET_DATASET_INFO_EVO: {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t...state,\r\n\t\t\t\t\t\t\tDatasetInfoEVO: action.DatasetInfoEVO\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\treturn state;\r\n\t\t\t\t\t}\r\n\t}\r\n};\r\n\r\nexport default homeReducer;\r\n","import { combineReducers } from 'redux';\r\n\r\nimport smartScoreReducer from 'views/EnergySmartScoreDashboard/reducers/EnergySmartScoreDashboardReducer';\r\nimport sessionReducer from './sessionReducer';\r\nimport notifierReducer from './notifierReducer';\r\nimport usersReducer from '../views/Management/reducers/UsersReducer';\r\nimport operatorsReducer from '../views/Management/reducers/OperatorsReducer';\r\nimport settingsReducer from '../views/Management/reducers/SettingsReducer';\r\nimport dashboardInspectReducer from '../views/Dashboard/reducers/DashboardInspectReducer';\r\nimport mapReducer from '../components/Map/reducers/MapReducer';\r\nimport mapCapacityReducer from '../components/MapCapacity/reducers/MapReducer';\r\nimport mapReducerGeneric from '../components/MapGeneric/reducers/MapReducerGeneric';\r\nimport mapCapacityReducerGeneric from '../components/MapCapacityGeneric/reducers/MapReducerGeneric';\r\nimport mapDriveTestsReducer from '../views/MapDriveTests/reducers/MapDriveTestsReducer';\r\nimport mapDriveTestsReducerGeneric from '../views/MapDriveTestsGeneric/reducers/MapDriveTestsReducerGeneric';\r\nimport datasetExportReducer from '../views/DatasetExport/reducers/DatasetExportReducer';\r\nimport STTMAlgorithmReducer from '../views/STTMAlgorithm/reducers/STTMAlgorithmReducer';\r\nimport STTMAlgorithmReducerGeneric from '../views/STTMAlgorithmGeneric/reducers/STTMAlgorithmReducerGeneric';\r\nimport dualMapReducer from '../views/DualMap/reducers/DualMapReducer';\r\nimport dualMapReducerGeneric from '../views/DualMapGeneric/reducers/DualMapReducerGeneric';\r\n\r\nimport homeReducer from '../views/Home/reducers/HomeReducer';\r\n\r\nconst rootReducer = combineReducers({\r\n\tsession: sessionReducer,\r\n\tusersReducer,\r\n\tnotifierReducer,\r\n\toperatorsReducer,\r\n\tsettingsReducer,\r\n\tdashboardInspectReducer,\r\n\tmapReducer,\r\n\tmapCapacityReducer,\r\n\tmapReducerGeneric,\r\n\tmapCapacityReducerGeneric,\r\n\tmapDriveTestsReducer,\r\n\tmapDriveTestsReducerGeneric,\r\n\tdatasetExportReducer,\r\n\thomeReducer,\r\n\tSTTMAlgorithmReducer,\r\n\tSTTMAlgorithmReducerGeneric,\r\n\tdualMapReducer,\r\n\tdualMapReducerGeneric,\r\n\tsmartScoreReducer\r\n});\r\n\r\nexport default rootReducer;\r\n","import React, { Fragment, useState, useRef } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tButton,\r\n\tCheckbox,\r\n\tFormControlLabel,\r\n\tMenu,\r\n\tMenuItem,\r\n} from '@mui/material';\r\nimport ArrowDropDownIcon from '@mui/icons-material/ArrowDropDown';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tmenuItem: {\r\n\t\tpadding: 0,\r\n\t},\r\n\tformControlLabel: {\r\n\t\tpadding: theme.spacing(0.5, 2),\r\n\t\twidth: '100%',\r\n\t\tmargin: 0,\r\n\t},\r\n}));\r\n\r\nconst MultiSelect = (props) => {\r\n\tconst { label, options, value, onChange } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst anchorRef = useRef(null);\r\n\r\n\tconst [openMenu, setOpenMenu] = useState(false);\r\n\r\n\tconst handleMenuOpen = () => {\r\n\t\tsetOpenMenu(true);\r\n\t};\r\n\r\n\tconst handleMenuClose = () => {\r\n\t\tsetOpenMenu(false);\r\n\t};\r\n\r\n\tconst handleOptionToggle = (event) => {\r\n\t\tlet newValue = [...value];\r\n\r\n\t\tif (event.target.checked) {\r\n\t\t\tnewValue.push(event.target.value);\r\n\t\t} else {\r\n\t\t\tnewValue = newValue.filter((item) => item !== event.target.value);\r\n\t\t}\r\n\r\n\t\t// eslint-disable-next-line no-unused-expressions\r\n\t\tonChange && onChange(newValue);\r\n\t};\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t{options.map((option) => (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t -1}\r\n\t\t\t\t\t\t\t\t\tcolor=\"primary\"\r\n\t\t\t\t\t\t\t\t\tonClick={handleOptionToggle}\r\n\t\t\t\t\t\t\t\t\tvalue={option}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\tlabel={option}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\r\n\t\t\t\t))}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nMultiSelect.propTypes = {\r\n\tlabel: PropTypes.string.isRequired,\r\n\tonChange: PropTypes.func,\r\n\toptions: PropTypes.array.isRequired,\r\n\tvalue: PropTypes.array.isRequired,\r\n};\r\n\r\nexport default MultiSelect;\r\n","import React, { Fragment, useRef, useState, memo } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { useDispatch } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport _ from 'underscore';\r\nimport {\r\n\tListItemIcon,\r\n\tListItemText,\r\n\tTooltip,\r\n\tIconButton,\r\n\tMenu,\r\n\tMenuItem,\r\n} from '@mui/material';\r\nimport MoreIcon from '@mui/icons-material/MoreVert';\r\nimport FullscreenIcon from '@mui/icons-material/Fullscreen';\r\nimport FileCopyIcon from '@mui/icons-material/FileCopy';\r\nimport PrintIcon from '@mui/icons-material/Print';\r\nimport PictureAsPdfIcon from '@mui/icons-material/PictureAsPdf';\r\nimport AchiveIcon from '@mui/icons-material/ArchiveOutlined';\r\n\r\nconst useStyles = makeStyles(() => ({}));\r\n\r\nconst OptionsButton = (props) => {\r\n\tconst { exportPdf, fullScreen } = props;\r\n\tconst classes = useStyles();\r\n\tconst moreRef = useRef(null);\r\n\tconst [openMenu, setOpenMenu] = useState(false);\r\n\tconst dispatch = useDispatch();\r\n\r\n\tconst handleMenuOpen = () => {\r\n\t\tsetOpenMenu(true);\r\n\t};\r\n\r\n\tconst handleMenuClose = () => {\r\n\t\tsetOpenMenu(false);\r\n\t};\r\n\r\n\tconst _exportPdf = () => {\r\n\t\tsetOpenMenu(false);\r\n\t\texportPdf();\r\n\t};\r\n\r\n\tconst _fullScreen = () => {\r\n\t\tsetOpenMenu(false);\r\n\t\tfullScreen();\r\n\t};\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t{exportPdf && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nOptionsButton.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\texportPdf: PropTypes.func,\r\n\tfullScreen: PropTypes.func\r\n};\r\n\r\nexport default memo(OptionsButton);\r\n","import React, { useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Tabs, Tab, Divider, colors } from '@mui/material';\r\nimport { FullScreen, useFullScreenHandle } from 'react-full-screen';\r\nimport { Header, Page, PowerBIDashboard } from 'components';\r\nimport TableauDashboard, { ShowExportPDFDialog } from '../../../../components/TableauDashboard/TableauDashboard.js';\r\nimport OptionsButton from './components/OptionsButton/OptionsButton.js';\r\nimport { DashboardInspect as DashboardInspectAction } from '../../actions/DashboardInspectActions.js';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tmaxWidth: '100%',\r\n\t\tmargin: '0 auto',\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\ttabs: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tdivider: {\r\n\t\tbackgroundColor: colors.grey[300],\r\n\t},\r\n\talert: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tcontent: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n}));\r\n\r\nconst DashboardInspect = (props) => {\r\n\tconst { match, pageTitle, headerHidden, module } = props;\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst handle = useFullScreenHandle();\r\n\tconst user = useSelector(state => state.session.user);\r\n\tconst dashboard = useSelector(state => state.dashboardInspectReducer.dashboard);\r\n\tconst { children } = props;\r\n\r\n\tconst _getDashboard = () => {\r\n\t\tdispatch(DashboardInspectAction(match.params.id, user.id));\r\n\t};\r\n\r\n\tconst _exportPdf = () => {\r\n\t\tShowExportPDFDialog();\r\n\t};\r\n\r\n\tconst _fullScreen = () => {\r\n\t\thandle.enter();\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\t_getDashboard();\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{dashboard.type === 'Tableau' ? (\r\n\t\t\t\t}\r\n\t\t\t\t/>\r\n\t\t\t) : null}\r\n\t\t\t{dashboard.type === 'PowerBI' ? (\r\n\t\t\t\t}\r\n\t\t\t\t/>\r\n\t\t\t) : null}\r\n\t\t\t
{children ?? null}
\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t{dashboard.type === 'Tableau' ? : null}\r\n\t\t\t\t\t{dashboard.type === 'PowerBI' ? : null}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nDashboardInspect.propTypes = {\r\n\tmatch: PropTypes.object.isRequired,\r\n\tpageTitle: PropTypes.string,\r\n\theaderHidden: PropTypes.bool,\r\n\tchildren: PropTypes.node,\r\n\tmodule: PropTypes.string,\r\n};\r\n\r\nexport default DashboardInspect;\r\n","import React, { useEffect, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Tabs, Tab, Divider, colors, Paper, Button, FormControl, InputLabel, Select, OutlinedInput, MenuItem, Checkbox, ListItemText, Box, Chip, Typography } from '@mui/material';\r\nimport { FullScreen, useFullScreenHandle } from 'react-full-screen';\r\nimport { Header, Page, PowerBIDashboard } from 'components';\r\nimport { MultiSelect } from 'views/ProjectList/components/Filter/components';\r\nimport { SetExportSelection, ExportTables } from './actions/EnergySmartScoreDashboardActions';\r\nimport DashboardInspect from '../Dashboard/components/Inspect/DashboardInspect';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tmaxWidth: '100%',\r\n\t\tmargin: '0 auto',\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\ttabs: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tdivider: {\r\n\t\tbackgroundColor: colors.grey[300],\r\n\t},\r\n\talert: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tcontent: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tspaced: {\r\n\t\tmarginTop: theme.spacing(3)\r\n\t},\r\n\thint: {\r\n\t\tmarginTop: theme.spacing(1)\r\n\t},\r\n\tpaper: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t\tmaxWidth: '100%',\r\n\t\tmargin: '0 auto',\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\texportBtn: {\r\n\t\tmarginLeft: theme.spacing(3)\r\n\t}\r\n}));\r\n\r\nconst EnergySmartScoreDashboard = (props) => {\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst exportOptions = ['MODEL_EFF', 'MODEL_EI', 'MODEL_SE', 'MODEL_TOPO'];\r\n\tconst [selectedExports, setSelectedExports] = useState([]);\r\n\tconst { match, headerHidden, module, pageTitle, project } = props;\r\n\r\n\tconst exportTables = () => {\r\n\t\tif (selectedExports.length > 0) {\r\n\t\t\tdispatch(ExportTables(selectedExports, project));\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\tExport tables\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tExport\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t{selectedExports.length}\r\n\t\t\t\t\t{' '}\r\n\t\t\t\t\ttables selected.\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nEnergySmartScoreDashboard.propTypes = {\r\n\tmatch: PropTypes.object.isRequired,\r\n\tpageTitle: PropTypes.string,\r\n\tproject: PropTypes.string,\r\n\theaderHidden: PropTypes.bool,\r\n\tmodule: PropTypes.string\r\n};\r\n\r\nexport default EnergySmartScoreDashboard;\r\n","import React from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { AppBar, Toolbar } from '@mui/material';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n\troot: {\r\n\t\tboxShadow: 'none',\r\n\t},\r\n}));\r\n\r\nconst Topbar = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\"Logo\"\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nTopbar.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default Topbar;\r\n","import React, { Fragment, Suspense } from 'react';\r\nimport { renderRoutes } from 'react-router-config';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { LinearProgress } from '@mui/material';\r\n\r\nimport { Topbar } from './components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\tcontent: {\r\n\t\theight: '100%',\r\n\t\tpaddingTop: 56,\r\n\t\t[theme.breakpoints.up('sm')]: {\r\n\t\t\tpaddingTop: 64,\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst Auth = (props) => {\r\n\tconst { route } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\t
\r\n\t\t\t\t}>\r\n\t\t\t\t\t{renderRoutes(route.routes)}\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nAuth.propTypes = {\r\n\troute: PropTypes.object,\r\n};\r\n\r\nexport default Auth;\r\n","import React, { Suspense } from 'react';\r\nimport { renderRoutes } from 'react-router-config';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { LinearProgress } from '@mui/material';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n\troot: {\r\n\t\theight: '100%',\r\n\t},\r\n}));\r\n\r\nconst Error = (props) => {\r\n\tconst { route } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t}>\r\n\t\t\t\t{renderRoutes(route.routes)}\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nError.propTypes = {\r\n\troute: PropTypes.object,\r\n};\r\n\r\nexport default Error;\r\n","import React, { useEffect, useRef } from 'react';\r\nimport { useDispatch } from 'react-redux';\r\nimport {\r\n\tHubConnectionBuilder,\r\n} from '@aspnet/signalr'; // version 1.0.4\r\n\r\n// action for user authentication and receiving the access_token\r\nimport * as actions from '../../actions';\r\nimport config from '../../configuration/configuration.js';\r\n\r\nconst startSignalRConnection = (connection, origin) => {\r\n\tif (origin !== undefined) {\r\n\t\tconnection.start()\r\n\t\t\t.then(() => {\r\n\t\t\t})\r\n\t\t\t.catch(err => {\r\n\t\t\t});\r\n\t}\r\n};\r\n\r\nconst NotificationHub = () => {\r\n\tconst connection = useRef(null);\r\n\tconst dispatch = useDispatch();\r\n\tconst enqueueSnackbar = (...args) => dispatch(actions.enqueueSnackbar(...args));\r\n\r\n\tconst NotificationRecieved = (info) => {\r\n\t\tenqueueSnackbar({\r\n\t\t\tmessage: info.title,\r\n\t\t\toptions: {\r\n\t\t\t\tkey: new Date().getTime() + Math.random(),\r\n\t\t\t\tvariant: info.variant,\r\n\t\t\t},\r\n\t\t});\r\n\t\tdispatch(actions.FetchNotifications());\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\t// register signalR after the user logged in\r\n\t\tif (connection.current === null && localStorage.getItem(config.TOKEN_KEY)) {\r\n\t\t\tconst urlRoot = config.API_URL;\r\n\t\t\tconst connectionHub = `${urlRoot}notificationhub?token=${localStorage.getItem(config.TOKEN_KEY)}`;\r\n\r\n\t\t\t// create the connection instance\r\n\t\t\tconnection.current = new HubConnectionBuilder()\r\n\t\t\t\t.withUrl(connectionHub)\r\n\t\t\t\t.build();\r\n\r\n\t\t\t// event handlers, you can use these to dispatch actions to update your Redux store\r\n\t\t\tconnection.current.on('NewNotification', NotificationRecieved);\r\n\r\n\t\t\t// re-establish the connection if connection dropped\r\n\t\t\tconnection.current.onclose((error) => setTimeout(startSignalRConnection(connection.current, error), 5000));\r\n\r\n\t\t\tdispatch(actions.FetchNotifications());\r\n\t\t\tstartSignalRConnection(connection.current, 'setup');\r\n\t\t}\r\n\r\n\t\treturn (() => {\r\n\t\t\tif (connection.current) {\r\n\t\t\t\tconnection.current.stop();\r\n\t\t\t}\r\n\t\t});\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\tnull\r\n\t);\r\n};\r\n\r\nexport default NotificationHub;\r\n","/* eslint-disable react/no-multi-comp */\r\n/* eslint-disable react/display-name */\r\nimport SupervisorAccountIcon from '@mui/icons-material/SupervisorAccount';\r\nimport HomeIcon from '@mui/icons-material/HomeOutlined';\r\nimport SettingsIcon from '@mui/icons-material/SettingsOutlined';\r\nimport ViewModuleIcon from '@mui/icons-material/ViewModule';\r\nimport DesktopMacIcon from '@mui/icons-material/DesktopMac';\r\nimport SettingsInputAntennaIcon from '@mui/icons-material/SettingsInputAntenna';\r\nimport TableChartIcon from '@mui/icons-material/TableChart';\r\nimport BoltIcon from '@mui/icons-material/Bolt';\r\nimport MemoryIcon from '@mui/icons-material/Memory';\r\n\r\nimport config from '../../../../configuration/configuration.js';\r\n\r\nexport default [\r\n\t{\r\n\t\ttitle: '',\r\n\t\tpages: [\r\n\t\t\t{\r\n\t\t\t\ttitle: 'Home',\r\n\t\t\t\thref: '/home',\r\n\t\t\t\ticon: HomeIcon,\r\n\t\t\t\t// roles: ['Administrator', ...]\r\n\t\t\t\t// projects: ['Operations'],\r\n\t\t\t},\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\ttitle: 'Modules',\r\n\t\tpages: [\r\n\t\t\t{\r\n\t\t\t\ttitle: 'Sites Location',\r\n\t\t\t\thref: '/modules/sitesLocation',\r\n\t\t\t\troles: ['Administrator', 'Manager', 'CelfinetHQ'],\r\n\t\t\t\ticon: SettingsInputAntennaIcon\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: 'Sites Location Generic',\r\n\t\t\t\thref: '/modules/sitesLocationGeneric',\r\n\t\t\t\ticon: SettingsInputAntennaIcon,\r\n\t\t\t\troles: ['Administrator', 'Manager', 'Client', 'CelfinetOS'],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: 'Dataset Stats',\r\n\t\t\t\thref: '/datasetStats',\r\n\t\t\t\troles: ['Administrator', 'Manager', 'CelfinetHQ'],\r\n\t\t\t\ticon: ViewModuleIcon,\r\n\t\t\t\tchildren: [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'PM Counters',\r\n\t\t\t\t\t\thref: '/datasetStats/dataStatistics_Counters'\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'PM KPI',\r\n\t\t\t\t\t\thref: '/datasetStats/dataStatistics_KPI',\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'PM Energy',\r\n\t\t\t\t\t\thref: '/datasetStats/dataStatistics_PMEnergy',\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'CM',\r\n\t\t\t\t\t\thref: '/datasetStats/dataStatistics_CM',\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'Energy Consumption',\r\n\t\t\t\t\t\thref: '/datasetStats/CanopyPM_EnergyConsumptionDashboard',\r\n\t\t\t\t\t},\r\n\t\t\t\t],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: 'Dataset Stats Generic',\r\n\t\t\t\thref: '/datasetStatsGeneric',\r\n\t\t\t\troles: ['Administrator', 'Manager', 'Client', 'CelfinetOS'],\r\n\t\t\t\ticon: ViewModuleIcon,\r\n\t\t\t\tchildren: [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'Energy Consumption Generic',\r\n\t\t\t\t\t\thref: '/datasetStatsGeneric/CanopyPM_EnergyConsumptionDashboard_GenericData',\r\n\t\t\t\t\t},\r\n\t\t\t\t],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: 'Algorithms',\r\n\t\t\t\thref: '/algorithms',\r\n\t\t\t\ticon: MemoryIcon,\r\n\t\t\t\tchildren: [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'STTM Dashboard',\r\n\t\t\t\t\t\thref: '/algorithms/STTM_Algorithm',\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'SRCA Dashboard',\r\n\t\t\t\t\t\thref: '/algorithms/SRCA_Algorithm',\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'SPFM Dashboard',\r\n\t\t\t\t\t\thref: '/algorithms/SPFM_Algorithm',\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'Capacity Management',\r\n\t\t\t\t\t\thref: '/algorithms/CapacityManagement',\r\n\t\t\t\t\t}\r\n\t\t\t\t],\r\n\t\t\t\troles: ['Administrator', 'Manager', 'CelfinetHQ'],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: 'Algorithms Generic',\r\n\t\t\t\thref: '/algorithmsGeneric',\r\n\t\t\t\ticon: MemoryIcon,\r\n\t\t\t\tchildren: [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'STTM Dashboard',\r\n\t\t\t\t\t\thref: '/algorithmsGeneric/STTM_Algorithm_GenericData',\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'SRCA Dashboard',\r\n\t\t\t\t\t\thref: '/algorithmsGeneric/SRCA_Algorithm_GenericData',\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'SPFM Dashboard',\r\n\t\t\t\t\t\thref: '/algorithmsGeneric/SPFM_Algorithm_GenericData',\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'Capacity Management',\r\n\t\t\t\t\t\thref: '/algorithmsGeneric/CapacityManagement_GenericData',\r\n\t\t\t\t\t}\r\n\t\t\t\t],\r\n\t\t\t\troles: ['Administrator', 'Manager', 'Client', 'CelfinetOS'],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: 'Dataset Export',\r\n\t\t\t\thref: '/datasetExport',\r\n\t\t\t\ticon: TableChartIcon,\r\n\t\t\t\troles: ['Administrator', 'Manager', 'CelfinetHQ', 'Client', 'CelfinetOS'],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: 'Energy Watchdog',\r\n\t\t\t\thref: '/energyWatchdog',\r\n\t\t\t\ticon: BoltIcon,\r\n\t\t\t\tchildren: [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'Canopy',\r\n\t\t\t\t\t\thref: '/energyWatchdog/Canopy',\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'EW',\r\n\t\t\t\t\t\thref: '/energyWatchdog/EW',\r\n\t\t\t\t\t}\r\n\t\t\t\t],\r\n\t\t\t\troles: ['Administrator', 'Manager', 'CelfinetHQ'], // , 'Client', 'CelfinetOS'\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: 'Energy Watchdog Gen.',\r\n\t\t\t\thref: '/energyWatchdogGeneric',\r\n\t\t\t\ticon: BoltIcon,\r\n\t\t\t\tchildren: [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'Canopy (Generic)',\r\n\t\t\t\t\t\thref: '/energyWatchdogGeneric/Canopy',\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'EW (Generic)',\r\n\t\t\t\t\t\thref: '/energyWatchdogGeneric/EW',\r\n\t\t\t\t\t}\r\n\t\t\t\t],\r\n\t\t\t\troles: ['Administrator', 'Manager', 'CelfinetHQ'], // , 'Client', 'CelfinetOS'\r\n\t\t\t},\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\troles: ['Administrator', 'Manager'],\r\n\t\ttitle: 'Management',\r\n\t\tpages: [\r\n\t\t\t{\r\n\t\t\t\ttitle: 'Manage',\r\n\t\t\t\thref: '/management',\r\n\t\t\t\troles: ['Administrator', 'Manager'],\r\n\t\t\t\ticon: SupervisorAccountIcon,\r\n\t\t\t\tchildren: [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'Operators',\r\n\t\t\t\t\t\thref: '/management/operators',\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle: 'Users',\r\n\t\t\t\t\t\thref: '/management/users',\r\n\t\t\t\t\t}\r\n\t\t\t\t],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: 'Hangfire',\r\n\t\t\t\thref: `${config.API_URL}hangfire?access_token={token}`,\r\n\t\t\t\ttarget: '_blank',\r\n\t\t\t\troles: ['Administrator'],\r\n\t\t\t\ticon: DesktopMacIcon\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: 'Settings',\r\n\t\t\t\thref: '/management/settings',\r\n\t\t\t\troles: ['Administrator', 'Manager'],\r\n\t\t\t\ticon: SettingsIcon\r\n\t\t\t},\r\n\t\t],\r\n\t},\r\n];\r\n","import React, { Fragment, useEffect } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport _ from 'underscore';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { useSelector } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Drawer, Divider, Paper, Avatar, Typography, Hidden } from '@mui/material';\r\n\r\nimport FolderIcon from '@mui/icons-material/FolderOutlined';\r\n\r\nimport useRouter from 'utils/useRouter';\r\nimport getInitials from 'utils/getInitials';\r\nimport { Navigation } from 'components';\r\nimport config from 'configuration/configuration.js';\r\n\r\nimport navigationConfig from './navigationConfig';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\theight: '100%',\r\n\t\toverflowY: 'auto',\r\n\t},\r\n\tcontent: {\r\n\t\tpadding: theme.spacing(2),\r\n\t},\r\n\tprofile: {\r\n\t\tdisplay: 'flex',\r\n\t\tflexDirection: 'column',\r\n\t\talignItems: 'center',\r\n\t\tminHeight: 'fit-content',\r\n\t},\r\n\tavatar: {\r\n\t\twidth: 60,\r\n\t\theight: 60,\r\n\t},\r\n\tname: {\r\n\t\tmarginTop: theme.spacing(1),\r\n\t},\r\n\tdivider: {\r\n\t\tmarginTop: theme.spacing(2),\r\n\t},\r\n\tnavigation: {\r\n\t\tmarginTop: theme.spacing(2),\r\n\t},\r\n}));\r\n\r\nconst NavBar = (props) => {\r\n\tconst { openMobile, onMobileClose, className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst router = useRouter();\r\n\tconst user = useSelector((state) => state.session.user);\r\n\r\n\tuseEffect(() => {\r\n\t\tif (openMobile) {\r\n\t\t\t// eslint-disable-next-line no-unused-expressions\r\n\t\t\tonMobileClose && onMobileClose();\r\n\t\t}\r\n\r\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\r\n\t}, [router.location.pathname]);\r\n\r\n\tif (user.projects) {\r\n\t\tconst projectsMenu = {\r\n\t\t\ttitle: 'Pages',\r\n\t\t\tpages: [\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: 'Projects',\r\n\t\t\t\t\thref: '/projects',\r\n\t\t\t\t\ticon: FolderIcon,\r\n\t\t\t\t\tchildren: user.projects.map(item => ({\r\n\t\t\t\t\t\ttitle: item,\r\n\t\t\t\t\t\thref: '/',\r\n\t\t\t\t\t})),\r\n\t\t\t\t},\r\n\t\t\t]\r\n\t\t};\r\n\r\n\t\t// replace hangfire token\r\n\t\tconst management = navigationConfig.find(item => item.title === 'Management');\r\n\t\tconst hangfire = management.pages.find(item => item.title === 'Hangfire');\r\n\t\thangfire.href = hangfire.href.replace('{token}', localStorage.getItem(config.TOKEN_KEY));\r\n\r\n\t\tconst hangfireindex = management.pages.findIndex(item => item.title === 'Hangfire');\r\n\t\tmanagement.pages.splice(hangfireindex, 1, hangfire);\r\n\r\n\t\tconst managementIndex = navigationConfig.findIndex(item => item.title === 'Management');\r\n\t\tnavigationConfig.splice(managementIndex, 1, management);\r\n\r\n\t\t// projects menu\r\n\t\tconst index = navigationConfig.findIndex(item => item.title === 'Modules');\r\n\t\tif (index !== 1) {\r\n\t\t\tnavigationConfig.splice(1, 0, projectsMenu);\r\n\t\t}\r\n\t}\r\n\r\n\tconst navbarContent = (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t{getInitials(user.firstname)}\r\n\t\t\t\t\t{' '}\r\n\t\t\t\t\t{getInitials(user.lastname)}\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{user.firstname}\r\n\t\t\t\t\t{' '}\r\n\t\t\t\t\t{user.lastname}\r\n\t\t\t\t\r\n\t\t\t\t{user.operator}\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{navbarContent}\r\n\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{navbarContent}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nNavBar.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tonMobileClose: PropTypes.func,\r\n\topenMobile: PropTypes.bool,\r\n};\r\n\r\nexport default NavBar;\r\n","/* eslint-disable no-unused-vars */\r\nimport React, { useState, useRef, useEffect } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { useSelector, useDispatch, shallowEqual } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tAppBar,\r\n\tBadge,\r\n\tButton,\r\n\tIconButton,\r\n\tToolbar,\r\n\tHidden,\r\n\tInput,\r\n\tcolors,\r\n\tPopper,\r\n\tPaper,\r\n\tList,\r\n\tListItem,\r\n\tListItemIcon,\r\n\tListItemText,\r\n\tClickAwayListener,\r\n} from '@mui/material';\r\nimport LockIcon from '@mui/icons-material/LockOutlined';\r\nimport NotificationsIcon from '@mui/icons-material/NotificationsOutlined';\r\nimport InputIcon from '@mui/icons-material/Input';\r\nimport MenuIcon from '@mui/icons-material/Menu';\r\nimport SearchIcon from '@mui/icons-material/Search';\r\n\r\nimport useRouter from 'utils/useRouter';\r\nimport { PricingModal, NotificationsPopover } from 'components';\r\nimport * as actions from 'actions';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tboxShadow: 'none',\r\n\t},\r\n\tflexGrow: {\r\n\t\tflexGrow: 1,\r\n\t},\r\n\tsearch: {\r\n\t\tbackgroundColor: 'rgba(255,255,255, 0.1)',\r\n\t\tborderRadius: 4,\r\n\t\tflexBasis: 300,\r\n\t\theight: 36,\r\n\t\tpadding: theme.spacing(0, 2),\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tsearchIcon: {\r\n\t\tmarginRight: theme.spacing(2),\r\n\t\tcolor: 'inherit',\r\n\t},\r\n\tsearchInput: {\r\n\t\tflexGrow: 1,\r\n\t\tcolor: 'inherit',\r\n\t\t'& input::placeholder': {\r\n\t\t\topacity: 1,\r\n\t\t\tcolor: 'inherit',\r\n\t\t},\r\n\t},\r\n\tsearchPopper: {\r\n\t\tzIndex: theme.zIndex.appBar + 100,\r\n\t},\r\n\tsearchPopperContent: {\r\n\t\tmarginTop: theme.spacing(1),\r\n\t},\r\n\ttrialButton: {\r\n\t\tmarginLeft: theme.spacing(2),\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n\ttrialIcon: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tnotificationsButton: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n\tnotificationsBadge: {\r\n\t\tbackgroundColor: colors.orange[600],\r\n\t},\r\n\tlogoutButton: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n\tlogoutIcon: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n}));\r\n\r\nconst TopBar = (props) => {\r\n\tconst { onOpenNavBarMobile, className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst { history } = useRouter();\r\n\tconst searchRef = useRef(null);\r\n\tconst dispatch = useDispatch();\r\n\tconst notificationsRef = useRef(null);\r\n\tconst [pricingModalOpen, setPricingModalOpen] = useState(false);\r\n\tconst [openSearchPopover, setOpenSearchPopover] = useState(false);\r\n\tconst [searchValue, setSearchValue] = useState('');\r\n\tconst [openNotifications, setOpenNotifications] = useState(false);\r\n\r\n\tconst notifications = useSelector((state) => state.session.notifications, shallowEqual);\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\tconst handleLogout = () => {\r\n\t\tdispatch(actions.logout());\r\n\t\thistory.push('/auth/login');\r\n\t};\r\n\r\n\tconst handlePricingOpen = () => {\r\n\t\tsetPricingModalOpen(true);\r\n\t};\r\n\r\n\tconst handlePricingClose = () => {\r\n\t\tsetPricingModalOpen(false);\r\n\t};\r\n\r\n\tconst handleNotificationsOpen = () => {\r\n\t\tsetOpenNotifications(true);\r\n\t};\r\n\r\n\tconst handleNotificationsClose = () => {\r\n\t\tsetOpenNotifications(false);\r\n\t};\r\n\r\n\tconst handleSearchChange = (event) => {\r\n\t\tsetSearchValue(event.target.value);\r\n\r\n\t\tif (event.target.value) {\r\n\t\t\tif (!openSearchPopover) {\r\n\t\t\t\tsetOpenSearchPopover(true);\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tsetOpenSearchPopover(false);\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleSearchPopverClose = () => {\r\n\t\tsetOpenSearchPopover(false);\r\n\t};\r\n\r\n\tconst popularSearches = [\r\n\t\t'Devias React Dashboard',\r\n\t\t'Devias',\r\n\t\t'Admin Pannel',\r\n\t\t'Project',\r\n\t\t'Pages',\r\n\t];\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\"Logo\"\r\n\t\t\t\t\r\n\t\t\t\t{/*\r\n\t\t\t\t\r\n\t\t\t\t\t

 CANOPY - Cognitive and Automated Network Operations for Present and Beyond

\r\n\t\t\t\t
\r\n\t\t\t\t*/}\r\n\r\n\t\t\t\t
\r\n\t\t\t\t{/* \r\n\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{popularSearches.map((search) => (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
*/}\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t !i.readed).length}\r\n\t\t\t\t\t\t\tclasses={{ badge: classes.notificationsBadge }}\r\n\t\t\t\t\t\t\tvariant=\"dot\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tSign out\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nTopBar.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tonOpenNavBarMobile: PropTypes.func,\r\n};\r\n\r\nexport default TopBar;\r\n","import axios from 'axios';\r\n\r\nconst instance = axios.create();\r\n\r\nexport default instance;\r\n","import React, { Suspense, useState, useEffect } from 'react';\r\nimport { renderRoutes } from 'react-router-config';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { LinearProgress } from '@mui/material';\r\n\r\nimport NotificationHub from 'components/NotificationHub/NotificationHub.js';\r\nimport { NavBar, TopBar, /* ChatBar */ } from './components';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n\troot: {\r\n\t\theight: '100%',\r\n\t\twidth: '100%',\r\n\t\tdisplay: 'flex',\r\n\t\tflexDirection: 'column',\r\n\t\toverflow: 'hidden',\r\n\t},\r\n\ttopBar: {\r\n\t\tzIndex: 2,\r\n\t\tposition: 'relative',\r\n\t},\r\n\tcontainer: {\r\n\t\tdisplay: 'flex',\r\n\t\tflex: '1 1 auto',\r\n\t\toverflow: 'hidden',\r\n\t},\r\n\tnavBar: {\r\n\t\tzIndex: 3,\r\n\t\twidth: 256,\r\n\t\tminWidth: 256,\r\n\t\tflex: '0 0 auto',\r\n\t},\r\n\tcontent: {\r\n\t\toverflowY: 'auto',\r\n\t\tflex: '1 1 auto',\r\n\t},\r\n}));\r\n\r\nconst Dashboard = (props) => {\r\n\tconst { route } = props;\r\n\tconst classes = useStyles();\r\n\r\n\tconst [openNavBarMobile, setOpenNavBarMobile] = useState(false);\r\n\r\n\tconst handleNavBarMobileOpen = () => {\r\n\t\tsetOpenNavBarMobile(true);\r\n\t};\r\n\r\n\tconst handleNavBarMobileClose = () => {\r\n\t\tsetOpenNavBarMobile(false);\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t}>\r\n\t\t\t\t\t\t{renderRoutes(route.routes)}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t{/* */}\r\n\t\t\t\r\n\t\t
\r\n\r\n\t);\r\n};\r\n\r\nDashboard.propTypes = {\r\n\troute: PropTypes.object,\r\n};\r\n\r\nexport default Dashboard;\r\n","import React, { Fragment, useState, useEffect } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport clsx from 'clsx';\r\nimport moment from 'moment';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tAvatar,\r\n\tDrawer,\r\n\tList,\r\n\tListItem,\r\n\tListItemAvatar,\r\n\tListItemText,\r\n\tListSubheader,\r\n\tTypography,\r\n\tFab,\r\n\tBadge,\r\n} from '@mui/material';\r\nimport PeopleIcon from '@mui/icons-material/PeopleOutline';\r\n\r\nimport axios from 'utils/axios';\r\nimport { StatusBullet } from 'components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\tdrawer: {\r\n\t\twidth: 280,\r\n\t},\r\n\troot: {\r\n\t\tbackgroundColor: theme.palette.white,\r\n\t},\r\n\tlist: {\r\n\t\tpadding: theme.spacing(1, 3),\r\n\t},\r\n\tlistItemText: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tlastActivity: {\r\n\t\twhiteSpace: 'nowrap',\r\n\t},\r\n\tfab: {\r\n\t\tposition: 'fixed',\r\n\t\tbottom: 32,\r\n\t\tright: 32,\r\n\t\tzIndex: theme.zIndex.drawer - 100,\r\n\t},\r\n}));\r\n\r\nconst ChatBar = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst [open, setOpen] = useState(false);\r\n\tconst [data, setData] = useState(null);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tconst fetchData = () => {\r\n\t\t\taxios.get('/api/chat/activity').then((response) => {\r\n\t\t\t\tif (mounted) {\r\n\t\t\t\t\tsetData(response.data);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tfetchData();\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\tconst handleOpen = () => {\r\n\t\tsetOpen(true);\r\n\t};\r\n\r\n\tconst handleClose = () => {\r\n\t\tsetOpen(false);\r\n\t};\r\n\r\n\tif (!data) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\tconst onlineConnections = data.connections.filter(\r\n\t\t(connection) => connection.active\r\n\t).length;\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t{data.groups.map((group) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{group.name}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t{data.connections\r\n\t\t\t\t\t\t\t\t.filter(\r\n\t\t\t\t\t\t\t\t\t(connection) => group.id === connection.group\r\n\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t.map((connection) => (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{connection.name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t{connection.active ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{moment(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tconnection.lastActivity\r\n\t\t\t\t\t\t\t\t\t\t\t\t).fromNow()}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nChatBar.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default ChatBar;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { Doughnut } from 'react-chartjs-2';\r\nimport { makeStyles, useTheme } from '@mui/styles';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n\troot: {\r\n\t\tposition: 'relative',\r\n\t},\r\n}));\r\n\r\nconst Chart = (props) => {\r\n\tconst { data: dataProp, className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst theme = useTheme();\r\n\r\n\tconst data = {\r\n\t\tdatasets: [\r\n\t\t\t{\r\n\t\t\t\tdata: [],\r\n\t\t\t\tbackgroundColor: [],\r\n\t\t\t\tborderWidth: 8,\r\n\t\t\t\tborderColor: theme.palette.white,\r\n\t\t\t\thoverBorderColor: theme.palette.white,\r\n\t\t\t},\r\n\t\t],\r\n\t\tlabels: [],\r\n\t};\r\n\r\n\t// eslint-disable-next-line no-restricted-syntax\r\n\tfor (const item of dataProp) {\r\n\t\tdata.datasets[0].data.push(item.value);\r\n\t\tdata.datasets[0].backgroundColor.push(item.color);\r\n\t\tdata.labels.push(item.label);\r\n\t}\r\n\r\n\tconst options = {\r\n\t\tresponsive: true,\r\n\t\tmaintainAspectRatio: false,\r\n\t\tanimation: false,\r\n\t\tcutoutPercentage: 80,\r\n\t\tlegend: {\r\n\t\t\tdisplay: false,\r\n\t\t},\r\n\t\tlayout: {\r\n\t\t\tpadding: 0,\r\n\t\t},\r\n\t\ttooltips: {\r\n\t\t\tenabled: true,\r\n\t\t\tmode: 'index',\r\n\t\t\tintersect: false,\r\n\t\t\tcaretSize: 10,\r\n\t\t\tyPadding: 20,\r\n\t\t\txPadding: 20,\r\n\t\t\tborderWidth: 1,\r\n\t\t\tborderColor: theme.palette.divider,\r\n\t\t\tbackgroundColor: theme.palette.white,\r\n\t\t\ttitleFontColor: theme.palette.text.primary,\r\n\t\t\tbodyFontColor: theme.palette.text.secondary,\r\n\t\t\tfooterFontColor: theme.palette.text.secondary,\r\n\t\t\tcallbacks: {\r\n\t\t\t\tlabel(tooltipItem, items) {\r\n\t\t\t\t\tconst label = items.labels[tooltipItem.index];\r\n\t\t\t\t\tconst value = items.datasets[0].data[tooltipItem.index];\r\n\r\n\t\t\t\t\treturn `${label}: ${value}%`;\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t},\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nChart.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tdata: PropTypes.array.isRequired,\r\n};\r\n\r\nexport default Chart;\r\n","import React, { useState, useEffect } from 'react';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tCard,\r\n\tCardHeader,\r\n\tCardContent,\r\n\tDivider,\r\n\tTypography,\r\n} from '@mui/material';\r\n\r\nimport axios from 'utils/axios';\r\nimport { GenericMoreButton } from 'components';\r\nimport { Chart } from './components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t\t'&:last-child': {\r\n\t\t\tpaddingBottom: 0,\r\n\t\t},\r\n\t},\r\n\tchartContainer: {\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\tchart: {\r\n\t\theight: 281,\r\n\t},\r\n\tstatsContainer: {\r\n\t\tdisplay: 'flex',\r\n\t},\r\n\tstatsItem: {\r\n\t\tflexGrow: 1,\r\n\t\tdisplay: 'flex',\r\n\t\tflexDirection: 'column',\r\n\t\tjustifyContent: 'center',\r\n\t\tpadding: theme.spacing(3, 2),\r\n\t\t'&:not(:last-of-type)': {\r\n\t\t\tborderRight: `1px solid ${theme.palette.divider}`,\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst EarningsSegmentation = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst [earnings, setEarnings] = useState([]);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tconst fetchEarnings = () => {\r\n\t\t\taxios.get('/api/dashboard/earnings').then((response) => {\r\n\t\t\t\tif (mounted) {\r\n\t\t\t\t\tsetEarnings(response.data.earnings);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tfetchEarnings();\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t}\r\n\t\t\t\ttitle=\"Earnings Segmentation\"\r\n\t\t\t/>\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t{earnings.map((earning) => (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{earning.label}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{earning.value}\r\n\t\t\t\t\t\t\t\t%\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t))}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nEarningsSegmentation.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default EarningsSegmentation;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { Bar } from 'react-chartjs-2';\r\nimport { makeStyles, useTheme } from '@mui/styles';\r\nimport { colors } from '@mui/material';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n\troot: {\r\n\t\tposition: 'relative',\r\n\t},\r\n}));\r\n\r\nconst Chart = (props) => {\r\n\tconst { data: dataProp, labels, className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst theme = useTheme();\r\n\r\n\tconst data = {\r\n\t\tdatasets: [\r\n\t\t\t{\r\n\t\t\t\tlabel: 'This year',\r\n\t\t\t\tbackgroundColor: theme.palette.primary.main,\r\n\t\t\t\tdata: dataProp.thisYear,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tlabel: 'Last year',\r\n\t\t\t\tbackgroundColor: colors.grey[200],\r\n\t\t\t\tdata: dataProp.lastYear,\r\n\t\t\t},\r\n\t\t],\r\n\t\tlabels,\r\n\t};\r\n\r\n\tconst options = {\r\n\t\tresponsive: true,\r\n\t\tmaintainAspectRatio: false,\r\n\t\tanimation: false,\r\n\t\tcornerRadius: 20,\r\n\t\tlegend: {\r\n\t\t\tdisplay: false,\r\n\t\t},\r\n\t\tlayout: {\r\n\t\t\tpadding: 0,\r\n\t\t},\r\n\t\tscales: {\r\n\t\t\txAxes: [\r\n\t\t\t\t{\r\n\t\t\t\t\tbarThickness: 12,\r\n\t\t\t\t\tmaxBarThickness: 10,\r\n\t\t\t\t\tbarPercentage: 0.5,\r\n\t\t\t\t\tcategoryPercentage: 0.5,\r\n\t\t\t\t\tgridLines: {\r\n\t\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\t\tdrawBorder: false,\r\n\t\t\t\t\t},\r\n\t\t\t\t\tticks: {\r\n\t\t\t\t\t\tpadding: 20,\r\n\t\t\t\t\t\tfontColor: theme.palette.text.secondary,\r\n\t\t\t\t\t},\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tyAxes: [\r\n\t\t\t\t{\r\n\t\t\t\t\tgridLines: {\r\n\t\t\t\t\t\tborderDash: [2],\r\n\t\t\t\t\t\tborderDashOffset: [2],\r\n\t\t\t\t\t\tcolor: theme.palette.divider,\r\n\t\t\t\t\t\tdrawBorder: false,\r\n\t\t\t\t\t\tzeroLineBorderDash: [2],\r\n\t\t\t\t\t\tzeroLineBorderDashOffset: [2],\r\n\t\t\t\t\t\tzeroLineColor: theme.palette.divider,\r\n\t\t\t\t\t},\r\n\t\t\t\t\tticks: {\r\n\t\t\t\t\t\tpadding: 20,\r\n\t\t\t\t\t\tfontColor: theme.palette.text.secondary,\r\n\t\t\t\t\t\tbeginAtZero: true,\r\n\t\t\t\t\t\tmin: 0,\r\n\t\t\t\t\t\tmaxTicksLimit: 5,\r\n\t\t\t\t\t\tcallback: (value) => (value > 0 ? `${value}K` : value),\r\n\t\t\t\t\t},\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t},\r\n\t\ttooltips: {\r\n\t\t\tenabled: true,\r\n\t\t\tmode: 'index',\r\n\t\t\tintersect: false,\r\n\t\t\tcaretSize: 10,\r\n\t\t\tyPadding: 20,\r\n\t\t\txPadding: 20,\r\n\t\t\tborderWidth: 1,\r\n\t\t\tborderColor: theme.palette.divider,\r\n\t\t\tbackgroundColor: theme.palette.white,\r\n\t\t\ttitleFontColor: theme.palette.text.primary,\r\n\t\t\tbodyFontColor: theme.palette.text.secondary,\r\n\t\t\tfooterFontColor: theme.palette.text.secondary,\r\n\t\t\tcallbacks: {\r\n\t\t\t\ttitle: () => {},\r\n\t\t\t\tlabel: (tooltipItem) => {\r\n\t\t\t\t\tlet label = `This year: ${tooltipItem.yLabel}`;\r\n\r\n\t\t\t\t\tif (tooltipItem.yLabel > 0) {\r\n\t\t\t\t\t\tlabel += 'K';\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn label;\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t},\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nChart.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tdata: PropTypes.object.isRequired,\r\n\tlabels: PropTypes.array.isRequired,\r\n};\r\n\r\nexport default Chart;\r\n","import React from 'react';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport PerfectScrollbar from 'react-perfect-scrollbar';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Card, CardHeader, CardContent, Divider } from '@mui/material';\r\n\r\nimport { GenericMoreButton } from 'components';\r\nimport { Chart } from './components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\theight: '100%',\r\n\t},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t},\r\n\tinner: {\r\n\t\tminWidth: 700,\r\n\t},\r\n\tchart: {\r\n\t\tpadding: theme.spacing(4, 2, 0, 2),\r\n\t\theight: 400,\r\n\t},\r\n}));\r\n\r\nconst FinancialStats = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst data = {\r\n\t\tthisYear: [18, 16, 5, 8, 3, 14, 14, 16, 17, 19, 18, 20],\r\n\t\tlastYear: [12, 11, 4, 6, 2, 9, 9, 10, 11, 12, 13, 13],\r\n\t};\r\n\r\n\tconst labels = [\r\n\t\t'Jan',\r\n\t\t'Feb',\r\n\t\t'Mar',\r\n\t\t'Apr',\r\n\t\t'May',\r\n\t\t'Jun',\r\n\t\t'Jul',\r\n\t\t'Aug',\r\n\t\t'Sep',\r\n\t\t'Oct',\r\n\t\t'Nov',\r\n\t\t'Dec',\r\n\t];\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t}\r\n\t\t\t\ttitle=\"Financial Stats\"\r\n\t\t\t/>\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nFinancialStats.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default FinancialStats;\r\n","import React, { useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport moment from 'moment';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Typography, Grid, Button, ButtonGroup } from '@mui/material';\r\nimport { DatePicker } from '@mui/lab';\r\nimport CalendarTodayIcon from '@mui/icons-material/CalendarTodayOutlined';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tdates: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tcalendarTodayIcon: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n}));\r\n\r\nconst Header = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst [startDate, setStartDate] = useState(moment().subtract(7, 'days'));\r\n\tconst [endDate, setEndDate] = useState(moment());\r\n\tconst [selectEdge, setSelectEdge] = useState(null);\r\n\tconst [calendarDate, setCalendarDate] = useState(moment());\r\n\r\n\tconst handleCalendarOpen = (edge) => {\r\n\t\tsetSelectEdge(edge);\r\n\t};\r\n\r\n\tconst handleCalendarChange = (date) => {\r\n\t\tsetCalendarDate(date);\r\n\t};\r\n\r\n\tconst handleCalendarClose = () => {\r\n\t\tsetCalendarDate(moment());\r\n\t\tsetSelectEdge(null);\r\n\t};\r\n\r\n\tconst handleCalendarAccept = (date) => {\r\n\t\tsetCalendarDate(moment());\r\n\r\n\t\tif (selectEdge === 'start') {\r\n\t\t\tsetStartDate(date);\r\n\r\n\t\t\tif (moment(date).isAfter(endDate)) {\r\n\t\t\t\tsetEndDate(date);\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tsetEndDate(date);\r\n\r\n\t\t\tif (moment(date).isBefore(startDate)) {\r\n\t\t\t\tsetStartDate(date);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tsetSelectEdge(null);\r\n\t};\r\n\r\n\tconst open = Boolean(selectEdge);\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tAnalytics\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tFinance Overview\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nHeader.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nHeader.defaultProps = {};\r\n\r\nexport default Header;\r\n","import React from 'react';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\twidth: 56,\r\n\t\theight: 56,\r\n\t},\r\n\tcircle1: {\r\n\t\tstroke: 'rgba(0,0,0,0.05)',\r\n\t\tfill: 'none',\r\n\t\tstrokeWidth: 4,\r\n\t},\r\n\tcircle2: {\r\n\t\tstroke: theme.palette.primary.main,\r\n\t\tfill: 'none',\r\n\t\tstrokeWidth: 4,\r\n\t\tanimation: '$progress 1s ease-out forwards',\r\n\t},\r\n\t'@keyframes progress': {\r\n\t\t'0%': {\r\n\t\t\tstrokeDasharray: '0 100',\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst CircularProgress = (props) => {\r\n\tconst { value, className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nCircularProgress.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tvalue: PropTypes.number.isRequired,\r\n};\r\n\r\nexport default CircularProgress;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport clsx from 'clsx';\r\nimport PerfectScrollbar from 'react-perfect-scrollbar';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tCard,\r\n\tCardActions,\r\n\tCardHeader,\r\n\tCardContent,\r\n\tDivider,\r\n\tTable,\r\n\tTableRow,\r\n\tTableCell,\r\n\tTypography,\r\n\tButton,\r\n\tcolors,\r\n\tTableBody,\r\n} from '@mui/material';\r\nimport ArrowForwardIcon from '@mui/icons-material/ArrowForward';\r\n\r\nimport axios from 'utils/axios';\r\nimport { GenericMoreButton } from 'components';\r\nimport CircularProgress from './components/CircularProgress';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t\t'&:last-child': {\r\n\t\t\tpaddingBottom: 0,\r\n\t\t},\r\n\t},\r\n\tinner: {\r\n\t\tminWidth: 700,\r\n\t},\r\n\tdetails: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\timage: {\r\n\t\tmarginRight: theme.spacing(2),\r\n\t\tflexShrink: 0,\r\n\t\theight: 56,\r\n\t\twidth: 56,\r\n\t},\r\n\tsubscriptions: {\r\n\t\tfontWeight: theme.typography.fontWeightMedium,\r\n\t},\r\n\tprice: {\r\n\t\twhiteSpace: 'nowrap',\r\n\t},\r\n\tvalue: {\r\n\t\tcolor: colors.green[600],\r\n\t\tfontWeight: theme.typography.fontWeightMedium,\r\n\t},\r\n\tconversion: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tconversionStats: {\r\n\t\twhiteSpace: 'nowrap',\r\n\t\tmarginRight: theme.spacing(2),\r\n\t},\r\n\tactions: {\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tarrowForwardIcon: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n}));\r\n\r\nconst MostProfitableProducts = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst [products, setProducts] = useState([]);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tconst fetchProducts = () => {\r\n\t\t\taxios.get('/api/dashboard/profitable-products').then((response) => {\r\n\t\t\t\tif (mounted) {\r\n\t\t\t\t\tsetProducts(response.data.products);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tfetchProducts();\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t}\r\n\t\t\t\ttitle=\"Most Profitable Products\"\r\n\t\t\t/>\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{products.map((product) => (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{product.name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tproduct.subscriptions\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tActive\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tPrice\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{product.currency}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{product.price}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\tmonthly\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{product.progress}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t%\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tConversion Rate\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\tSee all\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nMostProfitableProducts.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default MostProfitableProducts;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Card, Typography, Grid, colors } from '@mui/material';\r\n\r\nimport { Label } from 'components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t},\r\n\titem: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\ttextAlign: 'center',\r\n\t\t[theme.breakpoints.up('md')]: {\r\n\t\t\t'&:not(:last-of-type)': {\r\n\t\t\t\tborderRight: `1px solid ${theme.palette.divider}`,\r\n\t\t\t},\r\n\t\t},\r\n\t\t[theme.breakpoints.down('md')]: {\r\n\t\t\t'&:not(:last-of-type)': {\r\n\t\t\t\tborderBottom: `1px solid ${theme.palette.divider}`,\r\n\t\t\t},\r\n\t\t},\r\n\t},\r\n\tvalueContainer: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tjustifyContent: 'center',\r\n\t},\r\n\tlabel: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n}));\r\n\r\nconst Overview = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst data = {\r\n\t\tincome: '854,355.00',\r\n\t\texpanses: '373,250.50',\r\n\t\tprofit: '123,532.00',\r\n\t\tsubscriptions: '26,000',\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tTotal Income\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t$\r\n\t\t\t\t\t\t\t{data.income}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t+25%\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tTotal Expanses\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t$\r\n\t\t\t\t\t\t\t{data.expanses}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t+12%\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tNet Profit\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{data.profit}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t-20%\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tActive Subscriptions\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{data.subscriptions}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nOverview.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default Overview;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tAvatar,\r\n\tButton,\r\n\tCard,\r\n\tCardActions,\r\n\tCardContent,\r\n\tCardHeader,\r\n\tDivider,\r\n\tList,\r\n\tListItem,\r\n\tListItemAvatar,\r\n\tListItemText,\r\n\tTypography,\r\n} from '@mui/material';\r\nimport ArrowForwardIcon from '@mui/icons-material/ArrowForward';\r\n\r\nimport axios from 'utils/axios';\r\nimport { GenericMoreButton } from 'components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tdisplay: 'flex',\r\n\t\tflexDirection: 'column',\r\n\t},\r\n\tcontent: {\r\n\t\tflexGrow: 1,\r\n\t\tpadding: 0,\r\n\t},\r\n\tavatar: {\r\n\t\tfontSize: 14,\r\n\t\tfontWeight: theme.typography.fontWeightBold,\r\n\t\tcolor: theme.palette.white,\r\n\t},\r\n\tactions: {\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tarrowForwardIcon: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n}));\r\n\r\nconst TopReferrals = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst [referrals, setReferrals] = useState([]);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tconst fetchReferrals = () => {\r\n\t\t\taxios.get('/api/dashboard/top-referrals').then((response) => {\r\n\t\t\t\tif (mounted) {\r\n\t\t\t\t\tsetReferrals(response.data.referrals);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tfetchReferrals();\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t} title=\"Top Referrals\" />\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{referrals.map((referral, i) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{referral.initials}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{referral.value}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\tSee all\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nTopReferrals.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default TopReferrals;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport clsx from 'clsx';\r\nimport moment from 'moment';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tCard,\r\n\tCardHeader,\r\n\tCardContent,\r\n\tDivider,\r\n\tList,\r\n\tListItem,\r\n\tListItemAvatar,\r\n\tListItemText,\r\n\tAvatar,\r\n\tTypography,\r\n\tLink,\r\n} from '@mui/material';\r\n\r\nimport axios from 'utils/axios';\r\nimport getInitials from 'utils/getInitials';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tstatsContainer: {\r\n\t\tdisplay: 'flex',\r\n\t},\r\n\tstatsItem: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\tflexGrow: 1,\r\n\t\t'&:first-of-type': {\r\n\t\t\tborderRight: `1px solid ${theme.palette.divider}`,\r\n\t\t},\r\n\t},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t},\r\n\tdate: {\r\n\t\twhiteSpace: 'nowrap',\r\n\t},\r\n}));\r\n\r\nconst CustomerActivity = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst [customers, setCustomers] = useState([]);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tconst fetchCustomers = () => {\r\n\t\t\taxios.get('/api/dashboard/customer-activity').then((response) => {\r\n\t\t\t\tif (mounted) {\r\n\t\t\t\t\tsetCustomers(response.data.customers);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tfetchCustomers();\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tRegistered\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t15,245\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tOnline\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t357\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{customers.map((customer, i) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{getInitials(customer.author.name)}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{customer.author.name}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\tsecondary={(\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{customer.description}\r\n\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t|\r\n\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t{customer.type === 'payment' && (\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tSee invoice\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{moment(customer.created_at).fromNow()}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nCustomerActivity.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default CustomerActivity;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport clsx from 'clsx';\r\nimport PerfectScrollbar from 'react-perfect-scrollbar';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tButton,\r\n\tCard,\r\n\tCardActions,\r\n\tCardContent,\r\n\tCardHeader,\r\n\tDivider,\r\n\tTable,\r\n\tTableBody,\r\n\tTableCell,\r\n\tTableHead,\r\n\tTableRow,\r\n\tTableSortLabel,\r\n\tTooltip,\r\n\tcolors,\r\n} from '@mui/material';\r\nimport ArrowForwardIcon from '@mui/icons-material/ArrowForward';\r\n\r\nimport axios from 'utils/axios';\r\nimport { Label, GenericMoreButton } from 'components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t},\r\n\tinner: {\r\n\t\tminWidth: 700,\r\n\t},\r\n\tprogressContainer: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'center',\r\n\t},\r\n\tactions: {\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tarrowForwardIcon: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n}));\r\n\r\nconst labelColors = {\r\n\tcomplete: colors.green[600],\r\n\tpending: colors.orange[600],\r\n\trejected: colors.red[600],\r\n};\r\n\r\nconst LatestOrders = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst [orders, setOrders] = useState(null);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tconst fetchOrders = () => {\r\n\t\t\taxios.get('/api/dashboard/latest-orders').then((response) => {\r\n\t\t\t\tif (mounted) {\r\n\t\t\t\t\tsetOrders(response.data.orders);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tfetchOrders();\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t} title=\"Latest Orders\" />\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{orders && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tDate\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tCustomer\r\n\t\t\t\t\t\t\t\t\t\tItems\r\n\t\t\t\t\t\t\t\t\t\tTotal\r\n\t\t\t\t\t\t\t\t\t\tStatus\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tActions\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{orders.map((order) => (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{order.ref}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{order.customer.name}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{order.items}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{order.currency}\r\n\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t{order.value}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{order.status}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tView\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\tSee all\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nLatestOrders.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default LatestOrders;\r\n","import React from 'react';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Grid } from '@mui/material';\r\n\r\nimport { Page } from 'components';\r\nimport {\r\n\tHeader,\r\n\tOverview,\r\n\tFinancialStats,\r\n\tEarningsSegmentation,\r\n\tTopReferrals,\r\n\tMostProfitableProducts,\r\n\tCustomerActivity,\r\n\tLatestOrders,\r\n} from './components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\tcontainer: {\r\n\t\t'& > *': {\r\n\t\t\theight: '100%',\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst DashboardAnalytics = () => {\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default DashboardAnalytics;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Typography } from '@mui/material';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tdates: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tstartDateButton: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tendDateButton: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n\tcalendarTodayIcon: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n}));\r\n\r\nconst Header = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst data = {\r\n\t\tname: 'Shen Zhi',\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\tHome\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\tGood Morning,\r\n\t\t\t\t{' '}\r\n\t\t\t\t{data.name}\r\n\t\t\t\r\n\t\t\tHere's what's happening\r\n\t\t
\r\n\t);\r\n};\r\n\r\nHeader.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nHeader.defaultProps = {};\r\n\r\nexport default Header;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport clsx from 'clsx';\r\nimport PerfectScrollbar from 'react-perfect-scrollbar';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tAvatar,\r\n\tCard,\r\n\tCardActions,\r\n\tCardContent,\r\n\tCardHeader,\r\n\tDivider,\r\n\tButton,\r\n\tTable,\r\n\tTableBody,\r\n\tTableCell,\r\n\tTableHead,\r\n\tTableRow,\r\n\tTableSortLabel,\r\n\tTooltip,\r\n} from '@mui/material';\r\nimport ArrowForwardIcon from '@mui/icons-material/ArrowForward';\r\n\r\nimport axios from 'utils/axios';\r\nimport getInitials from 'utils/getInitials';\r\nimport { Label, GenericMoreButton } from 'components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t},\r\n\tinner: {\r\n\t\tminWidth: 900,\r\n\t},\r\n\tauthor: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tavatar: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\ttags: {\r\n\t\t'& > * + *': {\r\n\t\t\tmarginLeft: theme.spacing(1),\r\n\t\t},\r\n\t},\r\n\tactions: {\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tarrowForwardIcon: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n}));\r\n\r\nconst LatestProjects = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst [projects, setProjects] = useState([]);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tconst fetchProjects = () => {\r\n\t\t\taxios.get('/api/dashboard/latest-projects').then((response) => {\r\n\t\t\t\tif (mounted) {\r\n\t\t\t\t\tsetProjects(response.data.projects);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tfetchProjects();\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t}\r\n\t\t\t\ttitle=\"Latest projects\"\r\n\t\t\t/>\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tName\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tOwner\r\n\t\t\t\t\t\t\t\t\tAmount\r\n\t\t\t\t\t\t\t\t\tTags\r\n\t\t\t\t\t\t\t\t\tActions\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{projects.map((project) => (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{project.title}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{getInitials(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tproject.author.name\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{project.author.name}\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{project.currency}\r\n\t\t\t\t\t\t\t\t\t\t\t{project.price}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t{project.tags.map((tag) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{tag.text}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tView\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\tSee all\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nLatestProjects.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default LatestProjects;\r\n","import React from 'react';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Card, Typography, Avatar, colors } from '@mui/material';\r\nimport FolderOpenIcon from '@mui/icons-material/FolderOpenOutlined';\r\n\r\nimport { Label } from 'components';\r\nimport gradients from 'utils/gradients';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tjustifyContent: 'space-between',\r\n\t},\r\n\tdetails: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tflexWrap: 'wrap',\r\n\t},\r\n\tlabel: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n\tavatar: {\r\n\t\tbackgroundImage: gradients.blue,\r\n\t\theight: 48,\r\n\t\twidth: 48,\r\n\t},\r\n}));\r\n\r\nconst NewProjects = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst data = {\r\n\t\tvalue: '12',\r\n\t\tdifference: '-10%',\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\tNew projects\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t{data.value}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{data.difference}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nNewProjects.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default NewProjects;\r\n","import React from 'react';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Card, Typography, Avatar } from '@mui/material';\r\nimport AttachMoneyIcon from '@mui/icons-material/AttachMoney';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: theme.palette.primary.main,\r\n\t\tpadding: theme.spacing(3),\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tjustifyContent: 'space-between',\r\n\t},\r\n\tdetails: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tflexWrap: 'wrap',\r\n\t},\r\n\tavatar: {\r\n\t\tbackgroundColor: theme.palette.white,\r\n\t\tcolor: theme.palette.primary.main,\r\n\t\theight: 48,\r\n\t\twidth: 48,\r\n\t},\r\n}));\r\n\r\nconst RoiPerCustomer = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst data = {\r\n\t\tvalue: '25.50',\r\n\t\tcurrency: '$',\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\tRoi per customer\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{data.currency}\r\n\t\t\t\t\t\t{data.value}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nRoiPerCustomer.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default RoiPerCustomer;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport moment from 'moment';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tListItem,\r\n\tListItemIcon,\r\n\tListItemText,\r\n\tIconButton,\r\n\tTooltip,\r\n\tcolors,\r\n} from '@mui/material';\r\nimport OpenInNewIcon from '@mui/icons-material/OpenInNew';\r\n\r\nimport { StackAvatars } from 'components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcritical: {\r\n\t\t'& $indicator': {\r\n\t\t\tborderColor: colors.red[600],\r\n\t\t},\r\n\t},\r\n\tindicator: {\r\n\t\theight: 12,\r\n\t\twidth: 12,\r\n\t\tborderWidth: 4,\r\n\t\tborderStyle: 'solid',\r\n\t\tborderColor: colors.grey[100],\r\n\t\tborderRadius: '50%',\r\n\t},\r\n\tviewButton: {\r\n\t\tmarginLeft: theme.spacing(2),\r\n\t},\r\n}));\r\n\r\nconst TaskItem = (props) => {\r\n\tconst { task, className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tlet deadline = 'N/A';\r\n\tlet critical = false;\r\n\r\n\tif (task.deadline) {\r\n\t\tconst now = moment();\r\n\t\tconst deadlineMoment = moment(task.deadline);\r\n\r\n\t\tif (\r\n\t\t\tdeadlineMoment.isAfter(now)\r\n\t\t\t&& deadlineMoment.diff(now, 'day') < 3\r\n\t\t) {\r\n\t\t\tdeadline = `${deadlineMoment.diff(now, 'day')} days remaining`;\r\n\t\t\tcritical = true;\r\n\t\t}\r\n\t}\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nTaskItem.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\ttask: PropTypes.object.isRequired,\r\n};\r\n\r\nexport default TaskItem;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport PerfectScrollbar from 'react-perfect-scrollbar';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tCard,\r\n\tCardActions,\r\n\tCardHeader,\r\n\tCardContent,\r\n\tList,\r\n\tButton,\r\n\tDivider,\r\n} from '@mui/material';\r\nimport ArrowForwardIcon from '@mui/icons-material/ArrowForward';\r\n\r\nimport axios from 'utils/axios';\r\nimport { GenericMoreButton } from 'components';\r\nimport { TaskItem } from './components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t},\r\n\tinner: {\r\n\t\tminWidth: 400,\r\n\t},\r\n\tactions: {\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tarrowForwardIcon: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n}));\r\n\r\nconst TeamTasks = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\tconst classes = useStyles();\r\n\tconst [tasks, setTasks] = useState([]);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tconst fetchTasks = () => {\r\n\t\t\taxios.get('/api/tasks').then((response) => {\r\n\t\t\t\tif (mounted) {\r\n\t\t\t\t\tsetTasks(response.data.tasks);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tfetchTasks();\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t} title=\"Team Tasks\" />\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{tasks.map((task, i) => (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\tSee all\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nTeamTasks.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default TeamTasks;\r\n","import React from 'react';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Card, Typography, Avatar, colors } from '@mui/material';\r\nimport AttachMoneyIcon from '@mui/icons-material/AttachMoney';\r\n\r\nimport { Label } from 'components';\r\nimport gradients from 'utils/gradients';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tjustifyContent: 'space-between',\r\n\t},\r\n\tdetails: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tflexWrap: 'wrap',\r\n\t},\r\n\tlabel: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n\tavatar: {\r\n\t\tbackgroundImage: gradients.green,\r\n\t\theight: 48,\r\n\t\twidth: 48,\r\n\t},\r\n}));\r\n\r\nconst TodaysMoney = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst data = {\r\n\t\tvalue: '24,000',\r\n\t\tcurrency: '$',\r\n\t\tdifference: '+4.5%',\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\tTodays money\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{data.currency}\r\n\t\t\t\t\t\t{data.value}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{data.difference}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nTodaysMoney.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default TodaysMoney;\r\n","import React from 'react';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Card, Typography, Avatar, LinearProgress } from '@mui/material';\r\nimport DoneIcon from '@mui/icons-material/Done';\r\n\r\nimport gradients from 'utils/gradients';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tjustifyContent: 'space-between',\r\n\t},\r\n\tcontent: {\r\n\t\tflexGrow: 1,\r\n\t},\r\n\tdetails: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tflexWrap: 'wrap',\r\n\t},\r\n\tprogress: {\r\n\t\tmargin: theme.spacing(0, 1),\r\n\t\tflexGrow: 1,\r\n\t},\r\n\tavatar: {\r\n\t\tbackgroundImage: gradients.orange,\r\n\t\theight: 48,\r\n\t\twidth: 48,\r\n\t},\r\n}));\r\n\r\nconst SystemHealth = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst data = {\r\n\t\tvalue: 97,\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\tSystem Health\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{data.value}\r\n\t\t\t\t\t\t%\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nSystemHealth.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default SystemHealth;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { Bar } from 'react-chartjs-2';\r\nimport { makeStyles, useTheme } from '@mui/styles';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n\troot: {\r\n\t\tposition: 'relative',\r\n\t},\r\n}));\r\n\r\nconst Chart = (props) => {\r\n\tconst { data: dataProp, labels, className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst theme = useTheme();\r\n\r\n\tconst data = {\r\n\t\tdatasets: [\r\n\t\t\t{\r\n\t\t\t\tlabel: 'Views',\r\n\t\t\t\tbackgroundColor: 'rgba(255,255,255,0.4)',\r\n\t\t\t\tdata: dataProp,\r\n\t\t\t},\r\n\t\t],\r\n\t\tlabels,\r\n\t};\r\n\r\n\tconst options = {\r\n\t\tresponsive: true,\r\n\t\tmaintainAspectRatio: false,\r\n\t\tanimation: false,\r\n\t\tcornerRadius: 20,\r\n\t\tlegend: {\r\n\t\t\tdisplay: false,\r\n\t\t},\r\n\t\tlayout: {\r\n\t\t\tpadding: 0,\r\n\t\t},\r\n\t\tscales: {\r\n\t\t\txAxes: [\r\n\t\t\t\t{\r\n\t\t\t\t\tstacked: false,\r\n\t\t\t\t\tbarThickness: 12,\r\n\t\t\t\t\tmaxBarThickness: 10,\r\n\t\t\t\t\tbarPercentage: 0.9,\r\n\t\t\t\t\tcategoryPercentage: 1,\r\n\t\t\t\t\tgridLines: {\r\n\t\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\t\tdrawBorder: false,\r\n\t\t\t\t\t},\r\n\t\t\t\t\tticks: {\r\n\t\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\t},\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tyAxes: [\r\n\t\t\t\t{\r\n\t\t\t\t\tstacked: true,\r\n\t\t\t\t\tgridLines: {\r\n\t\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\t\tdrawBorder: false,\r\n\t\t\t\t\t},\r\n\t\t\t\t\tticks: {\r\n\t\t\t\t\t\tbeginAtZero: true,\r\n\t\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\t},\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t},\r\n\t\ttooltips: {\r\n\t\t\tenabled: true,\r\n\t\t\tmode: 'index',\r\n\t\t\tintersect: false,\r\n\t\t\tcaretSize: 10,\r\n\t\t\tyPadding: 20,\r\n\t\t\txPadding: 20,\r\n\t\t\tborderWidth: 1,\r\n\t\t\tborderColor: theme.palette.divider,\r\n\t\t\tbackgroundColor: theme.palette.white,\r\n\t\t\ttitleFontColor: theme.palette.text.primary,\r\n\t\t\tbodyFontColor: theme.palette.text.secondary,\r\n\t\t\tfooterFontColor: theme.palette.text.secondary,\r\n\t\t\tcallbacks: {\r\n\t\t\t\tlegend: () => {},\r\n\t\t\t\ttitle: () => {},\r\n\t\t\t\tlabel: (tooltipItem) => {\r\n\t\t\t\t\tconst label = `Views: ${tooltipItem.yLabel}`;\r\n\r\n\t\t\t\t\treturn label;\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t},\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nChart.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tdata: PropTypes.array.isRequired,\r\n\tlabels: PropTypes.array.isRequired,\r\n};\r\n\r\nexport default Chart;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tCard,\r\n\tCardActions,\r\n\tCardContent,\r\n\tCardHeader,\r\n\tButton,\r\n\tTypography,\r\n\tList,\r\n\tListItem,\r\n\tListItemText,\r\n} from '@mui/material';\r\nimport ArrowForwardIcon from '@mui/icons-material/ArrowForward';\r\n\r\nimport gradients from 'utils/gradients';\r\nimport { Chart } from './components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tbackgroundImage: gradients.indigo,\r\n\t\tcolor: theme.palette.primary.contrastText,\r\n\t},\r\n\tcontent: {\r\n\t\tpaddingTop: 0,\r\n\t},\r\n\titemDivider: {\r\n\t\tborderBottomColor: 'rgba(255,255,255,0.2)',\r\n\t},\r\n\tactions: {\r\n\t\tpaddingTop: 0,\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tarrowForwardIcon: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n}));\r\n\r\nfunction getRandomInt(min, max) {\r\n\t// eslint-disable-next-line no-param-reassign\r\n\tmin = Math.ceil(min);\r\n\t// eslint-disable-next-line no-param-reassign\r\n\tmax = Math.floor(max);\r\n\r\n\treturn Math.floor(Math.random() * (max - min + 1)) + min;\r\n}\r\n\r\nconst RealTime = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst [data, setData] = useState([\r\n\t\t163,\r\n\t\t166,\r\n\t\t161,\r\n\t\t159,\r\n\t\t99,\r\n\t\t163,\r\n\t\t173,\r\n\t\t166,\r\n\t\t167,\r\n\t\t183,\r\n\t\t176,\r\n\t\t172,\r\n\t]);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tsetInterval(() => {\r\n\t\t\tif (mounted) {\r\n\t\t\t\tsetData((items) => {\r\n\t\t\t\t\tconst newData = [...items];\r\n\r\n\t\t\t\t\tnewData.shift();\r\n\t\t\t\t\tnewData.push(0);\r\n\r\n\t\t\t\t\treturn newData;\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tif (mounted) {\r\n\t\t\t\t\tsetData((items) => {\r\n\t\t\t\t\t\tconst newData = [...items];\r\n\t\t\t\t\t\tconst random = getRandomInt(100, 200);\r\n\r\n\t\t\t\t\t\tnewData.pop();\r\n\t\t\t\t\t\tnewData.push(random);\r\n\r\n\t\t\t\t\t\treturn newData;\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}, 500);\r\n\t\t}, 2000);\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\tconst labels = data.map((value, i) => i);\r\n\r\n\tconst pages = [\r\n\t\t{\r\n\t\t\tpathname: '/projects',\r\n\t\t\tviews: '24',\r\n\t\t},\r\n\t\t{\r\n\t\t\tpathname: '/chat',\r\n\t\t\tviews: '21',\r\n\t\t},\r\n\t\t{\r\n\t\t\tpathname: '/cart',\r\n\t\t\tviews: '15',\r\n\t\t},\r\n\t\t{\r\n\t\t\tpathname: '/cart/checkout',\r\n\t\t\tviews: '8',\r\n\t\t},\r\n\t];\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\t\t{data[data.length - 1] === 0\r\n\t\t\t\t\t\t\t? data[data.length - 2]\r\n\t\t\t\t\t\t\t: data[data.length - 1]}\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\tsubheader=\"Page views per second\"\r\n\t\t\t\tsubheaderTypographyProps={{ color: 'inherit' }}\r\n\t\t\t\ttitle=\"Active users\"\r\n\t\t\t\ttitleTypographyProps={{ color: 'inherit' }}\r\n\t\t\t/>\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{pages.map((page) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{page.views}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\tSee all\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nRealTime.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default RealTime;\r\n","import React from 'react';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { Line } from 'react-chartjs-2';\r\nimport { makeStyles, useTheme } from '@mui/styles';\r\nimport { alpha } from '@mui/material/styles';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n\troot: {\r\n\t\tposition: 'relative',\r\n\t},\r\n}));\r\n\r\nconst Chart = (props) => {\r\n\tconst { className, data: dataProp, labels, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst theme = useTheme();\r\n\r\n\tconst data = (canvas) => {\r\n\t\tconst ctx = canvas.getContext('2d');\r\n\t\tconst gradient = ctx.createLinearGradient(0, 0, 0, 400);\r\n\r\n\t\tgradient.addColorStop(0, alpha(theme.palette.secondary.main, 0.2));\r\n\t\tgradient.addColorStop(0.9, 'rgba(255,255,255,0)');\r\n\t\tgradient.addColorStop(1, 'rgba(255,255,255,0)');\r\n\r\n\t\treturn {\r\n\t\t\tdatasets: [\r\n\t\t\t\t{\r\n\t\t\t\t\tdata: dataProp,\r\n\t\t\t\t\tbackgroundColor: gradient,\r\n\t\t\t\t\tborderColor: theme.palette.secondary.main,\r\n\t\t\t\t\tpointBorderColor: '#FFFFFF',\r\n\t\t\t\t\tpointBorderWidth: 3,\r\n\t\t\t\t\tpointRadius: 6,\r\n\t\t\t\t\tpointBackgroundColor: theme.palette.secondary.main,\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tlabels,\r\n\t\t};\r\n\t};\r\n\r\n\tconst options = {\r\n\t\tresponsive: true,\r\n\t\tmaintainAspectRatio: false,\r\n\t\tanimation: false,\r\n\t\tlegend: {\r\n\t\t\tdisplay: false,\r\n\t\t},\r\n\t\tlayout: {\r\n\t\t\tpadding: 0,\r\n\t\t},\r\n\t\tscales: {\r\n\t\t\txAxes: [\r\n\t\t\t\t{\r\n\t\t\t\t\tgridLines: {\r\n\t\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\t\tdrawBorder: false,\r\n\t\t\t\t\t},\r\n\t\t\t\t\tticks: {\r\n\t\t\t\t\t\tpadding: 20,\r\n\t\t\t\t\t\tfontColor: theme.palette.text.secondary,\r\n\t\t\t\t\t},\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tyAxes: [\r\n\t\t\t\t{\r\n\t\t\t\t\tgridLines: {\r\n\t\t\t\t\t\tborderDash: [2],\r\n\t\t\t\t\t\tborderDashOffset: [2],\r\n\t\t\t\t\t\tcolor: theme.palette.divider,\r\n\t\t\t\t\t\tdrawBorder: false,\r\n\t\t\t\t\t\tzeroLineBorderDash: [2],\r\n\t\t\t\t\t\tzeroLineBorderDashOffset: [2],\r\n\t\t\t\t\t\tzeroLineColor: theme.palette.divider,\r\n\t\t\t\t\t},\r\n\t\t\t\t\tticks: {\r\n\t\t\t\t\t\tpadding: 20,\r\n\t\t\t\t\t\tfontColor: theme.palette.text.secondary,\r\n\t\t\t\t\t\tbeginAtZero: true,\r\n\t\t\t\t\t\tmin: 0,\r\n\t\t\t\t\t\tmaxTicksLimit: 7,\r\n\t\t\t\t\t\tcallback: (value) => (value > 0 ? `${value}K` : value),\r\n\t\t\t\t\t},\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t},\r\n\t\ttooltips: {\r\n\t\t\tenabled: true,\r\n\t\t\tmode: 'index',\r\n\t\t\tintersect: false,\r\n\t\t\tcaretSize: 10,\r\n\t\t\tyPadding: 20,\r\n\t\t\txPadding: 20,\r\n\t\t\tborderWidth: 1,\r\n\t\t\tborderColor: theme.palette.divider,\r\n\t\t\tbackgroundColor: theme.palette.white,\r\n\t\t\ttitleFontColor: theme.palette.text.primary,\r\n\t\t\tbodyFontColor: theme.palette.text.secondary,\r\n\t\t\tfooterFontColor: theme.palette.text.secondary,\r\n\t\t\tcallbacks: {\r\n\t\t\t\ttitle: () => {},\r\n\t\t\t\tlabel: (tooltipItem) => {\r\n\t\t\t\t\tlet label = `Income: ${tooltipItem.yLabel}`;\r\n\r\n\t\t\t\t\tif (tooltipItem.yLabel > 0) {\r\n\t\t\t\t\t\tlabel += 'K';\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn label;\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t},\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nChart.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tdata: PropTypes.array.isRequired,\r\n\tlabels: PropTypes.array.isRequired,\r\n};\r\n\r\nexport default Chart;\r\n","import React from 'react';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport PerfectScrollbar from 'react-perfect-scrollbar';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Card, CardHeader, CardContent, Divider } from '@mui/material';\r\n\r\nimport { GenericMoreButton } from 'components';\r\nimport { Chart } from './components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {},\r\n\tbuttons: {\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'center',\r\n\t\t'& > *': {\r\n\t\t\tmarginLeft: theme.spacing(1),\r\n\t\t},\r\n\t},\r\n\tinner: {\r\n\t\theight: 375,\r\n\t\tminWidth: 500,\r\n\t},\r\n\tchart: {\r\n\t\theight: '100%',\r\n\t},\r\n}));\r\n\r\nconst PerformanceOverTime = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst data = {\r\n\t\tthisWeek: {\r\n\t\t\tdata: [],\r\n\t\t\tlabels: [],\r\n\t\t},\r\n\t\tthisMonth: {\r\n\t\t\tdata: [],\r\n\t\t\tlabels: [],\r\n\t\t},\r\n\t\tthisYear: {\r\n\t\t\tdata: [10, 5, 11, 20, 13, 28, 18, 4, 13, 12, 13, 5],\r\n\t\t\tlabels: [\r\n\t\t\t\t'Jan',\r\n\t\t\t\t'Feb',\r\n\t\t\t\t'Mar',\r\n\t\t\t\t'Apr',\r\n\t\t\t\t'May',\r\n\t\t\t\t'Jun',\r\n\t\t\t\t'Jul',\r\n\t\t\t\t'Aug',\r\n\t\t\t\t'Sep',\r\n\t\t\t\t'Oct',\r\n\t\t\t\t'Nov',\r\n\t\t\t\t'Dec',\r\n\t\t\t],\r\n\t\t},\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t}\r\n\t\t\t\ttitle=\"Performance Over Time\"\r\n\t\t\t/>\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nPerformanceOverTime.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default PerformanceOverTime;\r\n","import React from 'react';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Grid } from '@mui/material';\r\n\r\nimport { Page } from 'components';\r\nimport {\r\n\tHeader,\r\n\tLatestProjects,\r\n\tNewProjects,\r\n\tRealTime,\r\n\tRoiPerCustomer,\r\n\tTeamTasks,\r\n\tTodaysMoney,\r\n\tSystemHealth,\r\n\tPerformanceOverTime,\r\n} from './components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\tcontainer: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n}));\r\n\r\nconst DashboardDefault = () => {\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default DashboardDefault;\r\n","import React from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Typography, Grid, Button, Hidden } from '@mui/material';\r\nimport BarChartIcon from '@mui/icons-material/BarChart';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tsummaryButton: {\r\n\t\tbackgroundColor: theme.palette.white,\r\n\t},\r\n\tbarChartIcon: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\timage: {\r\n\t\twidth: '100%',\r\n\t\tmaxHeight: 400,\r\n\t},\r\n}));\r\n\r\nconst Header = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst session = useSelector((state) => state.session);\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tHome\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tGood Morning,\r\n\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t{session.user.first_name}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tHere’s what’s happening with your projects today\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tView summary\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nHeader.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default Header;\r\n","import React, { useState, useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Card, Typography, Grid, colors } from '@mui/material';\r\n\r\nimport axios from 'utils/axios';\r\nimport { Label } from 'components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t},\r\n\titem: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\ttextAlign: 'center',\r\n\t\t[theme.breakpoints.up('md')]: {\r\n\t\t\t'&:not(:last-of-type)': {\r\n\t\t\t\tborderRight: `1px solid ${theme.palette.divider}`,\r\n\t\t\t},\r\n\t\t},\r\n\t\t[theme.breakpoints.down('md')]: {\r\n\t\t\t'&:not(:last-of-type)': {\r\n\t\t\t\tborderBottom: `1px solid ${theme.palette.divider}`,\r\n\t\t\t},\r\n\t\t},\r\n\t},\r\n\ttitleWrapper: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tjustifyContent: 'center',\r\n\t},\r\n\tlabel: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n\toverline: {\r\n\t\tmarginTop: theme.spacing(1),\r\n\t},\r\n}));\r\n\r\nconst Statistics = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst [statistics, setStatistics] = useState(null);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tconst fetchStatistics = () => {\r\n\t\t\taxios.get('/api/account/statistics').then((response) => {\r\n\t\t\t\tif (mounted) {\r\n\t\t\t\t\tsetStatistics(response.data.statistics);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tfetchStatistics();\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\tif (!statistics) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t$\r\n\t\t\t\t\t\t{statistics.payout}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tNext payout\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t$\r\n\t\t\t\t\t\t{statistics.projects}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tTotal products\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{statistics.visitors}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tToday's Visitors\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{statistics.watching}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tLive\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tWatching now\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nStatistics.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default Statistics;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport uuid from 'uuid/v1';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tCard,\r\n\tIconButton,\r\n\tList,\r\n\tListItem,\r\n\tListItemIcon,\r\n\tListItemSecondaryAction,\r\n\tListItemText,\r\n\tTypography,\r\n\tTooltip,\r\n} from '@mui/material';\r\nimport SendIcon from '@mui/icons-material/Send';\r\nimport ArrowForwardIcon from '@mui/icons-material/ArrowForwardOutlined';\r\nimport PaymentIcon from '@mui/icons-material/PaymentOutlined';\r\nimport MailIcon from '@mui/icons-material/MailOutlineOutlined';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tvalue: {\r\n\t\tfontWeight: theme.typography.fontWeightMedium,\r\n\t},\r\n\ttype: {\r\n\t\tfontWeight: theme.typography.fontWeightMedium,\r\n\t},\r\n}));\r\n\r\nconst Notifications = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst notifications = [\r\n\t\t{\r\n\t\t\tid: uuid(),\r\n\t\t\tvalue: 6,\r\n\t\t\ttype: 'invite',\r\n\t\t\tmessage: 'to send service quotes',\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: uuid(),\r\n\t\t\tvalue: 2,\r\n\t\t\ttype: 'message',\r\n\t\t\tmessage: 'from clients',\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: uuid(),\r\n\t\t\tvalue: 1,\r\n\t\t\ttype: 'payout',\r\n\t\t\tmessage: 'that needs your confirmation',\r\n\t\t},\r\n\t];\r\n\r\n\tconst icons = {\r\n\t\tinvite: ,\r\n\t\tmessage: ,\r\n\t\tpayout: ,\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{notifications.map((notification, i) => (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{icons[notification.type]}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{notification.value}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{notification.type}\r\n\t\t\t\t\t\t\t\t\ts\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t{notification.message}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t))}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nNotifications.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default Notifications;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Typography, Button } from '@mui/material';\r\nimport KeyboardArrowRightIcon from '@mui/icons-material/KeyboardArrowRight';\r\n\r\nimport axios from 'utils/axios';\r\nimport { ProjectCard } from 'components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\theader: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tjustifyContent: 'space-between',\r\n\t\tmarginBottom: theme.spacing(2),\r\n\t},\r\n\ttitle: {\r\n\t\tposition: 'relative',\r\n\t\t'&:before': {\r\n\t\t\tposition: 'absolute',\r\n\t\t\tbottom: -8,\r\n\t\t\tleft: 0,\r\n\t\t\tcontent: '\" \"',\r\n\t\t\theight: 3,\r\n\t\t\twidth: 48,\r\n\t\t\tbackgroundColor: theme.palette.primary.main,\r\n\t\t},\r\n\t},\r\n\tarrowIcon: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n}));\r\n\r\nconst Projects = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst [projects, setProjects] = useState([]);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tconst fetchProjects = () => {\r\n\t\t\taxios.get('/api/account/projects').then((response) => {\r\n\t\t\t\tif (mounted) {\r\n\t\t\t\t\tsetProjects(response.data.projects);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tfetchProjects();\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\tActive Projects\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t{projects.map((project) => (\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t
\r\n\t);\r\n};\r\n\r\nProjects.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default Projects;\r\n","/* eslint-disable react/no-multi-comp */\r\nimport React, { useState, useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport moment from 'moment';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tButton,\r\n\tCard,\r\n\tCardContent,\r\n\tCardHeader,\r\n\tDivider,\r\n\tIconButton,\r\n\tList,\r\n\tListItem,\r\n\tListItemIcon,\r\n\tListItemText,\r\n\tRadio,\r\n\tTooltip,\r\n\tTypography,\r\n\tcolors,\r\n} from '@mui/material';\r\nimport AddIcon from '@mui/icons-material/Add';\r\nimport ArchiveIcon from '@mui/icons-material/ArchiveOutlined';\r\n\r\nimport axios from 'utils/axios';\r\nimport { Label } from 'components';\r\n\r\nconst getLabel = (todo) => {\r\n\tif (todo.done) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\tif (moment(todo.deadline).isBefore(moment(), 'day')) {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\r\n\tif (moment(todo.deadline).isSame(moment(), 'day')) {\r\n\t\treturn ;\r\n\t}\r\n\r\n\treturn ;\r\n};\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t},\r\n\taddIcon: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tdone: {\r\n\t\ttextDecoration: 'line-through',\r\n\t\tcolor: theme.palette.text.secondary,\r\n\t},\r\n}));\r\n\r\nconst Todos = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst [todos, setTodos] = useState([]);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tconst fetchTodos = () => {\r\n\t\t\taxios.get('/api/account/todos').then((response) => {\r\n\t\t\t\tif (mounted) {\r\n\t\t\t\t\tsetTodos(response.data.todos);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tfetchTodos();\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\tconst handleChange = (event, todo) => {\r\n\t\tsetTodos((items) => items.map((t) => {\r\n\t\t\tif (t.id === todo.id) {\r\n\t\t\t\treturn { ...todo, done: !todo.done };\r\n\t\t\t}\r\n\r\n\t\t\treturn t;\r\n\t\t})\r\n\t\t);\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tAdd\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\ttitle=\"My todos\"\r\n\t\t\t/>\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{todos.map((todo, i) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t handleChange(event, todo)}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{todo.title}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{getLabel(todo)}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nTodos.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default Todos;\r\n","import React from 'react';\r\nimport { makeStyles } from '@mui/styles';\r\n\r\nimport { Page } from 'components';\r\nimport {\r\n\tHeader,\r\n\tStatistics,\r\n\tNotifications,\r\n\tProjects,\r\n\tTodos,\r\n} from './components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\twidth: theme.breakpoints.values.lg,\r\n\t\tmaxWidth: '100%',\r\n\t\tmargin: '0 auto',\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\tstatistics: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tnotifications: {\r\n\t\tmarginTop: theme.spacing(6),\r\n\t},\r\n\tprojects: {\r\n\t\tmarginTop: theme.spacing(6),\r\n\t},\r\n\ttodos: {\r\n\t\tmarginTop: theme.spacing(6),\r\n\t},\r\n}));\r\n\r\nconst Overview = () => {\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default Overview;\r\n","/* eslint-disable react/prop-types */\r\n/* eslint-disable react/destructuring-assignment */\r\nimport React from 'react';\r\nimport { Line } from 'react-chartjs-2';\r\nimport { Typography, Popover, Button } from '@mui/material';\r\nimport { makeStyles } from '@mui/styles';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\tchartTitle: {\r\n\t\tcolor: '#1565c0',\r\n\t\ttextAlign: 'center',\r\n\t\tfontWeight: '800',\r\n\t\tfontSize: '20px',\r\n\t\tmargin: '15px 0px 10px 0px',\r\n\t},\r\n\tbutton: {\r\n\t\tmarginTop: '10px',\r\n\t\tfontSize: '10px',\r\n\t\tletterSpacing: '1.5px',\r\n\t\theight: '25px',\r\n\t\twidth: '85px',\r\n\t},\r\n}));\r\n\r\nconst Evolution = (props) => {\r\n\tconst [anchorEl, setAnchorEl] = React.useState(null);\r\n\tconst classes = useStyles();\r\n\r\n\tconst handleClick = (event) => {\r\n\t\tsetAnchorEl(event.currentTarget);\r\n\t};\r\n\r\n\tconst handleClose = () => {\r\n\t\tsetAnchorEl(null);\r\n\t};\r\n\r\n\tconst anchorOrigin = {\r\n\t\tvertical: 'top',\r\n\t\thorizontal: 'center',\r\n\t};\r\n\r\n\tconst paperProps = {\r\n\t\tstyle: {\r\n\t\t\twidth: '500px',\r\n\t\t\tpadding: '0px 10px 10px 10px'\r\n\t\t},\r\n\t};\r\n\r\n\tconst open = Boolean(anchorEl);\r\n\tconst id = open ? 'simple-popover' : undefined;\r\n\r\n\tconst chartData = {\r\n\t\tlabels: props.weekEnd,\r\n\t\tdatasets: [\r\n\t\t\t{\r\n\t\t\t\tid: 1,\r\n\t\t\t\tdata: props.indicatorValues,\r\n\t\t\t\tfill: false,\r\n\t\t\t\tborderColor: 'rgb(21, 101, 192)',\r\n\t\t\t\tbackgroundColor: 'rgb(21, 101, 192)',\r\n\t\t\t\ttension: 0.2,\r\n\t\t\t},\r\n\t\t],\r\n\t};\r\n\r\n\tconst chartOptions = {\r\n\t\tlegend: {\r\n\t\t\tdisplay: false\r\n\t\t},\r\n\t\tscales: {\r\n\t\t\txAxes: [{\r\n\t\t\t\tticks: {\r\n\t\t\t\t\tfontSize: 10,\r\n\t\t\t\t\tfontStyle: 'bold',\r\n\t\t\t\t},\r\n\t\t\t}]\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t{props.indicator}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default Evolution;\r\n","/* eslint-disable no-octal-escape */\r\nimport React, { useEffect, useCallback } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Button, Typography, Grid, Box } from '@mui/material';\r\nimport { Page } from 'components';\r\n\r\nimport DateRangeIcon from '@mui/icons-material/DateRange';\r\nimport TableViewIcon from '@mui/icons-material/TableView';\r\nimport CellTowerIcon from '@mui/icons-material/CellTower';\r\nimport NotificationsActiveIcon from '@mui/icons-material/NotificationsActive';\r\nimport BackupTableIcon from '@mui/icons-material/BackupTable';\r\nimport WifiIcon from '@mui/icons-material/Wifi';\r\nimport BoltIcon from '@mui/icons-material/Bolt';\r\nimport NetworkCheckIcon from '@mui/icons-material/NetworkCheck';\r\nimport SignalWifiStatusbarConnectedNoInternet4Icon from '@mui/icons-material/SignalWifiStatusbarConnectedNoInternet4';\r\nimport SettingsIcon from '@mui/icons-material/Settings';\r\nimport FileCopyIcon from '@mui/icons-material/FileCopy';\r\nimport Co2Icon from '@mui/icons-material/Co2';\r\nimport DownloadIcon from '@mui/icons-material/Download';\r\nimport UploadIcon from '@mui/icons-material/Upload';\r\nimport MoveToInboxIcon from '@mui/icons-material/MoveToInbox';\r\n\r\nimport { GetDatasetInfo, GetDatasetInfoEVO } from './actions/HomeActions';\r\n\r\nimport Evolution from './components/Evolution.js';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tflexDirection: 'column',\r\n\t\talignItems: 'flex-end',\r\n\t},\r\n\tcontent: {\r\n\t\t// width: theme.breakpoints.values.md,\r\n\t\t// maxWidth: '95%',\r\n\t\t// margin: '0 auto',\r\n\t\tpadding: '40px 40px 5px 40px',\r\n\t\t// [theme.breakpoints.up('md')]: {\r\n\t\t//\tpadding: '40px 24px',\r\n\t\t// },\r\n\t},\r\n\tlogo: {\r\n\t\tmarginTop: '75px',\r\n\t\tmarginLeft: '100px',\r\n\t\theight: '200px'\r\n\t},\r\n\ticon: {\r\n\t\tcolor: '#1565c0',\r\n\t\tfontSize: '4rem',\r\n\t\tmarginBottom: '0px',\r\n\t},\r\n\th1: {\r\n\t\tfontWeight: '900',\r\n\t\tcolor: 'rgb(90, 90, 90)',\r\n\t\ttextAlign: 'center',\r\n\t\tfontSize: '1.8rem',\r\n\t\tmarginBottom: '0px',\r\n\t},\r\n\th2: {\r\n\t\tcolor: '#1565c0',\r\n\t\ttextAlign: 'left',\r\n\t\tfontWeight: '100',\r\n\t\t[theme.breakpoints.down('md')]: {\r\n\t\t\ttextAlign: 'center'\r\n\t\t},\r\n\t},\r\n\th5: {\r\n\t\tcolor: 'rgb(90, 90, 90)',\r\n\t\ttextAlign: 'center',\r\n\t\tlineHeight: '20px',\r\n\t\tmarginTop: '-3px',\r\n\t\tfontSize: '14px',\r\n\t},\r\n\th25: {\r\n\t\tfontWeight: '500',\r\n\t\tfontSize: '16px',\r\n\t\tcolor: 'rgb(90, 90, 90)',\r\n\t},\r\n\titem: {\r\n\t\tmarginLeft: '20px',\r\n\t\tmarginRight: '20px',\r\n\t\tspacing: '5',\r\n\t},\r\n\tdesc: {\r\n\t\t[theme.breakpoints.down('md')]: {\r\n\t\t\tjustifyContent: 'center'\r\n\t\t},\r\n\t\tspacing: '5',\r\n\t\tmarginBottom: '-30px',\r\n\t},\r\n\tbutton: {\r\n\t\tmarginTop: '10px',\r\n\t},\r\n\tchartTitle: {\r\n\t\tcolor: '#1565c0',\r\n\t\ttextAlign: 'center',\r\n\t\tfontWeight: '800',\r\n\t\tfontSize: '20px',\r\n\t\tmargin: '15px 0px 10px 0px',\r\n\t},\r\n}));\r\n\r\nconst Home = () => {\r\n\tconst dispatch = useDispatch();\r\n\tconst datasetInfo = useSelector(state => state.homeReducer.DatasetInfo);\r\n\tconst datasetInfoEVO = useSelector(state => state.homeReducer.DatasetInfoEVO);\r\n\tconst classes = useStyles();\r\n\r\n\tconst _getDatasetInfo = useCallback(() => {\r\n\t\tdispatch(GetDatasetInfo());\r\n\t}, []);\r\n\r\n\tconst _getDatasetInfoEVO = useCallback(() => {\r\n\t\tdispatch(GetDatasetInfoEVO());\r\n\t}, []);\r\n\r\n\tconst openInNewTab = (url) => {\r\n\t\twindow.open(url, '_blank', 'noreferrer');\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\t_getDatasetInfo();\r\n\t\t_getDatasetInfoEVO();\r\n\t}, []);\r\n\r\n\tconst weekEnd = datasetInfoEVO.map(data => data.weekEnd);\r\n\tconst avgUDATCell = datasetInfoEVO.map(data => data.avgUDATCell);\r\n\tconst avgUUATCell = datasetInfoEVO.map(data => data.avgUUATCell);\r\n\tconst avgDRBURCell = datasetInfoEVO.map(data => data.avgDRBURCell);\r\n\tconst avgConsTimeSite = datasetInfoEVO.map(data => data.avgConsTimeSite);\r\n\tconst avgConsStorageSite = datasetInfoEVO.map(data => data.avgConsStorageSite);\r\n\tconst avgCarbonSite = datasetInfoEVO.map(data => data.avgCarbonSite);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tDATASET SIZE\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t161 Cells 4G\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t22 sites\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t6 Bands\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t700 | 800 | 900 | 1800 | 2100 | 2600 MHz\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{datasetInfo.qtyMonths}\r\n\t\t\t\t\t\t\t Months & \r\n\t\t\t\t\t\t\t\t{datasetInfo.qtyDays}\r\n\t\t\t\t\t\t\t days\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tcollected data\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tDATASET FEATURES\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t570 PM Counters\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t64 KPI\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{datasetInfo.qtyAlarms}\r\n\t\t\t\t\t\t\t\tk FM Alarms\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{datasetInfo.qtyFaults}\r\n\t\t\t\t\t\t\t\tk Faults | \r\n\t\t\t\t\t\t\t\t{datasetInfo.qtyEvents}\r\n\t\t\t\t\t\t\t\tk Events | \r\n\t\t\t\t\t\t\t\t{datasetInfo.qtyAlarmNames}\r\n\t\t\t\t\t\t\t\t Alarm Types\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t2,7k CM Param.\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t145 MO's\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tDATASET INTEGRITY\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{datasetInfo.validDataPM}\r\n\t\t\t\t\t\t\t\t%\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tPM Valid Data\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{datasetInfo.validDataFM}\r\n\t\t\t\t\t\t\t\t%\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tFM Valid Data\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{datasetInfo.validDataCM}\r\n\t\t\t\t\t\t\t\t%\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tCM Valid Data\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tWEEKLY 4G CELL PERFORMANCE\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{datasetInfo.avgUDATCell}\r\n\t\t\t\t\t\t\t\t Mbit/s\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tAvg. User DL Throughput\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{datasetInfo.avgUUATCell}\r\n\t\t\t\t\t\t\t\t Mbit/s\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tAvg. User UL Throughput\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{datasetInfo.avgDRBURCell}\r\n\t\t\t\t\t\t\t\t%\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tAvg. DL PRB\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tWEEKLY ECO INDICATORS\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{datasetInfo.avgConsTimeSite}\r\n\t\t\t\t\t\t\t\t kWh\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tAvg. Cons./Site (excl. 2G)\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{datasetInfo.avgConsStorageSite}\r\n\t\t\t\t\t\t\t\t kWh/TB\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tAvg. Consumption/TB (only 4G)\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{datasetInfo.avgCarbonSite}\r\n\t\t\t\t\t\t\t\t Kg\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tAvg. CO2/Site (excl. 2G)\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default Home;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport uuid from 'uuid/v1';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tTypography,\r\n\tList,\r\n\tListItem,\r\n\tListItemIcon,\r\n\tListItemText,\r\n} from '@mui/material';\r\nimport ContactSupportIcon from '@mui/icons-material/ContactSupportOutlined';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tbackgroundColor: theme.palette.white,\r\n\t},\r\n\tinner: {\r\n\t\tpadding: theme.spacing(6, 3),\r\n\t\twidth: theme.breakpoints.values.lg,\r\n\t\tmaxWidth: '100%',\r\n\t\tmargin: '0 auto',\r\n\t},\r\n\tcontent: {\r\n\t\tmarginTop: theme.spacing(6),\r\n\t},\r\n}));\r\n\r\nconst FAQ = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst faqs = [\r\n\t\t{\r\n\t\t\ttitle: 'What do we use for styling our components?',\r\n\t\t\tdescription:\r\n\t\t\t\t\"We use Material-ui's hooks api as we think it’s the best way of avoiding clutter.\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle:\r\n\t\t\t\t'Are the design files (sketch, figma) included in the Standard Package?',\r\n\t\t\tdescription:\r\n\t\t\t\t'No, we offer the design source file only to Standard Plus Sketch & Figma and Extended Package.',\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Are you providing support for setting up my project?',\r\n\t\t\tdescription:\r\n\t\t\t\t'Yes, we offer email support for all our customers & even skype meetings for our extended license customers.',\r\n\t\t},\r\n\t];\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\tFAQ\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{faqs.map((faq) => (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t))}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nFAQ.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default FAQ;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { useDispatch } from 'react-redux';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Typography, Grid, Button } from '@mui/material';\r\nimport {\r\n\tenqueueSnackbar as enqueueSnackbarAction,\r\n\tcloseSnackbar as closeSnackbarAction,\r\n} from 'actions';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tbackgroundColor: theme.palette.white,\r\n\t},\r\n\theader: {\r\n\t\twidth: theme.breakpoints.values.md,\r\n\t\tmaxWidth: '100%',\r\n\t\tmargin: '0 auto',\r\n\t\tpadding: '80px 24px',\r\n\t\t[theme.breakpoints.up('md')]: {\r\n\t\t\tpadding: '160px 24px',\r\n\t\t},\r\n\t},\r\n\tbuttons: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'center',\r\n\t},\r\n\tmediaContainer: {\r\n\t\tmargin: '0 auto',\r\n\t\tmaxWidth: 1600,\r\n\t\tpadding: theme.spacing(0, 2),\r\n\t\toverflow: 'hidden',\r\n\t},\r\n\tmedia: {\r\n\t\twidth: '100%',\r\n\t},\r\n\tstats: {\r\n\t\tbackgroundColor: theme.palette.primary.main,\r\n\t\tcolor: theme.palette.primary.contrastText,\r\n\t\tpadding: theme.spacing(1),\r\n\t},\r\n\tstatsInner: {\r\n\t\twidth: theme.breakpoints.values.md,\r\n\t\tmaxWidth: '100%',\r\n\t\tmargin: '0 auto',\r\n\t},\r\n}));\r\n\r\nconst Header = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst enqueueSnackbar = (...args) => dispatch(enqueueSnackbarAction(...args));\r\n\tconst closeSnackbar = (...args) => dispatch(closeSnackbarAction(...args));\r\n\r\n\tconst handleClick = () => {\r\n\t\t// NOTE:\r\n\t\t// if you want to be able to dispatch a `closeSnackbar` action later on,\r\n\t\t// you SHOULD pass your own `key` in the options. `key` can be any sequence\r\n\t\t// of number or characters, but it has to be unique for a given snackbar.\r\n\t\tenqueueSnackbar({\r\n\t\t\tmessage: 'Querias comprar mas não compras.',\r\n\t\t\toptions: {\r\n\t\t\t\tkey: new Date().getTime() + Math.random(),\r\n\t\t\t\tvariant: 'success',\r\n\t\t\t\taction: key => (\r\n\t\t\t\t\t\r\n\t\t\t\t),\r\n\t\t\t},\r\n\t\t});\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\tDevias React Material Kit - PRO\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\tA professional kit that comes with ready-to-use Material-UI©\r\n\t\t\t\t\tcomponents developed with one common goal in mind, help you\r\n\t\t\t\t\tbuild faster & beautiful applications. Each component is\r\n\t\t\t\t\tfully customizable, responsive and easy to integrate.\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tPurchase Devias Kit\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t30+\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tDemo Pages\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tUX\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tComplete Flows\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t300+\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tComponents\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\"React\"\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tReact Hooks API\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nHeader.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default Header;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Typography, Grid } from '@mui/material';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tbackgroundColor: theme.palette.white,\r\n\t},\r\n\tinner: {\r\n\t\tpadding: theme.spacing(6, 3),\r\n\t\twidth: theme.breakpoints.values.lg,\r\n\t\tmaxWidth: '100%',\r\n\t\tmargin: '0 auto',\r\n\t},\r\n\tmedia: {\r\n\t\t'& img': {\r\n\t\t\twidth: '100%',\r\n\t\t\theight: 'auto',\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst PluginsSupport = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tSupport for Plugins\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tThe kit provides support for multiple third-party\r\n\t\t\t\t\t\t\tplugins right out of the box like Chart.js,\r\n\t\t\t\t\t\t\tDropzone.js, Kanban Plugin and many more.\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nPluginsSupport.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default PluginsSupport;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Typography, Grid } from '@mui/material';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tbackgroundColor: theme.palette.background.default,\r\n\t},\r\n\tinner: {\r\n\t\tpadding: theme.spacing(6, 3),\r\n\t\twidth: theme.breakpoints.values.lg,\r\n\t\tmaxWidth: '100%',\r\n\t\tmargin: '0 auto',\r\n\t},\r\n\tmedia: {\r\n\t\t'& img': {\r\n\t\t\twidth: '100%',\r\n\t\t\theight: 'auto',\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst SourceFiles = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tSource Files\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tWe've included the source Sketch & Figma files so\r\n\t\t\t\t\t\t\tyou can get creative! We designed all components\r\n\t\t\t\t\t\t\twith Symbols in Sketch which allows you to change\r\n\t\t\t\t\t\t\tthe main colors as you like.\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nSourceFiles.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default SourceFiles;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Typography, Grid } from '@mui/material';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tbackgroundColor: theme.palette.background.default,\r\n\t},\r\n\tinner: {\r\n\t\tpadding: theme.spacing(6, 3),\r\n\t\twidth: theme.breakpoints.values.lg,\r\n\t\tmaxWidth: '100%',\r\n\t\tmargin: '0 auto',\r\n\t},\r\n\tmedia: {\r\n\t\t'& img': {\r\n\t\t\twidth: '100%',\r\n\t\t\theight: 'auto',\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst UserFlows = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tComplete User Flows\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tNot just a set of tools, the package includes the\r\n\t\t\t\t\t\t\tmost common use cases of user flows like User\r\n\t\t\t\t\t\t\tManagement, Second Level Layout, and many more.\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nUserFlows.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default UserFlows;\r\n","import React from 'react';\r\nimport { makeStyles } from '@mui/styles';\r\n\r\nimport { Page } from 'components';\r\nimport {\r\n\tHeader,\r\n\tFAQ,\r\n\tPluginsSupport,\r\n\tSourceFiles,\r\n\tUserFlows,\r\n} from './components';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n\troot: {},\r\n}));\r\n\r\nconst Presentation = () => {\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default Presentation;\r\n","import React from 'react';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Card, Typography, Avatar } from '@mui/material';\r\n\r\nimport { Label } from 'components';\r\nimport gradients from 'utils/gradients';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tjustifyContent: 'space-between',\r\n\t},\r\n\tdetails: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tflexWrap: 'wrap',\r\n\t},\r\n\tlabel: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n\tavatar: {\r\n\t\tbackgroundImage: gradients.blue,\r\n\t\theight: 48,\r\n\t\twidth: 48,\r\n\t},\r\n}));\r\n\r\nconst TodaysMoney = (props) => {\r\n\tconst { className, title, text, icon, label, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t{title}\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{text}\r\n\t\t\t\t\t\r\n\t\t\t\t\t{label && (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{label.text}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t{icon}\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nTodaysMoney.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\ttitle: PropTypes.string,\r\n\ttext: PropTypes.string,\r\n\ticon: PropTypes.object,\r\n\tlabel: PropTypes.object\r\n};\r\n\r\nexport default TodaysMoney;\r\n","import React, { useState } from 'react';\r\nimport { useDispatch } from 'react-redux';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tcolors,\r\n\tIconButton,\r\n\tTooltip,\r\n} from '@mui/material';\r\n\r\nimport CreateIcon from '@mui/icons-material/Create';\r\nimport EmailIcon from '@mui/icons-material/Email';\r\nimport ExitToAppIcon from '@mui/icons-material/ExitToApp';\r\nimport DeleteIcon from '@mui/icons-material/Delete';\r\nimport Label from '../../../../../../components/Label/Label.js';\r\nimport DataTable from '../../../../../../components/DataTable/DataTable.js';\r\nimport { ToggleAddEditUserDialog, ResendConfirmationEmail, DeactivateUser } from '../../../../actions/UsersActions.js';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t},\r\n\tinner: {\r\n\t\tminWidth: 700,\r\n\t},\r\n\tnameCell: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tavatar: {\r\n\t\theight: 42,\r\n\t\twidth: 42,\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tactions: {\r\n\t\tpadding: theme.spacing(1),\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tprimaryButton: {\r\n\t\tcolor: theme.palette.primary.main\r\n\t},\r\n\terrorButton: {\r\n\t\tcolor: theme.palette.error.main\r\n\t}\r\n}));\r\n\r\nconst UsersDataTable = (props) => {\r\n\tconst { className, data, ...rest } = props;\r\n\tconst dispatch = useDispatch();\r\n\tconst classes = useStyles();\r\n\r\n\tconst _editUser = (userId) => {\r\n\t\tdispatch(ToggleAddEditUserDialog(true, userId));\r\n\t};\r\n\r\n\tconst _resendConfirmationEmail = (userId) => {\r\n\t\tdispatch(ResendConfirmationEmail(userId));\r\n\t};\r\n\r\n\tconst _deactivateUser = (userId) => {\r\n\t\tdispatch(DeactivateUser(userId, rest.user.role));\r\n\t};\r\n\r\n\tconst _renderActions = (tableMeta) => {\r\n\t\tconst { rowData } = tableMeta;\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t{rowData[5] ? (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t _deactivateUser(rowData[0])}>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t _resendConfirmationEmail(rowData[0])}>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\t\r\n\t\t\t\t\t _editUser(rowData[0])}>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\r\n\t\t);\r\n\t};\r\n\r\n\tconst _getTableColumns = () => (\r\n\t\t[\r\n\t\t\t{\r\n\t\t\t\tname: 'id',\r\n\t\t\t\tlabel: 'Id',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\tfilter: false,\r\n\t\t\t\t\tviewColumns: false,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'name',\r\n\t\t\t\tlabel: 'Name',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'email',\r\n\t\t\t\tlabel: 'Email',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'role',\r\n\t\t\t\tlabel: 'Role',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'operators',\r\n\t\t\t\tlabel: 'Operators',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t\tcustomBodyRender: (value) => {\r\n\t\t\t\t\t\tif (value) {\r\n\t\t\t\t\t\t\tconst values = value.split(',');\r\n\t\t\t\t\t\t\tconst sortedValues = _.sortBy(values, val => val);\r\n\t\t\t\t\t\t\tconst operators = sortedValues.map((operator, index) => (\r\n\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t\t{operator}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t));\r\n\t\t\t\t\t\t\treturn operators;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn null;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'status',\r\n\t\t\t\tlabel: 'Status',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t\tcustomBodyRender: (value) => {\r\n\t\t\t\t\t\tif (value !== null) {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{value\r\n\t\t\t\t\t\t\t\t\t\t? 'Email confirmed'\r\n\t\t\t\t\t\t\t\t\t\t: 'Email not confirmed'}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn null;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'online',\r\n\t\t\t\tlabel: 'Online',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t\tcustomBodyRender: (value) => {\r\n\t\t\t\t\t\tif (value !== null) {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{value\r\n\t\t\t\t\t\t\t\t\t\t? 'Online'\r\n\t\t\t\t\t\t\t\t\t\t: 'Offline'}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn null;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'action',\r\n\t\t\t\tlabel: 'Actions',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tfilter: false,\r\n\t\t\t\t\tsort: false,\r\n\t\t\t\t\tviewColumns: false,\r\n\t\t\t\t\tempty: true,\r\n\t\t\t\t\tcustomBodyRender: (value, tableMeta, updateValue) => _renderActions(tableMeta)\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t]\r\n\t);\r\n\r\n\tconst _getTableOptions = () => ({\r\n\t\tfilterType: 'dropdown',\r\n\t\tselectableRows: false,\r\n\t\texpandableRows: false, // Try Adding This\r\n\t});\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nUsersDataTable.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tdata: PropTypes.array.isRequired,\r\n};\r\n\r\nexport default UsersDataTable;\r\n","import React from 'react';\r\n\r\nimport MuiDialogTitle from '@mui/material/DialogTitle';\r\nimport CloseIcon from '@mui/icons-material/Close';\r\nimport Typography from '@mui/material/Typography';\r\nimport withStyles from '@mui/styles/withStyles';\r\n\r\nimport IconButton from '@mui/material/IconButton';\r\n\r\nconst DialogTitle = withStyles(theme => ({\r\n\troot: {\r\n\t\tborderBottom: `1px solid ${theme.palette.divider}`,\r\n\t\tmargin: 0,\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\tcloseButton: {\r\n\t\tposition: 'absolute',\r\n\t\tright: theme.spacing(1),\r\n\t\ttop: theme.spacing(1),\r\n\t\tcolor: theme.palette.grey[500],\r\n\t},\r\n}))(props => {\r\n\tconst { children, classes, onClose } = props;\r\n\treturn (\r\n\t\t\r\n\t\t\t{children}\r\n\t\t\t{onClose ? (\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t) : null}\r\n\t\t\r\n\t);\r\n});\r\n\r\nexport default DialogTitle;\r\n","import withStyles from '@mui/styles/withStyles';\r\nimport MuiDialogContent from '@mui/material/DialogContent';\r\n\r\nconst DialogContent = withStyles(theme => ({\r\n\troot: {\r\n\t\tmargin: 0,\r\n\t\tpadding: theme.spacing(2),\r\n\t},\r\n}))(MuiDialogContent);\r\n\r\nexport default DialogContent;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Dialog, DialogActions, Typography, Button } from '@mui/material';\r\n\r\nimport DialogTitle from './components/DialogTitle.js';\r\nimport DialogContent from './components/DialogContent.js';\r\n\r\nconst propTypes = {\r\n\tonClose: PropTypes.func,\r\n\tonConfirmClicked: PropTypes.func,\r\n\tcancelLabel: PropTypes.string,\r\n\tconfirmLabel: PropTypes.string,\r\n\ttitle: PropTypes.string,\r\n\topen: PropTypes.bool,\r\n\tmodal: PropTypes.bool,\r\n\tisDisabled: PropTypes.bool,\r\n\tchildren: PropTypes.object,\r\n\thasConfirm: PropTypes.bool,\r\n\tautoScrollBodyContent: PropTypes.bool,\r\n\tdialogProps: PropTypes.object,\r\n\tmaxWidth: PropTypes.string,\r\n\tid: PropTypes.string\r\n};\r\n\r\nconst ModalDialog = (props) => {\r\n\tconst {\r\n\t\tcancelLabel,\r\n\t\tconfirmLabel,\r\n\t\ttitle,\r\n\t\topen,\r\n\t\thasConfirm = true,\r\n\t\tonClose,\r\n\t\tchildren,\r\n\t\tonConfirmClicked,\r\n\t\tisDisabled,\r\n\t\tmodal = false,\r\n\t\tautoScrollBodyContent,\r\n\t\tdialogProps,\r\n\t\tmaxWidth,\r\n\t\tid = 'confirm_dialog'\r\n\t} = props;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{title}\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{children}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{cancelLabel || 'Cancel'}\r\n\t\t\t\t\r\n\t\t\t\t{\r\n\t\t\t\t\thasConfirm && (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{confirmLabel || 'Apply'}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)\r\n\t\t\t\t}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nModalDialog.propTypes = propTypes;\r\n\r\nexport default ModalDialog;\r\n","/* eslint-disable no-unused-vars */\r\nimport React, { useState, useEffect, useRef } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport validate from 'validate.js';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Button, TextField, Typography, Grid, Select } from '@mui/material';\r\nimport useRouter from 'utils/useRouter';\r\nimport { SetFormState, GetOperatorProjects } from '../../../../../../actions/UsersActions';\r\nimport SelectField from '../../../../../../../../components/SelectField/SelectField.js';\r\n\r\nconst schema = {\r\n\tfirstname: {\r\n\t\tpresence: { allowEmpty: false, message: 'is required' },\r\n\t},\r\n\tlastname: {\r\n\t\tpresence: { allowEmpty: false, message: 'is required' },\r\n\t},\r\n\temail: {\r\n\t\tpresence: { allowEmpty: false, message: 'is required' },\r\n\t\temail: true,\r\n\t},\r\n\troleId: {\r\n\t\tpresence: { allowEmpty: false, message: 'is required' },\r\n\t},\r\n};\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tfields: {\r\n\t\tmargin: theme.spacing(-1),\r\n\t\tdisplay: 'flex',\r\n\t\tflexWrap: 'wrap',\r\n\t\t'& > *': {\r\n\t\t\tflexGrow: 1,\r\n\t\t\tmargin: theme.spacing(1),\r\n\t\t},\r\n\t},\r\n\tsubmitButton: {\r\n\t\tmarginTop: theme.spacing(2),\r\n\t\twidth: '100%',\r\n\t},\r\n}));\r\n\r\nconst AddEditUserForm = (props) => {\r\n\tconst { className, roles, operators, projects, isEdit, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst router = useRouter();\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\tconst formState = useSelector((state) => state.usersReducer.formState);\r\n\r\n\tconst usePrevious = (value) => {\r\n\t\tconst ref = useRef();\r\n\t\tuseEffect(() => {\r\n\t\t\tref.current = value;\r\n\t\t});\r\n\t\treturn ref.current;\r\n\t};\r\n\r\n\tconst useHasChanged = (val) => {\r\n\t\tconst prevVal = usePrevious(val);\r\n\t\treturn prevVal !== val;\r\n\t};\r\n\r\n\tconst hasOperatorIdsChanged = useHasChanged(formState.values.operatorIds);\r\n\r\n\tuseEffect(() => {\r\n\t\tconst errors = validate(formState.values, schema);\r\n\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tisValid: !errors,\r\n\t\t\terrors: errors || {},\r\n\t\t});\r\n\r\n\t\tif (hasOperatorIdsChanged) {\r\n\t\t\tdispatch(GetOperatorProjects(formState.values.operatorIds || []));\r\n\t\t}\r\n\t}, [formState.values]);\r\n\r\n\tconst handleChange = (event) => {\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tvalues: {\r\n\t\t\t\t...formState.values,\r\n\t\t\t\t[event.target.name]:\r\n\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t: event.target.value,\r\n\t\t\t},\r\n\t\t\ttouched: {\r\n\t\t\t\t...formState.touched,\r\n\t\t\t\t[event.target.name]: true,\r\n\t\t\t},\r\n\t\t});\r\n\t};\r\n\r\n\tconst hasError = (field) => (!!(formState.touched[field] && formState.errors[field]));\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\r\n\t);\r\n};\r\n\r\nAddEditUserForm.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\troles: PropTypes.array,\r\n\toperators: PropTypes.array,\r\n\tprojects: PropTypes.array,\r\n\tisEdit: PropTypes.bool,\r\n};\r\n\r\nexport default AddEditUserForm;\r\n","import React, { useEffect, useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tcolors,\r\n} from '@mui/material';\r\n\r\nimport ModalDialog from '../../../../../../components/ModalDialog/ModalDialog.js';\r\nimport AddEditUserForm from './components/AddEditUserForm/AddEditUserForm.js';\r\nimport { GetRoles, GetOperators, CreateUser, GetUser, EditUser } from '../../../../actions/UsersActions.js';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\twidth: 960,\r\n\t},\r\n\theader: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\tmaxWidth: 720,\r\n\t\tmargin: '0 auto',\r\n\t},\r\n\tcontent: {\r\n\t\tpadding: theme.spacing(0, 2),\r\n\t\tmaxWidth: 720,\r\n\t\tmargin: '0 auto',\r\n\t},\r\n\thelperText: {\r\n\t\ttextAlign: 'right',\r\n\t\tmarginRight: 0,\r\n\t},\r\n\tauthor: {\r\n\t\tmargin: theme.spacing(4, 0),\r\n\t\tdisplay: 'flex',\r\n\t},\r\n\tavatar: {\r\n\t\tmarginRight: theme.spacing(2),\r\n\t},\r\n\tactions: {\r\n\t\tbackgroundColor: colors.grey[100],\r\n\t\tpadding: theme.spacing(2),\r\n\t\tdisplay: 'flex',\r\n\t\talignContent: 'right',\r\n\t},\r\n\tapplyButton: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst AddEditUserDialog = (props) => {\r\n\tconst { author, open, onClose, onApply, className, ...rest } = props;\r\n\tconst dispatch = useDispatch();\r\n\tconst roles = useSelector((state) => state.usersReducer.roles);\r\n\tconst operators = useSelector((state) => state.usersReducer.operators);\r\n\tconst operatorProjects = useSelector((state) => state.usersReducer.operatorProjects);\r\n\tconst formState = useSelector((state) => state.usersReducer.formState);\r\n\tconst openAddEditUserDialogId = useSelector((state) => state.usersReducer.openAddEditUserDialogId);\r\n\tconst title = openAddEditUserDialogId ? 'Edit user' : 'Add user';\r\n\r\n\tconst _onConfirmClick = () => {\r\n\t\tif (formState.isValid) {\r\n\t\t\tif (openAddEditUserDialogId) {\r\n\t\t\t\tdispatch(EditUser(formState.values, rest.user.role));\r\n\t\t\t} else {\r\n\t\t\t\tdispatch(CreateUser(formState.values, rest.user.role));\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tconst getData = useCallback(() => {\r\n\t\tdispatch(GetRoles(rest.user.role));\r\n\t\tdispatch(GetOperators());\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\tgetData();\r\n\t\tif (openAddEditUserDialogId) {\r\n\t\t\tdispatch(GetUser(openAddEditUserDialogId));\r\n\t\t}\r\n\t}, [openAddEditUserDialogId]);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nAddEditUserDialog.propTypes = {\r\n\tauthor: PropTypes.object.isRequired,\r\n\tclassName: PropTypes.string,\r\n\tonApply: PropTypes.func,\r\n\tonClose: PropTypes.func,\r\n\topen: PropTypes.bool.isRequired,\r\n};\r\n\r\nexport default AddEditUserDialog;\r\n","import React, { useEffect, useCallback } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Grid, Button } from '@mui/material';\r\nimport AddIcon from '@mui/icons-material/Add';\r\nimport GroupIcon from '@mui/icons-material/Group';\r\nimport BusinessCenterIcon from '@mui/icons-material/BusinessCenter';\r\nimport AssignmentTurnedInIcon from '@mui/icons-material/AssignmentTurnedIn';\r\nimport { Page, Header } from 'components';\r\nimport Card from './components/Card/Card.js';\r\nimport UsersDataTable from './components/UsersDataTable/UsersDataTable.js';\r\nimport AddEditUsersDialog from './components/AddEditUserDialog/AddEditUserDialog.js';\r\n\r\nimport { GetUsers, GetUsersStats, ToggleAddEditUserDialog } from '../../actions/UsersActions';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\tcontainer: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n}));\r\n\r\nconst Users = () => {\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst user = useSelector((state) => state.session.user);\r\n\tconst usersStats = useSelector((state) => state.usersReducer.usersStats);\r\n\tconst users = useSelector((state) => state.usersReducer.users);\r\n\tconst openAddEditUserDialog = useSelector((state) => state.usersReducer.openAddEditUserDialog);\r\n\r\n\tconst _addEditUserClose = () => {\r\n\t\tdispatch(ToggleAddEditUserDialog(false));\r\n\t};\r\n\r\n\tconst _addUser = () => {\r\n\t\tdispatch(ToggleAddEditUserDialog(true));\r\n\t};\r\n\r\n\tconst _renderActions = () => (\r\n\t\t\r\n\t);\r\n\r\n\tconst getData = useCallback(() => {\r\n\t\tdispatch(GetUsers(user.role));\r\n\t\tdispatch(GetUsersStats());\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\tgetData();\r\n\t}, [getData]);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t} />\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t} />\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t} />\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t{openAddEditUserDialog && (\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\r\n\r\n\t);\r\n};\r\n\r\nexport default Users;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tAvatar,\r\n\tButton,\r\n\tCard,\r\n\tCardContent,\r\n\tCardHeader,\r\n\tDivider,\r\n\tGrid,\r\n\tTypography,\r\n} from '@mui/material';\r\n\r\nimport getInitials from 'utils/getInitials';\r\nimport { Label } from 'components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\theader: {\r\n\t\tpaddingBottom: 0,\r\n\t},\r\n\tcontent: {\r\n\t\tpadding: 10,\r\n\t\t'&:last-child': {\r\n\t\t\tpaddingBottom: 0,\r\n\t\t},\r\n\t},\r\n\tdescription: {\r\n\t\tpadding: theme.spacing(2, 3, 1, 3),\r\n\t},\r\n\ttags: {\r\n\t\tpadding: theme.spacing(0, 3, 1, 3),\r\n\t\t'& > * + *': {\r\n\t\t\tmarginLeft: theme.spacing(1),\r\n\t\t},\r\n\t},\r\n\tdetailsButton: {\r\n\t\tcolor: theme.palette.primary.main\r\n\t},\r\n\tdeleteButton: {\r\n\t\tcolor: theme.palette.error.main,\r\n\t},\r\n\tdetails: {\r\n\t\tpadding: theme.spacing(1, 3),\r\n\t},\r\n\tavatar: {\r\n\t\twidth: theme.spacing(15),\r\n\t\theight: theme.spacing(15),\r\n\t\tfontSize: theme.spacing(7)\r\n\t},\r\n}));\r\n\r\nconst OperatorCard = (props) => {\r\n\tconst { operator, deleteOperator, navigateDetails, className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\t\t{getInitials(operator.name)}\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\tclassName={classes.header}\r\n\t\t\t\tdisableTypography\r\n\t\t\t\ttitle={(\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{operator.name}\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t/>\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t navigateDetails(operator.id)}\r\n\t\t\t\t\t\t\t\tclassName={classes.detailsButton}\r\n\t\t\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tDetails\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t deleteOperator(operator)}\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tDelete\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nOperatorCard.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\toperator: PropTypes.object.isRequired,\r\n\tdeleteOperator: PropTypes.func,\r\n\tnavigateDetails: PropTypes.func,\r\n};\r\n\r\nexport default OperatorCard;\r\n","import React, { useState, useRef, useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tGrid,\r\n} from '@mui/material';\r\n\r\nimport OperatorCard from '../OperatorCard/OperatorCard.js';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: { marginTop: theme.spacing(3) },\r\n\theader: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tjustifyContent: 'space-between',\r\n\t\tflexWrap: 'wrap',\r\n\t\tmarginBottom: theme.spacing(2),\r\n\t},\r\n\ttitle: {\r\n\t\tposition: 'relative',\r\n\t\t'&:after': {\r\n\t\t\tposition: 'absolute',\r\n\t\t\tbottom: -8,\r\n\t\t\tleft: 0,\r\n\t\t\tcontent: '\" \"',\r\n\t\t\theight: 3,\r\n\t\t\twidth: 48,\r\n\t\t\tbackgroundColor: theme.palette.primary.main,\r\n\t\t},\r\n\t},\r\n\tactions: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tgridList: {\r\n\t\toverflowY: 'scroll',\r\n\t\tmaxHeight: '75vh'\r\n\t}\r\n}));\r\n\r\nconst Projects = (props) => {\r\n\tconst { className, operators, deleteOperator, navigateDetails, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t{operators.map((operator) => (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t))}\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nProjects.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\toperators: PropTypes.array,\r\n\tdeleteOperator: PropTypes.func,\r\n\tnavigateDetails: PropTypes.func,\r\n};\r\n\r\nexport default Projects;\r\n","/* eslint-disable no-unused-vars */\r\nimport React, { useState, useEffect } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport validate from 'validate.js';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Button, TextField, Typography, Grid, Select } from '@mui/material';\r\nimport useRouter from 'utils/useRouter';\r\nimport { SetFormState } from '../../../../../../actions/OperatorsActions';\r\nimport SelectField from '../../../../../../../../components/SelectField/SelectField.js';\r\n\r\nconst schema = {\r\n\tname: {\r\n\t\tpresence: { allowEmpty: false, message: 'is required' },\r\n\t},\r\n};\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tfields: {\r\n\t\tmargin: theme.spacing(-1),\r\n\t\tdisplay: 'flex',\r\n\t\tflexWrap: 'wrap',\r\n\t\t'& > *': {\r\n\t\t\tflexGrow: 1,\r\n\t\t\tmargin: theme.spacing(1),\r\n\t\t},\r\n\t},\r\n\tsubmitButton: {\r\n\t\tmarginTop: theme.spacing(2),\r\n\t\twidth: '100%',\r\n\t},\r\n}));\r\n\r\nconst AddOperatorForm = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst router = useRouter();\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\tconst formState = useSelector((state) => state.operatorsReducer.formState);\r\n\r\n\tuseEffect(() => {\r\n\t\tconst errors = validate(formState.values, schema);\r\n\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tisValid: !errors,\r\n\t\t\terrors: errors || {},\r\n\t\t});\r\n\t}, [formState.values]);\r\n\r\n\tconst handleChange = (event) => {\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tvalues: {\r\n\t\t\t\t...formState.values,\r\n\t\t\t\t[event.target.name]:\r\n\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t: event.target.value,\r\n\t\t\t},\r\n\t\t\ttouched: {\r\n\t\t\t\t...formState.touched,\r\n\t\t\t\t[event.target.name]: true,\r\n\t\t\t},\r\n\t\t});\r\n\t};\r\n\r\n\tconst hasError = (field) => (!!(formState.touched[field] && formState.errors[field]));\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\r\n\t);\r\n};\r\n\r\nAddOperatorForm.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default AddOperatorForm;\r\n","import React, { useEffect, useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tcolors,\r\n} from '@mui/material';\r\n\r\nimport ModalDialog from '../../../../../../components/ModalDialog/ModalDialog.js';\r\nimport AddOperatorForm from './components/AddOperatorForm/AddOperatorForm.js';\r\nimport { CreateOperator } from '../../../../actions/OperatorsActions.js';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\twidth: 960,\r\n\t},\r\n\theader: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\tmaxWidth: 720,\r\n\t\tmargin: '0 auto',\r\n\t},\r\n\tcontent: {\r\n\t\tpadding: theme.spacing(0, 2),\r\n\t\tmaxWidth: 720,\r\n\t\tmargin: '0 auto',\r\n\t},\r\n\thelperText: {\r\n\t\ttextAlign: 'right',\r\n\t\tmarginRight: 0,\r\n\t},\r\n\tauthor: {\r\n\t\tmargin: theme.spacing(4, 0),\r\n\t\tdisplay: 'flex',\r\n\t},\r\n\tavatar: {\r\n\t\tmarginRight: theme.spacing(2),\r\n\t},\r\n\tactions: {\r\n\t\tbackgroundColor: colors.grey[100],\r\n\t\tpadding: theme.spacing(2),\r\n\t\tdisplay: 'flex',\r\n\t\talignContent: 'right',\r\n\t},\r\n\tapplyButton: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst AddOperatorDialog = (props) => {\r\n\tconst { open, onClose, onApply, className, ...rest } = props;\r\n\tconst dispatch = useDispatch();\r\n\tconst formState = useSelector((state) => state.operatorsReducer.formState);\r\n\tconst title = 'Add operator';\r\n\r\n\tconst _onConfirmClick = () => {\r\n\t\tif (formState.isValid) {\r\n\t\t\tdispatch(CreateOperator(formState.values));\r\n\t\t}\r\n\t};\r\n\r\n\tconst getData = useCallback(() => {\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nAddOperatorDialog.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tonApply: PropTypes.func,\r\n\tonClose: PropTypes.func,\r\n\topen: PropTypes.bool.isRequired,\r\n};\r\n\r\nexport default AddOperatorDialog;\r\n","import React, { useEffect, useCallback } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Grid, Button } from '@mui/material';\r\nimport AddIcon from '@mui/icons-material/Add';\r\nimport useRouter from 'utils/useRouter';\r\nimport { Page, Header } from '../../../../components';\r\nimport OperatorsList from './components/OperatorsList/OperatorsList.js';\r\nimport AddOperatorDialog from './components/AddOperatorDialog/AddOperatorDialog.js';\r\n\r\nimport { GetOperators, ToggleAddOperatorDialog, DeleteOperator, NavigateDetails } from '../../actions/OperatorsActions';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\tcontainer: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n}));\r\n\r\nconst Operators = () => {\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst { history } = useRouter();\r\n\tconst user = useSelector((state) => state.session.user);\r\n\tconst openAddOperatorDialog = useSelector((state) => state.operatorsReducer.openAddOperatorDialog);\r\n\tconst operators = useSelector((state) => state.operatorsReducer.operators);\r\n\r\n\tconst _addOperatorClose = () => {\r\n\t\tdispatch(ToggleAddOperatorDialog(false));\r\n\t};\r\n\r\n\tconst _deleteOperator = (operator) => {\r\n\t\tdispatch(DeleteOperator(operator));\r\n\t};\r\n\r\n\tconst _addOperator = () => {\r\n\t\tdispatch(ToggleAddOperatorDialog(true));\r\n\t};\r\n\r\n\tconst _renderActions = () => (\r\n\t\t\r\n\t);\r\n\r\n\tconst _navigateDetails = (operatorId) => {\r\n\t\tdispatch(NavigateDetails(operatorId));\r\n\t\thistory.push('/management/operators/details');\r\n\t};\r\n\r\n\tconst getData = useCallback(() => {\r\n\t\tdispatch(GetOperators());\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\tgetData();\r\n\t}, [getData]);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t{openAddOperatorDialog && (\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default Operators;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport validate from 'validate.js';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tButton,\r\n\tCard,\r\n\tCardActions,\r\n\tCardContent,\r\n\tCardHeader,\r\n\tGrid,\r\n\tDivider,\r\n\tSwitch,\r\n\tTextField,\r\n\tTypography,\r\n\tcolors,\r\n} from '@mui/material';\r\n\r\nimport { SetFormState, UpdateOperator } from '../../../../../../actions/OperatorsActions';\r\n\r\nconst schema = {\r\n\tname: {\r\n\t\tpresence: { allowEmpty: false, message: 'is required' },\r\n\t},\r\n};\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tsaveButton: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst Details = (props) => {\r\n\tconst { operator, className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\tconst formState = useSelector((state) => state.operatorsReducer.formState);\r\n\r\n\tuseEffect(() => {\r\n\t\tconst errors = validate(formState.values, schema);\r\n\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tisValid: !errors,\r\n\t\t\terrors: errors || {},\r\n\t\t});\r\n\t}, [formState.values]);\r\n\r\n\tconst handleChange = (event) => {\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tvalues: {\r\n\t\t\t\t...formState.values,\r\n\t\t\t\t[event.target.name]:\r\n\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t: event.target.value,\r\n\t\t\t},\r\n\t\t\ttouched: {\r\n\t\t\t\t...formState.touched,\r\n\t\t\t\t[event.target.name]: true,\r\n\t\t\t},\r\n\t\t});\r\n\t};\r\n\r\n\tconst hasError = (field) => (!!(formState.touched[field] && formState.errors[field]));\r\n\r\n\tconst save = () => {\r\n\t\tdispatch(UpdateOperator(formState.values));\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\tSave Changes\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nDetails.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\toperator: PropTypes.object.isRequired,\r\n};\r\n\r\nexport default Details;\r\n","import React, { useRef } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { useDispatch } from 'react-redux';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tCard,\r\n\tCardContent,\r\n\tCardActions,\r\n\tAvatar,\r\n\tTypography,\r\n\tButton,\r\n\tcolors\r\n} from '@mui/material';\r\nimport getInitials from 'utils/getInitials';\r\nimport { UpdateImage } from '../../../../../../actions/OperatorsActions.js';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tflexDirection: 'column',\r\n\t\ttextAlgin: 'center',\r\n\t},\r\n\tname: {\r\n\t\tmarginTop: theme.spacing(1),\r\n\t},\r\n\tavatar: {\r\n\t\theight: 120,\r\n\t\twidth: 120,\r\n\t},\r\n\tremoveButton: {\r\n\t\twidth: '100%',\r\n\t\tcolor: theme.palette.error.main\r\n\t},\r\n\taddButton: {\r\n\t\twidth: '100%',\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst Picture = (props) => {\r\n\tconst { operator, className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst inputFile = useRef(null);\r\n\r\n\tconst _removeImage = () => {\r\n\t\tconst updateOperator = { ...operator };\r\n\t\tupdateOperator.avatar = null;\r\n\t\tdispatch(UpdateImage(updateOperator));\r\n\t};\r\n\r\n\tconst _addImage = () => {\r\n\t\tinputFile.current.click();\r\n\t};\r\n\r\n\tconst _onChangeInput = (event) => {\r\n\t\tif (event.target.files && event.target.files.length > 0) {\r\n\t\t\tconst file = event.target.files[0];\r\n\t\t\tconst reader = new FileReader();\r\n\t\t\treader.addEventListener('load', () => {\r\n\t\t\t\tconst updateOperator = { ...operator };\r\n\t\t\t\tupdateOperator.avatar = reader.result;\r\n\t\t\t\tdispatch(UpdateImage(updateOperator));\r\n\t\t\t}\r\n\t\t\t);\r\n\t\t\treader.readAsDataURL(event.target.files[0]);\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{getInitials(operator.name)}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t{operator.avatar === null ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\r\n\t\t\t { inputFile.current = ref; }} onChange={_onChangeInput} style={{ display: 'none' }} />\r\n\t\t\r\n\t);\r\n};\r\n\r\nPicture.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\toperator: PropTypes.object.isRequired,\r\n};\r\n\r\nexport default Picture;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Grid } from '@mui/material';\r\n\r\nimport { Picture, Details } from './components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tdeliverables: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tmembers: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n}));\r\n\r\nconst Overview = (props) => {\r\n\tconst { operator, className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nOverview.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\toperator: PropTypes.object.isRequired,\r\n};\r\n\r\nexport default Overview;\r\n","import React, { Fragment, useRef, useState, memo } from 'react';\r\nimport { useDispatch } from 'react-redux';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tListItemIcon,\r\n\tListItemText,\r\n\tTooltip,\r\n\tIconButton,\r\n\tMenu,\r\n\tMenuItem,\r\n} from '@mui/material';\r\nimport AddIcon from '@mui/icons-material/Add';\r\nimport MoreIcon from '@mui/icons-material/MoreVert';\r\n\r\nimport { ToggleAddProjectDialog } from '../../../../../../../../actions/OperatorsActions.js';\r\n\r\nconst useStyles = makeStyles(() => ({}));\r\n\r\nconst ActionsButton = (props) => {\r\n\tconst classes = useStyles();\r\n\tconst moreRef = useRef(null);\r\n\tconst [openMenu, setOpenMenu] = useState(false);\r\n\tconst dispatch = useDispatch();\r\n\tconst handleMenuOpen = () => {\r\n\t\tsetOpenMenu(true);\r\n\t};\r\n\r\n\tconst handleMenuClose = () => {\r\n\t\tsetOpenMenu(false);\r\n\t};\r\n\r\n\tconst _add = () => {\r\n\t\tdispatch(ToggleAddProjectDialog(true));\r\n\t\tsetOpenMenu(false);\r\n\t};\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nActionsButton.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default memo(ActionsButton);\r\n","import React, { useState } from 'react';\r\nimport { useDispatch } from 'react-redux';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport _ from 'underscore';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tcolors,\r\n\tIconButton,\r\n\tTooltip,\r\n\tCard,\r\n\tCardHeader,\r\n\tCardContent,\r\n\tDivider\r\n} from '@mui/material';\r\n\r\nimport CreateIcon from '@mui/icons-material/Create';\r\nimport EmailIcon from '@mui/icons-material/Email';\r\nimport ExitToAppIcon from '@mui/icons-material/ExitToApp';\r\nimport DeleteIcon from '@mui/icons-material/Delete';\r\nimport ActionsButton from './components/ActionsButton/ActionsButton.js';\r\nimport DataTable from '../../../../../../../../components/DataTable/DataTable.js';\r\nimport { DeleteProject } from '../../../../../../actions/OperatorsActions.js';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tpadding: 10,\r\n\t},\r\n\tinner: {\r\n\t\tminWidth: 700,\r\n\t},\r\n\tnameCell: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tavatar: {\r\n\t\theight: 42,\r\n\t\twidth: 42,\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tactions: {\r\n\t\tpadding: theme.spacing(1),\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tprimaryButton: {\r\n\t\tcolor: theme.palette.primary.main\r\n\t},\r\n\terrorButton: {\r\n\t\tcolor: theme.palette.error.main\r\n\t}\r\n}));\r\n\r\nconst ProjectsDataTable = (props) => {\r\n\tconst { className, data, operatorId, ...rest } = props;\r\n\tconst dispatch = useDispatch();\r\n\tconst classes = useStyles();\r\n\r\n\tconst _deleteProject = (projectId) => {\r\n\t\tdispatch(DeleteProject(projectId, operatorId));\r\n\t};\r\n\r\n\tconst _renderActions = (tableMeta) => {\r\n\t\tconst { rowData } = tableMeta;\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t _deleteProject(rowData[0])}>\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t};\r\n\r\n\tconst _getTableColumns = () => (\r\n\t\t[\r\n\t\t\t{\r\n\t\t\t\tname: 'id',\r\n\t\t\t\tlabel: 'Id',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\tfilter: false,\r\n\t\t\t\t\tviewColumns: false,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'name',\r\n\t\t\t\tlabel: 'Name',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'users',\r\n\t\t\t\tlabel: 'Users',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'action',\r\n\t\t\t\tlabel: 'Actions',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tfilter: false,\r\n\t\t\t\t\tsort: false,\r\n\t\t\t\t\tviewColumns: false,\r\n\t\t\t\t\tempty: true,\r\n\t\t\t\t\tcustomBodyRender: (value, tableMeta, updateValue) => _renderActions(tableMeta)\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t]\r\n\t);\r\n\r\n\tconst _getTableOptions = () => ({\r\n\t\tfilterType: 'dropdown',\r\n\t\tselectableRows: false,\r\n\t\texpandableRows: false, // Try Adding This\r\n\t});\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t}\r\n\t\t\t\t\ttitle=\"All projects\"\r\n\t\t\t\t/>\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nProjectsDataTable.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tdata: PropTypes.array.isRequired,\r\n\toperatorId: PropTypes.string\r\n};\r\n\r\nexport default ProjectsDataTable;\r\n","/* eslint-disable no-unused-vars */\r\nimport React, { useState, useEffect } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport validate from 'validate.js';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Button, TextField, Typography, Grid, Select } from '@mui/material';\r\nimport useRouter from 'utils/useRouter';\r\nimport { SetFormState } from '../../../../../../../../actions/OperatorsActions';\r\n\r\nconst schema = {\r\n\tname: {\r\n\t\tpresence: { allowEmpty: false, message: 'is required' },\r\n\t},\r\n};\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tfields: {\r\n\t\tmargin: theme.spacing(-1),\r\n\t\tdisplay: 'flex',\r\n\t\tflexWrap: 'wrap',\r\n\t\t'& > *': {\r\n\t\t\tflexGrow: 1,\r\n\t\t\tmargin: theme.spacing(1),\r\n\t\t},\r\n\t},\r\n\tsubmitButton: {\r\n\t\tmarginTop: theme.spacing(2),\r\n\t\twidth: '100%',\r\n\t},\r\n}));\r\n\r\nconst AddProjectForm = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst router = useRouter();\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\tconst formState = useSelector((state) => state.operatorsReducer.formState);\r\n\r\n\tuseEffect(() => {\r\n\t\tconst errors = validate(formState.values, schema);\r\n\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tisValid: !errors,\r\n\t\t\terrors: errors || {},\r\n\t\t});\r\n\t}, [formState.values]);\r\n\r\n\tconst handleChange = (event) => {\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tvalues: {\r\n\t\t\t\t...formState.values,\r\n\t\t\t\t[event.target.name]:\r\n\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t: event.target.value,\r\n\t\t\t},\r\n\t\t\ttouched: {\r\n\t\t\t\t...formState.touched,\r\n\t\t\t\t[event.target.name]: true,\r\n\t\t\t},\r\n\t\t});\r\n\t};\r\n\r\n\tconst hasError = (field) => (!!(formState.touched[field] && formState.errors[field]));\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\r\n\t);\r\n};\r\n\r\nAddProjectForm.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default AddProjectForm;\r\n","import React, { useEffect, useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tcolors,\r\n} from '@mui/material';\r\n\r\nimport ModalDialog from '../../../../../../../../components/ModalDialog/ModalDialog.js';\r\nimport AddProjectForm from './components/AddProjectForm/AddProjectForm.js';\r\nimport { CreateProject } from '../../../../../../actions/OperatorsActions.js';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\twidth: 960,\r\n\t},\r\n\theader: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\tmaxWidth: 720,\r\n\t\tmargin: '0 auto',\r\n\t},\r\n\tcontent: {\r\n\t\tpadding: theme.spacing(0, 2),\r\n\t\tmaxWidth: 720,\r\n\t\tmargin: '0 auto',\r\n\t},\r\n\thelperText: {\r\n\t\ttextAlign: 'right',\r\n\t\tmarginRight: 0,\r\n\t},\r\n\tauthor: {\r\n\t\tmargin: theme.spacing(4, 0),\r\n\t\tdisplay: 'flex',\r\n\t},\r\n\tavatar: {\r\n\t\tmarginRight: theme.spacing(2),\r\n\t},\r\n\tactions: {\r\n\t\tbackgroundColor: colors.grey[100],\r\n\t\tpadding: theme.spacing(2),\r\n\t\tdisplay: 'flex',\r\n\t\talignContent: 'right',\r\n\t},\r\n\tapplyButton: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst AddProjectDialog = (props) => {\r\n\tconst { operatorId, open, onClose, onApply, className, ...rest } = props;\r\n\tconst dispatch = useDispatch();\r\n\tconst formState = useSelector((state) => state.operatorsReducer.formState);\r\n\tconst title = 'Add project';\r\n\tconst _onConfirmClick = () => {\r\n\t\tif (formState.isValid) {\r\n\t\t\tdispatch(CreateProject({ name: formState.values.name, operatorId }));\r\n\t\t}\r\n\t};\r\n\r\n\tconst getData = useCallback(() => {\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nAddProjectDialog.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tonApply: PropTypes.func,\r\n\tonClose: PropTypes.func,\r\n\topen: PropTypes.bool.isRequired,\r\n\toperatorId: PropTypes.number.isRequired\r\n};\r\n\r\nexport default AddProjectDialog;\r\n","import React from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Grid } from '@mui/material';\r\n\r\nimport ProjectsDataTable from './components/ProjectsDataTable/ProjectsDataTable';\r\n\r\nimport AddProjectDialog from './components/AddProjectDialog/AddProjectDialog';\r\n\r\nimport { ToggleAddProjectDialog } from '../../../../actions/OperatorsActions.js';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tdeliverables: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tmembers: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n}));\r\n\r\nconst Projects = (props) => {\r\n\tconst { operator, className, ...rest } = props;\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst openAddProjectDialog = useSelector((state) => state.operatorsReducer.openAddProjectDialog);\r\n\r\n\tconst _addProjectClose = () => {\r\n\t\tdispatch(ToggleAddProjectDialog(false));\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t{openAddProjectDialog && (\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\r\n\t);\r\n};\r\n\r\nProjects.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\toperator: PropTypes.object\r\n};\r\n\r\nexport default Projects;\r\n","import React from 'react';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\n\r\nimport DataTable from '../../../../../../../../components/DataTable/DataTable.js';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t},\r\n\tinner: {\r\n\t\tminWidth: 700,\r\n\t},\r\n\tnameCell: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tavatar: {\r\n\t\theight: 42,\r\n\t\twidth: 42,\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tactions: {\r\n\t\tpadding: theme.spacing(1),\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tprimaryButton: {\r\n\t\tcolor: theme.palette.primary.main\r\n\t},\r\n\terrorButton: {\r\n\t\tcolor: theme.palette.error.main\r\n\t}\r\n}));\r\n\r\nconst UsersDataTable = (props) => {\r\n\tconst { className, data, ...rest } = props;\r\n\tconst classes = useStyles();\r\n\r\n\tconst _getTableColumns = () => (\r\n\t\t[\r\n\t\t\t{\r\n\t\t\t\tname: 'id',\r\n\t\t\t\tlabel: 'Id',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\tfilter: false,\r\n\t\t\t\t\tviewColumns: false,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'name',\r\n\t\t\t\tlabel: 'Name',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t]\r\n\t);\r\n\r\n\tconst _getTableOptions = () => ({\r\n\t\tfilterType: 'dropdown',\r\n\t\tselectableRows: false,\r\n\t\texpandableRows: false, // Try Adding This\r\n\t});\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nUsersDataTable.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tdata: PropTypes.array.isRequired,\r\n};\r\n\r\nexport default UsersDataTable;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Grid } from '@mui/material';\r\n\r\nimport UsersDataTable from './components/UsersDataTable/UsersDataTable';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tdeliverables: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tmembers: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n}));\r\n\r\nconst Users = (props) => {\r\n\tconst { users, className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nUsers.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tusers: PropTypes.array.isRequired,\r\n};\r\n\r\nexport default Users;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Redirect } from 'react-router-dom';\r\nimport PropTypes from 'prop-types';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Tabs, Tab, Divider, colors } from '@mui/material';\r\n\r\nimport axios from 'utils/axios';\r\nimport { Page, Header } from 'components';\r\nimport { Overview, Projects, Users } from './components';\r\nimport { GetOperator } from '../../actions/OperatorsActions';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tmaxWidth: '100%',\r\n\t\tmargin: '0 auto',\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\ttabs: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tdivider: {\r\n\t\tbackgroundColor: colors.grey[300],\r\n\t},\r\n\talert: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tcontent: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n}));\r\n\r\nconst OperatorDetails = () => {\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst [tab, setTab] = useState('overview');\r\n\r\n\tconst operatorId = useSelector((state) => state.operatorsReducer.detailsOperatorId);\r\n\tconst operator = useSelector((state) => state.operatorsReducer.operator);\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tconst fetchoperator = () => {\r\n\t\t\tdispatch(GetOperator(operatorId));\r\n\t\t};\r\n\r\n\t\tfetchoperator();\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, [operatorId]);\r\n\r\n\tconst handleTabsChange = (event, value) => {\r\n\t\tsetTab(value);\r\n\t};\r\n\r\n\tconst tabs = [\r\n\t\t{ value: 'overview', label: 'Overview' },\r\n\t\t{ value: 'projects', label: 'Projects' },\r\n\t\t{ value: 'users', label: 'Users' },\r\n\t];\r\n\r\n\tif (!tab) {\r\n\t\treturn ;\r\n\t}\r\n\r\n\tif (!tabs.find((t) => t.value === tab)) {\r\n\t\treturn ;\r\n\t}\r\n\r\n\tif (!operatorId) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t{tabs.map((item) => (\r\n\t\t\t\t\t\r\n\t\t\t\t))}\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t
\r\n\t\t\t\t{tab === 'overview' && }\r\n\t\t\t\t{tab === 'projects' && }\r\n\t\t\t\t{tab === 'users' && }\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default OperatorDetails;\r\n","import React, { useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport validate from 'validate.js';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tButton,\r\n\tCard,\r\n\tCardActions,\r\n\tCardContent,\r\n\tCardHeader,\r\n\tGrid,\r\n\tDivider,\r\n\tSwitch,\r\n\tTextField,\r\n\tTypography,\r\n\tcolors,\r\n} from '@mui/material';\r\n\r\nimport SelectField from '../../../../../../../../components/SelectField/SelectField.js';\r\n\r\nimport { SetFormState, UpdateSettings } from '../../../../../../actions/SettingsActions';\r\n\r\nconst schema = {\r\n\tfirstname: {\r\n\t\tpresence: { allowEmpty: false, message: 'is required' },\r\n\t},\r\n\tlastname: {\r\n\t\tpresence: { allowEmpty: false, message: 'is required' },\r\n\t},\r\n\toperatorId: {\r\n\t\tpresence: { allowEmpty: false, message: 'is required' },\r\n\t}\r\n};\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tsaveButton: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst GeneralForm = (props) => {\r\n\tconst { className, role, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst dispatch = useDispatch();\r\n\r\n\tconst operators = useSelector((state) => state.settingsReducer.operators);\r\n\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\tconst formState = useSelector((state) => state.settingsReducer.formState);\r\n\r\n\tuseEffect(() => {\r\n\t\tconst errors = validate(formState.values, schema);\r\n\r\n\t\tdispatch(SetFormState({\r\n\t\t\t...formState,\r\n\t\t\tisValid: !errors,\r\n\t\t\terrors: errors || {},\r\n\t\t}));\r\n\t}, [formState.values]);\r\n\r\n\tconst handleChange = (event) => {\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tvalues: {\r\n\t\t\t\t...formState.values,\r\n\t\t\t\t[event.target.name]:\r\n\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t: event.target.value,\r\n\t\t\t},\r\n\t\t\ttouched: {\r\n\t\t\t\t...formState.touched,\r\n\t\t\t\t[event.target.name]: true,\r\n\t\t\t},\r\n\t\t});\r\n\t};\r\n\r\n\tconst _onConfirmClick = () => {\r\n\t\tif (formState.isValid) {\r\n\t\t\tdispatch(UpdateSettings(formState.values));\r\n\t\t}\r\n\t};\r\n\r\n\tconst hasError = (field) => (!!(formState.touched[field] && formState.errors[field]));\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\tSave Changes\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nGeneralForm.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\trole: PropTypes.string\r\n};\r\n\r\nexport default GeneralForm;\r\n","import React, { useEffect } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Grid } from '@mui/material';\r\n\r\nimport { GeneralForm } from './components';\r\nimport { SetFormState, GetOperators } from '../../../../actions/SettingsActions';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n\troot: {},\r\n}));\r\n\r\nconst General = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst user = useSelector(state => state.session.user);\r\n\tconst formState = useSelector((state) => state.settingsReducer.formState);\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tdispatch(SetFormState({\r\n\t\t\t...formState,\r\n\t\t\tvalues: { ...user }\r\n\t\t}));\r\n\r\n\t\tif (user && user.id) {\r\n\t\t\tdispatch(GetOperators(user.id));\r\n\t\t}\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\tif (!user) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nGeneral.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default General;\r\n","import React, { Fragment } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tCard,\r\n\tCardHeader,\r\n\tCardContent,\r\n\tCardActions,\r\n\tGrid,\r\n\tFormControlLabel,\r\n\tCheckbox,\r\n\tTypography,\r\n\tButton,\r\n\tDivider,\r\n\tcolors,\r\n} from '@mui/material';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\titem: {\r\n\t\tdisplay: 'flex',\r\n\t\tflexDirection: 'column',\r\n\t},\r\n\tsaveButton: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst Notifications = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tSystem\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tYou will recieve emails in your business email\r\n\t\t\t\t\t\t\t\taddress\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\tlabel=\"Email alerts\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tlabel=\"Push Notifications\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\tlabel=\"Text message\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\tlabel={(\r\n\t\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tPhone calls\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tShort voice phone updating you\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tChat App\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tYou will recieve emails in your business email\r\n\t\t\t\t\t\t\t\taddress\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\tlabel=\"Email\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\tlabel=\"Push notifications\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n};\r\n\r\nNotifications.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default Notifications;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport PropTypes from 'prop-types';\r\nimport validate from 'validate.js';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tCard,\r\n\tCardHeader,\r\n\tCardContent,\r\n\tCardActions,\r\n\tGrid,\r\n\tButton,\r\n\tDivider,\r\n\tTextField,\r\n\tcolors,\r\n} from '@mui/material';\r\n\r\nimport { SetFormState, ChangePassword } from '../../../../actions/SettingsActions';\r\n\r\nconst schema = {\r\n\toldpassword: {\r\n\t\tpresence: { allowEmpty: false, message: 'is required' },\r\n\t},\r\n\tnewpassword: {\r\n\t\tpresence: { allowEmpty: false, message: 'is required' },\r\n\t},\r\n\tconfirmnewpassword: {\r\n\t\tpresence: { allowEmpty: false, message: 'is required' },\r\n\t\tequality: 'newpassword',\r\n\t}\r\n};\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tsaveButton: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst Security = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\r\n\tconst dispatch = useDispatch();\r\n\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\tconst formState = useSelector((state) => state.settingsReducer.formState);\r\n\r\n\tuseEffect(() => {\r\n\t\tconst errors = validate(formState.values, schema);\r\n\r\n\t\tdispatch(SetFormState({\r\n\t\t\t...formState,\r\n\t\t\tisValid: !errors,\r\n\t\t\terrors: errors || {},\r\n\t\t}));\r\n\t}, [formState.values]);\r\n\r\n\tconst handleChange = (event) => {\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tvalues: {\r\n\t\t\t\t...formState.values,\r\n\t\t\t\t[event.target.name]:\r\n\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t: event.target.value,\r\n\t\t\t},\r\n\t\t\ttouched: {\r\n\t\t\t\t...formState.touched,\r\n\t\t\t\t[event.target.name]: true,\r\n\t\t\t},\r\n\t\t});\r\n\t};\r\n\r\n\tconst _onConfirmClick = () => {\r\n\t\tif (formState.isValid) {\r\n\t\t\tdispatch(ChangePassword(formState.values));\r\n\t\t}\r\n\t};\r\n\r\n\tconst hasError = (field) => (!!(formState.touched[field] && formState.errors[field]));\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\tSave changes\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nSecurity.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default Security;\r\n","import React, { useState } from 'react';\r\nimport { Redirect } from 'react-router-dom';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Tabs, Tab, Divider, colors } from '@mui/material';\r\n\r\nimport { Page, Header } from 'components';\r\nimport {\r\n\tGeneral,\r\n\tSubscription,\r\n\tNotifications,\r\n\tSecurity,\r\n} from './components';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tmaxWidth: '100%',\r\n\t\tmargin: '0 auto',\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\ttabs: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tdivider: {\r\n\t\tbackgroundColor: colors.grey[300],\r\n\t},\r\n\tcontent: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n}));\r\n\r\nconst Settings = (props) => {\r\n\tconst classes = useStyles();\r\n\tconst [tab, setTab] = useState('general');\r\n\r\n\tconst handleTabsChange = (event, value) => {\r\n\t\tsetTab(value);\r\n\t};\r\n\r\n\tconst tabs = [\r\n\t\t{ value: 'general', label: 'General' },\r\n\t\t// { value: 'subscription', label: 'Subscription' },\r\n\t\t// { value: 'notifications', label: 'Notifications' },\r\n\t\t{ value: 'security', label: 'Security' },\r\n\t];\r\n\r\n\tif (!tab) {\r\n\t\treturn ;\r\n\t}\r\n\r\n\tif (!tabs.find((t) => t.value === tab)) {\r\n\t\treturn ;\r\n\t}\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t{tabs.map((item) => (\r\n\t\t\t\t\t\r\n\t\t\t\t))}\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t
\r\n\t\t\t\t{tab === 'general' && }\r\n\t\t\t\t{/* {tab === 'subscription' && }\r\n\t\t\t\t{tab === 'notifications' && } */}\r\n\t\t\t\t{tab === 'security' && }\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nSettings.propTypes = {\r\n};\r\n\r\nexport default Settings;\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tButton,\r\n\tCard,\r\n\tCardContent,\r\n\tCardHeader,\r\n\tDivider,\r\n\tLink,\r\n\tTypography,\r\n} from '@mui/material';\r\n\r\nimport axios from 'utils/axios';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\taction: {\r\n\t\tmarginRight: 0,\r\n\t\tmarginTop: 0,\r\n\t},\r\n\toverview: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tflexWrap: 'wrap',\r\n\t\tjustifyContent: 'space-between',\r\n\t\t[theme.breakpoints.down('lg')]: {\r\n\t\t\tflexDirection: 'column-reverse',\r\n\t\t\talignItems: 'flex-start',\r\n\t\t},\r\n\t},\r\n\tproduct: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tproductImage: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t\theight: 48,\r\n\t\twidth: 48,\r\n\t},\r\n\tdetails: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t\tflexWrap: 'wrap',\r\n\t\tjustifyContent: 'space-between',\r\n\t\t[theme.breakpoints.down('lg')]: {\r\n\t\t\tflexDirection: 'column',\r\n\t\t\talignItems: 'flex-start',\r\n\t\t},\r\n\t},\r\n\tnotice: {\r\n\t\tmarginTop: theme.spacing(2),\r\n\t},\r\n}));\r\n\r\nconst Subscription = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\r\n\tconst classes = useStyles();\r\n\tconst [subscription, setSubscription] = useState(null);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet mounted = true;\r\n\r\n\t\tconst fetchSubscription = () => {\r\n\t\t\taxios.get('/api/account/subscription').then((response) => {\r\n\t\t\t\tif (mounted) {\r\n\t\t\t\t\tsetSubscription(response.data.subscription);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tfetchSubscription();\r\n\r\n\t\treturn () => {\r\n\t\t\tmounted = false;\r\n\t\t};\r\n\t}, []);\r\n\r\n\tif (!subscription) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\t\tUpgrade plan\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\tclasses={{ action: classes.action }}\r\n\t\t\t\ttitle=\"Manage your subscription\"\r\n\t\t\t/>\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{subscription.currency}\r\n\t\t\t\t\t\t\t\t{subscription.price}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t/mo\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{subscription.name}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{subscription.proposalsLeft}\r\n\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\tproposals left\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{subscription.templatesLeft}\r\n\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\ttemplates\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{subscription.invitesLeft}\r\n\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\tinvites left\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{subscription.adsLeft}\r\n\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\tads left\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{subscription.hasAnalytics && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tAnalytics dashboard\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t{subscription.hasEmailAlerts && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tEmail alerts\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\tThe refunds don't work once you have the subscription, but\r\n\t\t\t\t\tyou can always\r\n\t\t\t\t\t{' '}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tCancel your subscription\r\n\t\t\t\t\t\r\n\t\t\t\t\t.\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nSubscription.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default Subscription;\r\n","import React, { useEffect, useMemo, useCallback, useRef } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport L from 'leaflet';\r\nimport 'leaflet.sync';\r\nimport _ from 'underscore';\r\nimport { onUpdateLegend } from 'components/Map/actions/MapActions';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tButton, Chip, Collapse, Divider, Drawer,\r\n\tFormControlLabel, Radio, RadioGroup, Slider,\r\n\tTextField, Typography, Checkbox, Card, Grid, FormControl,\r\n\tFormGroup, FormLabel, Switch, ToggleButton, ToggleButtonGroup,\r\n\tAutocomplete, createFilterOptions\r\n} from '@mui/material';\r\nimport CheckBoxOutlineBlankIcon from '@mui/icons-material/CheckBoxOutlineBlank';\r\nimport CheckBoxIcon from '@mui/icons-material/CheckBox';\r\nimport { Page, Header, Map, SelectField, Label, SearchBar, FiltersDrawer } from 'components';\r\nimport validate from 'validate.js';\r\nimport {\r\n\tSetFormState, ToggleSummaryDialog, GetSiteIdLocation,\r\n} from '../../actions/MapDriveTestsActions';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\theight: '100%',\r\n\t\tdisplay: 'flex',\r\n\t\tflexDirection: 'column',\r\n\t},\r\n\tdrawer: {\r\n\t\twidth: 420,\r\n\t\tmaxWidth: '100%',\r\n\t},\r\n\theader: {\r\n\t\tpadding: theme.spacing(2, 1),\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'space-between',\r\n\t},\r\n\tbuttonIcon: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tcontent: {\r\n\t\tpadding: theme.spacing(0, 3),\r\n\t\tflexGrow: 1,\r\n\t},\r\n\tcontentSection: {\r\n\t\tpadding: theme.spacing(2, 0),\r\n\t},\r\n\tcontentSectionHeader: {\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'space-between',\r\n\t\tcursor: 'pointer',\r\n\t},\r\n\tcontentSectionContent: {},\r\n\tformGroup: {\r\n\t\tpadding: theme.spacing(2, 0),\r\n\t},\r\n\tfieldGroup: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tfield: {\r\n\t\tmarginTop: 0,\r\n\t\tmarginBottom: 0,\r\n\t},\r\n\tflexGrow: {\r\n\t\tflexGrow: 1,\r\n\t},\r\n\taddButton: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n\ttags: {\r\n\t\tmarginTop: theme.spacing(1),\r\n\t},\r\n\tminAmount: {\r\n\t\tmarginRight: theme.spacing(3),\r\n\t},\r\n\tmaxAmount: {\r\n\t\tmarginLeft: theme.spacing(3),\r\n\t},\r\n\tradioGroup: {},\r\n\tactions: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\t'& > * + *': {\r\n\t\t\tmarginTop: theme.spacing(2),\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst TopToolBar = (props) => {\r\n\tconst { className, open, onClose, onFilter, filterDisabled, onClear, ...rest } = props;\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\tconst formState = useSelector((state) => state.mapDriveTestsReducer.formState);\r\n\tconst sitesIds = useSelector(state => state.mapDriveTestsReducer.sitesIds);\r\n\tconst maps = useSelector(state => state.mapReducer.maps);\r\n\r\n\tconst handleChangeMapFilters = (event) => {\r\n\t\tif (event.target.checked) {\r\n\t\t\tsetFormState({\r\n\t\t\t\t...formState,\r\n\t\t\t\tvalues: {\r\n\t\t\t\t\t...formState.values,\r\n\t\t\t\t\t[event.target.name]:\r\n\t\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t\t: event.target.value,\r\n\t\t\t\t\tmapSize: 10\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tsetFormState({\r\n\t\t\t\t...formState,\r\n\t\t\t\tvalues: {\r\n\t\t\t\t\t...formState.values,\r\n\t\t\t\t\t[event.target.name]:\r\n\t\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t\t: event.target.value,\r\n\t\t\t\t\tmapSize: 12\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleChangeMapAutoZoom = (event) => {\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tvalues: {\r\n\t\t\t\t...formState.values,\r\n\t\t\t\t[event.target.name]:\r\n\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t: event.target.value\r\n\t\t\t},\r\n\t\t\ttouched: {\r\n\t\t\t\t...formState.touched,\r\n\t\t\t\t[event.target.name]: true,\r\n\t\t\t},\r\n\t\t});\r\n\t};\r\n\r\n\tconst _onSiteIdChange = (value) => {\r\n\t\tlet siteId = null;\r\n\t\tif (value !== null) {\r\n\t\t\tsiteId = value.value;\r\n\t\t}\r\n\t\tdispatch(GetSiteIdLocation(siteId));\r\n\t};\r\n\r\n\tconst _onSummaryClick = (event) => {\r\n\t\tdispatch(ToggleSummaryDialog(true));\r\n\t};\r\n\r\n\tconst cardStyle = {\r\n\t\t// height: '10vh'\r\n\t};\r\n\r\n\tconst filterOptions = createFilterOptions({\r\n\t\tlimit: 20\r\n\t});\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tlabel=\"Auto Zoom\"\r\n\t\t\t\t\t\t\t\tlabelPlacement=\"start\"\r\n\t\t\t\t\t\t\t\tchecked={formState.values.mapAutoZoom}\r\n\t\t\t\t\t\t\t\tonChange={handleChangeMapAutoZoom}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tlabel=\"Filters\"\r\n\t\t\t\t\t\t\t\tlabelPlacement=\"start\"\r\n\t\t\t\t\t\t\t\tchecked={formState.values.mapFilters}\r\n\t\t\t\t\t\t\t\tonChange={handleChangeMapFilters}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{/*\t\r\n\t\t\t\t\t\t\t option.text}\r\n\t\t\t\t\t\t\t\tonChange={(event, value) => { _onSiteIdChange(value); }}\r\n\t\t\t\t\t\t\t\trenderInput={(params) => }\r\n\t\t\t\t\t\t\t\tfilterOptions={filterOptions}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tSummary\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t */}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nTopToolBar.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\topen: PropTypes.bool.isRequired,\r\n\tonClose: PropTypes.func.isRequired,\r\n\tonFilter: PropTypes.func.isRequired,\r\n\tfilterDisabled: PropTypes.bool,\r\n\tonClear: PropTypes.func\r\n};\r\n\r\nexport default TopToolBar;\r\n","import React, { useEffect, useCallback, useMemo, useRef } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport _, { mapObject, object } from 'underscore';\r\nimport { makeStyles } from '@mui/styles';\r\nimport L from 'leaflet';\r\nimport {\r\n\tButton, Chip, Collapse, Divider, Drawer,\r\n\tFormControlLabel, Radio, RadioGroup, Slider,\r\n\tTextField, Typography, Checkbox, Card, Grid,\r\n\tListItemText, ListItemIcon, ListItem, ListSubheader,\r\n\tList, FormGroup, ToggleButton, ToggleButtonGroup,\r\n\tAutocomplete\r\n} from '@mui/material';\r\nimport { onUpdateLegend } from 'components/Map/actions/MapActions';\r\nimport CheckBoxOutlineBlankIcon from '@mui/icons-material/CheckBoxOutlineBlank';\r\nimport CheckBoxIcon from '@mui/icons-material/CheckBox';\r\nimport { Page, Header, Map, SelectField, Label, SearchBar, FiltersDrawer } from 'components';\r\nimport validate from 'validate.js';\r\nimport InboxIcon from '@mui/icons-material/MoveToInbox';\r\nimport PhoneAndroidIcon from '@mui/icons-material/PhoneAndroid';\r\nimport ScannerIcon from '@mui/icons-material/Scanner';\r\nimport SettingsInputAntennaIcon from '@mui/icons-material/SettingsInputAntenna';\r\nimport AppsIcon from '@mui/icons-material/Apps';\r\nimport BubbleChartIcon from '@mui/icons-material/BubbleChart';\r\nimport ExpandLess from '@mui/icons-material/ExpandLess';\r\nimport ExpandMore from '@mui/icons-material/ExpandMore';\r\nimport StarBorder from '@mui/icons-material/StarBorder';\r\nimport {\r\n\tSetFormState,\r\n\tGetTopology2g, GetTopology3g, GetTopology4g,\r\n\tGetTopologyLabels2g, GetTopologyLabels3g, GetTopologyLabels4g,\r\n} from '../../actions/MapDriveTestsActions';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\theight: '100%',\r\n\t\tdisplay: 'flex',\r\n\t\tflexDirection: 'column',\r\n\t},\r\n\tdrawer: {\r\n\t\twidth: 420,\r\n\t\tmaxWidth: '100%',\r\n\t},\r\n\theader: {\r\n\t\tpadding: theme.spacing(2, 1),\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'space-between',\r\n\t},\r\n\tbuttonIcon: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tcontent: {\r\n\t\tpadding: theme.spacing(0, 3),\r\n\t\tflexGrow: 1,\r\n\t},\r\n\tcontentSection: {\r\n\t\tpadding: theme.spacing(2, 0),\r\n\t},\r\n\tcontentSectionHeader: {\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'space-between',\r\n\t\tcursor: 'pointer',\r\n\t},\r\n\tcontentSectionContent: {},\r\n\tformGroup: {\r\n\t\tpadding: theme.spacing(2, 0),\r\n\t},\r\n\tfieldGroup: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tfield: {\r\n\t\tmarginTop: 0,\r\n\t\tmarginBottom: 0,\r\n\t},\r\n\tflexGrow: {\r\n\t\tflexGrow: 1,\r\n\t},\r\n\taddButton: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n\ttags: {\r\n\t\tmarginTop: theme.spacing(1),\r\n\t},\r\n\tminAmount: {\r\n\t\tmarginRight: theme.spacing(3),\r\n\t},\r\n\tmaxAmount: {\r\n\t\tmarginLeft: theme.spacing(3),\r\n\t},\r\n\tradioGroup: {},\r\n\tactions: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\t'& > * + *': {\r\n\t\t\tmarginTop: theme.spacing(2),\r\n\t\t},\r\n\t},\r\n\t// Filter child\r\n\t// root: {\r\n\t// \twidth: '100%',\r\n\t// \tmaxWidth: 360,\r\n\t// \tbackgroundColor: theme.palette.background.paper,\r\n\t// },\r\n\tnested: {\r\n\t\tpaddingLeft: theme.spacing(4),\r\n\t},\r\n\tnestedTwo: {\r\n\t\tpaddingLeft: theme.spacing(2),\r\n\t},\r\n}));\r\nconst bands2g = [];\r\nconst bands3g = [];\r\nconst bands4g = ['700', '800', '900', '1800', '2100', '2600'];\r\n\r\nconst SideFilters = (props) => {\r\n\tconst { className, onClose, onFilter, filterDisabled, onClear, height, ...rest } = props;\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\r\n\t// Map\r\n\tconst maps = useSelector(state => state.mapReducer.maps);\r\n\tconst formState = useSelector((state) => state.mapDriveTestsReducer.formState);\r\n\tconst mapOne = maps.filter(item => item.id === 'failures-map')[0];\r\n\tconst topology2gData = useSelector(state => state.mapDriveTestsReducer.topology2gData);\r\n\tconst topology3gData = useSelector(state => state.mapDriveTestsReducer.topology3gData);\r\n\tconst topology4gData = useSelector(state => state.mapDriveTestsReducer.topology4gData);\r\n\tconst topologyLabels2gData = useSelector(state => state.mapDriveTestsReducer.topologyLabels2gData);\r\n\tconst topologyLabels3gData = useSelector(state => state.mapDriveTestsReducer.topologyLabels3gData);\r\n\tconst topologyLabels4gData = useSelector(state => state.mapDriveTestsReducer.topologyLabels4gData);\r\n\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\tconst role = useSelector(state => state.session.user.role);\r\n\r\n\t// Topology\r\n\tconst [openTopology, setOpenTopology] = React.useState(true);\r\n\tconst [openTopology4g, setOpenTopology4g] = React.useState(true);\r\n\tconst [openTopology3g, setOpenTopology3g] = React.useState(false);\r\n\tconst [openTopology2g, setOpenTopology2g] = React.useState(false);\r\n\r\n\tconst [state, setState] = React.useState({\r\n\t\ttopology2g900: false,\r\n\t\ttopology2g1800: false,\r\n\t\ttopologyLabels2g: false,\r\n\t\ttopology3g900: false,\r\n\t\ttopology3g2100: false,\r\n\t\ttopologyLabels3g: false,\r\n\t\ttopology4g800: false,\r\n\t\ttopology4g2100: false,\r\n\t\ttopology4g2600: false,\r\n\t\ttopology4g700: false,\r\n\t\ttopology4g900: false,\r\n\t\ttopology4g1800: false,\r\n\t\ttopologyLabels4g: false,\r\n\t});\r\n\tconst [allBands4g, setAllBands4g] = React.useState(false);\r\n\r\n\tconst {\r\n\t\ttopology2g900, topology2g1800, topologyLabels2g,\r\n\t\ttopology3g900, topology3g2100, topologyLabels3g,\r\n\t\ttopology4g700, topology4g800, topology4g900, topology4g1800, topology4g2100, topology4g2600, topologyLabels4g\r\n\t} = state;\r\n\r\n\t// Topology\r\n\tconst handleClickTopology = () => {\r\n\t\tsetOpenTopology(!openTopology);\r\n\t};\r\n\tconst handleClickTopology4g = () => {\r\n\t\tsetOpenTopology4g(!openTopology4g);\r\n\t};\r\n\tconst handleClickTopology3g = () => {\r\n\t\tsetOpenTopology3g(!openTopology3g);\r\n\t};\r\n\tconst handleClickTopology2g = () => {\r\n\t\tsetOpenTopology2g(!openTopology2g);\r\n\t};\r\n\r\n\tconst _removeLayerById = (map, id) => {\r\n\t\tmap.RemoveLayerById(id);\r\n\t};\r\n\r\n\t// Use Effect\r\n\tconst getSites = () => {\r\n\t\t// Filtro para sql\r\n\t\tconst mapBoundsPoints = {\r\n\t\t\tnorthEast: {\r\n\t\t\t\tlat: 40.34595538154793,\r\n\t\t\t\tlng: -3.80702018737793\r\n\t\t\t},\r\n\t\t\tsouthWest: {\r\n\t\t\t\tlat: 40.30158888865566,\r\n\t\t\t\tlng: -3.89516830444336\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\tsetState({\r\n\t\t\ttopology4g800: true,\r\n\t\t\ttopology4g2100: true,\r\n\t\t\ttopology4g2600: true,\r\n\t\t\ttopology4g700: true,\r\n\t\t\ttopology4g900: true,\r\n\t\t\ttopology4g1800: true,\r\n\t\t\ttopologyLabels4g: true, });\r\n\r\n\t\tsetAllBands4g(true);\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tgetSites();\r\n\t}, []);\r\n\r\n\tconst handleChangeTopology2g = (event) => {\r\n\t\tsetState({ ...state, [event.target.name]: event.target.checked });\r\n\t\tconst _map = mapOne.control.mapContext.map;\r\n\t\t// const width = _map.getBounds().getEast() - _map.getBounds().getWest();\r\n\t\t// const height = _map.getBounds().getNorth() - _map.getBounds().getSouth();\r\n\r\n\t\t// console.log(\r\n\t\t// \t`center:${_map.getCenter()}\\n`\r\n\t\t// \t+ `width:${width}\\n`\r\n\t\t// \t+ `height:${height}\\n`\r\n\t\t// \t+ `size in pixels:${_map.getSize()}`\r\n\t\t// );\r\n\r\n\t\t// Filtro para sql\r\n\t\tconst mapBounds = _map.getBounds();\r\n\t\tconst mapBoundsPoints = {\r\n\t\t\tnorthEast: mapBounds._northEast,\r\n\t\t\tsouthWest: mapBounds._southWest\r\n\t\t};\r\n\r\n\t\t// if (width > 0.65 || height > 0.35) {\r\n\t\t// \tconsole.log('remover as layers');\r\n\t\t// } else\r\n\t\tif (event.target.name === 'topology2g900' && event.target.checked) {\r\n\t\t\tconst index = bands2g.indexOf('900');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands2g.push('900');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology2g(userId, bands2g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels2g) {\r\n\t\t\t\tdispatch(GetTopologyLabels2g(userId, bands2g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology2g900' && !event.target.checked) {\r\n\t\t\tconst index = bands2g.indexOf('900');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands2g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology2g(userId, bands2g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels2g(userId, bands2g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology2g1800' && event.target.checked) {\r\n\t\t\tconst index = bands2g.indexOf('1800');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands2g.push('1800');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology2g(userId, bands2g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels2g) {\r\n\t\t\t\tdispatch(GetTopologyLabels2g(userId, bands2g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology2g1800' && !event.target.checked) {\r\n\t\t\tconst index = bands2g.indexOf('1800');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands2g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology2g(userId, bands2g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels2g(userId, bands2g, mapBoundsPoints));\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleChangeTopology3g = (event) => {\r\n\t\tsetState({ ...state, [event.target.name]: event.target.checked });\r\n\t\tconst _map = mapOne.control.mapContext.map;\r\n\t\t// const width = _map.getBounds().getEast() - _map.getBounds().getWest();\r\n\t\t// const height = _map.getBounds().getNorth() - _map.getBounds().getSouth();\r\n\r\n\t\t// Filtro para sql\r\n\t\tconst mapBounds = _map.getBounds();\r\n\t\tconst mapBoundsPoints = {\r\n\t\t\tnorthEast: mapBounds._northEast,\r\n\t\t\tsouthWest: mapBounds._southWest\r\n\t\t};\r\n\r\n\t\t// if (width > 0.65 || height > 0.35) {\r\n\t\t// \tconsole.log('remover as layers');\r\n\t\t// } else\r\n\t\tif (event.target.name === 'topology3g900' && event.target.checked) {\r\n\t\t\tconst index = bands3g.indexOf('900');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands3g.push('900');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology3g(userId, bands3g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels3g) {\r\n\t\t\t\tdispatch(GetTopologyLabels3g(userId, bands3g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology3g900' && !event.target.checked) {\r\n\t\t\tconst index = bands3g.indexOf('900');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands3g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology3g(userId, bands3g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels3g(userId, bands3g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology3g2100' && event.target.checked) {\r\n\t\t\tconst index = bands3g.indexOf('2100');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands3g.push('2100');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology3g(userId, bands3g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels3g) {\r\n\t\t\t\tdispatch(GetTopologyLabels3g(userId, bands3g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology3g2100' && !event.target.checked) {\r\n\t\t\tconst index = bands3g.indexOf('2100');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands3g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology3g(userId, bands3g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels3g(userId, bands3g, mapBoundsPoints));\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleChangeTopology4g = (event) => {\r\n\t\tsetState({ ...state, [event.target.name]: event.target.checked });\r\n\r\n\t\tconst _map = mapOne.control.mapContext.map;\r\n\t\t// const width = _map.getBounds().getEast() - _map.getBounds().getWest();\r\n\t\t// const height = _map.getBounds().getNorth() - _map.getBounds().getSouth();\r\n\t\t// const zoom = _map.getZoom();\r\n\r\n\t\t// Filtro para sql\r\n\t\t/*\r\n\t\tconst mapBounds = _map.getBounds();\r\n\t\tconst mapBoundsPoints = {\r\n\t\t\tnorthEast: mapBounds._northEast,\r\n\t\t\tsouthWest: mapBounds._southWest\r\n\t\t};\r\n\t\t*/\r\n\t\tconst mapBoundsPoints = {\r\n\t\t\tnorthEast: {\r\n\t\t\t\tlat: 40.34595538154793,\r\n\t\t\t\tlng: -3.80702018737793\r\n\t\t\t},\r\n\t\t\tsouthWest: {\r\n\t\t\t\tlat: 40.30158888865566,\r\n\t\t\t\tlng: -3.89516830444336\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t// console.log(mapBounds);\r\n\t\t// console.log(zoom);\r\n\t\t// if (width > 0.65 || height > 0.35) {\r\n\t\t// \tconsole.log('remover as layers');\r\n\t\t// } else\r\n\r\n\t\tif (event.target.name === 'allBands4g' && event.target.checked) {\r\n\t\t\tbands4g.push('700');\r\n\t\t\tbands4g.push('800');\r\n\t\t\tbands4g.push('900');\r\n\t\t\tbands4g.push('1800');\r\n\t\t\tbands4g.push('2100');\r\n\t\t\tbands4g.push('2600');\r\n\r\n\t\t\tsetState({\r\n\t\t\t\ttopology4g800: true,\r\n\t\t\t\ttopology4g2100: true,\r\n\t\t\t\ttopology4g2600: true,\r\n\t\t\t\ttopology4g700: true,\r\n\t\t\t\ttopology4g900: true,\r\n\t\t\t\ttopology4g1800: true,\r\n\t\t\t});\r\n\t\t\tsetAllBands4g(true);\r\n\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints)\r\n\t\t\t);\r\n\t\t} else if (event.target.name === 'allBands4g' && !event.target.checked) {\r\n\t\t\t_removeLayerById(mapOne.control, 'topologyLabels4g');\r\n\t\t\tbands4g.splice(bands4g.indexOf('700'));\r\n\t\t\tbands4g.splice(bands4g.indexOf('800'));\r\n\t\t\tbands4g.splice(bands4g.indexOf('900'));\r\n\t\t\tbands4g.splice(bands4g.indexOf('1800'));\r\n\t\t\tbands4g.splice(bands4g.indexOf('2100'));\r\n\t\t\tbands4g.splice(bands4g.indexOf('2600'));\r\n\r\n\t\t\tsetOpenTopology(true);\r\n\t\t\tsetState({\r\n\t\t\t\ttopology4g800: false,\r\n\t\t\t\ttopology4g2100: false,\r\n\t\t\t\ttopology4g2600: false,\r\n\t\t\t\ttopology4g700: false,\r\n\t\t\t\ttopology4g900: false,\r\n\t\t\t\ttopology4g1800: false,\r\n\t\t\t\ttopologyLabels4gData: false\r\n\t\t\t});\r\n\t\t\tsetAllBands4g(false);\r\n\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology4g800' && event.target.checked) {\r\n\t\t\tconst index = bands4g.indexOf('800');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands4g.push('800');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels4g) {\r\n\t\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology4g800' && !event.target.checked) {\r\n\t\t\tsetAllBands4g(false);\r\n\t\t\tconst index = bands4g.indexOf('800');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands4g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology4g2100' && event.target.checked) {\r\n\t\t\tconst index = bands4g.indexOf('2100');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands4g.push('2100');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels4g) {\r\n\t\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology4g2100' && !event.target.checked) {\r\n\t\t\tsetAllBands4g(false);\r\n\t\t\tconst index = bands4g.indexOf('2100');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands4g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology4g2600' && event.target.checked) {\r\n\t\t\tconst index = bands4g.indexOf('2600');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands4g.push('2600');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels4g) {\r\n\t\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology4g2600' && !event.target.checked) {\r\n\t\t\tsetAllBands4g(false);\r\n\t\t\tconst index = bands4g.indexOf('2600');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands4g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology4g700' && event.target.checked) {\r\n\t\t\tconst index = bands4g.indexOf('700');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands4g.push('700');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels4g) {\r\n\t\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology4g700' && !event.target.checked) {\r\n\t\t\tsetAllBands4g(false);\r\n\t\t\tconst index = bands4g.indexOf('700');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands4g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology4g900' && event.target.checked) {\r\n\t\t\tconst index = bands4g.indexOf('900');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands4g.push('900');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels4g) {\r\n\t\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology4g900' && !event.target.checked) {\r\n\t\t\tsetAllBands4g(false);\r\n\t\t\tconst index = bands4g.indexOf('900');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands4g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology4g1800' && event.target.checked) {\r\n\t\t\tconst index = bands4g.indexOf('1800');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands4g.push('1800');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels4g) {\r\n\t\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology4g1800' && !event.target.checked) {\r\n\t\t\tsetAllBands4g(false);\r\n\t\t\tconst index = bands4g.indexOf('1800');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands4g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleChangeTopologyLabels = (event) => {\r\n\t\tsetState({ ...state, [event.target.name]: event.target.checked });\r\n\r\n\t\tconst mapBounds = mapOne.control.mapContext.map.getBounds();\r\n\r\n\t\tconst mapBoundsPoints = {\r\n\t\t\tnorthEast: mapBounds._northEast,\r\n\t\t\tsouthWest: mapBounds._southWest\r\n\t\t};\r\n\r\n\t\tif (event.target.name === 'topologyLabels2g' && event.target.checked) {\r\n\t\t\tdispatch(GetTopologyLabels2g(userId, bands2g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topologyLabels2g' && !event.target.checked) {\r\n\t\t\t_removeLayerById(mapOne.control, 'topologyLabels2g');\r\n\t\t} else if (event.target.name === 'topologyLabels3g' && event.target.checked) {\r\n\t\t\tdispatch(GetTopologyLabels3g(userId, bands3g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topologyLabels3g' && !event.target.checked) {\r\n\t\t\t_removeLayerById(mapOne.control, 'topologyLabels3g');\r\n\t\t} else if (event.target.name === 'topologyLabels4g' && event.target.checked) {\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topologyLabels4g' && !event.target.checked) {\r\n\t\t\t_removeLayerById(mapOne.control, 'topologyLabels4g');\r\n\t\t}\r\n\t};\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tif (topology2gData.length !== 0) {\r\n\t\t\t\tmapOne.control.updateTopology2g(topology2gData.topology2gDto, 'topology2g');\r\n\t\t\t}\r\n\t\t}\r\n\t}, [topology2gData]);\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tif (topologyLabels2gData.length !== 0 && topologyLabels2g) {\r\n\t\t\t\tmapOne.control.addTopologyLabels(topologyLabels2gData.topologyLabels2gDto, 'topologyLabels2g');\r\n\t\t\t}\r\n\t\t}\r\n\t}, [topologyLabels2gData]);\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tif (topology3gData.length !== 0) {\r\n\t\t\t\tmapOne.control.updateTopology3g(topology3gData.topology3gDto, 'topology3g');\r\n\t\t\t}\r\n\t\t}\r\n\t}, [topology3gData]);\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tif (topologyLabels3gData.length !== 0 && topologyLabels3g) {\r\n\t\t\t\tmapOne.control.addTopologyLabels(topologyLabels3gData.topologyLabels3gDto, 'topologyLabels3g');\r\n\t\t\t}\r\n\t\t}\r\n\t}, [topologyLabels3gData]);\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tif (topology4gData.length !== 0) {\r\n\t\t\t\tmapOne.control.updateTopology4g(topology4gData.topology4gDto, 'topology4g');\r\n\t\t\t}\r\n\t\t}\r\n\t}, [topology4gData]);\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tif (topologyLabels4gData.length !== 0 && topologyLabels4g) {\r\n\t\t\t\tmapOne.control.addTopologyLabels(topologyLabels4gData.topologyLabels4gDto, 'topologyLabels4g');\r\n\t\t\t}\r\n\t\t}\r\n\t}, [topologyLabels4gData]);\r\n\r\n\tconst cardStyle = {\r\n\t\theight,\r\n\t\toverflow: 'auto'\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\tLayers\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\tlabel=\"Site Names\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\tlabel=\"All Bands\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t// \t\tNested List Items\r\n\t\t\t\t\t\t// \t\r\n\t\t\t\t\t\t// )}\r\n\t\t\t\t\t\tclassName={classes.root}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{openTopology ? : }\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{/* \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{openTopology2g ? : }\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"G900\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"G1800\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"Labels\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{openTopology3g ? : }\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"U900\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"U2100\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"Labels\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t */}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{openTopology4g ? : }\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"L700\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"L800\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"L900\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"L1800\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"L2100\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"L2600\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nSideFilters.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\topen: PropTypes.bool.isRequired,\r\n\tonClose: PropTypes.func.isRequired,\r\n\tonFilter: PropTypes.func.isRequired,\r\n\tfilterDisabled: PropTypes.bool,\r\n\tonClear: PropTypes.func,\r\n\theight: PropTypes.string\r\n};\r\n\r\nexport default SideFilters;\r\n","import React, { useState, useEffect, useRef, useMemo } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport validate from 'validate.js';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport moment from 'moment';\r\nimport {\r\n\tButton, Chip, Collapse, Divider, Drawer,\r\n\tFormControlLabel, Radio, RadioGroup, Slider,\r\n\tTextField, Typography, Checkbox, Card, Grid, FormControl,\r\n\tFormGroup, FormLabel, Switch, CardHeader, CardContent,\r\n\tToggleButton, ToggleButtonGroup, Autocomplete\r\n} from '@mui/material';\r\nimport CheckBoxOutlineBlankIcon from '@mui/icons-material/CheckBoxOutlineBlank';\r\nimport CheckBoxIcon from '@mui/icons-material/CheckBox';\r\nimport _ from 'underscore';\r\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\r\nimport useRouter from 'utils/useRouter';\r\nimport { SelectField } from 'components';\r\nimport DatePicker from 'components/DatePicker/DatePicker';\r\nimport DataTable from '../../../../../../components/DataTable/DataTable.js';\r\nimport {\r\n\tSetFormState\r\n} from '../../../../actions/MapDriveTestsActions';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\theight: '100%',\r\n\t\tdisplay: 'flex',\r\n\t\tflexDirection: 'column',\r\n\t},\r\n\tdrawer: {\r\n\t\twidth: 420,\r\n\t\tmaxWidth: '100%',\r\n\t},\r\n\theader: {\r\n\t\tpadding: theme.spacing(2, 1),\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'space-between',\r\n\t},\r\n\tbuttonIcon: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tcontent: {\r\n\t\tpadding: theme.spacing(0, 3),\r\n\t\tflexGrow: 1,\r\n\t},\r\n\tcontentSection: {\r\n\t\tpadding: theme.spacing(2, 0),\r\n\t},\r\n\tcontentSectionHeader: {\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'space-between',\r\n\t\tcursor: 'pointer',\r\n\t},\r\n\tcontentSectionContent: {},\r\n\tformGroup: {\r\n\t\tpadding: theme.spacing(2, 0),\r\n\t},\r\n\tfieldGroup: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tfield: {\r\n\t\tmarginTop: 0,\r\n\t\tmarginBottom: 0,\r\n\t},\r\n\tflexGrow: {\r\n\t\tflexGrow: 1,\r\n\t},\r\n\taddButton: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n\ttags: {\r\n\t\tmarginTop: theme.spacing(1),\r\n\t},\r\n\tminAmount: {\r\n\t\tmarginRight: theme.spacing(3),\r\n\t},\r\n\tmaxAmount: {\r\n\t\tmarginLeft: theme.spacing(3),\r\n\t},\r\n\tradioGroup: {},\r\n\tactions: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\t'& > * + *': {\r\n\t\t\tmarginTop: theme.spacing(2),\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst SummaryDialogForm = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\tconst role = useSelector(state => state.session.user.role);\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\tconst formState = useSelector((state) => state.mapDriveTestsReducer.formState);\r\n\r\n\tconst selectedDates = useSelector(state => state.mapDriveTestsReducer.selectedDates);\r\n\tconst drivetestSummaryDropdown = useSelector(state => state.mapDriveTestsReducer.drivetestSummaryDropdown);\r\n\tconst drivetestSummary = useSelector(state => state.mapDriveTestsReducer.drivetestSummary);\r\n\r\n\t// Map compare\r\n\tconst selectedDatesCompare = useSelector(state => state.mapDriveTestsReducer.selectedDatesCompare);\r\n\tconst drivetestSummaryCompare = useSelector(state => state.mapDriveTestsReducer.drivetestSummaryCompare);\r\n\r\n\tuseEffect(() => {\r\n\t\t// dispatch(GetDriveTestSummaryDropdown());\r\n\t}, []);\r\n\r\n\tconst cardStyle = {\r\n\t\t// height: '10vh'\r\n\t};\r\n\r\n\tconst _getTableColumns = () => (\r\n\t\t[\r\n\t\t\t{\r\n\t\t\t\tname: 'id',\r\n\t\t\t\tlabel: 'Id',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\tfilter: false,\r\n\t\t\t\t\tviewColumns: false,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'date',\r\n\t\t\t\tlabel: 'Date',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'city',\r\n\t\t\t\tlabel: 'City',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'scenario',\r\n\t\t\t\tlabel: 'Scenario',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'kpis',\r\n\t\t\t\tlabel: 'KPIs',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'values',\r\n\t\t\t\tlabel: 'Values',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t]\r\n\t);\r\n\r\n\tconst _getTableOptions = () => ({\r\n\t\tfilterType: 'dropdown',\r\n\t\tselectableRows: false,\r\n\t\texpandableRows: false, // Try Adding This\r\n\t});\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nSummaryDialogForm.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default SummaryDialogForm;\r\n","import React, { useEffect, useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tcolors,\r\n} from '@mui/material';\r\nimport { enqueueSnackbar } from 'actions';\r\nimport ModalDialog from '../../../../../components/ModalDialog/ModalDialog.js';\r\nimport SummaryDialogForm from './Components/SummaryDialogForm';\r\nimport {\r\n\tSetFormState\r\n} from '../../../actions/MapDriveTestsActions';\r\n\r\nconst SummaryDialog = (props) => {\r\n\tconst { author, open, onClose, onApply, className, ...rest } = props;\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\tconst formState = useSelector((state) => state.mapDriveTestsReducer.formState);\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\tconst role = useSelector(state => state.session.user.role);\r\n\r\n\tconst _onConfirmClick = () => {\r\n\r\n\t};\r\n\r\n\tconst getData = useCallback(() => {\r\n\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\tgetData();\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nSummaryDialog.propTypes = {\r\n\tauthor: PropTypes.object.isRequired,\r\n\tclassName: PropTypes.string,\r\n\tonApply: PropTypes.func,\r\n\tonClose: PropTypes.func,\r\n\topen: PropTypes.bool.isRequired,\r\n};\r\n\r\nexport default SummaryDialog;\r\n","import React, { useEffect, useMemo, useCallback, useRef } from 'react';\r\nimport clsx from 'clsx';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport FilterListIcon from '@mui/icons-material/FilterList';\r\nimport {\r\n\tcolors, Button, TextField, Typography,\r\n\tGrid, Select, Card, CardHeader, CardContent,\r\n\tDivider, Accordion, AccordionSummary, Checkbox,\r\n\tAccordionDetails, FormControlLabel\r\n} from '@mui/material';\r\nimport { Page, Header, Map, SelectField, Label, SearchBar, FiltersDrawer } from 'components';\r\nimport L from 'leaflet';\r\nimport _ from 'underscore';\r\nimport { enqueueSnackbar } from 'actions';\r\nimport { onUpdateLegend } from 'components/Map/actions/MapActions';\r\nimport {\r\n\tSetFormState, ResetFields,\r\n\tToggleSummaryDialog, GetSitesIds, GetTopology2g, GetTopology3g, GetTopology4g,\r\n\tGetTopologyLabels2g, GetTopologyLabels3g, GetTopologyLabels4g\r\n} from '../actions/MapDriveTestsActions';\r\nimport TopToolBar from './components/TopToolBar';\r\nimport SideFilters from './components/SideFilters';\r\nimport SummaryDialog from './components/Components/SummaryDialog';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\tcontainer: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\ttabs: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tcontent: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tgenerate: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst MapDriveTests = () => {\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\r\n\t// Map\r\n\tconst maps = useSelector(state => state.mapReducer.maps);\r\n\tconst formState = useSelector((state) => state.mapDriveTestsReducer.formState);\r\n\tconst mapOne = maps.filter(item => item.id === 'failures-map')[0];\r\n\tconst siteIdLocation = useSelector(state => state.mapDriveTestsReducer.siteIdLocation);\r\n\tconst topology2gData = useSelector(state => state.mapDriveTestsReducer.topology2gData);\r\n\tconst topology3gData = useSelector(state => state.mapDriveTestsReducer.topology3gData);\r\n\tconst topology4gData = useSelector(state => state.mapDriveTestsReducer.topology4gData);\r\n\tconst topologyLabels2gData = useSelector(state => state.mapDriveTestsReducer.topologyLabels2gData);\r\n\tconst topologyLabels3gData = useSelector(state => state.mapDriveTestsReducer.topologyLabels3gData);\r\n\tconst topologyLabels4gData = useSelector(state => state.mapDriveTestsReducer.topologyLabels4gData);\r\n\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\tconst role = useSelector(state => state.session.user.role);\r\n\r\n\tconst summaryDialogVisibility = useSelector((state) => state.mapDriveTestsReducer.summaryDialogVisibility);\r\n\r\n\tconst _getData = useCallback(() => {\r\n\t\tdispatch(GetSitesIds());\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\t_getData();\r\n\t}, [_getData]);\r\n\r\n\tconst makeDetailsSiteId = (item) => {\r\n\t\tconst table = `\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
SiteId: ${item.siteId}
Latitude: ${item.latitude}
Longitude: ${item.longitude}
`;\r\n\t\treturn table;\r\n\t};\r\n\r\n\tconst _addSiteLocation = (map, data, layerName, flyTo) => {\r\n\t\tmap.RemoveLayerById(layerName);\r\n\t\tconst markers = [];\r\n\r\n\t\tconst packetIcondrop = L.icon({\r\n\t\t\ticonUrl: 'images/leaflet/marker-icon.png',\r\n\t\t\t// iconSize: [35, 35], // size of the icon\r\n\t\t\ticonAnchor: [13, 40], // point of the icon which will correspond to marker's location\r\n\t\t\tpopupAnchor: [0, -38] // point from which the popup should open relative to the iconAnchor\r\n\t\t});\r\n\r\n\t\tif (!_.isEmpty(data)) {\r\n\t\t\tconst marker = L.marker([data.latitude, data.longitude], { title: data.failureId, icon: packetIcondrop });\r\n\t\t\tmarkers.push(marker.bindPopup(`
${makeDetailsSiteId(data)}
`, { autoPan: false }));\r\n\r\n\t\t\tif (flyTo) {\r\n\t\t\t\tmap.mapContext.map.flyTo([data.latitude, data.longitude], 12);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tconst layer = L.layerGroup(markers, { id: layerName });\r\n\t\tlayer.addTo(map.mapContext.map);\r\n\t};\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\t_addSiteLocation(mapOne.control, siteIdLocation, 'siteIdLocation', true);\r\n\t\t}\r\n\t}, [siteIdLocation]);\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tsetTimeout(() => { mapOne.control.mapContext.map.invalidateSize(); }, 100);\r\n\t\t}\r\n\t}, [formState.values.mapFilters]);\r\n\r\n\tconst _summaryDialogClose = (event, reason) => {\r\n\t\tif (reason !== 'backdropClick') {\r\n\t\t\tdispatch(ToggleSummaryDialog(false));\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{/* \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t */}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t{summaryDialogVisibility && (\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default MapDriveTests;\r\n","import React, { useEffect, useMemo, useCallback, useRef } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport L from 'leaflet';\r\nimport 'leaflet.sync';\r\nimport _ from 'underscore';\r\nimport { onUpdateLegend } from 'components/MapGeneric/actions/MapActionsGeneric';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tButton, Chip, Collapse, Divider, Drawer,\r\n\tFormControlLabel, Radio, RadioGroup, Slider,\r\n\tTextField, Typography, Checkbox, Card, Grid, FormControl,\r\n\tFormGroup, FormLabel, Switch, ToggleButton, ToggleButtonGroup,\r\n\tAutocomplete, createFilterOptions\r\n} from '@mui/material';\r\nimport CheckBoxOutlineBlankIcon from '@mui/icons-material/CheckBoxOutlineBlank';\r\nimport CheckBoxIcon from '@mui/icons-material/CheckBox';\r\nimport { Page, Header, MapGeneric, SelectField, Label, SearchBar, FiltersDrawer } from 'components';\r\nimport validate from 'validate.js';\r\nimport {\r\n\tSetFormState, ToggleSummaryDialog, GetSiteIdLocation,\r\n} from '../../actions/MapDriveTestsActionsGeneric';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\theight: '100%',\r\n\t\tdisplay: 'flex',\r\n\t\tflexDirection: 'column',\r\n\t},\r\n\tdrawer: {\r\n\t\twidth: 420,\r\n\t\tmaxWidth: '100%',\r\n\t},\r\n\theader: {\r\n\t\tpadding: theme.spacing(2, 1),\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'space-between',\r\n\t},\r\n\tbuttonIcon: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tcontent: {\r\n\t\tpadding: theme.spacing(0, 3),\r\n\t\tflexGrow: 1,\r\n\t},\r\n\tcontentSection: {\r\n\t\tpadding: theme.spacing(2, 0),\r\n\t},\r\n\tcontentSectionHeader: {\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'space-between',\r\n\t\tcursor: 'pointer',\r\n\t},\r\n\tcontentSectionContent: {},\r\n\tformGroup: {\r\n\t\tpadding: theme.spacing(2, 0),\r\n\t},\r\n\tfieldGroup: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tfield: {\r\n\t\tmarginTop: 0,\r\n\t\tmarginBottom: 0,\r\n\t},\r\n\tflexGrow: {\r\n\t\tflexGrow: 1,\r\n\t},\r\n\taddButton: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n\ttags: {\r\n\t\tmarginTop: theme.spacing(1),\r\n\t},\r\n\tminAmount: {\r\n\t\tmarginRight: theme.spacing(3),\r\n\t},\r\n\tmaxAmount: {\r\n\t\tmarginLeft: theme.spacing(3),\r\n\t},\r\n\tradioGroup: {},\r\n\tactions: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\t'& > * + *': {\r\n\t\t\tmarginTop: theme.spacing(2),\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst TopToolBarGeneric = (props) => {\r\n\tconst { className, open, onClose, onFilter, filterDisabled, onClear, ...rest } = props;\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\tconst formState = useSelector((state) => state.mapDriveTestsReducer.formState);\r\n\tconst sitesIds = useSelector(state => state.mapDriveTestsReducer.sitesIds);\r\n\tconst maps = useSelector(state => state.mapReducer.maps);\r\n\r\n\tconst handleChangeMapFilters = (event) => {\r\n\t\tif (event.target.checked) {\r\n\t\t\tsetFormState({\r\n\t\t\t\t...formState,\r\n\t\t\t\tvalues: {\r\n\t\t\t\t\t...formState.values,\r\n\t\t\t\t\t[event.target.name]:\r\n\t\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t\t: event.target.value,\r\n\t\t\t\t\tmapSize: 10\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tsetFormState({\r\n\t\t\t\t...formState,\r\n\t\t\t\tvalues: {\r\n\t\t\t\t\t...formState.values,\r\n\t\t\t\t\t[event.target.name]:\r\n\t\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t\t: event.target.value,\r\n\t\t\t\t\tmapSize: 12\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleChangeMapAutoZoom = (event) => {\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tvalues: {\r\n\t\t\t\t...formState.values,\r\n\t\t\t\t[event.target.name]:\r\n\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t: event.target.value\r\n\t\t\t},\r\n\t\t\ttouched: {\r\n\t\t\t\t...formState.touched,\r\n\t\t\t\t[event.target.name]: true,\r\n\t\t\t},\r\n\t\t});\r\n\t};\r\n\r\n\tconst _onSiteIdChange = (value) => {\r\n\t\tlet siteId = null;\r\n\t\tif (value !== null) {\r\n\t\t\tsiteId = value.value;\r\n\t\t}\r\n\t\tdispatch(GetSiteIdLocation(siteId));\r\n\t};\r\n\r\n\tconst _onSummaryClick = (event) => {\r\n\t\tdispatch(ToggleSummaryDialog(true));\r\n\t};\r\n\r\n\tconst cardStyle = {\r\n\t\t// height: '10vh'\r\n\t};\r\n\r\n\tconst filterOptions = createFilterOptions({\r\n\t\tlimit: 20\r\n\t});\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tlabel=\"Auto Zoom\"\r\n\t\t\t\t\t\t\t\tlabelPlacement=\"start\"\r\n\t\t\t\t\t\t\t\tchecked={formState.values.mapAutoZoom}\r\n\t\t\t\t\t\t\t\tonChange={handleChangeMapAutoZoom}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tlabel=\"Filters\"\r\n\t\t\t\t\t\t\t\tlabelPlacement=\"start\"\r\n\t\t\t\t\t\t\t\tchecked={formState.values.mapFilters}\r\n\t\t\t\t\t\t\t\tonChange={handleChangeMapFilters}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{/*\t\r\n\t\t\t\t\t\t\t option.text}\r\n\t\t\t\t\t\t\t\tonChange={(event, value) => { _onSiteIdChange(value); }}\r\n\t\t\t\t\t\t\t\trenderInput={(params) => }\r\n\t\t\t\t\t\t\t\tfilterOptions={filterOptions}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tSummary\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t */}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nTopToolBarGeneric.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\topen: PropTypes.bool.isRequired,\r\n\tonClose: PropTypes.func.isRequired,\r\n\tonFilter: PropTypes.func.isRequired,\r\n\tfilterDisabled: PropTypes.bool,\r\n\tonClear: PropTypes.func\r\n};\r\n\r\nexport default TopToolBarGeneric;\r\n","import React, { useEffect, useCallback, useMemo, useRef } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport _, { mapObject, object } from 'underscore';\r\nimport { makeStyles } from '@mui/styles';\r\nimport L from 'leaflet';\r\nimport {\r\n\tButton, Chip, Collapse, Divider, Drawer,\r\n\tFormControlLabel, Radio, RadioGroup, Slider,\r\n\tTextField, Typography, Checkbox, Card, Grid,\r\n\tListItemText, ListItemIcon, ListItem, ListSubheader,\r\n\tList, FormGroup, ToggleButton, ToggleButtonGroup,\r\n\tAutocomplete\r\n} from '@mui/material';\r\nimport { onUpdateLegend } from 'components/Map/actions/MapActions';\r\nimport CheckBoxOutlineBlankIcon from '@mui/icons-material/CheckBoxOutlineBlank';\r\nimport CheckBoxIcon from '@mui/icons-material/CheckBox';\r\nimport { Page, Header, MapGeneric, SelectField, Label, SearchBar, FiltersDrawer } from 'components';\r\nimport validate from 'validate.js';\r\nimport InboxIcon from '@mui/icons-material/MoveToInbox';\r\nimport PhoneAndroidIcon from '@mui/icons-material/PhoneAndroid';\r\nimport ScannerIcon from '@mui/icons-material/Scanner';\r\nimport SettingsInputAntennaIcon from '@mui/icons-material/SettingsInputAntenna';\r\nimport AppsIcon from '@mui/icons-material/Apps';\r\nimport BubbleChartIcon from '@mui/icons-material/BubbleChart';\r\nimport ExpandLess from '@mui/icons-material/ExpandLess';\r\nimport ExpandMore from '@mui/icons-material/ExpandMore';\r\nimport StarBorder from '@mui/icons-material/StarBorder';\r\nimport {\r\n\tSetFormState,\r\n\tGetTopology2g, GetTopology3g, GetTopology4g,\r\n\tGetTopologyLabels2g, GetTopologyLabels3g, GetTopologyLabels4g,\r\n} from '../../actions/MapDriveTestsActionsGeneric';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\theight: '100%',\r\n\t\tdisplay: 'flex',\r\n\t\tflexDirection: 'column',\r\n\t},\r\n\tdrawer: {\r\n\t\twidth: 420,\r\n\t\tmaxWidth: '100%',\r\n\t},\r\n\theader: {\r\n\t\tpadding: theme.spacing(2, 1),\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'space-between',\r\n\t},\r\n\tbuttonIcon: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tcontent: {\r\n\t\tpadding: theme.spacing(0, 3),\r\n\t\tflexGrow: 1,\r\n\t},\r\n\tcontentSection: {\r\n\t\tpadding: theme.spacing(2, 0),\r\n\t},\r\n\tcontentSectionHeader: {\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'space-between',\r\n\t\tcursor: 'pointer',\r\n\t},\r\n\tcontentSectionContent: {},\r\n\tformGroup: {\r\n\t\tpadding: theme.spacing(2, 0),\r\n\t},\r\n\tfieldGroup: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tfield: {\r\n\t\tmarginTop: 0,\r\n\t\tmarginBottom: 0,\r\n\t},\r\n\tflexGrow: {\r\n\t\tflexGrow: 1,\r\n\t},\r\n\taddButton: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n\ttags: {\r\n\t\tmarginTop: theme.spacing(1),\r\n\t},\r\n\tminAmount: {\r\n\t\tmarginRight: theme.spacing(3),\r\n\t},\r\n\tmaxAmount: {\r\n\t\tmarginLeft: theme.spacing(3),\r\n\t},\r\n\tradioGroup: {},\r\n\tactions: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\t'& > * + *': {\r\n\t\t\tmarginTop: theme.spacing(2),\r\n\t\t},\r\n\t},\r\n\t// Filter child\r\n\t// root: {\r\n\t// \twidth: '100%',\r\n\t// \tmaxWidth: 360,\r\n\t// \tbackgroundColor: theme.palette.background.paper,\r\n\t// },\r\n\tnested: {\r\n\t\tpaddingLeft: theme.spacing(4),\r\n\t},\r\n\tnestedTwo: {\r\n\t\tpaddingLeft: theme.spacing(2),\r\n\t},\r\n}));\r\nconst bands2g = [];\r\nconst bands3g = [];\r\nconst bands4g = ['700', '800', '900', '1800', '2100', '2600'];\r\n\r\nconst SideFiltersGeneric = (props) => {\r\n\tconst { className, onClose, onFilter, filterDisabled, onClear, height, ...rest } = props;\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\r\n\t// Map\r\n\tconst maps = useSelector(state => state.mapReducer.maps);\r\n\tconst formState = useSelector((state) => state.mapDriveTestsReducer.formState);\r\n\tconst mapOne = maps.filter(item => item.id === 'failures-map')[0];\r\n\tconst topology2gData = useSelector(state => state.mapDriveTestsReducer.topology2gData);\r\n\tconst topology3gData = useSelector(state => state.mapDriveTestsReducer.topology3gData);\r\n\tconst topology4gData = useSelector(state => state.mapDriveTestsReducer.topology4gData);\r\n\tconst topologyLabels2gData = useSelector(state => state.mapDriveTestsReducer.topologyLabels2gData);\r\n\tconst topologyLabels3gData = useSelector(state => state.mapDriveTestsReducer.topologyLabels3gData);\r\n\tconst topologyLabels4gData = useSelector(state => state.mapDriveTestsReducer.topologyLabels4gData);\r\n\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\tconst role = useSelector(state => state.session.user.role);\r\n\r\n\t// Topology\r\n\tconst [openTopology, setOpenTopology] = React.useState(true);\r\n\tconst [openTopology4g, setOpenTopology4g] = React.useState(true);\r\n\tconst [openTopology3g, setOpenTopology3g] = React.useState(false);\r\n\tconst [openTopology2g, setOpenTopology2g] = React.useState(false);\r\n\r\n\tconst [state, setState] = React.useState({\r\n\t\ttopology2g900: false,\r\n\t\ttopology2g1800: false,\r\n\t\ttopologyLabels2g: false,\r\n\t\ttopology3g900: false,\r\n\t\ttopology3g2100: false,\r\n\t\ttopologyLabels3g: false,\r\n\t\ttopology4g800: false,\r\n\t\ttopology4g2100: false,\r\n\t\ttopology4g2600: false,\r\n\t\ttopology4g700: false,\r\n\t\ttopology4g900: false,\r\n\t\ttopology4g1800: false,\r\n\t\ttopologyLabels4g: true,\r\n\t});\r\n\tconst [allBands4g, setAllBands4g] = React.useState(false);\r\n\r\n\tconst {\r\n\t\ttopology2g900, topology2g1800, topologyLabels2g,\r\n\t\ttopology3g900, topology3g2100, topologyLabels3g,\r\n\t\ttopology4g700, topology4g800, topology4g900, topology4g1800, topology4g2100, topology4g2600, topologyLabels4g\r\n\t} = state;\r\n\r\n\t// Topology\r\n\tconst handleClickTopology = () => {\r\n\t\tsetOpenTopology(!openTopology);\r\n\t};\r\n\tconst handleClickTopology4g = () => {\r\n\t\tsetOpenTopology4g(!openTopology4g);\r\n\t};\r\n\tconst handleClickTopology3g = () => {\r\n\t\tsetOpenTopology3g(!openTopology3g);\r\n\t};\r\n\tconst handleClickTopology2g = () => {\r\n\t\tsetOpenTopology2g(!openTopology2g);\r\n\t};\r\n\r\n\tconst _removeLayerById = (map, id) => {\r\n\t\tmap.RemoveLayerById(id);\r\n\t};\r\n\r\n\t// Use Effect\r\n\tconst getSites = () => {\r\n\t\t// Filtro para sql\r\n\t\tconst mapBoundsPoints = {\r\n\t\t\tnorthEast: {\r\n\t\t\t\tlat: 40.34595538154793,\r\n\t\t\t\tlng: -3.80702018737793\r\n\t\t\t},\r\n\t\t\tsouthWest: {\r\n\t\t\t\tlat: 40.30158888865566,\r\n\t\t\t\tlng: -3.89516830444336\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\tsetState({\r\n\t\t\ttopology4g800: true,\r\n\t\t\ttopology4g2100: true,\r\n\t\t\ttopology4g2600: true,\r\n\t\t\ttopology4g700: true,\r\n\t\t\ttopology4g900: true,\r\n\t\t\ttopology4g1800: true,\r\n\t\t\ttopologyLabels4g: true });\r\n\r\n\t\tsetAllBands4g(true);\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tgetSites();\r\n\t}, []);\r\n\r\n\tconst handleChangeTopology2g = (event) => {\r\n\t\tsetState({ ...state, [event.target.name]: event.target.checked });\r\n\t\tconst _map = mapOne.control.mapContext.map;\r\n\t\t// const width = _map.getBounds().getEast() - _map.getBounds().getWest();\r\n\t\t// const height = _map.getBounds().getNorth() - _map.getBounds().getSouth();\r\n\r\n\t\t// console.log(\r\n\t\t// \t`center:${_map.getCenter()}\\n`\r\n\t\t// \t+ `width:${width}\\n`\r\n\t\t// \t+ `height:${height}\\n`\r\n\t\t// \t+ `size in pixels:${_map.getSize()}`\r\n\t\t// );\r\n\r\n\t\t// Filtro para sql\r\n\t\tconst mapBounds = _map.getBounds();\r\n\t\tconst mapBoundsPoints = {\r\n\t\t\tnorthEast: mapBounds._northEast,\r\n\t\t\tsouthWest: mapBounds._southWest\r\n\t\t};\r\n\r\n\t\t// if (width > 0.65 || height > 0.35) {\r\n\t\t// \tconsole.log('remover as layers');\r\n\t\t// } else\r\n\t\tif (event.target.name === 'topology2g900' && event.target.checked) {\r\n\t\t\tconst index = bands2g.indexOf('900');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands2g.push('900');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology2g(userId, bands2g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels2g) {\r\n\t\t\t\tdispatch(GetTopologyLabels2g(userId, bands2g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology2g900' && !event.target.checked) {\r\n\t\t\tconst index = bands2g.indexOf('900');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands2g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology2g(userId, bands2g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels2g(userId, bands2g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology2g1800' && event.target.checked) {\r\n\t\t\tconst index = bands2g.indexOf('1800');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands2g.push('1800');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology2g(userId, bands2g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels2g) {\r\n\t\t\t\tdispatch(GetTopologyLabels2g(userId, bands2g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology2g1800' && !event.target.checked) {\r\n\t\t\tconst index = bands2g.indexOf('1800');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands2g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology2g(userId, bands2g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels2g(userId, bands2g, mapBoundsPoints));\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleChangeTopology3g = (event) => {\r\n\t\tsetState({ ...state, [event.target.name]: event.target.checked });\r\n\t\tconst _map = mapOne.control.mapContext.map;\r\n\t\t// const width = _map.getBounds().getEast() - _map.getBounds().getWest();\r\n\t\t// const height = _map.getBounds().getNorth() - _map.getBounds().getSouth();\r\n\r\n\t\t// Filtro para sql\r\n\t\tconst mapBounds = _map.getBounds();\r\n\t\tconst mapBoundsPoints = {\r\n\t\t\tnorthEast: mapBounds._northEast,\r\n\t\t\tsouthWest: mapBounds._southWest\r\n\t\t};\r\n\r\n\t\t// if (width > 0.65 || height > 0.35) {\r\n\t\t// \tconsole.log('remover as layers');\r\n\t\t// } else\r\n\t\tif (event.target.name === 'topology3g900' && event.target.checked) {\r\n\t\t\tconst index = bands3g.indexOf('900');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands3g.push('900');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology3g(userId, bands3g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels3g) {\r\n\t\t\t\tdispatch(GetTopologyLabels3g(userId, bands3g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology3g900' && !event.target.checked) {\r\n\t\t\tconst index = bands3g.indexOf('900');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands3g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology3g(userId, bands3g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels3g(userId, bands3g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology3g2100' && event.target.checked) {\r\n\t\t\tconst index = bands3g.indexOf('2100');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands3g.push('2100');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology3g(userId, bands3g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels3g) {\r\n\t\t\t\tdispatch(GetTopologyLabels3g(userId, bands3g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology3g2100' && !event.target.checked) {\r\n\t\t\tconst index = bands3g.indexOf('2100');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands3g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology3g(userId, bands3g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels3g(userId, bands3g, mapBoundsPoints));\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleChangeTopology4g = (event) => {\r\n\t\tsetState({ ...state, [event.target.name]: event.target.checked });\r\n\r\n\t\tconst _map = mapOne.control.mapContext.map;\r\n\t\t// const width = _map.getBounds().getEast() - _map.getBounds().getWest();\r\n\t\t// const height = _map.getBounds().getNorth() - _map.getBounds().getSouth();\r\n\t\t// const zoom = _map.getZoom();\r\n\r\n\t\t// Filtro para sql\r\n\t\t/*\r\n\t\tconst mapBounds = _map.getBounds();\r\n\t\tconst mapBoundsPoints = {\r\n\t\t\tnorthEast: mapBounds._northEast,\r\n\t\t\tsouthWest: mapBounds._southWest\r\n\t\t};\r\n\t\t*/\r\n\t\tconst mapBoundsPoints = {\r\n\t\t\tnorthEast: {\r\n\t\t\t\tlat: 40.34595538154793,\r\n\t\t\t\tlng: -3.80702018737793\r\n\t\t\t},\r\n\t\t\tsouthWest: {\r\n\t\t\t\tlat: 40.30158888865566,\r\n\t\t\t\tlng: -3.89516830444336\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t// console.log(mapBounds);\r\n\t\t// console.log(zoom);\r\n\t\t// if (width > 0.65 || height > 0.35) {\r\n\t\t// \tconsole.log('remover as layers');\r\n\t\t// } else\r\n\r\n\t\tif (event.target.name === 'allBands4g' && event.target.checked) {\r\n\t\t\tbands4g.push('700');\r\n\t\t\tbands4g.push('800');\r\n\t\t\tbands4g.push('900');\r\n\t\t\tbands4g.push('1800');\r\n\t\t\tbands4g.push('2100');\r\n\t\t\tbands4g.push('2600');\r\n\r\n\t\t\tsetState({\r\n\t\t\t\ttopology4g800: true,\r\n\t\t\t\ttopology4g2100: true,\r\n\t\t\t\ttopology4g2600: true,\r\n\t\t\t\ttopology4g700: true,\r\n\t\t\t\ttopology4g900: true,\r\n\t\t\t\ttopology4g1800: true,\r\n\t\t\t});\r\n\t\t\tsetAllBands4g(true);\r\n\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints)\r\n\t\t\t);\r\n\t\t} else if (event.target.name === 'allBands4g' && !event.target.checked) {\r\n\t\t\t_removeLayerById(mapOne.control, 'topologyLabels4g');\r\n\t\t\tbands4g.splice(bands4g.indexOf('700'));\r\n\t\t\tbands4g.splice(bands4g.indexOf('800'));\r\n\t\t\tbands4g.splice(bands4g.indexOf('900'));\r\n\t\t\tbands4g.splice(bands4g.indexOf('1800'));\r\n\t\t\tbands4g.splice(bands4g.indexOf('2100'));\r\n\t\t\tbands4g.splice(bands4g.indexOf('2600'));\r\n\r\n\t\t\tsetOpenTopology(true);\r\n\t\t\tsetState({\r\n\t\t\t\ttopology4g800: false,\r\n\t\t\t\ttopology4g2100: false,\r\n\t\t\t\ttopology4g2600: false,\r\n\t\t\t\ttopology4g700: false,\r\n\t\t\t\ttopology4g900: false,\r\n\t\t\t\ttopology4g1800: false,\r\n\t\t\t\ttopologyLabels4gData: false\r\n\t\t\t});\r\n\t\t\tsetAllBands4g(false);\r\n\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology4g800' && event.target.checked) {\r\n\t\t\tconst index = bands4g.indexOf('800');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands4g.push('800');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels4g) {\r\n\t\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology4g800' && !event.target.checked) {\r\n\t\t\tsetAllBands4g(false);\r\n\t\t\tconst index = bands4g.indexOf('800');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands4g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology4g2100' && event.target.checked) {\r\n\t\t\tconst index = bands4g.indexOf('2100');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands4g.push('2100');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels4g) {\r\n\t\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology4g2100' && !event.target.checked) {\r\n\t\t\tsetAllBands4g(false);\r\n\t\t\tconst index = bands4g.indexOf('2100');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands4g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology4g2600' && event.target.checked) {\r\n\t\t\tconst index = bands4g.indexOf('2600');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands4g.push('2600');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels4g) {\r\n\t\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology4g2600' && !event.target.checked) {\r\n\t\t\tsetAllBands4g(false);\r\n\t\t\tconst index = bands4g.indexOf('2600');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands4g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology4g700' && event.target.checked) {\r\n\t\t\tconst index = bands4g.indexOf('700');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands4g.push('700');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels4g) {\r\n\t\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology4g700' && !event.target.checked) {\r\n\t\t\tsetAllBands4g(false);\r\n\t\t\tconst index = bands4g.indexOf('700');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands4g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology4g900' && event.target.checked) {\r\n\t\t\tconst index = bands4g.indexOf('900');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands4g.push('900');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels4g) {\r\n\t\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology4g900' && !event.target.checked) {\r\n\t\t\tsetAllBands4g(false);\r\n\t\t\tconst index = bands4g.indexOf('900');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands4g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topology4g1800' && event.target.checked) {\r\n\t\t\tconst index = bands4g.indexOf('1800');\r\n\t\t\tif (index === -1) {\r\n\t\t\t\tbands4g.push('1800');\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tif (topologyLabels4g) {\r\n\t\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\t}\r\n\t\t} else if (event.target.name === 'topology4g1800' && !event.target.checked) {\r\n\t\t\tsetAllBands4g(false);\r\n\t\t\tconst index = bands4g.indexOf('1800');\r\n\t\t\tif (index !== -1) {\r\n\t\t\t\tbands4g.splice(index, 1);\r\n\t\t\t}\r\n\t\t\tdispatch(GetTopology4g(userId, bands4g, mapBoundsPoints));\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleChangeTopologyLabels = (event) => {\r\n\t\tsetState({ ...state, [event.target.name]: event.target.checked });\r\n\r\n\t\tconst mapBounds = mapOne.control.mapContext.map.getBounds();\r\n\r\n\t\tconst mapBoundsPoints = {\r\n\t\t\tnorthEast: mapBounds._northEast,\r\n\t\t\tsouthWest: mapBounds._southWest\r\n\t\t};\r\n\r\n\t\tif (event.target.name === 'topologyLabels2g' && event.target.checked) {\r\n\t\t\tdispatch(GetTopologyLabels2g(userId, bands2g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topologyLabels2g' && !event.target.checked) {\r\n\t\t\t_removeLayerById(mapOne.control, 'topologyLabels2g');\r\n\t\t} else if (event.target.name === 'topologyLabels3g' && event.target.checked) {\r\n\t\t\tdispatch(GetTopologyLabels3g(userId, bands3g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topologyLabels3g' && !event.target.checked) {\r\n\t\t\t_removeLayerById(mapOne.control, 'topologyLabels3g');\r\n\t\t} else if (event.target.name === 'topologyLabels4g' && event.target.checked) {\r\n\t\t\tdispatch(GetTopologyLabels4g(userId, bands4g, mapBoundsPoints));\r\n\t\t} else if (event.target.name === 'topologyLabels4g' && !event.target.checked) {\r\n\t\t\t_removeLayerById(mapOne.control, 'topologyLabels4g');\r\n\t\t}\r\n\t};\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tif (topology2gData.length !== 0) {\r\n\t\t\t\tmapOne.control.updateTopology2g(topology2gData.topology2gDto, 'topology2g');\r\n\t\t\t}\r\n\t\t}\r\n\t}, [topology2gData]);\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tif (topologyLabels2gData.length !== 0 && topologyLabels2g) {\r\n\t\t\t\tmapOne.control.addTopologyLabels(topologyLabels2gData.topologyLabels2gDto, 'topologyLabels2g');\r\n\t\t\t}\r\n\t\t}\r\n\t}, [topologyLabels2gData]);\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tif (topology3gData.length !== 0) {\r\n\t\t\t\tmapOne.control.updateTopology3g(topology3gData.topology3gDto, 'topology3g');\r\n\t\t\t}\r\n\t\t}\r\n\t}, [topology3gData]);\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tif (topologyLabels3gData.length !== 0 && topologyLabels3g) {\r\n\t\t\t\tmapOne.control.addTopologyLabels(topologyLabels3gData.topologyLabels3gDto, 'topologyLabels3g');\r\n\t\t\t}\r\n\t\t}\r\n\t}, [topologyLabels3gData]);\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tif (topology4gData.length !== 0) {\r\n\t\t\t\tmapOne.control.updateTopology4g(topology4gData.topology4gDto, 'topology4g');\r\n\t\t\t}\r\n\t\t}\r\n\t}, [topology4gData]);\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tif (topologyLabels4gData.length !== 0 && topologyLabels4g) {\r\n\t\t\t\tmapOne.control.addTopologyLabels(topologyLabels4gData.topologyLabels4gDto, 'topologyLabels4g');\r\n\t\t\t}\r\n\t\t}\r\n\t}, [topologyLabels4gData]);\r\n\r\n\tconst cardStyle = {\r\n\t\theight,\r\n\t\toverflow: 'auto'\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\tLayers\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\tlabel=\"Site Names\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\tlabel=\"All Bands\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t// \t\tNested List Items\r\n\t\t\t\t\t\t// \ts\r\n\t\t\t\t\t\t// )}\r\n\t\t\t\t\t\tclassName={classes.root}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{openTopology ? : }\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{/* \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{openTopology2g ? : }\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"G900\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"G1800\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"Labels\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{openTopology3g ? : }\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"U900\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"U2100\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"Labels\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t */}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{openTopology4g ? : }\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"L700\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"L800\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"L900\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"L1800\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"L2100\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel=\"L2600\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nSideFiltersGeneric.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\topen: PropTypes.bool.isRequired,\r\n\tonClose: PropTypes.func.isRequired,\r\n\tonFilter: PropTypes.func.isRequired,\r\n\tfilterDisabled: PropTypes.bool,\r\n\tonClear: PropTypes.func,\r\n\theight: PropTypes.string\r\n};\r\n\r\nexport default SideFiltersGeneric;\r\n","import React, { useState, useEffect, useRef, useMemo } from 'react';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport validate from 'validate.js';\r\nimport clsx from 'clsx';\r\nimport PropTypes from 'prop-types';\r\nimport { makeStyles } from '@mui/styles';\r\nimport moment from 'moment';\r\nimport {\r\n\tButton, Chip, Collapse, Divider, Drawer,\r\n\tFormControlLabel, Radio, RadioGroup, Slider,\r\n\tTextField, Typography, Checkbox, Card, Grid, FormControl,\r\n\tFormGroup, FormLabel, Switch, CardHeader, CardContent,\r\n\tToggleButton, ToggleButtonGroup, Autocomplete\r\n} from '@mui/material';\r\nimport CheckBoxOutlineBlankIcon from '@mui/icons-material/CheckBoxOutlineBlank';\r\nimport CheckBoxIcon from '@mui/icons-material/CheckBox';\r\nimport _ from 'underscore';\r\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\r\nimport useRouter from 'utils/useRouter';\r\nimport { SelectField } from 'components';\r\nimport DatePicker from 'components/DatePicker/DatePicker';\r\nimport DataTable from '../../../../../../components/DataTable/DataTable.js';\r\nimport {\r\n\tSetFormState\r\n} from '../../../../actions/MapDriveTestsActionsGeneric';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\theight: '100%',\r\n\t\tdisplay: 'flex',\r\n\t\tflexDirection: 'column',\r\n\t},\r\n\tdrawer: {\r\n\t\twidth: 420,\r\n\t\tmaxWidth: '100%',\r\n\t},\r\n\theader: {\r\n\t\tpadding: theme.spacing(2, 1),\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'space-between',\r\n\t},\r\n\tbuttonIcon: {\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tcontent: {\r\n\t\tpadding: theme.spacing(0, 3),\r\n\t\tflexGrow: 1,\r\n\t},\r\n\tcontentSection: {\r\n\t\tpadding: theme.spacing(2, 0),\r\n\t},\r\n\tcontentSectionHeader: {\r\n\t\tdisplay: 'flex',\r\n\t\tjustifyContent: 'space-between',\r\n\t\tcursor: 'pointer',\r\n\t},\r\n\tcontentSectionContent: {},\r\n\tformGroup: {\r\n\t\tpadding: theme.spacing(2, 0),\r\n\t},\r\n\tfieldGroup: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tfield: {\r\n\t\tmarginTop: 0,\r\n\t\tmarginBottom: 0,\r\n\t},\r\n\tflexGrow: {\r\n\t\tflexGrow: 1,\r\n\t},\r\n\taddButton: {\r\n\t\tmarginLeft: theme.spacing(1),\r\n\t},\r\n\ttags: {\r\n\t\tmarginTop: theme.spacing(1),\r\n\t},\r\n\tminAmount: {\r\n\t\tmarginRight: theme.spacing(3),\r\n\t},\r\n\tmaxAmount: {\r\n\t\tmarginLeft: theme.spacing(3),\r\n\t},\r\n\tradioGroup: {},\r\n\tactions: {\r\n\t\tpadding: theme.spacing(3),\r\n\t\t'& > * + *': {\r\n\t\t\tmarginTop: theme.spacing(2),\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst SummaryDialogFormGeneric = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\tconst role = useSelector(state => state.session.user.role);\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\tconst formState = useSelector((state) => state.mapDriveTestsReducer.formState);\r\n\r\n\tconst selectedDates = useSelector(state => state.mapDriveTestsReducer.selectedDates);\r\n\tconst drivetestSummaryDropdown = useSelector(state => state.mapDriveTestsReducer.drivetestSummaryDropdown);\r\n\tconst drivetestSummary = useSelector(state => state.mapDriveTestsReducer.drivetestSummary);\r\n\r\n\t// Map compare\r\n\tconst selectedDatesCompare = useSelector(state => state.mapDriveTestsReducer.selectedDatesCompare);\r\n\tconst drivetestSummaryCompare = useSelector(state => state.mapDriveTestsReducer.drivetestSummaryCompare);\r\n\r\n\tuseEffect(() => {\r\n\t\t// dispatch(GetDriveTestSummaryDropdown());\r\n\t}, []);\r\n\r\n\tconst cardStyle = {\r\n\t\t// height: '10vh'\r\n\t};\r\n\r\n\tconst _getTableColumns = () => (\r\n\t\t[\r\n\t\t\t{\r\n\t\t\t\tname: 'id',\r\n\t\t\t\tlabel: 'Id',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: false,\r\n\t\t\t\t\tfilter: false,\r\n\t\t\t\t\tviewColumns: false,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'date',\r\n\t\t\t\tlabel: 'Date',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'city',\r\n\t\t\t\tlabel: 'City',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'scenario',\r\n\t\t\t\tlabel: 'Scenario',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'kpis',\r\n\t\t\t\tlabel: 'KPIs',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'values',\r\n\t\t\t\tlabel: 'Values',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t]\r\n\t);\r\n\r\n\tconst _getTableOptions = () => ({\r\n\t\tfilterType: 'dropdown',\r\n\t\tselectableRows: false,\r\n\t\texpandableRows: false, // Try Adding This\r\n\t});\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nSummaryDialogFormGeneric.propTypes = {\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\nexport default SummaryDialogFormGeneric;\r\n","import React, { useEffect, useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport {\r\n\tcolors,\r\n} from '@mui/material';\r\nimport { enqueueSnackbar } from 'actions';\r\nimport ModalDialog from '../../../../../components/ModalDialog/ModalDialog.js';\r\nimport SummaryDialogForm from './Components/SummaryDialogFormGeneric';\r\nimport {\r\n\tSetFormState\r\n} from '../../../actions/MapDriveTestsActionsGeneric';\r\n\r\nconst SummaryDialogGeneric = (props) => {\r\n\tconst { author, open, onClose, onApply, className, ...rest } = props;\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\tconst formState = useSelector((state) => state.mapDriveTestsReducer.formState);\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\tconst role = useSelector(state => state.session.user.role);\r\n\r\n\tconst _onConfirmClick = () => {\r\n\r\n\t};\r\n\r\n\tconst getData = useCallback(() => {\r\n\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\tgetData();\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nSummaryDialogGeneric.propTypes = {\r\n\tauthor: PropTypes.object.isRequired,\r\n\tclassName: PropTypes.string,\r\n\tonApply: PropTypes.func,\r\n\tonClose: PropTypes.func,\r\n\topen: PropTypes.bool.isRequired,\r\n};\r\n\r\nexport default SummaryDialogGeneric;\r\n","import React, { useEffect, useMemo, useCallback, useRef } from 'react';\r\nimport clsx from 'clsx';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport FilterListIcon from '@mui/icons-material/FilterList';\r\nimport {\r\n\tcolors, Button, TextField, Typography,\r\n\tGrid, Select, Card, CardHeader, CardContent,\r\n\tDivider, Accordion, AccordionSummary, Checkbox,\r\n\tAccordionDetails, FormControlLabel, Box\r\n} from '@mui/material';\r\nimport { Page, Header, MapGeneric, SelectField, Label, SearchBar, FiltersDrawer } from 'components';\r\nimport L from 'leaflet';\r\nimport _ from 'underscore';\r\nimport { enqueueSnackbar } from 'actions';\r\nimport { onUpdateLegend } from 'components/Map/actions/MapActions';\r\nimport {\r\n\tSetFormState, ResetFields,\r\n\tToggleSummaryDialog, GetSitesIds, GetTopology2g, GetTopology3g, GetTopology4g,\r\n\tGetTopologyLabels2g, GetTopologyLabels3g, GetTopologyLabels4g\r\n} from '../actions/MapDriveTestsActionsGeneric';\r\nimport TopToolBarGeneric from './components/TopToolBarGeneric';\r\nimport SideFiltersGeneric from './components/SideFiltersGeneric';\r\nimport SummaryDialogGeneric from './components/Components/SummaryDialogGeneric';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\tcontainer: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\ttabs: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tcontent: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tgenerate: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst MapDriveTestsGeneric = () => {\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\r\n\t// Map\r\n\tconst maps = useSelector(state => state.mapReducerGeneric.maps);\r\n\tconst formState = useSelector((state) => state.mapDriveTestsReducerGeneric.formState);\r\n\tconst mapOne = maps.filter(item => item.id === 'failures-map')[0];\r\n\tconst siteIdLocation = useSelector(state => state.mapDriveTestsReducerGeneric.siteIdLocation);\r\n\tconst topology2gData = useSelector(state => state.mapDriveTestsReducerGeneric.topology2gData);\r\n\tconst topology3gData = useSelector(state => state.mapDriveTestsReducerGeneric.topology3gData);\r\n\tconst topology4gData = useSelector(state => state.mapDriveTestsReducerGeneric.topology4gData);\r\n\tconst topologyLabels2gData = useSelector(state => state.mapDriveTestsReducerGeneric.topologyLabels2gData);\r\n\tconst topologyLabels3gData = useSelector(state => state.mapDriveTestsReducerGeneric.topologyLabels3gData);\r\n\tconst topologyLabels4gData = useSelector(state => state.mapDriveTestsReducerGeneric.topologyLabels4gData);\r\n\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\tconst role = useSelector(state => state.session.user.role);\r\n\r\n\tconst summaryDialogVisibility = useSelector((state) => state.mapDriveTestsReducerGeneric.summaryDialogVisibility);\r\n\r\n\tconst _getData = useCallback(() => {\r\n\t\tdispatch(GetSitesIds());\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\t_getData();\r\n\t}, [_getData]);\r\n\r\n\tconst makeDetailsSiteId = (item) => {\r\n\t\tconst table = `\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
SiteId: ${item.siteId}
Latitude: ${item.latitude}
Longitude: ${item.longitude}
`;\r\n\t\treturn table;\r\n\t};\r\n\r\n\tconst _addSiteLocation = (map, data, layerName, flyTo) => {\r\n\t\tmap.RemoveLayerById(layerName);\r\n\t\tconst markers = [];\r\n\r\n\t\tconst packetIcondrop = L.icon({\r\n\t\t\ticonUrl: 'images/leaflet/marker-icon.png',\r\n\t\t\t// iconSize: [35, 35], // size of the icon\r\n\t\t\ticonAnchor: [13, 40], // point of the icon which will correspond to marker's location\r\n\t\t\tpopupAnchor: [0, -38] // point from which the popup should open relative to the iconAnchor\r\n\t\t});\r\n\r\n\t\tif (!_.isEmpty(data)) {\r\n\t\t\tconst marker = L.marker([data.latitude, data.longitude], { title: data.failureId, icon: packetIcondrop });\r\n\t\t\tmarkers.push(marker.bindPopup(`
${makeDetailsSiteId(data)}
`, { autoPan: false }));\r\n\r\n\t\t\tif (flyTo) {\r\n\t\t\t\tmap.mapContext.map.flyTo([data.latitude, data.longitude], 12);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tconst layer = L.layerGroup(markers, { id: layerName });\r\n\t\tlayer.addTo(map.mapContext.map);\r\n\t};\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\t_addSiteLocation(mapOne.control, siteIdLocation, 'siteIdLocation', true);\r\n\t\t}\r\n\t}, [siteIdLocation]);\r\n\r\n\tuseMemo(() => {\r\n\t\tif (mapOne) {\r\n\t\t\tsetTimeout(() => { mapOne.control.mapContext.map.invalidateSize(); }, 100);\r\n\t\t}\r\n\t}, [formState.values.mapFilters]);\r\n\r\n\tconst _summaryDialogClose = (event, reason) => {\r\n\t\tif (reason !== 'backdropClick') {\r\n\t\t\tdispatch(ToggleSummaryDialog(false));\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{/* \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t */}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t{summaryDialogVisibility && (\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default MapDriveTestsGeneric;\r\n","import React, { useEffect, useMemo, useCallback, useRef } from 'react';\r\nimport clsx from 'clsx';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport FilterListIcon from '@mui/icons-material/FilterList';\r\nimport {\r\n\tcolors, Button, TextField, Typography,\r\n\tGrid, Select, Card, CardHeader, CardContent,\r\n\tDivider, Accordion, AccordionSummary, Checkbox,\r\n\tAccordionDetails, FormControlLabel\r\n} from '@mui/material';\r\nimport { DateRangePicker } from '@mui/lab';\r\nimport { Page, Header, Map, SelectField, Label, SearchBar, FiltersDrawer, DatePicker } from 'components';\r\nimport L from 'leaflet';\r\nimport _ from 'underscore';\r\n\r\nimport { enqueueSnackbar } from 'actions';\r\nimport {\r\n\tSetFormState,\r\n\tResetFields,\r\n\tGetDatabaseNames,\r\n\tGetDatabaseYears,\r\n\tGetDatabaseMonths,\r\n\tSetSelectedYear,\r\n\tSetSelectedMonth,\r\n\tDownloadDatabase,\r\n} from './actions/DatasetExportActions';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\tcontainer: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\ttabs: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tcontent: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tgenerate: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n}));\r\n\r\nconst DatasetExport = (props) => {\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\tconst setFormState = formState => dispatch(SetFormState(formState));\r\n\r\n\tconst formState = useSelector((state) => state.datasetExportReducer.formState);\r\n\tconst databases = useSelector((state) => state.datasetExportReducer.databases);\r\n\tconst years = useSelector((state) => state.datasetExportReducer.years);\r\n\tconst months = useSelector((state) => state.datasetExportReducer.months);\r\n\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\t// const userOperator = useSelector(state => state.session.user.operator);\r\n\r\n\tconst _handleChangeDatabase = (event) => {\r\n\t\tdispatch(ResetFields());\r\n\t\tdispatch(GetDatabaseYears(event.target.value));\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tvalues: {\r\n\t\t\t\t...formState.values,\r\n\t\t\t\t[event.target.name]:\r\n\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t: event.target.value,\r\n\t\t\t\tselectedYear: '',\r\n\t\t\t\tselectedMonth: ''\r\n\t\t\t},\r\n\t\t\ttouched: {\r\n\t\t\t\t...formState.touched,\r\n\t\t\t\t[event.target.name]: true,\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\tconst empty = [];\r\n\t\tdispatch(SetSelectedYear(empty));\r\n\t\tdispatch(SetSelectedMonth(empty));\r\n\t};\r\n\r\n\tconst _handleChangeYear = (event) => {\r\n\t\tdispatch(GetDatabaseMonths(formState.values.selectedDatabase, event.target.value));\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tvalues: {\r\n\t\t\t\t...formState.values,\r\n\t\t\t\t[event.target.name]:\r\n\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t: event.target.value,\r\n\t\t\t\tselectedMonth: ''\r\n\t\t\t},\r\n\t\t\ttouched: {\r\n\t\t\t\t...formState.touched,\r\n\t\t\t\t[event.target.name]: true,\r\n\t\t\t},\r\n\t\t});\r\n\r\n\t\tconst empty = [];\r\n\t\tdispatch(SetSelectedMonth(empty));\r\n\t};\r\n\r\n\tconst _handleChangeMonth = (event) => {\r\n\t\tsetFormState({\r\n\t\t\t...formState,\r\n\t\t\tvalues: {\r\n\t\t\t\t...formState.values,\r\n\t\t\t\t[event.target.name]:\r\n\t\t\t\t\tevent.target.type === 'checkbox'\r\n\t\t\t\t\t\t? event.target.checked\r\n\t\t\t\t\t\t: event.target.value,\r\n\t\t\t},\r\n\t\t\tisValid: true,\r\n\t\t\ttouched: {\r\n\t\t\t\t...formState.touched,\r\n\t\t\t\t[event.target.name]: true,\r\n\t\t\t},\r\n\t\t});\r\n\t};\r\n\r\n\tconst _getData = useCallback(() => {\r\n\t\tdispatch(ResetFields());\r\n\t\tdispatch(GetDatabaseNames());\r\n\t}, []);\r\n\r\n\tconst _generate = () => {\r\n\t\tdispatch(DownloadDatabase(\r\n\t\t\tformState.values.selectedDatabase,\r\n\t\t\tformState.values.selectedMonth,\r\n\t\t\tformState.values.selectedYear,\r\n\t\t\tuserId));\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\t_getData();\r\n\t}, [_getData]);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tDownload Database\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{/*\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tExport CSV\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t*/}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{/*\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t*/}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default DatasetExport;\r\n","/* eslint-disable react/jsx-indent */\r\n/* eslint-disable indent */\r\n/* eslint-disable no-mixed-spaces-and-tabs */\r\nimport React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport MUIDataTable from 'mui-datatables';\r\nimport { createTheme, ThemeProvider } from '@mui/material/styles';\r\n\r\nclass DataTableStyled extends React.Component {\r\n getMuiTheme = (outerTheme) => createTheme({\r\n components: {\r\n MUIDataTableHeadCell: {\r\n },\r\n\r\n MuiTableCell: {\r\n styleOverrides: {\r\n head: {\r\n backgroundColor: '#1565c0 !important',\r\n fontWeight: 'bold',\r\n color: 'white',\r\n padding: 3,\r\n },\r\n body: {\r\n fontSize: '12px',\r\n textAlign: 'center', // default: left\r\n\t\t\t\t\t\tpadding: 3\r\n },\r\n },\r\n },\r\n MUIDataTableBodyRow: {\r\n styleOverrides: {\r\n root: {\r\n\t\t\t\t\t\t'&:nth-child(odd)': {\r\n\t\t\t\t\t\t\tbackgroundColor: '#f2f2f2'\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t},\r\n\r\n }\r\n },\r\n MUIDataTablePagination: {},\r\n MUIDataTableViewCol: {},\r\n MUIDataTableSearch: {},\r\n MUIDataTableToolbar: {},\r\n MUIDataTableFilter: {},\r\n MUIDataTableFilterList: {},\r\n MUIDataTableBodyCell: {}\r\n }\r\n })\r\n\r\n render() {\r\n const {\r\n\t\t\tid,\r\n\t\t\ttitle = '',\r\n\t\t\tdata = [],\r\n\t\t\tcolumns = [],\r\n\t\t\toptions,\r\n\t\t\t// pagination = true,\r\n\t\t\tshowDownload = false, // show download icon button\r\n\t\t\tshowPrint = false, // show print icon button\r\n\t\t\tselectableRows = 'none', // multiple, single, none\r\n\t\t\trowsPerPage = 20, // number of rows displayed by page\r\n\t\t\tfilterType = 'multiselect', // filter type can be multiselect, texfield, etc.,\r\n\t\t\ttableBodyMaxHeight = '40em',\r\n\t\t\t...rest\r\n\t\t} = this.props;\r\n\r\n \treturn (\r\n \r\n \t \r\n \t\t\r\n \t);\r\n }\r\n}\r\n\r\nDataTableStyled.propTypes = {\r\n\tid: PropTypes.string.isRequired,\r\n\ttitle: PropTypes.string,\r\n\tdata: PropTypes.array.isRequired,\r\n\tcolumns: PropTypes.array.isRequired,\r\n\toptions: PropTypes.object,\r\n\tpagination: PropTypes.bool,\r\n\tshowDownload: PropTypes.bool,\r\n\tshowPrint: PropTypes.bool,\r\n\tselectableRows: PropTypes.string,\r\n\trowsPerPage: PropTypes.number,\r\n\tfilterType: PropTypes.string,\r\n\ttableBodyCellMaxWidth: PropTypes.string || PropTypes.number,\r\n\tactionColumnWidth: PropTypes.string || PropTypes.number,\r\n\tonRowSelection: PropTypes.func,\r\n\ttableBodyMaxHeight: PropTypes.string\r\n};\r\n\r\nexport default DataTableStyled;\r\n","import React, { useEffect, useCallback, useRef, useState } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport clsx from 'clsx';\r\nimport PropTypes, { elementType } from 'prop-types';\r\nimport _, { identity } from 'underscore';\r\nimport { makeStyles } from '@mui/styles';\r\n\r\nimport {\r\n\tButton, Typography\r\n} from '@mui/material';\r\n\r\nimport DataTableStyled from '../../../components/DataTable/DataTableStyled.js';\r\nimport { GetSTTMAlgorithmData, GetWeek } from '../actions/STTMAlgorithmActions';\r\n\r\n// import ModalDialog from '../../../components/ModalDialog/ModalDialog';\r\n\r\n// import {\r\n// \tGetHTMLString\r\n// } from '../actions/STTMAlgorithmActions';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t},\r\n\tinner: {\r\n\t\tminWidth: 700,\r\n\t},\r\n\tnameCell: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tavatar: {\r\n\t\theight: 42,\r\n\t\twidth: 42,\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tactions: {\r\n\t\tpadding: theme.spacing(1),\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tprimaryButton: {\r\n\t\tcolor: theme.palette.primary.main\r\n\t},\r\n\terrorButton: {\r\n\t\tcolor: theme.palette.error.main\r\n\t},\r\n\tinfoButton: {\r\n\t\tcolor: theme.palette.info.main\r\n\t},\r\n}));\r\n\r\nconst STTMAlgorithmDatatable = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\tconst role = useSelector(state => state.session.user.role);\r\n\tconst data = useSelector((state) => state.STTMAlgorithmReducer.data);\r\n\tconst week = useSelector((state) => state.STTMAlgorithmReducer.week);\r\n\r\n\tconst updateDate = data[0]?.dateuploaded || '';\r\n\tconst firstDay = week.firstDay || '';\r\n\tconst lastDay = week.lastDay || '';\r\n\r\n\t// const htmlString = useSelector((state) => state.STTMAlgorithmReducer.htmlString);\r\n\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\r\n\tconst _headerStyles = () => ({\r\n\t\talignSelf: 'center',\r\n\t\tfontSize: 12,\r\n\t\tbackgroundColor: '#1565c0',\r\n\t\tcolor: '#FFF',\r\n\t\tminWidth: 100,\r\n\t\tfontFamily: 'Roboto',\r\n\t\tpadding: '15px 10px 15px 10px'\r\n\t});\r\n\r\n\tconst _headRender = (columnMeta, updateDirection) => (\r\n\t\t updateDirection(columnMeta.index)}\r\n\t\t\tstyle={_headerStyles()}\r\n\t\t>\r\n\t\t\t{columnMeta.label}\r\n\t\t\r\n\t);\r\n\r\n\tconst _handleStyle = (value) => {\r\n\t\tif (value === 'OK') {\r\n\t\t\treturn {\r\n\t\t\t\tstyle: {\r\n\t\t\t\t\tbackgroundColor: 'green',\r\n\t\t\t\t\tcolor: 'white',\r\n\t\t\t\t\tfontWeight: 'bold'\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t} if (value === 'NOK') {\r\n\t\t\treturn {\r\n\t\t\t\tstyle: {\r\n\t\t\t\t\tbackgroundColor: '#dc143c',\r\n\t\t\t\t\tcolor: 'white',\r\n\t\t\t\t\tfontWeight: 'bold'\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t} if (value !== 'OK' || value !== 'NOK') {\r\n\t\t\treturn {\r\n\t\t\t\tstyle: {\r\n\t\t\t\t\tbackgroundColor: 'yellow',\r\n\t\t\t\t\tcolor: 'black',\r\n\t\t\t\t\tfontWeight: 'bold'\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t}\r\n\t\treturn {\r\n\t\t};\r\n\t};\r\n\r\n\tconst _generalColumnOptions = () => ({\r\n\t\tdisplay: true,\r\n\t\tfilterType: 'textField',\r\n\t\tcustomHeadRender: (columnMeta, updateDirection) => _headRender(columnMeta, updateDirection),\r\n\t});\r\n\r\n\tconst _statusColumnOptions = () => ({\r\n\t\tdisplay: true,\r\n\t\tfilterType: 'textField',\r\n\t\tcustomHeadRender: (columnMeta, updateDirection) => _headRender(columnMeta, updateDirection),\r\n\t\tsetCellProps: (value) => (_handleStyle(value))\r\n\t});\r\n\r\n\t// const [open, setOpen] = React.useState(false);\r\n\t// const handleOpen = (id, cell) => {\r\n\t// \tdispatch(GetHTMLString(id, cell, userId));\r\n\t// \tsetOpen(true);\r\n\t// };\r\n\t// const handleClose = () => {\r\n\t// \tsetOpen(false);\r\n\t// };\r\n\r\n\tconst openInNewTab = (url) => {\r\n\t\twindow.open(url, '_blank', 'noreferrer');\r\n\t};\r\n\r\n\tconst renderDate = (dataIndex) => {\r\n\t\tconst completeDate = data[dataIndex].date_kpi;\r\n\t\treturn (completeDate.substring(0, 10));\r\n\t};\r\n\r\n\tconst renderActions = (dataIndex) => {\r\n\t\tconst path = data[dataIndex].reportPath;\r\n\t\tconst val = path !== null ? `${data[dataIndex].cell}_report` : '';\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{path !== null\r\n\t\t\t&& (\r\n\t\t\t\t handleOpen(data[dataIndex].id, data[dataIndex].cell)}\r\n\t\t\t\t\tonClick={() => openInNewTab(path)}\r\n\t\t\t\t\tvariant=\"contained\"\r\n\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{val}\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t};\r\n\r\n\tconst _getTableColumns = () => (\r\n\t\t[\r\n\t\t\t{\r\n\t\t\t\tname: 'siteId',\r\n\t\t\t\tlabel: 'Site Label',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t\tenablePinning: true,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'logicalNode',\r\n\t\t\t\tlabel: 'Node',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cell',\r\n\t\t\t\tlabel: 'Cell',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'date_kpi',\r\n\t\t\t\tlabel: 'Date KPI',\r\n\t\t\t\t// options: _generalColumnOptions(),\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t\tcustomHeadRender: (columnMeta, updateDirection) => _headRender(columnMeta, updateDirection),\r\n\t\t\t\t\tcustomBodyRenderLite: (dataIndex) => renderDate(dataIndex)\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'e_RABSetupSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'E_RABSetupSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'e_RABSetupSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'E_RABSetupSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'e_RABSetupSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'E_RABSetupSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'serviceDropRate_STATUS',\r\n\t\t\t\tlabel: 'ServDropRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'serviceDropRate_ACTION',\r\n\t\t\t\tlabel: 'ServDropRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'serviceDropRate_TRIGGER',\r\n\t\t\t\tlabel: 'ServDropRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cellDownlinkAverageThroughput_STATUS',\r\n\t\t\t\tlabel: 'CellDLAvgTP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cellDownlinkAverageThroughput_ACTION',\r\n\t\t\t\tlabel: 'CellDLAvgTP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cellDownlinkAverageThroughput_TRIGGER',\r\n\t\t\t\tlabel: 'CellDLAvgTP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cellUplinkAverageThroughput_STATUS',\r\n\t\t\t\tlabel: 'CellULAvgTP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cellUplinkAverageThroughput_ACTION',\r\n\t\t\t\tlabel: 'CellULAvgTP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cellUplinkAverageThroughput_TRIGGER',\r\n\t\t\t\tlabel: 'CellULAvgTP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t// NOVOS\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_Service_STATUS',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_Serv_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_Service_ACTION',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_Serv_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_Service_TRIGGER',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_Serv_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_signaling_STATUS',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_signal_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_signaling_ACTION',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_signal_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_signaling_TRIGGER',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_signal_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 's1SIGConnectionSetupSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'S1SIGConnSetupSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 's1SIGConnectionSetupSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'S1SIGConnSetupSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 's1SIGConnectionSetupSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'S1SIGConnSetupSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'e_RABSetupSuccessRate_VoIP_STATUS',\r\n\t\t\t\tlabel: 'E_RABSetupSuccRate_VoIP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'e_RABSetupSuccessRate_VoIP_ACTION',\r\n\t\t\t\tlabel: 'E_RABSetupSuccRate_VoIP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'e_RABSetupSuccessRate_VoIP_TRIGGER',\r\n\t\t\t\tlabel: 'E_RABSetupSuccRatE_VoIP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'callSetupSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'CallSetupSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'callSetupSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'CallSetupSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'callSetupSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'CallSetupSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_frequencyHandoverOutSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'Intra_FreqHOOutSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_frequencyHandoverOutSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'Intra_FreqHOOutSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_frequencyHandoverOutSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'Intra_FreqHOOutSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_frequencyHandoverOutSuccessRate_VoIP_STATUS',\r\n\t\t\t\tlabel: 'Intra_FreqHOOutSuccRate_VoIP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_frequencyHandoverOutSuccessRate_VoIP_ACTION',\r\n\t\t\t\tlabel: 'Intra_FreqHOOutSuccRate_VoIP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_frequencyHandoverOutSuccessRate_VoIP_TRIGGER',\r\n\t\t\t\tlabel: 'Intra_FreqHOOutSuccRate_VoIP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_frequencyHandoverOutSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'Inter_FreqHOOutSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_frequencyHandoverOutSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'Inter_FreqHOOutSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_frequencyHandoverOutSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'Inter_FreqHOOutSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_frequencyHandoverOutSuccessRate_VoIP_STATUS',\r\n\t\t\t\tlabel: 'Inter_FreqHOOutSuccRate_VoIP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_frequencyHandoverOutSuccessRate_VoIP_ACTION',\r\n\t\t\t\tlabel: 'Inter_FreqHOOutSuccRate_VoIP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_frequencyHandoverOutSuccessRate_VoIP_TRIGGER',\r\n\t\t\t\tlabel: 'Inter_FreqHOOutSuccRate_VoIP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_RATHandoverInSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'Intra_RAT_HOInSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_RATHandoverInSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'Intra_RAT_HOInSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_RATHandoverInSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'Intra_RAT_HOInSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_RATHandoverOutSuccessRate_LTEtoWCDMA_STATUS',\r\n\t\t\t\tlabel: 'Inter_RAT_HOOutSuccRate_LTEtoWCDMA_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_RATHandoverOutSuccessRate_LTEtoWCDMA_ACTION',\r\n\t\t\t\tlabel: 'Inter_RAT_HOOutSuccRate_LTEtoWCDMA_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_RATHandoverOutSuccessRate_LTEtoWCDMA_TRIGGER',\r\n\t\t\t\tlabel: 'Inter_RAT_HOOutSuccRate_LTEtoWCDMA_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cSFBPreparationSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'CSFBPrepSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cSFBPreparationSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'CSFBPrepSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cSFBPreparationSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'CSFBPrepSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'userDownlinkAverageThroughput_STATUS',\r\n\t\t\t\tlabel: 'UserDLAvgTP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'userDownlinkAverageThroughput_ACTION',\r\n\t\t\t\tlabel: 'UserDLAvgTP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'userDownlinkAverageThroughput_TRIGGER',\r\n\t\t\t\tlabel: 'UserDLAvgTP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'userUplinkAverageThroughput_STATUS',\r\n\t\t\t\tlabel: 'UserULAvgTP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'userUplinkAverageThroughput_ACTION',\r\n\t\t\t\tlabel: 'UserULAvgTP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'userUplinkAverageThroughput_TRIGGER',\r\n\t\t\t\tlabel: 'UserULAvgTP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'downlinkResourceBlockUtilizingRate_STATUS',\r\n\t\t\t\tlabel: 'DLResourceBlockUtilRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'downlinkResourceBlockUtilizingRate_ACTION',\r\n\t\t\t\tlabel: 'DLResourceBlockUtilRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'downlinkResourceBlockUtilizingRate_TRIGGER',\r\n\t\t\t\tlabel: 'DLResourceBlockUtilRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'uplinkResourceBlockUtilizingRate_STATUS',\r\n\t\t\t\tlabel: 'ULResourceBlockUtilRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'uplinkResourceBlockUtilizingRate_ACTION',\r\n\t\t\t\tlabel: 'ULResourceBlockUtilRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'uplinkResourceBlockUtilizingRate_TRIGGER',\r\n\t\t\t\tlabel: 'ULResourceBlockUtilRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'averageCQI_STATUS',\r\n\t\t\t\tlabel: 'AvgCQI_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'averageCQI_ACTION',\r\n\t\t\t\tlabel: 'AvgCQI_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'averageCQI_TRIGGER',\r\n\t\t\t\tlabel: 'AvgCQI_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t//\r\n\t\t\t{\r\n\t\t\t\tname: 'attempt_Hourly_4G',\r\n\t\t\t\tlabel: '4G_Attempt_Hourly',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'avail_Hourly_Power_Saving_4G',\r\n\t\t\t\tlabel: '4G_Avail_Hourly_Power_Saving',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'unavailability_Hourly_4G',\r\n\t\t\t\tlabel: '4G_Unavailability_Hourly',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'reportPath',\r\n\t\t\t\tlabel: 'Report Path',\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tcustomHeadRender: (columnMeta, updateDirection) => _headRender(columnMeta, updateDirection),\r\n\t\t\t\t\tcustomBodyRenderLite: (dataIndex) => renderActions(dataIndex)\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t]\r\n\t);\r\n\r\n\tconst _getTableOptions = () => ({\r\n\t\tfilterType: 'dropdown',\r\n\t\tselectableRows: false,\r\n\t\texpandableRows: false,\r\n\t\tfixedHeader: true,\r\n\t\tfixedSelectColumn: true,\r\n\t});\r\n\r\n\tconst _getData = useCallback(() => {\r\n\t\tdispatch(GetSTTMAlgorithmData(userId, role));\r\n\t\tdispatch(GetWeek(userId, role));\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\t_getData();\r\n\t}, [_getData]);\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\tUpdate Date: \r\n\t\t\t\t\t{updateDate.substring(0, 10)}\r\n\t\t\t\t\t\t\t  / KPI Dates: \r\n\t\t\t\t\t{firstDay.substring(0, 10)}\r\n\t\t\t\t\t\t\t  to \r\n\t\t\t\t\t{lastDay.substring(0, 10)}\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t{/* \r\n\t\t\t\t
\r\n\t\t\t */}\r\n\t\t
\r\n\t);\r\n};\r\n\r\nSTTMAlgorithmDatatable.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tdata: PropTypes.array.isRequired,\r\n};\r\n\r\nexport default STTMAlgorithmDatatable;\r\n","import React, { useState } from 'react';\r\nimport clsx from 'clsx';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport Box from '@mui/material/Box';\r\nimport Tab from '@mui/material/Tab';\r\nimport TabPanel from '@mui/lab/TabPanel';\r\nimport TabContext from '@mui/lab/TabContext';\r\nimport TabList from '@mui/lab/TabList';\r\nimport { colors, Typography } from '@mui/material';\r\nimport { Page, Header, } from 'components';\r\nimport _ from 'underscore';\r\nimport DashboardInspect from '../Dashboard/components/Inspect/DashboardInspect';\r\nimport STTMAlgorithmDatatable from './components/STTMAlgorithmDatatable';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\tcontainer: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\ttabs: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tcontent: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tgenerate: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n\tmarginAdjust: {\r\n\t\tmarginTop: theme.spacing(-8),\r\n\t\tmarginLeft: theme.spacing(-8),\r\n\t\tmarginRight: theme.spacing(-10),\r\n\t\tmarginBottom: theme.spacing(-10),\r\n\t}\r\n}));\r\n\r\nconst STTMAlgorithm = () => {\r\n\tconst [value, setValue] = useState('1');\r\n\r\n\tconst handleChange = (event, newValue) => {\r\n\t\tsetValue(newValue);\r\n\t};\r\n\tconst classes = useStyles();\r\n\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\tconst role = useSelector(state => state.session.user.role);\r\n\r\n\tconst match = {\r\n\t\tparams: {\r\n\t\t\tid: 9\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default STTMAlgorithm;\r\n","import React, { useEffect, useCallback, useRef, useState } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport clsx from 'clsx';\r\nimport PropTypes, { elementType } from 'prop-types';\r\nimport _, { identity } from 'underscore';\r\nimport { makeStyles } from '@mui/styles';\r\n\r\nimport {\r\n\tButton, Typography\r\n} from '@mui/material';\r\n\r\nimport DataTableStyled from '../../../components/DataTable/DataTableStyled.js';\r\nimport { GetSTTMAlgorithmData } from '../actions/STTMAlgorithmActionsGeneric';\r\n// import ModalDialog from '../../../components/ModalDialog/ModalDialog';\r\n\r\n// import {\r\n// \tGetHTMLString\r\n// } from '../actions/STTMAlgorithmActions';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {},\r\n\tcontent: {\r\n\t\tpadding: 0,\r\n\t},\r\n\tinner: {\r\n\t\tminWidth: 700,\r\n\t},\r\n\tnameCell: {\r\n\t\tdisplay: 'flex',\r\n\t\talignItems: 'center',\r\n\t},\r\n\tavatar: {\r\n\t\theight: 42,\r\n\t\twidth: 42,\r\n\t\tmarginRight: theme.spacing(1),\r\n\t},\r\n\tactions: {\r\n\t\tpadding: theme.spacing(1),\r\n\t\tjustifyContent: 'flex-end',\r\n\t},\r\n\tprimaryButton: {\r\n\t\tcolor: theme.palette.primary.main\r\n\t},\r\n\terrorButton: {\r\n\t\tcolor: theme.palette.error.main\r\n\t},\r\n\tinfoButton: {\r\n\t\tcolor: theme.palette.info.main\r\n\t},\r\n}));\r\n\r\nconst STTMAlgorithmDatatableGeneric = (props) => {\r\n\tconst { className, ...rest } = props;\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\tconst role = useSelector(state => state.session.user.role);\r\n\tconst data = useSelector((state) => state.STTMAlgorithmReducer.data);\r\n\tconst week = useSelector((state) => state.STTMAlgorithmReducer.week);\r\n\r\n\tconst updateDate = data[0]?.dateuploaded || '';\r\n\tconst firstDay = week.firstDay || '';\r\n\tconst lastDay = week.lastDay || '';\r\n\r\n\t// const htmlString = useSelector((state) => state.STTMAlgorithmReducer.htmlString);\r\n\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\r\n\tconst _headerStyles = () => ({\r\n\t\talignSelf: 'center',\r\n\t\tfontSize: 12,\r\n\t\tbackgroundColor: '#1565c0',\r\n\t\tcolor: '#FFF',\r\n\t\tminWidth: 100,\r\n\t\tfontFamily: 'Roboto',\r\n\t\tpadding: '15px 10px 15px 10px'\r\n\t});\r\n\r\n\tconst _headRender = (columnMeta, updateDirection) => (\r\n\t\t updateDirection(columnMeta.index)}\r\n\t\t\tstyle={_headerStyles()}\r\n\t\t>\r\n\t\t\t{columnMeta.label}\r\n\t\t\r\n\t);\r\n\r\n\tconst _handleStyle = (value) => {\r\n\t\tif (value === 'OK') {\r\n\t\t\treturn {\r\n\t\t\t\tstyle: {\r\n\t\t\t\t\tbackgroundColor: 'green',\r\n\t\t\t\t\tcolor: 'white',\r\n\t\t\t\t\tfontWeight: 'bold'\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t} if (value === 'NOK') {\r\n\t\t\treturn {\r\n\t\t\t\tstyle: {\r\n\t\t\t\t\tbackgroundColor: '#dc143c',\r\n\t\t\t\t\tcolor: 'white',\r\n\t\t\t\t\tfontWeight: 'bold'\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t} if (value !== 'OK' || value !== 'NOK') {\r\n\t\t\treturn {\r\n\t\t\t\tstyle: {\r\n\t\t\t\t\tbackgroundColor: 'yellow',\r\n\t\t\t\t\tcolor: 'black',\r\n\t\t\t\t\tfontWeight: 'bold'\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t}\r\n\t\treturn {\r\n\t\t};\r\n\t};\r\n\r\n\tconst _generalColumnOptions = () => ({\r\n\t\tdisplay: true,\r\n\t\tfilterType: 'textField',\r\n\t\tcustomHeadRender: (columnMeta, updateDirection) => _headRender(columnMeta, updateDirection),\r\n\t});\r\n\r\n\tconst _statusColumnOptions = () => ({\r\n\t\tdisplay: true,\r\n\t\tfilterType: 'textField',\r\n\t\tcustomHeadRender: (columnMeta, updateDirection) => _headRender(columnMeta, updateDirection),\r\n\t\tsetCellProps: (value) => (_handleStyle(value))\r\n\t});\r\n\r\n\t// const [open, setOpen] = React.useState(false);\r\n\t// const handleOpen = (id, cell) => {\r\n\t// \tdispatch(GetHTMLString(id, cell, userId));\r\n\t// \tsetOpen(true);\r\n\t// };\r\n\t// const handleClose = () => {\r\n\t// \tsetOpen(false);\r\n\t// };\r\n\r\n\tconst openInNewTab = (url) => {\r\n\t\twindow.open(url, '_blank', 'noreferrer');\r\n\t};\r\n\r\n\tconst renderDate = (dataIndex) => {\r\n\t\tconst completeDate = data[dataIndex].date_kpi;\r\n\t\treturn (completeDate.substring(0, 10));\r\n\t};\r\n\r\n\tconst renderActions = (dataIndex) => {\r\n\t\tconst path = data[dataIndex].reportPath;\r\n\t\tconst val = path !== null ? `${data[dataIndex].cell}_report` : '';\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{path !== null\r\n\t\t\t&& (\r\n\t\t\t\t handleOpen(data[dataIndex].id, data[dataIndex].cell)}\r\n\t\t\t\t\tonClick={() => openInNewTab(path)}\r\n\t\t\t\t\tvariant=\"contained\"\r\n\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{val}\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t};\r\n\r\n\tconst _getData = useCallback(() => {\r\n\t\tdispatch(GetSTTMAlgorithmData(userId, role));\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\t_getData();\r\n\t}, [_getData]);\r\n\r\n\tconst _getTableColumns = () => (\r\n\t\t[\r\n\t\t\t{\r\n\t\t\t\tname: 'localNodeGeneric',\r\n\t\t\t\tlabel: 'Node',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t\tenablePinning: true,\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'localCellGeneric',\r\n\t\t\t\tlabel: 'Cell',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'date_kpi',\r\n\t\t\t\tlabel: 'Date KPI',\r\n\t\t\t\t// options: _generalColumnOptions(),\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdisplay: true,\r\n\t\t\t\t\tfilterType: 'textField',\r\n\t\t\t\t\tcustomHeadRender: (columnMeta, updateDirection) => _headRender(columnMeta, updateDirection),\r\n\t\t\t\t\tcustomBodyRenderLite: (dataIndex) => renderDate(dataIndex)\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'e_RABSetupSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'E_RABSetupSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'e_RABSetupSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'E_RABSetupSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'e_RABSetupSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'E_RABSetupSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'serviceDropRate_STATUS',\r\n\t\t\t\tlabel: 'ServDropRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'serviceDropRate_ACTION',\r\n\t\t\t\tlabel: 'ServDropRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'serviceDropRate_TRIGGER',\r\n\t\t\t\tlabel: 'ServDropRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cellDownlinkAverageThroughput_STATUS',\r\n\t\t\t\tlabel: 'CellDLAvgTP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cellDownlinkAverageThroughput_ACTION',\r\n\t\t\t\tlabel: 'CellDLAvgTP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cellDownlinkAverageThroughput_TRIGGER',\r\n\t\t\t\tlabel: 'CellDLAvgTP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cellUplinkAverageThroughput_STATUS',\r\n\t\t\t\tlabel: 'CellULAvgTP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cellUplinkAverageThroughput_ACTION',\r\n\t\t\t\tlabel: 'CellULAvgTP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cellUplinkAverageThroughput_TRIGGER',\r\n\t\t\t\tlabel: 'CellULAvgTP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t// NOVOS\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_Service_STATUS',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_Serv_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_Service_ACTION',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_Serv_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_Service_TRIGGER',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_Serv_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_signaling_STATUS',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_signal_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_signaling_ACTION',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_signal_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'rRCSetupSuccessRate_signaling_TRIGGER',\r\n\t\t\t\tlabel: 'RRCSetupSuccRate_signal_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 's1SIGConnectionSetupSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'S1SIGConnSetupSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 's1SIGConnectionSetupSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'S1SIGConnSetupSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 's1SIGConnectionSetupSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'S1SIGConnSetupSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'e_RABSetupSuccessRate_VoIP_STATUS',\r\n\t\t\t\tlabel: 'E_RABSetupSuccRate_VoIP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'e_RABSetupSuccessRate_VoIP_ACTION',\r\n\t\t\t\tlabel: 'E_RABSetupSuccRate_VoIP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'e_RABSetupSuccessRate_VoIP_TRIGGER',\r\n\t\t\t\tlabel: 'E_RABSetupSuccRatE_VoIP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'callSetupSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'CallSetupSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'callSetupSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'CallSetupSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'callSetupSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'CallSetupSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_frequencyHandoverOutSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'Intra_FreqHOOutSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_frequencyHandoverOutSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'Intra_FreqHOOutSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_frequencyHandoverOutSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'Intra_FreqHOOutSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_frequencyHandoverOutSuccessRate_VoIP_STATUS',\r\n\t\t\t\tlabel: 'Intra_FreqHOOutSuccRate_VoIP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_frequencyHandoverOutSuccessRate_VoIP_ACTION',\r\n\t\t\t\tlabel: 'Intra_FreqHOOutSuccRate_VoIP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_frequencyHandoverOutSuccessRate_VoIP_TRIGGER',\r\n\t\t\t\tlabel: 'Intra_FreqHOOutSuccRate_VoIP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_frequencyHandoverOutSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'Inter_FreqHOOutSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_frequencyHandoverOutSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'Inter_FreqHOOutSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_frequencyHandoverOutSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'Inter_FreqHOOutSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_frequencyHandoverOutSuccessRate_VoIP_STATUS',\r\n\t\t\t\tlabel: 'Inter_FreqHOOutSuccRate_VoIP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_frequencyHandoverOutSuccessRate_VoIP_ACTION',\r\n\t\t\t\tlabel: 'Inter_FreqHOOutSuccRate_VoIP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_frequencyHandoverOutSuccessRate_VoIP_TRIGGER',\r\n\t\t\t\tlabel: 'Inter_FreqHOOutSuccRate_VoIP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_RATHandoverInSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'Intra_RAT_HOInSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_RATHandoverInSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'Intra_RAT_HOInSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'intra_RATHandoverInSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'Intra_RAT_HOInSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_RATHandoverOutSuccessRate_LTEtoWCDMA_STATUS',\r\n\t\t\t\tlabel: 'Inter_RAT_HOOutSuccRate_LTEtoWCDMA_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_RATHandoverOutSuccessRate_LTEtoWCDMA_ACTION',\r\n\t\t\t\tlabel: 'Inter_RAT_HOOutSuccRate_LTEtoWCDMA_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'inter_RATHandoverOutSuccessRate_LTEtoWCDMA_TRIGGER',\r\n\t\t\t\tlabel: 'Inter_RAT_HOOutSuccRate_LTEtoWCDMA_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cSFBPreparationSuccessRate_STATUS',\r\n\t\t\t\tlabel: 'CSFBPrepSuccRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cSFBPreparationSuccessRate_ACTION',\r\n\t\t\t\tlabel: 'CSFBPrepSuccRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'cSFBPreparationSuccessRate_TRIGGER',\r\n\t\t\t\tlabel: 'CSFBPrepSuccRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'userDownlinkAverageThroughput_STATUS',\r\n\t\t\t\tlabel: 'UserDLAvgTP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'userDownlinkAverageThroughput_ACTION',\r\n\t\t\t\tlabel: 'UserDLAvgTP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'userDownlinkAverageThroughput_TRIGGER',\r\n\t\t\t\tlabel: 'UserDLAvgTP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'userUplinkAverageThroughput_STATUS',\r\n\t\t\t\tlabel: 'UserULAvgTP_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'userUplinkAverageThroughput_ACTION',\r\n\t\t\t\tlabel: 'UserULAvgTP_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'userUplinkAverageThroughput_TRIGGER',\r\n\t\t\t\tlabel: 'UserULAvgTP_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'downlinkResourceBlockUtilizingRate_STATUS',\r\n\t\t\t\tlabel: 'DLResourceBlockUtilRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'downlinkResourceBlockUtilizingRate_ACTION',\r\n\t\t\t\tlabel: 'DLResourceBlockUtilRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'downlinkResourceBlockUtilizingRate_TRIGGER',\r\n\t\t\t\tlabel: 'DLResourceBlockUtilRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'uplinkResourceBlockUtilizingRate_STATUS',\r\n\t\t\t\tlabel: 'ULResourceBlockUtilRate_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'uplinkResourceBlockUtilizingRate_ACTION',\r\n\t\t\t\tlabel: 'ULResourceBlockUtilRate_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'uplinkResourceBlockUtilizingRate_TRIGGER',\r\n\t\t\t\tlabel: 'ULResourceBlockUtilRate_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'averageCQI_STATUS',\r\n\t\t\t\tlabel: 'AvgCQI_STATUS',\r\n\t\t\t\toptions: _statusColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'averageCQI_ACTION',\r\n\t\t\t\tlabel: 'AvgCQI_ACTION',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'averageCQI_TRIGGER',\r\n\t\t\t\tlabel: 'AvgCQI_TRIGGER',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t//\r\n\t\t\t{\r\n\t\t\t\tname: 'attempt_Hourly_4G',\r\n\t\t\t\tlabel: '4G_Attempt_Hourly',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'avail_Hourly_Power_Saving_4G',\r\n\t\t\t\tlabel: '4G_Avail_Hourly_Power_Saving',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'unavailability_Hourly_4G',\r\n\t\t\t\tlabel: '4G_Unavailability_Hourly',\r\n\t\t\t\toptions: _generalColumnOptions(),\r\n\t\t\t},\r\n\t\t\t// {\r\n\t\t\t// \tname: 'reportPath',\r\n\t\t\t// \tlabel: 'Report Path',\r\n\t\t\t// \toptions: {\r\n\t\t\t// \t\tdisplay: true,\r\n\t\t\t// \t\tcustomHeadRender: (columnMeta, updateDirection) => _headRender(columnMeta, updateDirection),\r\n\t\t\t// \t\tcustomBodyRenderLite: (dataIndex) => renderActions(dataIndex)\r\n\t\t\t// \t},\r\n\t\t\t// },\r\n\t\t]\r\n\t);\r\n\r\n\tconst _getTableOptions = () => ({\r\n\t\tfilterType: 'dropdown',\r\n\t\tselectableRows: false,\r\n\t\texpandableRows: false,\r\n\t\tfixedHeader: true,\r\n\t\tfixedSelectColumn: true,\r\n\t});\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\tUpdate Date: \r\n\t\t\t\t\t{updateDate.substring(0, 10)}\r\n\t\t\t\t\t\t\t  / KPI Dates: \r\n\t\t\t\t\t{firstDay.substring(0, 10)}\r\n\t\t\t\t\t\t\t  to \r\n\t\t\t\t\t{lastDay.substring(0, 10)}\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t{/* \r\n\t\t\t\t
\r\n\t\t\t */}\r\n\t\t
\r\n\t);\r\n};\r\n\r\nSTTMAlgorithmDatatableGeneric.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tdata: PropTypes.array.isRequired,\r\n};\r\n\r\nexport default STTMAlgorithmDatatableGeneric;\r\n","import React, { useState } from 'react';\r\nimport clsx from 'clsx';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport Box from '@mui/material/Box';\r\nimport Tab from '@mui/material/Tab';\r\nimport TabPanel from '@mui/lab/TabPanel';\r\nimport TabContext from '@mui/lab/TabContext';\r\nimport TabList from '@mui/lab/TabList';\r\nimport { colors, Typography } from '@mui/material';\r\nimport { Page, Header, } from 'components';\r\nimport _ from 'underscore';\r\nimport DashboardInspect from '../Dashboard/components/Inspect/DashboardInspect';\r\nimport STTMAlgorithmDatatableGeneric from './components/STTMAlgorithmDatatableGeneric';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\tcontainer: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\ttabs: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tcontent: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tgenerate: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n\tmarginAdjust: {\r\n\t\tmarginTop: theme.spacing(-8),\r\n\t\tmarginLeft: theme.spacing(-8),\r\n\t\tmarginRight: theme.spacing(-10),\r\n\t\tmarginBottom: theme.spacing(-10),\r\n\t}\r\n}));\r\n\r\nconst STTMAlgorithmGeneric = () => {\r\n\tconst [value, setValue] = useState('1');\r\n\r\n\tconst handleChange = (event, newValue) => {\r\n\t\tsetValue(newValue);\r\n\t};\r\n\tconst classes = useStyles();\r\n\tconst dispatch = useDispatch();\r\n\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\tconst role = useSelector(state => state.session.user.role);\r\n\r\n\tconst match = {\r\n\t\tparams: {\r\n\t\t\tid: 10\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default STTMAlgorithmGeneric;\r\n","import React, { useState } from 'react';\r\nimport clsx from 'clsx';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { makeStyles } from '@mui/styles';\r\nimport Box from '@mui/material/Box';\r\nimport Tab from '@mui/material/Tab';\r\nimport TabPanel from '@mui/lab/TabPanel';\r\nimport TabContext from '@mui/lab/TabContext';\r\nimport TabList from '@mui/lab/TabList';\r\nimport { colors, Typography } from '@mui/material';\r\nimport { Page, Header, } from 'components';\r\nimport _ from 'underscore';\r\nimport DashboardInspect from '../Dashboard/components/Inspect/DashboardInspect';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n\troot: {\r\n\t\tpadding: theme.spacing(3),\r\n\t},\r\n\tcontainer: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\ttabs: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tcontent: {\r\n\t\tmarginTop: theme.spacing(3),\r\n\t},\r\n\tgenerate: {\r\n\t\tcolor: theme.palette.white,\r\n\t\tbackgroundColor: colors.green[600],\r\n\t\t'&:hover': {\r\n\t\t\tbackgroundColor: colors.green[900],\r\n\t\t},\r\n\t},\r\n\tmarginAdjust: {\r\n\t\tmarginTop: theme.spacing(-8),\r\n\t\tmarginLeft: theme.spacing(-8),\r\n\t\tmarginRight: theme.spacing(-10),\r\n\t\tmarginBottom: theme.spacing(-10),\r\n\t}\r\n}));\r\n\r\nconst SRCAAlgorithm = () => {\r\n\tconst [value, setValue] = useState('1');\r\n\r\n\tconst handleChange = (event, newValue) => {\r\n\t\tsetValue(newValue);\r\n\t};\r\n\tconst classes = useStyles();\r\n\r\n\tconst userId = useSelector(state => state.session.user.id);\r\n\tconst role = useSelector(state => state.session.user.role);\r\n\r\n\tconst matchOne = {\r\n\t\tparams: {\r\n\t\t\tid: 17\r\n\t\t}\r\n\t};\r\n\r\n\tconst matchTwo = {\r\n\t\tparams: {\r\n\t\t\tid: 11\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t