{"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","DownloadEnergyScoreGeneric","exportList","ds","DownloadEnergyScoreNonGeneric","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","generic","Paper","elevation","Typography","list","request","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","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.8100cb4c.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 DownloadEnergyScoreGeneric = (exportList, project) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}EnergyScore/DownloadEnergyScoreGeneric?project=${project}&${exportList.map(ds => `datasetNames=${ds}`).join('&')}`\r\n});\r\n\r\nexport const DownloadEnergyScoreNonGeneric = (exportList, project) => AxiosRequest({\r\n\tmethod: 'GET',\r\n\turl: `${config.API_URL}EnergyScore/DownloadEnergyScoreNonGeneric?project=${project}&${exportList.map(ds => `datasetNames=${ds}`).join('&')}`\r\n});\r\n","import { DownloadFile, enqueueSnackbar } from 'actions';\r\nimport { DownloadEnergyScoreGeneric, DownloadEnergyScoreNonGeneric } 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, generic) => async dispatch => {\r\n\tdispatch(enqueueSnackbar({ message: 'Export started...', options: { variant: 'info' } }));\r\n\tconst request = generic ? DownloadEnergyScoreGeneric : DownloadEnergyScoreNonGeneric;\r\n\tawait request(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', 'MODEL_EM', 'MODEL_PM'];\r\n\tconst [selectedExports, setSelectedExports] = useState([]);\r\n\tconst { match, headerHidden, module, pageTitle, project, generic = false } = props;\r\n\r\n\tconst exportTables = () => {\r\n\t\tif (selectedExports.length > 0) {\r\n\t\t\tdispatch(ExportTables(selectedExports, project, generic));\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\tgeneric: PropTypes.bool\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\t{\r\n\t\t\t\t\t\ttitle: 'VFPT',\r\n\t\t\t\t\t\thref: '/energyWatchdog/VFPT',\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\t{\r\n\t\t\t\t\t\ttitle: 'VFPT (Generic)',\r\n\t\t\t\t\t\thref: '/energyWatchdogGeneric/VFPT',\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