{"version":3,"sources":["images lazy /^/.//.*$/ groupOptions: {} namespace object","images/common_logos lazy /^/.//.*$/ groupOptions: {} namespace object","interceptors.js","environments/valongo/production.js","config.js","store.js","globalStyles.js","translations/index.js","translations/i18n.js","containers/App/logic.js","components/StyledButton/index.js","scenes/NotFound/index.js","validations.js","scenes/Login/logic.js","scenes/Login/index.js","utils/findGetParameter.js","utils/decodeType.js","utils/decodeColor.js","utils/getIntervalText.js","components/NotificationsWrapper/index.js","scenes/Deposits/logic.js","icons/CheckIcon/index.js","icons/CrossIcon/index.js","components/StyledProgressBar/index.js","scenes/Deposits/columns.js","components/GraphIndicator/index.js","containers/ContainerMapMaintenances/logic.js","icons/Markers/Paper.js","icons/Markers/Glass.js","icons/Markers/Plastic.js","icons/Markers/Bin.js","icons/Fullscreen/index.js","icons/BackArrow/index.js","components/ResponsiveHandler/index.js","containers/ContainerMapMaintenances/index.js","components/StyledDatePicker/index.js","containers/IntervalPicker/index.js","containers/StyledMobileTable/index.js","components/StyledOption/index.js","containers/DownloadDropDownContainer/index.js","components/StyledTable/index.js","components/AnimatedArrow/index.js","components/ToggleFilter/index.js","components/DepositsTemplate/index.js","components/StyledSelect/index.js","scenes/Deposits/apexLocales.js","scenes/Deposits/index.js","scenes/Maintenances/logic.js","scenes/Maintenances/columns.js","components/StyledInput/index.js","components/Dialog/index.js","components/MaintenancesTemplate/index.js","scenes/Maintenances/index.js","scenes/Collects/logic.js","icons/ClientIcons/index.js","scenes/Collects/utils.js","scenes/Collects/columns.js","components/CollectsTemplate/index.js","scenes/Collects/index.js","scenes/DashboardWrapper/logic.js","scenes/Dashboard/logic.js","containers/ContainerMapAreas/logic.js","containers/ContainerMapAreas/index.js","components/DoughnutWithText/index.js","icons/Maintenance/index.js","icons/Deposit/index.js","icons/Pick/index.js","icons/Alert/index.js","scenes/Dashboard/utils.js","scenes/Dashboard/index.js","scenes/ClientDashboard/dataFetching.js","scenes/ClientDashboard/logic.js","containers/ContainerMapClientDashboard/logic.js","containers/ContainerMapClientDashboard/index.js","scenes/ClientDashboard/columns.js","icons/ContainerIcon/index.js","icons/PointsIcon/index.js","components/ClientDepositsTemplate/index.js","scenes/ClientDashboard/utils.js","scenes/ClientDashboard/index.js","scenes/DashboardWrapper/index.js","scenes/Alerts/logic.js","components/AlertsTemplate/index.js","scenes/Alerts/columns.js","scenes/Alerts/index.js","scenes/Tickets/logic.js","icons/MarkAsResolved/index.js","scenes/Tickets/columns.js","components/ErrorsTemplate/index.js","scenes/Tickets/index.js","scenes/Transactions/logic.js","scenes/Transactions/columns.js","components/ToggleFilterTitle/index.js","components/TransactionsTemplate/index.js","icons/TraderIcon/index.js","icons/CostumerIcon/index.js","scenes/Transactions/index.js","scenes/RecoverPassword/logic.js","scenes/RecoverPassword/index.js","scenes/PasswordSet/logic.js","icons/ServerErrorIcon/index.js","scenes/PasswordSet/index.js","scenes/OccurrencesWrapper/logic.js","scenes/Occurrences/logic.js","icons/Bin/index.js","icons/OpenInNew/index.js","scenes/Occurrences/columns.js","components/OccurrencesTemplate/index.js","scenes/Occurrences/index.js","scenes/ClientOccurrences/logic.js","scenes/ClientOccurrences/columns.js","scenes/ClientOccurrences/index.js","scenes/OccurrencesWrapper/index.js","scenes/Containers/logic.js","scenes/Containers/columns.js","scenes/Containers/index.js","routes.js","components/Container/index.js","components/CloseButton/index.js","containers/Sidebar/logic.js","containers/SidebarSection/logic.js","icons/Arrow/index.js","containers/SidebarSection/index.js","icons/Occurrences/index.js","sections.js","icons/Dashboard/index.js","icons/HistoryIcon/index.js","icons/ErrorIcon/index.js","containers/Sidebar/index.js","containers/Navbar/logic.js","icons/PortugalIcon/index.js","icons/UKIcon/index.js","components/LanguageSwitch/index.js","components/NotificationsDialog/index.js","icons/Notifications/index.js","icons/NotificationsNew/index.js","icons/Logo/index.js","icons/LogoRayt/index.js","containers/Navbar/index.js","containers/FundingFooter/utils.js","containers/FundingFooter/index.js","containers/App/index.js","index.js"],"names":["map","webpackAsyncContext","req","__webpack_require__","o","Promise","resolve","then","e","Error","code","ids","id","t","keys","Object","module","exports","languageInterceptor","_regeneratorRuntime","Op","prototype","hasOwn","hasOwnProperty","defineProperty","obj","key","desc","value","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","fn","arg","type","call","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","previousPromise","callInvokeWithMethodAndArg","reject","invoke","record","result","__await","unwrapped","error","state","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","done","methodName","undefined","return","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","length","i","displayName","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","iter","val","object","reverse","pop","skipTempReset","prev","charAt","slice","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","catch","thrown","delegateYield","decamelizeKeysTransformer","data","JSON","stringify","decamelizeKeys","setAuthorizationInterceptor","authToken","axios","interceptors","request","use","config","token","window","localStorage","getItem","headers","Authorization","concat","AUTH_TOKEN_TYPE","setLanguageInterceptor","language","eject","timeout","ms","setTimeout","response","responseType","camelizeKeys","Sentry","currentContentType","params","transformRequest","white","BASE_API_URL","MAP_BOX_KEY","MAPCENTER","ZOOMLEVEL","MAPINITIALBOUNDS","ADDITIONAL_FEATURES","FUNDING_FOOTER_LOGOS","COMMON_FUNDING_FOOTER_LOGOS","AVAILABLE_CONTAINERS","AVAILABLE_ROLES","VERSION","process","replace","BUILD_DATE","Store","getStore","plugins","sagaPlugin","mediaQuery","_len","arguments","query","Array","_key","literals","_len2","placeholders","_key2","css","apply","Theme","bodyBackground","lightPrimaryColor","primaryColor","darkPrimaryColor","secondaryColor","darkSecondaryColor","textOnPrimary","textonSecondary","inactiveColor","darkInactiveColor","successColor","errorColor","darkErrorColor","warningColor","alertColor","infoColor","black","borderColor","lightInactiveColor","iconDarkColor","lightColor","activeRowColor","primaryColorOpacity","darkPrimaryColorOpacity","secondaryColorHover","lightSuccessColor","lightAlertColor","fontFamily","breakpoints","tablet","min","smallDesktop","desktop","largeDesktop","media","GlobalStyles","createGlobalStyle","_templateObject","_taggedTemplateLiteral","lighten","_templateObject2","_templateObject3","_templateObject4","en","pt","Portuguese","i18n","initReactI18next","init","resources","Translations","lng","fallbackLng","interpolation","escapeValue","kea","path","actions","setShouldLogin","setShouldBypassLogin","setCurrentUser","user","getCurrentUser","getAppTranslations","checkUserAuthentication","setCurrentLanguage","logout","finished","loading","watchEvents","changeWatchingEvents","event","setWebSocketsChannel","channel","setWebSocketHanlder","handler","reducers","_ref","_ref7","_ref8","PropTypes","any","_defineProperty","payload","shouldLogin","bool","_ref3","shouldBypassLogin","_ref5","loadingUser","watchingEvents","boolean","_ref10","_ref12","currentLanguage","string","_ref14","start","_context","this","put","get","takeLatest","_ref16","_ref17","workers","_context2","action","refresh_token","_this$actions","_setShouldLogin","_this$actions2","_setShouldLogin2","_finished","_context3","refresh","post","status","setItem","access","removeItem","t0","console","log","delay","isAdmin","isTrader","isMaintenance","_context4","props","group","_objectSpread","LogRocket","identify","fullName","username","toast","position","POSITION","TOP_RIGHT","_context5","_this$actions3","new_channel","_channel","message","_context6","take","fork","eventChannel","emiter","actualToken","wsInstance","WebSocket","blocked","count","onopen","send","command","onerror","onmessage","parse","event_type","children","_objectWithoutProperties","_excluded","React","createElement","CustomButton","styled","Button","withConfig","componentId","_ref2","theme","margin","NotFound","_Component","_inherits","_super","_createSuper","_classCallCheck","_createClass","Wrapper","Code","Message","Link","to","StyledButton","Component","div","span","checkValidation","form","validations","clone","invalid","element","validationList","valid","index","check","setAndCheckValidation","newStateChanges","field","fieldName","settedField","isRequired","DEFAULT_VALUES","password","VALIDATIONS","Check","connect","AppLogic","change","submit","setForm","_ref4","_ref6","dirty","submiting","validation","mapValues","_ref9","Login","_this","args","_possibleConstructorReturn","handleEnter","_assertThisInitialized","history","_this$props$form","_this$props","FlexWrapper","LoginText","StyledInput","label","placeholder","onChange","onKeyDown","haserror","toString","InputError","autoComplete","AlignCenter","disabled","onClick","RecoverPassword","withTranslation","Logic","Input","parameterName","tmp","items","location","search","substr","split","decodeURIComponent","intervalOptions","format","filtersForm","selectedInterval","find","el","interval","end","moment","useTranslation","NotificationTitle","NotificationBody","title","description","buildNotificationBody","EQUIPMENTSSURL","getContainerByUUID","uuid","array","getAreaByName","INTERVAL_FORM_DEFAULTS","startOf","changeFiltersForm","setFiltersForm","resetFiltersForm","setLoadingPlot","fetchAreasEquipments","fetchMaintenancesList","setMaintenancesList","list","setMaintenancesNumber","number","fetchEquipmentInDetailNoFetchs","equipment","setFetchedEquipmentInDetailNoFetchs","cb","setMaxDrops","setAverageDayDrops","setNumberOfDrops","fetchAreasList","setAreasList","setAreasNumber","setLoadingAreas","setLinkedArea","area","setFilteredEquipments","equipments","updateFilteredEquipments","setFilteredEquipmentsNumber","setFilter","filter","changeFilter","resetFilter","filterEntrances","setPagination","pag","setEquipmentInDetail","setFetchedEquipmentInDetail","setUsingMonthCalendar","setShowCalendarFilter","setDropsListToPlot","fetchDepositsToPlot","download","finishDownload","setSearchResults","results","setUserSearchResults","setAreaSearchResults","_ref15","_ref19","_ref20","_ref24","_ref30","_ref44","_ref48","payloada","maintenancesList","pagination","page","page_size","linkedArea","dropsListToPlot","container__area__name","container__uuid","fill_level","_ref13","assign","areasList","loadingAreas","loadingDownload","loadingPlot","filteredEquipments","_ref21","_ref22","_toConsumableArray","_ref23","filteredEquipmentsNumber","_ref25","equipmentInDetail","_ref27","_ref28","_ref29","usingMonthCalendar","_ref31","showCalendarFilter","_ref33","numberOfDrops","_ref35","averageDayDrops","_ref37","maxDrops","_ref39","searchResults","_ref41","searchLoading","_ref43","fillLevelFilterOptions","searchAreaResults","_ref45","searchAreaLoading","_ref47","_ref49","_ref50","showOnlyOneArea","fetchEquipmentInDetail","date_after","date_before","container__id","container__area__id","file_type","toISOString","endOf","ordering","fileDownload","Blob","NotificationsWrapper","toastId","container","fillLevel","final","container__fill_level__lte","container__fill_level__gte","area__id","datetime_after","datetime_before","timeline","r","timestamp","averageFillLevel","t1","_yield$call","color","decodeColor","_yield$call2","equipmentArea","_context7","_this$actions4","commonParams","depositsRes","deposits","containerAreaNameExists","_container","metricsEventsParams","_context8","maxEvents","averageEvents","totalEvents","t2","_this$actions5","areasRes","searchAreaArr","_context9","lines","coordinates","polygon","_this$actions6","installationStatus","_loop","_context11","fill_level__lte","fill_level__gte","containers","equipmentsList","_context10","installation_status","_this$actions7","temp","message_id","_message_id","_context12","content","warn","alertType","success","errorType","SvgComponent","viewBox","fill","d","ProgressText","Number","percentage","toFixed","StyledProgress","strokeWidth","showText","Progress","columns","renderHeader","sortable","prop","render","EllipsisDiv","minWidth","_excluded2","datetime","_excluded3","sortMethod","a","b","containerFillLevel","StyledProgressBar","parseFloat","width","_excluded4","tag","_excluded5","_excluded6","decodeType","_excluded7","earnedPoints","_excluded8","CenterIcon","CheckIcon","height","CrossIcon","columns_simple","_excluded9","_ref11","_excluded10","_excluded11","_excluded12","_excluded13","_excluded14","align","headerAlign","_excluded15","formatter","Intl","NumberFormat","minimumFractionDigits","maximumFractionDigits","StyledAnimatedNumber","style","transition","frameStyle","perc","backgroundColor","duration","stepPrecision","formatValue","n","IndicatorNumber","AnimatedNumber","xmlns","fillRule","cx","cy","iconFill","in","Fullscreen","svg","BackArrow","ResponsiveHandler","WrappedComponent","_React$Component","_class2","isMobile","innerWidth","isTablet","isDesktop","isSmallDesktop","innerHeight","recalculateDimensions","dimensions","setState","addEventListener","removeEventListener","responsiveHandlers","COLORS","plastic","paper","glass","bio_waste","undifferentiated","polygonFill","polygonLine","polygonPaint","MapboxGL","FillPaint","linePaint","getMarker","marker","PlasticMarker","PaperMarker","GlassMarker","BinMarker","FirstStageLegend","FlexWrapperLegend","NumberOfContainersWrapper","globalNumberOfContainers","MapCaption","FlexLegend","marginTop","AreaLegendIcon","LegentTextWrapper","ClusterMarkerLegend","ClusterTextLegend","SecondStageLegend","Map","ReactMapboxGl","accessToken","maxZoom","ContainerMapMaintenances","findNewBounds","nextProps","_nextProps$equipmentI","_nextProps$equipmentI2","bounds","LngLatBounds","extend","_isMounted","mapBounds","_sw","lat","_ne","feature","areas","closePopup","popedArea","handleZoomEnd","showMarkers","clusterMarker","pointCount","getLeaves","leaves","userColection","markerInfo","aux","findArea","Marker","outline","cursor","zIndex","anchor","tabIndex","markerAddress","activeCollapse","zoom","center","popupLocation","activeTab","addresses","dialogVisible","_mapRef","createRef","resetMapBounds","_this2","transitionEnded","resize","polygons","getZoom","parseInt","_this3","areaEquipments","_this$state","CustomMap","className","fitBoundsOptions","padding","top","bottom","left","right","linear","fitBounds","onDragStart","onZoomEnd","onStyleLoad","Fragment","GeoJSONLayer","fillPaint","fillOnMouseEnter","getCanvas","fillOnMouseLeave","fillOnClick","Cluster","ClusterMarkerFactory","radius","minZoom","zoomOnClick","zoomOnClickPadding","_marker$location","_marker$location2","preventDefault","stopPropagation","HelpsWrapper","MapHelp","showAlways","Details","PopupComponent","PopupBody","PopupBodyText","PopupBodyFirst","PopupBodySecond","address","tags","capacity","includes","lastDrop","lastPickup","lastMaintenance","hardwareDevice","battery","lastCommunication","marginLeft","MobileWrapper","MobileInputCalendarView","MobileCalendarPick","target","locale","Datetime","input","getModifiedEndDate","startDate","endDate","isSameOrBefore","getModifiedStartDate","modifiedStartDate","TimeFramePicker","modifyFormValue","_objectSpread2","changedForm","modifyBoth","modifyIntervalValue","oldProps","oldState","triggerSet","resetTriggerSet","replaceForm","_this$props2","ColumnFlexer","TimeOptionsWrapper","InfoText","OptionSpan","selected","onChangeFunction","changeBoth","tempFormat","viewMode","StyledDatePicker","inputProps","isValidDate","currentDate","selectedDate","dateFormat","timeFormat","open","isBefore","isSameOrAfter","datePicker","Template","template","NoDataText","onRowClick","active","OptionsWrapper","StyledOption","forwardRef","ref","CustomTable","border","boxShadow","withoutShadow","minHeight","highlightCurrentRow","emptyText","Table","AnimatedArrow","AnimatedArrowWrapper","transform","ToggleFilter","handleClickOutside","wrapperRef","current","contains","variableToWatch","document","text","ToggleButtonWrapper","ToggleText","ReferenceWrapper","isDashboard","isContainers","DynamicWrapper","maxHeight","order","DateTime","User","Container","Status","StyledMobileSelect","StyledMobileOption","options","OuterWrapper","IconWrapper","Select","select","Option","option","locales","months","shortMonths","days","shortDays","toolbar","exportToSVG","exportToPNG","exportToCSV","menu","selection","selectionZoom","zoomIn","zoomOut","pan","depositCompleteOptions","Deposits","_mapContainer","onFocusChange","focusedInput","autoCompleteFetch","queryString","_autocompleteRef","clearTimeout","areaAutoCompleteFetch","_areaAutocompleteRef","filtersWidth","inputWidth","completeOptions","tableRef","bind","_userAutocompleteRef","ReactDOM","findDOMNode","columnsToMap","reduce","x","y","findIndex","CustomLayoutSecondaryRow","gutter","BreakcrumbWrapper","BreadcrumbWrapper","CustomBreakcrumb","separator","Breadcrumb","Item","FiltersWrapper","float","justifyContent","paddingLeft","paddingRight","StyledSelect","remoteMethod","remote","clearable","filterMethod","toLowerCase","getIntervalText","IntervalPicker","resetForm","defaultForm","ButtonWrapper","DownloadLoading","DownloadDropDownContainer","FirstRow","marginBottom","MapWrapper","elem","StatsWrapper","CustomCard","GraphIndicatorsWrapper","GraphIndicator","Divider","TableName","NoPaddingCol","StyledMobileTable","DepositsTemplate","row","entrance","scrollTo","behavior","StyledTable","column","rowClassName","toReturn","GraphCustomCard","SmallCardTitle","GraphWrapper","GraphLoading","CustomReactApexChart","chart","defaultLocale","stacked","enabled","autoScaleYaxis","autoSelected","stroke","colors","dataLabels","markers","size","gradient","shadeIntensity","inverseColors","opacityFrom","opacityTo","stops","yaxis","tickAmount","max","labels","fontSize","xaxis","tooltip","shared","utcOffset","series","Layout","Row","SelectivePaddingColNoFixedHeight","Col","_templateObject5","SelectivePaddingColNoFixedHeightWithBoxShadow","_templateObject6","Card","_templateObject7","_templateObject8","_templateObject9","_templateObject10","_templateObject11","_templateObject12","_templateObject13","_templateObject14","Loading","ReactApexChart","EVENTSURL","setDescriptionResponse","submitDescription","changeDescription","setFormDescription","resetDescriptionForm","_ref38","_ref42","descriptionForm","descriptionResponse","search_user","patch","limit","maintainer","alert","addDescription","EllipsisDivFlex","CustomInput","Dialog","Body","EllipsisDivName","previousFillLevel","maintDescription","Maintenances","dialogOpen","dialogContainer","prevProps","prevState","display","triggerOnFocus","MaintenancesTemplate","visible","onCancel","DialogBodyWrapper","ErrorText","DialogButtonWrapper","p","fetchRoutes","setRoutes","routes","routesList","_ref18","_ref26","_ref32","_ref34","_ref36","_ref40","eventsRes","events","responsePlanned","plannedRoutes","responsePerformed","performedRoutes","_iterator","_step","_loop2","_context13","_createForOfIteratorHelper","planned","lastPerformedRoute","_iterator2","_step2","_loop3","_iterator3","_step3","containerAux","route","plannedRoute","missedContainers","day","schedules","lastCollect","licensePlate","truck","missed","miss","s","f","_context14","GarbageBin","clipRule","checkDay","add","collectScheduleColumn","StatusText","expandPannel","expandedColumns","ContainerDescriptionWrapper","ContainerName","ContainerAddress","fit","filters","CustomTag","Tag","userAutoCompleteFetch","SecondRowWrapper","CollectsTemplate","EVENTSBYDAYURL","NUMBEROFEVENTS","fetchDrops","setDrops","setLoadingDrops","setNumberOfDropsMetrics","setNumberOfPicksMetrics","setNumberOfMaintenancesMetrics","fetchPicks","setPicks","setLoadingPicks","fetchMaintenances","setMaintenances","setLoadingMaintenances","setSelectOptions","fetchMetrics","setMetrics","metrics","fetchActiveUsers","setActiveUsers","activeUsers","setLoadingActiveUsers","setAreaEquipments","setAreaEquipmentsNumber","setLoadingEquipments","setLoadingEquipmentInDetail","setAlerts","alerts","setTickets","tickets","setEfficient","efficient","setMostUsedContainers","setLoginCounter","logins","setLastEventsInterval","setGlobalNumberOfContainers","setGlobalNumberOfMaintenances","setGlobalNumberOfDeposits","setGlobalNumberOfCollects","fetchGlobalNumberOfContainers","fetchGlobalNumberOfDeposits","fetchGlobalNumberOfCollects","fetchGlobalNumberOfMaintenances","setDropsListToPlotLabels","setLoadingFillLevelGraph","updateGraphDrop","updateGraphPick","updateGraphMaintenance","updateGraphAreaFillLevel","loadingDrops","loadingPicks","loadingMaintenances","loadingActiveUsers","loadingEquipments","loadingEquipmentInDetail","loadingFillLevelGraph","drops","picks","maintenances","selectOptions","dropsListToPlotLabels","areaEquipmentsNumber","areasCount","inactiveUsers","numberOfDropsMetrics","total","average","_ref46","numberOfPicksMetrics","numberOfMaintenancesMetrics","openTickets","closedTickets","_ref52","efficientPickups","inefficientPickups","_ref54","openAlerts","closedAlerts","_ref56","mostUsedContainers","_ref58","loginCounter","_ref60","lastEventsInterval","_ref62","_ref64","globalNumberOfDeposits","_ref66","globalNumberOfCollects","_ref68","globalNumberOfMaintenances","_ref70","selectors","_ref72","picksValues","accumulator","currentValue","avg","dropsValues","maintenancesValues","_ref73","_ref74","instance","downloadFile","url","fillLevelTimestamp","_data","_response$data","averageMaintenances","maxMaintenances","totalMaintenances","_response$data2","_response$data3","_yield$call3","_yield$call4","_this$actions8","_this$actions9","_this$actions10","_context15","_this$actions11","_context16","_this$actions12","_context17","_this$actions13","systemAlerts","usageAlerts","totalEfficientPickups","usedContainers","_response$data4","openSystemAlerts","closedSystemAlerts","_response","_response$data5","openUsageAlerts","closedUsageAlerts","_response2","_response2$data","_response3","topContainers","filteredContainer","filteredEquipmentResponse","finalContainer","_response4","_response5","timeInterval","_context18","openErrors","closedErrors","containerUuid","t3","t4","t5","t6","_this$actions14","_context19","activeCustomers","inactiveCustomers","_this$actions15","_context20","_this$actions16","_context21","_this$actions17","_context22","_context23","_this$actions18","_updateGraphAreaFillLevel","_context24","ContainerMapAreas","feat","_this4","MapLoading","originalDoughnutDraw","Chart","controllers","doughnut","draw","helpers","ctx","font","textBaseline","textX","Math","round","measureText","textY","fillText","Doughnut","GRAPH_COLORS","Dashboard","visibleCarousel","mapTooltips","timeIntervalSelect","SelectPositioner","DateFilterWrapper","incrementCarousel","which","carouselFirst","carouselSecond","carouselThird","decrementCarousel","userIndicators","datasets","hoverBackgroundColor","DoughnutFlexInside","DoughnutWithText","legend","layout","maintainAspectRatio","responsive","cutoutPercentage","tooltips","bodyFontColor","titleFontColor","borderWidth","alertsIndicators","_this$props3","errorsIndicators","_this$props4","efficientPickupsIndicators","_this$props5","webUsage","_this$props6","dataAux","counter","loginDay","date","eventsInterval","_this$props7","TimeStamp","createDropTooltip","tooltipItem","createTooltipTile","dropsGraph","_this$props8","drop","dataset","FlexRowNormal","CustomLoading","MainGraphWrapper","Bar","reference","chartRefs","scales","yAxes","ticks","suggestedMin","suggestedMax","xAxes","autoSkip","maxRotation","minRotation","maxTicksLimit","callbacks","animation","onComplete","numSteps","dropsReady","picksGraph","_this$props9","pick","FillLevelGraphWrapper","picksReady","maintenancesGraph","_step4","_this$props10","_iterator4","maintenance","maintenancesReady","alertsMetrics","_this$props11","CardInsideWrapper","StaticCardIconContainer","FlexInsideCard","Alert","SectionInfo","StaticCardTextContainer","CardTitle","dropsMetrics","_this$props12","Deposit","maintenancesMetrics","_this$props13","Maintenance","collectsMetrics","_this$props14","Pick","mostUsedContainersStatic","_this$props15","StaticCardsWrapper","paddingTop","MostUsedContainersWrapper","AlwaysHorizontalDivider","InsideMostUsedContainer","selectMostUsedContainer","_this$props16","metricsCards","indicatorsDonuts","statsGraphs","RightNavWrapper","GraphsWrapper","CardWrapper","paddingSides","CustomCarousel","trigger","arrow","item","CarousedItemCustom","GraphCustomCarousel","autoplay","indicatorPosition","LayoutColLessPadding","Carousel","_templateObject15","_templateObject16","_templateObject17","_templateObject18","_templateObject19","_templateObject20","mapLabelsAndData","currentYearData","startTime","endTime","toJoin","dateTime","labelsKeys","fetchDropsList","setDropsNumber","setGlobalNumberOfAlerts","setDropsList","triggerFetch","setDropsLabels","setDropsLabelsKeys","dropsList","dropsCount","offset","dropsLabels","dropsLabelsKeys","globalNumberOfAlerts","fetchGlobalNumberOfAlerts","start_date_after","start_date_before","sender","ContainerMapClientDashboard","showCluster","ClientDashboard","changeForm","iconHeight","MapCardsWrapper","CardsWrapper","flex","PointsIcon","points","ContainerIcon","graph","GraphTitle","GraphFlex","CustomCardTransparent","ClientDepositsTemplate","h2","DashboardWrapper","fullscreen","Redirect","user_notified","searchUserResults","searchUserLoading","userNotified","Description","Notified","DescriptionDateTime","userNotifiedOptions","Alerts","notifiedOptions","filterable","AlertsTemplate","defaultSort","markAsResolved","columnToResolve","end_date","Date","additional_information","ClickIcon","additionalInformation","MarkAsResolved","Resolve","errorStatusOptions","Tickets","openDialog","statusOptions","ErrorsTemplate","SEARCHBASEURL","switchCostumerTrader","setTraderSearchResults","setCostumerSearchResults","search_customer","search_trader","transaction_status","inTraderMode","searchCostumerResults","searchCostumerLoading","searchTraderResults","searchTraderLoading","takeEvery","_action$payload","trading_as","datetime_events_after","datetime_events_before","transaction","columns_costumer","trader","columns_trader","customer","columns_admin","_excluded16","_excluded17","_excluded18","_excluded19","_excluded20","ToggleFilterTitle","icon","Icon","mode","Points","costumer","Transactions","costumerAutoCompleteFetch","_costumerAutocompleteRef","traderAutoCompleteFetch","_traderAutocompleteRef","_this$state2","TraderIcon","CostumerIcon","SwitchWrapper","search_costumer","totalTransactions","maxTransactions","averageTransactions","lastTransaction","GraphIndicatorWrapper","GraphIndicatorText","GraphIndicatorLabel","TransactionsTemplate","email","test","setResponse","setError","TitleRow","SuccessMessage","GoBackLink","password_confirm","passwordValidation","confirmPassword","findGetParameter","xmlnsXlink","xlinkHref","PasswordSet","linkRef","urlToken","currentURL","href","SuccessWrapper","ErrorIcon","withRouter","deleteOccurence","setDeleteResponse","isDeleting","deleteResponse","_ref51","delete","seeMore","CenterDiv","OpenInNew","Bin","Occurrences","setDeleteOccurence","deleteOpen","deleteContainer","articles","at","attachments","RegExp","file","OccurrencesTemplate","DialogActions","DialogDetails","DialogTitle","DialogItem","hasDate","DialogLabel","DialogDescription","isDate","createdAt","shouldRevealImage","DialogImage","src","img","h4","ClientOccurrences","setHistoryList","setHistoryNumber","fetchEvents","setEventsList","setEventsNumber","fetchOccurrences","setOccurrencesList","setOccurrencesNumber","historyList","historyCount","setHitoryNumber","eventsList","eventsCount","setDepositsNumber","occurrencesList","occurrencesCount","fetchHistory","_aux","sortedArr","sort","maintenancesRes","Containers","Routes","component","exact","admin_only","passwordSet","collects","Collects","OccurrencesWrapper","crumb","notfound","toArray","closeToast","Arrow","marginleft","rotate","SidebarSection","subsections","procClick","ClickAreaPosed","pose","MarginDiv","ClickAreaText","ClickArea","posed","hoverable","hover","background","notActive","SECTIONS","Sidebar","activeSection","myRef","setWrapperRef","node","handleClick","snapshot","WrapperPosed","onMouseEnter","onMouseLeave","FlexColumns","SectionsWrapper","sec","section","pathname","closed","NOTIFICATIONSURL","getNotifications","setNotifications","notifications","setNotificationsTotal","markAsRead","markAllAsRead","getUserInformation","finishUserInfo","notificationsTotal","gettingUserInformation","unreadNotifications","read","user__id","copy","foundIndex","_useState","useState","_useState2","_slicedToArray","isVisible","setIsVisible","handleLanguage","changeLanguage","useEffect","body","overflow","PortugalIcon","UKIcon","BackgroundOverlay","isOpen","Switch","SwitchContent","SwitchButton","showClose","alertFill","Navbar","notificationsDialog","openSwitch","burgerOpen","userInformationOpen","onPtFlagClick","onEnFlagClick","sectionsGenerator","FlexDiv","ProfileName","LogoLink","Logo","RightWrapper","NotificationIconWrapper","NotificationsNewIcon","NotificationsIcon","BurgerMenu","LanguageSwitch","ProfileWapper","ProfileMenu","MenuItem","LanguageMobileWrapper","LanguageIconWrapper","NotificationsDialog","NotificationsTitleWrapper","NotificationsTitle","NotificationsMarkAll","NotificationWrapper","NotificationDate","isValid","NoNotificationsWrapper","NoNotifications","LoadMoreWrapper","LoadMoreLink","LoadingWrapper","h5","getLogos","_asyncToGenerator","_callee3","logos","common_logos","images","_callee","_x3","_callee2","_x4","_x","_x2","FundingFooter","handleLogos","_handleLogos","LogoWrapper","default","App","refreshContent","isOutsideApp","currentPath","match","matchPath","isExact","off","defaults","scale","gridLines","register","afterDraw","clear","save","textAlign","fontColor","fillStyle","restore","datasetNumber","on","baseURL","setResponseInterceptor","allowedRoutes","Route","showNavbar","showSidebar","Helmet","rel","sizes","ThemeProvider","Main","SceneWrapper","FooterWrapper","ToastContainer","pauseOnFocusLoss","autoClose","hideProgressBar","closeButton","CloseButton","main","app","getElementById","localePT","dsn","integrations","Integrations","BrowserTracing","tracesSampleRate","Provider","store","BrowserRouter"],"mappings":"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wuB,GAAe,CAC1B,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,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ACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,WCtOI76B,GAAkB,CACtB,CACEhc,MAAO,MACPya,MAAO,OAET,CACEza,MAAO,QACPya,MAAO,SAET,CACEza,MAAO,OACPya,MAAO,SAILimC,GAAe,SAAA5pC,GAAAC,aAAA2pC,EAAA5pC,GAAA,IAAAE,EAAAC,aAAAypC,GACnB,SAAAA,EAAY3sC,GAAQ,IAAD+F,EAQwB,OARxB5C,aAAA,KAAAwpC,IACjB5mC,EAAA9C,EAAAlV,KAAA,KAAMiS,IAURkG,YAAc,SAAC5J,GACK,UAAdA,EAAMvQ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","file":"static/js/main.31260a3e.chunk.js","sourcesContent":["var map = {\n\t\"./afurada/afurada_logo.png\": [\n\t\t765,\n\t\t7\n\t],\n\t\"./afurada/iceland_logo.png\": [\n\t\t766,\n\t\t8\n\t],\n\t\"./alarm.png\": [\n\t\t767,\n\t\t9\n\t],\n\t\"./cantanhede/inova_logo.svg\": [\n\t\t768,\n\t\t6\n\t],\n\t\"./chaves/chaves_county.png\": [\n\t\t769,\n\t\t10\n\t],\n\t\"./common_logos/european_union_fc.png\": [\n\t\t321,\n\t\t0\n\t],\n\t\"./common_logos/portugal_logo.png\": [\n\t\t322,\n\t\t1\n\t],\n\t\"./common_logos/poseur.png\": [\n\t\t323,\n\t\t2\n\t],\n\t\"./danger.png\": [\n\t\t770,\n\t\t11\n\t],\n\t\"./garbage-truck.png\": [\n\t\t771,\n\t\t12\n\t],\n\t\"./litter.png\": [\n\t\t772,\n\t\t13\n\t],\n\t\"./logo_ubiwhere.png\": [\n\t\t773,\n\t\t14\n\t],\n\t\"./statistics.png\": [\n\t\t774,\n\t\t15\n\t],\n\t\"./tools.png\": [\n\t\t775,\n\t\t16\n\t],\n\t\"./user.png\": [\n\t\t776,\n\t\t17\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__.t(id, 7);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = 762;\nmodule.exports = webpackAsyncContext;","var map = {\n\t\"./european_union_fc.png\": [\n\t\t321,\n\t\t0\n\t],\n\t\"./portugal_logo.png\": [\n\t\t322,\n\t\t1\n\t],\n\t\"./poseur.png\": [\n\t\t323,\n\t\t2\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__.t(id, 7);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = 763;\nmodule.exports = webpackAsyncContext;","import * as Sentry from '@sentry/react'\nimport axios from 'axios'\nimport { camelizeKeys, decamelizeKeys } from 'humps'\nimport { AUTH_TOKEN_TYPE } from 'config'\n\nlet languageInterceptor\n\nconst decamelizeKeysTransformer = function (data) {\n return data && JSON.stringify(decamelizeKeys(data))\n}\n\nexport const setAuthorizationInterceptor = (authToken) => {\n axios.interceptors.request.use(\n (config) => {\n let token = window.localStorage.getItem('access_token')\n\n if (token) {\n config.headers.Authorization = `${AUTH_TOKEN_TYPE} ${token}`\n }\n return config\n },\n (error) => {\n return Promise.reject(error)\n }\n )\n}\n\nexport const setLanguageInterceptor = (language) => {\n axios.interceptors.request.eject(languageInterceptor)\n languageInterceptor = axios.interceptors.request.use(\n (config) => {\n if (language) {\n config.headers['Accept-Language'] = `${language};q=0.8`\n }\n return config\n },\n (error) => {\n return Promise.reject(error)\n }\n )\n}\n\nfunction timeout (ms) {\n return new Promise((resolve) => setTimeout(resolve, ms))\n}\n\nexport const setResponseInterceptor = (history, checkUserAuthentication) => {\n axios.interceptors.response.use(\n (response) => {\n return response\n },\n async (error) => {\n if (\n error.response.status === 401 &&\n history.location.match !== '/login/'\n ) {\n await checkUserAuthentication(error.config)\n await timeout(1000)\n const token = window.localStorage.getItem('access_token')\n error.config.headers['Authorization'] = `${AUTH_TOKEN_TYPE} ${token}`\n error.config.baseURL = undefined\n return axios.request(error.config)\n }\n return Promise.reject(error)\n }\n )\n}\n\nexport const removeAuthorizationInterceptor = () => {\n axios.interceptors.request.use(\n function (config) {\n delete config.headers.Authorization\n return config\n },\n function (error) {\n return Promise.reject(error)\n }\n )\n}\n\n// Converts all responses for CamelCase\naxios.interceptors.response.use(\n (response) => {\n if (\n response.config.responseType == null ||\n response.config.responseType !== 'blob'\n ) {\n response.data = camelizeKeys(response.data)\n }\n return response\n },\n (error) => {\n // Log errors to sentry, if it's in production.\n const isProduction = process.env.NODE_ENV === 'production'\n if (isProduction) {\n // This order of lines of code should be kept to add 'payload' and 'response' to the exception that is sent to sentry\n Sentry.setExtra('payload', error.config.data)\n Sentry.setExtra('response', error.response.data)\n Sentry.captureException(error)\n }\n\n return Promise.reject(error)\n }\n)\n\n// Converts all requests to under-cased\naxios.interceptors.request.use(\n (config) => {\n const currentContentType = config.headers['Content-Type']\n\n // Converts URL get params to underscored\n if (config.params) {\n config.params = decamelizeKeys(config.params)\n }\n\n if (!currentContentType) {\n config.headers['Content-Type'] = 'application/json;charset=utf-8'\n config.transformRequest = [decamelizeKeysTransformer]\n }\n\n return config\n },\n function (error) {\n return Promise.reject(error)\n }\n)\nexport default axios\n","export const SENTRY_URL = `https://a7a40ec4356f428eadda56112fab0069@sentry2.ubiwhere.com/178`;\n\nexport const primaryColor = \"#4DA989\";\nexport const primaryColorOpacity = \"#C2CDCB\";\nexport const lightPrimaryColor = \"#156448\";\nexport const darkPrimaryColor = \"#2C423F\";\nexport const darkPrimaryColorOpacity = \"#4C5B61\";\nexport const secondaryColor = \"#F4AC45\";\nexport const secondaryColorHover = \"rgba(244, 172, 69, 0.5)\";\nexport const darkSecondaryColor = \"#FFD200\";\nexport const textOnPrimary = \"#ffffff\";\nexport const textonSecondary = \"#000000\";\nexport const bodyBackground = \"#f7f7f7\";\nexport const inactiveColor = \"#d3d3d3\";\nexport const lightInactiveColor = \"#e9e9e9\";\nexport const darkInactiveColor = \"#ababab\";\nexport const successColor = \"#97bd60\";\nexport const lightSuccessColor = \"rgba(151, 189, 96, 0.05)\";\nexport const infoColor = \"#2987CF\";\nexport const errorColor = \"#f44336\";\nexport const lightColor = \"rgba(222,112,102,0.05)\";\nexport const darkErrorColor = \"#ba000d\";\nexport const warningColor = \"#FFEF67\";\nexport const alertColor = \"#EF8A17\";\nexport const lightAlertColor = \"rgba(239, 138, 23, 0.05)\";\nexport const borderColor = \"#6E7587\";\nexport const white = \"#ffffff\";\nexport const black = \"#000\";\nexport const iconDarkColor = \"#2a2b2a\";\nexport const activeRowColor = \"rgba(105, 161, 255, 0.25)\";\n\nexport const AUTH_TOKEN_TYPE = `Bearer`\nexport const BASE_API_URL = \"https://valongo.payt.ubiwhere.com/backoffice/api/\";\nexport const MEDIA_API_URL = \"https://valongo.payt.ubiwhere.com/\";\nexport const WS_BASE_URL = \"wss://valongo.payt.ubiwhere.com/ws/\";\nexport const WS_JOIN_GROUP = \"payt\";\nexport const MAP_BOX_KEY = `pk.eyJ1IjoicGF5dCIsImEiOiJjbHFwY29qY3ozZnBrMnFycXYzdmFheTNyIn0.C0zMmPr1c5saR6TFeph5CQ`;\nexport const GOOGLE_API_KEY = `AIzaSyDF09ifRhAeqZvmExKoSBR-ZkkLnT9KjfY`;\n\nexport const MAPCENTER = [-8.494871, 41.189104];\nexport const ZOOMLEVEL = [8];\nexport const MAXZOOMLEVEL = 21;\n\nexport const MAPINITIALBOUNDS = [\n [-9.799501, 41.697784],\n [-7.190241, 40.680424],\n];\n\nexport const theme = {\n primaryColor,\n lightPrimaryColor,\n darkPrimaryColor,\n secondaryColor,\n darkSecondaryColor,\n textOnPrimary,\n textonSecondary,\n bodyBackground,\n inactiveColor,\n darkInactiveColor,\n successColor,\n errorColor,\n darkErrorColor,\n warningColor,\n alertColor,\n infoColor,\n white,\n black,\n borderColor,\n lightInactiveColor,\n iconDarkColor,\n lightColor,\n activeRowColor,\n primaryColorOpacity,\n darkPrimaryColorOpacity,\n secondaryColorHover,\n lightSuccessColor,\n lightAlertColor,\n};\n\nexport const SIMPLE_FEATURES = true;\nexport const MOBILE_DEEPLINK = \"payt-oliveira-do-bairro\";\n\nexport const ADDITIONAL_FEATURES = [\n \"dashboard\",\n \"login_metrics\",\n \"inefficient_pickups_metrics\",\n // \"containers\",\n \"deposits\",\n \"collects\",\n // \"route_schedules\",\n \"maintenances\",\n \"alerts\",\n \"errors\",\n // \"transactions\",\n // \"trader_switch\",\n \"occurrences\",\n // \"funding_footer\",\n];\n\nexport const FUNDING_FOOTER_LOGOS = [];\n\nexport const COMMON_FUNDING_FOOTER_LOGOS = [];\n\nexport const AVAILABLE_CONTAINERS = [\"bio_waste\"];\n\nexport const AVAILABLE_ROLES = {\n administration: \"Administração\",\n trader: \"Comerciante\",\n maintenance: \"Manutenção\",\n};\n","/**\n * Config.js\n * Where we we set all the configurations and constants to be used in the application\n */\n\nimport 'interceptors'\n\n// ! Do not remove the env comments they are used for building the correct environemnt\n// env\nexport * from 'environments/valongo/production';\n// env\n\n// Core Constants\nexport const VERSION =\n process.env.VERSION && process.env.VERSION.replace(/\"/g, '')\nexport const BUILD_DATE = process.env.BUILD_DATE\nexport const DEFAULT_DATE_FORMAT = `DD/MM/YYYY`\nexport const API_DATE_FORMAT = `YYYY-MM-DD`\n\n// Field Constants\n\n// Other Contants\n","import { getStore } from 'kea'\nimport sagaPlugin from 'kea-saga'\n\nexport const Store = getStore({\n plugins: [ sagaPlugin ]\n})\n","import { createGlobalStyle, css } from 'styled-components'\nimport { lighten } from 'polished'\nimport {\n primaryColor,\n lightPrimaryColor,\n darkPrimaryColor,\n secondaryColor,\n darkSecondaryColor,\n textOnPrimary,\n textonSecondary,\n bodyBackground,\n inactiveColor,\n darkInactiveColor,\n successColor,\n errorColor,\n darkErrorColor,\n warningColor,\n alertColor,\n infoColor,\n white,\n black,\n borderColor,\n lightInactiveColor,\n iconDarkColor,\n lightColor,\n activeRowColor,\n primaryColorOpacity,\n darkPrimaryColorOpacity,\n secondaryColorHover,\n lightSuccessColor,\n lightAlertColor\n} from 'config'\n\nconst mediaQuery = (...query) => (literals, ...placeholders) => css`\n @media ${css`\n ${query}\n `} {\n ${css(literals, ...placeholders)}\n }\n`\n\nexport const breakpoints = {\n tablet: {\n min: 768\n },\n smallDesktop: {\n min: 1024\n },\n desktop: {\n min: 1440\n },\n largeDesktop: {\n min: 1800\n }\n}\n\n// Theme variables\nexport const Theme = {\n bodyBackground: bodyBackground,\n lightPrimaryColor: lightPrimaryColor,\n primaryColor: primaryColor,\n darkPrimaryColor: darkPrimaryColor,\n secondaryColor: secondaryColor,\n darkSecondaryColor: darkSecondaryColor,\n textOnPrimary: textOnPrimary,\n textonSecondary: textonSecondary,\n inactiveColor: inactiveColor,\n darkInactiveColor: darkInactiveColor,\n successColor: successColor,\n errorColor: errorColor,\n darkErrorColor: darkErrorColor,\n warningColor: warningColor,\n alertColor: alertColor,\n infoColor: infoColor,\n white: white,\n black: black,\n borderColor: borderColor,\n lightInactiveColor: lightInactiveColor,\n iconDarkColor: iconDarkColor,\n lightColor: lightColor,\n activeRowColor: activeRowColor,\n primaryColorOpacity: primaryColorOpacity,\n darkPrimaryColorOpacity,\n secondaryColorHover,\n lightSuccessColor,\n lightAlertColor,\n fontFamily: \"'Nunito Sans', 'Roboto', sans-serif\",\n breakpoints: breakpoints\n}\n\nexport const media = {\n tablet: mediaQuery(`(min-width: ${Theme.breakpoints.tablet.min / 16}em)`),\n\n smallDesktop: mediaQuery(\n `(min-width: ${Theme.breakpoints.smallDesktop.min / 16}em)`\n ),\n desktop: mediaQuery(`(min-width: ${Theme.breakpoints.desktop.min / 16}em)`),\n largeDesktop: mediaQuery(\n `(min-width: ${Theme.breakpoints.largeDesktop.min / 16}em)`\n )\n}\n\n// Global styles\nexport const GlobalStyles = createGlobalStyle`\n body {\n margin: 0 !important;\n padding: 0;\n font-family: ${Theme.fontFamily};\n text-rendering: optimizeLegibility;\n -webkit-font-smoothing: antialiased;\n text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004);\n -moz-osx-font-smoothing: grayscale;\n -ms-overflow-x: hidden;\n background: ${Theme.bodyBackground};\n font-size: 16px;\n }\n\n * {\n box-sizing: border-box;\n }\n\n .content {\n overflow: hidden;\n font-size: 16px;\n background: rgba(0, 0, 0, 0.8);\n }\n\n\n\n .markercluster-map2{\n height: 100%;\n width:100%;\n box-shadow:0 2px 4px 0 rgba(0,0,0,.12), 0 0 6px 0 rgba(0,0,0,.04);\n }\n\n .markercluster-map{\n height: 100%;\n width:100%;\n box-shadow:0 2px 4px 0 rgba(0,0,0,.12), 0 0 6px 0 rgba(0,0,0,.04);\n }\n\n .mapboxgl-popup-tip{\n display:none;\n }\n\n .mapboxgl-popup-content{\n padding:0px !important;\n }\n\n .el-input__inner, .el-button{\n font-family: ${Theme.fontFamily};\n border-radius: 0 !important;\n }\n\n .el-card{\n border: none !important;\n border-radius: 0 !important;\n box-shadow: 0 2px 4px 0 rgba(0,0,0,.12), 0 0 6px 0 rgba(0,0,0,.04) !important;\n }\n\n .mapboxgl-ctrl{\n display:none !important;\n }\n\n .el-card__header{\n padding:0px !important;\n }\n\n .el-card__body{\n padding:0px !important;\n }\n\n .el-row{\n margin-left:-10px !important;\n margin-right:-10px !important;\n }\n\n .el-carousel__indicator{\n button{\n background-color:${Theme.primaryColor} !important;\n }\n }\n\n .el-carousel__indicators{\n margin-bottom: 5px !important;\n }\n\n\n .el-carousel__button{\n width:8px !important;\n height:8px !important;\n }\n\n .el-breadcrumb__item__inner{\n cursor:pointer !important;\n color:${Theme.darkPrimaryColor} !important;\n\n :hover{\n color:${Theme.primaryColor} !important;\n\n }\n }\n\n .el-breadcrumb__item{\n >span{\n font-size:16px !important;\n line-height:24px !important;\n font-weight:500 !important;\n }\n }\n\n .el-breadcrumb__separator{\n font-size:16px !important;\n line-height:24px !important;\n font-weight:500 !important;\n }\n\n .DateRangePicker{\n border: 1px solid ${lighten(0.4, Theme.borderColor)};\n color: ${inactiveColor};\n transition: border-color 0.5s;\n z-index:100;\n margin-left: 14px;\n height: 36px;\n :hover{\n border: 1px solid ${Theme.borderColor} !important;\n }\n .DateRangePickerInput{\n border:0px !important;\n background-color:${white} !important;\n ${media.tablet`\n min-width: 145px;\n `}\n .DateInput {\n width:95px !important;\n background-color:transparent !important;\n .DateInput_input__focused{\n border-bottom: 0px;\n text-decoration: underline;\n padding-top:3px;\n }\n input{\n color: ${Theme.textonSecondary} !important;\n font-size: 14px;\n padding:5px 11px 3px;\n background-color:transparent !important;\n }\n ${media.tablet`\n width: 65px !important;\n \n input{\n font-size: 10px;\n padding:5px 5px 3px;\n }\n `}\n }\n svg{\n margin-bottom: 2px;\n height: 18px !important;\n ${media.tablet`\n width: 14px;\n `}\n }\n }\n .CalendarDay{\n background-color: ${white} !important;\n border:1px solid ${white} !important;\n\n &.CalendarDay__selected_span,\n &.CalendarDay__selected_end, \n &.CalendarDay__selected_start{\n background-color: ${Theme.darkSecondaryColor} !important;\n color: ${Theme.textOnPrimary} !important;\n }\n }\n td{\n color: ${Theme.textonSecondary} !important;\n }\n\n }\n\n .number .active{\n background-color: ${Theme.darkSecondaryColor} !important;\n\n }\n\n .customTableChart{\n background-color:white;\n box-shadow:0 0 10px 0 rgba(0,0,0,0.3);\n padding:5px;\n margin:0px;\n\n color: ${Theme.textonSecondary};\n font-family: ${Theme.fontFamily}\n font-size: 14px;\n line-height: 14px;\n height:22px;\n thead{\n height:0px;\n }\n\n }\n\n\n ::-webkit-scrollbar {\n width: 4px;\n height: 4px;\n }\n ::-webkit-scrollbar-button {\n width: 0px;\n height: 0px;\n }\n\n ::-webkit-scrollbar-thumb {\n background-color: ${Theme.lightPrimaryColor};\n border: 0px none ${Theme.white};\n }\n\n ::-webkit-scrollbar-thumb:hover {\n background-color: ${Theme.lightPrimaryColor};\n }\n\n ::-webkit-scrollbar-thumb:active {\n background-color: ${Theme.lightPrimaryColor};\n }\n\n ::-webkit-scrollbar-track {\n background-color: ${Theme.white};\n border: 0px none ${Theme.white};\n }\n\n ::-webkit-scrollbar-track:hover {\n background: rgba(255,255,255,0.15);\n }\n\n ::-webkit-scrollbar-track:active {\n background: rgba(255,255,255,0.15);\n }\n\n ::-webkit-scrollbar-corner {\n background: transparent;\n }\n\n\n .cell {\n text-overflow:ellipsis;\n overflow:hidden;\n .div{\n text-overflow:ellipsis;\n overflow:hidden;\n }\n }\n\n a[download=\"file.pdf\"]{\n height: 35px;\n display: flex;\n align-items: center;\n }\n\n /*!\n * https://github.com/YouCanBookMe/react-datetime\n */\n\n.rdt {\n position: relative;\n}\n.rdtPicker {\n display: none;\n position: absolute;\n width: 250px;\n padding: 4px;\n margin-top: 1px;\n z-index: 99999 !important;\n background: #fff;\n box-shadow: 0 1px 3px rgba(0,0,0,.1);\n border: 1px solid #f9f9f9;\n}\n.rdtOpen .rdtPicker {\n display: block;\n}\n.rdtStatic .rdtPicker {\n box-shadow: none;\n position: static;\n}\n\n.rdtPicker .rdtTimeToggle {\n text-align: center;\n}\n\n.rdtPicker table {\n width: 100%;\n margin: 0;\n}\n.rdtPicker td,\n.rdtPicker th {\n text-align: center;\n height: 28px;\n}\n.rdtPicker td {\n cursor: pointer;\n}\n.rdtPicker td.rdtDay:hover,\n.rdtPicker td.rdtHour:hover,\n.rdtPicker td.rdtMinute:hover,\n.rdtPicker td.rdtSecond:hover,\n.rdtPicker .rdtTimeToggle:hover {\n background: #eeeeee;\n cursor: pointer;\n}\n.rdtPicker td.rdtOld,\n.rdtPicker td.rdtNew {\n color: #999999;\n}\n.rdtPicker td.rdtToday {\n position: relative;\n}\n.rdtPicker td.rdtToday:before {\n content: '';\n display: inline-block;\n border-left: 7px solid transparent;\n border-bottom: 7px solid #428bca;\n border-top-color: rgba(0, 0, 0, 0.2);\n position: absolute;\n bottom: 4px;\n right: 4px;\n}\n.rdtPicker td.rdtActive,\n.rdtPicker td.rdtActive:hover {\n background-color: #428bca;\n color: #fff;\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\n.rdtPicker td.rdtActive.rdtToday:before {\n border-bottom-color: #fff;\n}\n.rdtPicker td.rdtDisabled,\n.rdtPicker td.rdtDisabled:hover {\n background: none;\n color: #999999;\n cursor: not-allowed;\n}\n\n.rdtPicker td span.rdtOld {\n color: #999999;\n}\n.rdtPicker td span.rdtDisabled,\n.rdtPicker td span.rdtDisabled:hover {\n background: none;\n color: #999999;\n cursor: not-allowed;\n}\n.rdtPicker th {\n border-bottom: 1px solid #f9f9f9;\n}\n.rdtPicker .dow {\n width: 14.2857%;\n border-bottom: none;\n cursor: default;\n}\n.rdtPicker th.rdtSwitch {\n width: 100px;\n}\n.rdtPicker th.rdtNext,\n.rdtPicker th.rdtPrev {\n font-size: 21px;\n vertical-align: top;\n}\n\n.rdtPrev span,\n.rdtNext span {\n display: block;\n -webkit-touch-callout: none; /* iOS Safari */\n -webkit-user-select: none; /* Chrome/Safari/Opera */\n -khtml-user-select: none; /* Konqueror */\n -moz-user-select: none; /* Firefox */\n -ms-user-select: none; /* Internet Explorer/Edge */\n user-select: none;\n}\n\n.rdtPicker th.rdtDisabled,\n.rdtPicker th.rdtDisabled:hover {\n background: none;\n color: #999999;\n cursor: not-allowed;\n}\n.rdtPicker thead tr:first-child th {\n cursor: pointer;\n}\n.rdtPicker thead tr:first-child th:hover {\n background: #eeeeee;\n}\n\n.rdtPicker tfoot {\n border-top: 1px solid #f9f9f9;\n}\n\n.rdtPicker button {\n border: none;\n background: none;\n cursor: pointer;\n}\n.rdtPicker button:hover {\n background-color: #eee;\n}\n\n.rdtPicker thead button {\n width: 100%;\n height: 100%;\n}\n\ntd.rdtMonth,\ntd.rdtYear {\n height: 50px;\n width: 25%;\n cursor: pointer;\n}\ntd.rdtMonth:hover,\ntd.rdtYear:hover {\n background: #eee;\n}\n\n.rdtCounters {\n display: inline-block;\n}\n\n.rdtCounters > div {\n float: left;\n}\n\n.rdtCounter {\n height: 100px;\n}\n\n.rdtCounter {\n width: 40px;\n}\n\n.rdtCounterSeparator {\n line-height: 100px;\n}\n\n.rdtCounter .rdtBtn {\n height: 40%;\n line-height: 40px;\n cursor: pointer;\n display: block;\n\n -webkit-touch-callout: none; /* iOS Safari */\n -webkit-user-select: none; /* Chrome/Safari/Opera */\n -khtml-user-select: none; /* Konqueror */\n -moz-user-select: none; /* Firefox */\n -ms-user-select: none; /* Internet Explorer/Edge */\n user-select: none;\n}\n.rdtCounter .rdtBtn:hover {\n background: #eee;\n}\n.rdtCounter .rdtCount {\n height: 20%;\n font-size: 1.2em;\n}\n\n.rdtMilli {\n vertical-align: middle;\n padding-left: 8px;\n width: 48px;\n}\n\n.rdtMilli input {\n width: 100%;\n font-size: 1.2em;\n margin-top: 37px;\n}\n\n.rdtTime td {\n cursor: default;\n}\n\n.Toastify__toast--success{\n background: ${Theme.white};\n\n border-left: 5px solid ${Theme.successColor};\n}\n.Toastify__toast--info{\n background: ${Theme.white};\n\n border-left: 5px solid ${Theme.primaryColor};\n}\n.Toastify__toast--warning{\n background: ${Theme.white};\n\n border-left: 5px solid ${Theme.alertColor};\n}\n.Toastify__toast--error{\n background: ${Theme.white};\n \n border-left: 5px solid ${Theme.errorColor};\n}\n\n.Toastify__toast{\n margin: 0;\n margin-right: 1.2rem;\n padding: 1rem 0.75rem !important;\n background: ${Theme.white} !important;\n color: ${Theme.black};\n}\n.Toastify{\n z-index: 10001;\n}\n\n\n.el-dialog__wrapper{\n display: flex;\n align-items: center;\n justify-content: center;\n}\n`\n","import Portuguese from \"./portuguese.json\";\nimport English from \"./english.json\";\n\nexport const idiom = [\"pt\"];\n\nexport default {\n en: English,\n pt: Portuguese,\n};\n\nexport { default as i18n } from \"./i18n\";\n","import i18n from \"i18next\"\nimport { initReactI18next } from \"react-i18next\"\n\nimport Translations from './index'\n\n// Translations Support\ni18n.use(initReactI18next).init({\n resources: Translations,\n lng: localStorage.getItem('language') || 'pt',\n fallbackLng: \"en\",\n interpolation: {\n escapeValue: false\n }\n});\n\nexport default i18n\n","/**\n * Main APP Logic\n * Please write a description\n *\n * @author Your Name \n */\nimport PropTypes from \"prop-types\";\nimport { kea } from \"kea\";\nimport { put, call, take, fork } from \"redux-saga/effects\";\nimport { delay } from \"redux-saga\";\nimport axios from \"axios\";\nimport { toast } from \"react-toastify\";\nimport { camelizeKeys } from \"humps\";\nimport { eventChannel } from \"redux-saga\";\nimport LogRocket from \"logrocket\";\n\nimport {\n setLanguageInterceptor,\n setAuthorizationInterceptor,\n removeAuthorizationInterceptor,\n} from \"interceptors\";\nimport {\n BASE_API_URL,\n WS_BASE_URL,\n WS_JOIN_GROUP,\n AVAILABLE_ROLES,\n} from \"config\";\n\nconst RefreshUrl = BASE_API_URL + \"auth/token/refresh/\";\nconst USERPROFILEURL = BASE_API_URL + \"users/me/\";\n\nexport default kea({\n path: () => [\"scenes\", \"app\"],\n\n actions: () => ({\n setShouldLogin: (value) => ({ value }),\n setShouldBypassLogin: (value) => ({ value }),\n\n setCurrentUser: (user) => ({ user }),\n getCurrentUser: true,\n getAppTranslations: true,\n checkUserAuthentication: (config) => ({ config }),\n setCurrentLanguage: (language) => ({ language }),\n\n logout: true,\n finished: true,\n loading: true,\n\n watchEvents: (handle) => handle,\n changeWatchingEvents: (event) => event,\n setWebSocketsChannel: (channel) => ({ channel }),\n setWebSocketHanlder: (handler) => ({ handler }),\n }),\n\n reducers: ({ actions }) => ({\n user: [\n null,\n PropTypes.any,\n {\n [actions.setCurrentUser]: (state, payload) => payload.user,\n },\n ],\n shouldLogin: [\n false,\n PropTypes.bool,\n {\n [actions.setShouldLogin]: (state, { value }) => value,\n },\n ],\n shouldBypassLogin: [\n false,\n PropTypes.bool,\n {\n [actions.setShouldBypassLogin]: (state, { value }) => value,\n },\n ],\n\n loading: [\n true,\n PropTypes.bool,\n {\n [actions.loading]: () => true,\n [actions.finished]: () => false,\n },\n ],\n loadingUser: [\n true,\n PropTypes.bool,\n {\n [actions.getCurrentUser]: () => true,\n [actions.setCurrentUser]: () => false,\n },\n ],\n watchingEvents: [\n false,\n PropTypes.boolean,\n {\n [actions.changeWatchingEvents]: (state, payload) => payload,\n },\n ],\n channel: [\n null,\n PropTypes.any,\n {\n [actions.setWebSocketsChannel]: (state, { channel }) => channel,\n },\n ],\n handler: [\n null,\n PropTypes.any,\n {\n [actions.setWebSocketHanlder]: (state, { handler }) => handler,\n },\n ],\n currentLanguage: [\n \"pt-PT\",\n PropTypes.string,\n {\n [actions.setCurrentLanguage]: (state, { language }) => language,\n },\n ],\n }),\n\n start: function* () {\n const { checkUserAuthentication } = this.actions;\n yield put(checkUserAuthentication());\n const currentLanguage = yield this.get(\"currentLanguage\");\n \n if (currentLanguage) {\n setLanguageInterceptor(currentLanguage);\n }\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.setCurrentLanguage]: [workers.setCurrentLanguage],\n [actions.checkUserAuthentication]: workers.checkUserAuthentication,\n [actions.getCurrentUser]: workers.getCurrentUser,\n [actions.logout]: workers.logout,\n [actions.watchEvents]: workers.watchEvents,\n }),\n\n workers: {\n *setCurrentLanguage() {\n const currentLanguage = yield this.get(\"currentLanguage\");\n \n if (currentLanguage) {\n setLanguageInterceptor(currentLanguage);\n }\n },\n\n /**\n * Checks for the user authentication token\n * @param {*} action\n */\n *checkUserAuthentication(action) {\n const { payload } = action;\n try {\n let refresh_token = window.localStorage.getItem(\"refresh_token\");\n if (refresh_token) {\n const params = {\n refresh: refresh_token,\n };\n const request = yield call(axios.post, RefreshUrl, params);\n if (request.status === 200) {\n window.localStorage.setItem(\"access_token\", request.data.access);\n setAuthorizationInterceptor();\n const { getCurrentUser, setShouldBypassLogin } = this.actions;\n yield put(getCurrentUser(true));\n yield put(setShouldBypassLogin(true));\n if (payload != null && payload.config != null) {\n const { finished } = this.actions;\n yield put(finished());\n return;\n }\n } else {\n window.localStorage.removeItem(\"access_token\");\n const { setShouldLogin } = this.actions;\n yield put(setShouldLogin(true));\n }\n } else {\n const { setShouldLogin } = this.actions;\n yield put(setShouldLogin(true));\n }\n } catch (err) {\n console.log({ err });\n const { setShouldLogin, logout } = this.actions;\n yield put(logout());\n yield put(setShouldLogin(true));\n } finally {\n const { finished } = this.actions;\n yield delay(200);\n yield put(finished());\n }\n },\n\n /**\n * Gets the current user logged in\n * @param {*} action\n */\n *getCurrentUser() {\n const { setCurrentUser } = this.actions;\n const { t } = this.props;\n try {\n const request = yield call(axios.get, USERPROFILEURL);\n if (request.status === 200) {\n const isAdmin = request.data.group.name === AVAILABLE_ROLES.administration\n const isTrader =\n request.data.group.name === AVAILABLE_ROLES.trader;\n const isMaintenance =\n request.data.group.name === AVAILABLE_ROLES.maintenance;\n \n yield put(\n setCurrentUser({\n ...request.data,\n isAdmin,\n isTrader,\n isMaintenance,\n })\n );\n }\n\n LogRocket.identify(request.data.id, {\n name: request.data.fullName,\n // Add your own custom user variables here, ie:\n username: request.data.username,\n });\n } catch (err) {\n const { logout } = this.actions;\n window.localStorage.removeItem(\"access_token\");\n window.localStorage.removeItem(\"refresh_token\");\n toast.error(t(\"server_error\"), {\n position: toast.POSITION.TOP_RIGHT,\n });\n\n yield put(logout());\n }\n },\n\n /**\n * Logout's user\n */\n *logout() {\n const { setCurrentUser } = this.actions;\n window.localStorage.removeItem(\"refresh_token\");\n window.localStorage.removeItem(\"access_token\");\n removeAuthorizationInterceptor();\n yield put(setCurrentUser(null));\n },\n\n *watchEvents(action) {\n const { changeWatchingEvents, setWebSocketsChannel } = this.actions;\n\n const channel = yield this.get(\"channel\");\n\n yield put(changeWatchingEvents(true));\n console.info(\"%c[AppLogic] Started watching events\", \"color:orange\");\n if (channel == null) {\n const new_channel = yield call(watchEvents);\n yield put(setWebSocketsChannel(new_channel));\n }\n\n while (true) {\n const channel = yield this.get(\"channel\");\n const handler = yield this.get(\"handler\");\n const watchingEvents = yield this.get(\"watchingEvents\");\n const message = yield take(channel);\n if (handler && channel && watchingEvents) {\n yield fork(handler, message);\n }\n }\n },\n },\n});\n\nfunction watchEvents() {\n return eventChannel((emiter) => {\n let actualToken = window.localStorage.getItem(\"access_token\");\n if (actualToken) {\n let wsInstance = new window.WebSocket(\n `${WS_BASE_URL}?token=${actualToken}`\n );\n\n wsInstance.blocked = false;\n wsInstance.count = 0;\n\n wsInstance.onopen = () => {\n console.log(\"websockets open\");\n wsInstance.send(\n JSON.stringify({ command: \"join\", group: WS_JOIN_GROUP })\n );\n console.info(`%c🔌 WebSocket: joined #${WS_JOIN_GROUP}`, \"color:green\");\n // let data = {\n // event_type: \"status\",\n // message: \"Notifications Activated\",\n // content: {\n // id: 0,\n // },\n // };\n // setTimeout(() => {\n // emiter(data);\n // }, 3000);\n };\n\n wsInstance.onerror = (error) => {\n console.info(`%c🔌 WebSocket: error received`, \"color:green\");\n console.error(error);\n };\n\n wsInstance.onmessage = (e) => {\n // Parse the json string\n if (!wsInstance.blocked) {\n console.log(\"WS: Not blocked, allowing.\");\n if (wsInstance.count > 5) {\n wsInstance.blocked = true;\n }\n\n setTimeout(() => {\n wsInstance.blocked = false;\n wsInstance.count = 0;\n }, 5000);\n\n const data = camelizeKeys(JSON.parse(e.data));\n wsInstance.count += 1;\n\n // Emitt to worker\n emiter({ ...data, event_type: \"event\" });\n } else {\n console.log(\"WS: Blocked.\");\n }\n };\n }\n // unsubscribe function\n return () => {\n console.log(\"%c🔌 WebSocket: socket has been disconnected\", \"color:red\");\n };\n });\n}\n","/**\n * StyledButton Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled, { css } from \"styled-components\";\nimport { Button } from \"element-react\";\nimport { Theme } from \"globalStyles\";\n\nexport default ({ children, ...props }) => (\n {children}\n);\n\nconst CustomButton = styled(Button)`\n &.el-button {\n border: 1px solid ${Theme.darkPrimaryColor};\n background-color: ${Theme.darkPrimaryColor};\n color: ${Theme.textOnPrimary};\n height: 36px;\n transition: border-color 0.3s ease-in-out, color 0.3s ease-in-out,\n background-color 0.3s ease-in-out, opacity 0.3s ease-in-out;\n\n font-family: ${Theme.fontFamily};\n\n width: 100%;\n margin: 0;\n\n & + & {\n margin-left: 0;\n }\n\n ${({ theme }) => theme.desktop`\n margin: ${({ margin }) => margin};\n\n\n & + & {\n }\n `}\n\n :hover,\n :active,\n :focus {\n border: 1px solid ${Theme.darkPrimaryColor} !important;\n color: ${Theme.textOnPrimary};\n background-color: ${Theme.darkPrimaryColor};\n opacity: 0.5;\n }\n\n ${(props) =>\n props.type === \"primary\" &&\n css`\n background-color: ${Theme.primaryColor};\n color: ${Theme.white};\n border: 1px solid ${Theme.primaryColor} !important;\n :hover,\n :focus {\n background-color: ${Theme.secondaryColor};\n border: 1px solid ${Theme.secondaryColor} !important;\n color: ${Theme.textOnPrimary};\n opacity: 1;\n }\n :active {\n border: 1px solid ${Theme.secondaryColor} !important;\n }\n `}\n\n ${(props) =>\n props.type === \"secondary\" &&\n css`\n background-color: ${Theme.secondaryColor};\n color: ${Theme.white};\n border: 1px solid ${Theme.secondaryColor} !important;\n :hover,\n :focus {\n background-color: ${Theme.darkSecondaryColor};\n border: 1px solid ${Theme.darkSecondaryColor} !important;\n color: ${Theme.textOnPrimary};\n opacity: 1;\n }\n :active {\n border: 1px solid ${Theme.secondaryColor} !important;\n }\n `}\n\n ${(props) =>\n props.type === \"neutral\" &&\n css`\n background-color: ${Theme.white};\n color: ${Theme.textonSecondary};\n border: 1px solid #dddfe4 !important;\n &:hover,\n &:focus,\n &:active {\n background-color: ${Theme.white};\n color: ${Theme.textonSecondary};\n border: 1px solid #6e7587;\n opacity: 1;\n\n }\n \n `}\n }\n`;\n","import React, { Component } from \"react\";\nimport styled from \"styled-components\";\nimport StyledButton from \"components/StyledButton\";\nimport { Link } from \"react-router-dom\";\nimport { Theme } from \"globalStyles\";\n\nexport default class NotFound extends Component {\n render() {\n return (\n \n 404\n Page Not Found\n\n \n Return Home \n \n \n );\n }\n}\n\nconst Wrapper = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n min-height: 100vh;\n`;\n\nconst Message = styled.span`\n font-size: 26px;\n margin: 15px auto;\n color: ${Theme.darkPrimaryColor};\n`;\n\nconst Code = styled.span`\n font-size: 150px;\n color: ${Theme.errorColor};\n`;\n","// Checks the validation of the whole form\nexport const checkValidation = (form: {}, validations: {}): ValidatedForm => {\n let clone: {} = { ...form }\n let invalid: boolean = false\n\n for (const key in clone) {\n if (clone.hasOwnProperty(key)) {\n const element: any = clone[key]\n const validationList: Array = validations[key]\n element.valid = true\n\n if (validationList && validationList.length) {\n for (let index: number = 0; index < validationList.length; index++) {\n const check: Function = validationList[index]\n const response = check(element.value, form)\n\n if (response.result === 'end') {\n // put valid true and empty message like default value\n element.valid = true\n element.message = ''\n break\n }\n\n if (!response.result) {\n element.valid = false\n element.message = response.message\n invalid = true\n } else {\n element.valid = true\n }\n }\n }\n }\n }\n\n return { invalid, form: clone }\n}\n\n// Checks the validation of a field\nexport const setAndCheckValidation = (state: {}, payload: ChangedValue, validations: {}): FormState => {\n let newStateChanges: {} = {}\n\n Object.keys(payload.field).forEach((fieldName) => {\n const field: any = payload.field[fieldName]\n const validationList: Array = validations[fieldName]\n\n let settedField: ChangedValueValidated = {\n value: field,\n valid: true\n }\n\n if (validationList) {\n for (var index = 0; index < validationList.length; index++) {\n const check: Function = validationList[index]\n const response: ValidationResult = check(field, state)\n\n if (response.result === 'end') {\n break\n }\n\n if (!response.result) {\n settedField.valid = false\n settedField.message = response.message\n break\n }\n }\n }\n\n newStateChanges = { ...newStateChanges, [fieldName]: settedField }\n })\n\n return { ...state, ...newStateChanges }\n}\n\n// Validates and email\nexport const Email = (value: string, state: {}): ValidationResult => {\n let message: string = 'email_format_error'\n\n const regex = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\n\n if (!value) {\n message = 'email_input_empty'\n return { result: false, message }\n }\n\n if (!regex.test(value)) {\n return { result: false, message }\n }\n\n return { result: true }\n}\n\n// Validates if a field is set\nexport const isRequired = (value: any, state: {}): ValidationResult => {\n const message: string = 'login_empty_error'\n\n if (!value) {\n return { result: false, message }\n }\n\n return { result: true }\n}\n\n// Used to validate unrequired fields\nexport const hasValue = (value: any, state: {}): ValidationResult => {\n if (!value) {\n return { result: 'end' }\n }\n\n return { result: 'continue' }\n}\n\n// Validates if its a valid postal code\nexport const isValidPostalCode = (value: any, state: {}): ValidationResult => {\n const message: string = `O código postal não está no formato correto`\n const regex = /^\\d{4}-\\d{3}$/\n if (!regex.test(value)) {\n return { result: false, message }\n }\n\n return { result: true }\n}\n\nexport const isValidPhoneNumber = (value: any, state: {}): ValidationResult => {\n const message: string = `Número está incorreto`\n const regex = /^\\d{9}$/\n if (!regex.test(value)) {\n return { result: false, message }\n }\n\n return { result: true }\n}\n\nexport const isValidWebsite = (value: any, state: {}): ValidationResult => {\n const message: string = `Website invalido`\n const regex = /^(?:http(s)?:\\/\\/)?[\\w.-]+(?:\\.[\\w.-]+)+[\\w\\-._~:/?#[\\]@!$&'()*+,;=.]+$/\n if (!regex.test(value)) {\n return { result: false, message }\n }\n\n return { result: true }\n}\n\nexport const passwordsMatch = (password, confirmPassword) => {\n const message = 'passwords_match'\n const regex =\n password != null && confirmPassword != null && password === confirmPassword\n if (!regex) {\n return { valid: false, message, value: confirmPassword }\n }\n\n return { valid: true, value: confirmPassword }\n}\n","/**\n * Login Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport { kea } from 'kea'\n\nimport { put, call } from 'redux-saga/effects'\n\nimport axios from 'axios'\nimport PropTypes from 'prop-types'\nimport mapValues from 'lodash/mapValues'\nimport * as Check from 'validations'\nimport { BASE_API_URL } from 'config'\nimport { setAuthorizationInterceptor } from 'interceptors';\nimport AppLogic from 'containers/App/logic'\n\nconst LoginUrl = BASE_API_URL + \"auth/token/\"\n\n// Constants\n\nconst DEFAULT_VALUES = {\n username: {\n value: ''\n },\n password: {\n value: ''\n }\n}\n\nconst VALIDATIONS = {\n username: [\n Check.isRequired\n ],\n password: [\n Check.isRequired\n ]\n}\n\n\nexport default kea({\n path: () => ['scenes', 'Login'],\n\n connect: {\n actions: [\n AppLogic, [\n 'checkUserAuthentication',\n 'getCurrentUser'\n ],\n ]\n },\n\n actions: () => ({\n\n change: (field) => ({ field }),\n submit: () => ({}),\n response: (response) => ({ response }),\n error: (error) => ({ error }),\n setForm: (form) => ({ form }),\n reset: () => true,\n\n }),\n\n reducers: ({ actions }) => ({\n\n form: [DEFAULT_VALUES, PropTypes.object, {\n [actions.change]: (state, payload) => Check.setAndCheckValidation(state, payload, VALIDATIONS),\n [actions.setForm]: (state, payload) => Check.checkValidation(payload.form, VALIDATIONS).form,\n [actions.reset]: () => DEFAULT_VALUES\n }],\n\n dirty: [false, PropTypes.bool, {\n [actions.change]: () => true,\n [actions.response]: () => false,\n [actions.error]: () => true,\n [actions.reset]: () => false\n }],\n\n submiting: [false, PropTypes.bool, {\n [actions.submit]: () => true,\n [actions.error]: () => false,\n [actions.response]: () => false,\n [actions.reset]: () => false\n }],\n\n response: [null, PropTypes.any, {\n [actions.response]: (state, payload) => payload.response,\n [actions.reset]: () => null\n }],\n\n error: [null, PropTypes.any, {\n [actions.error]: (state, payload) => payload.error,\n [actions.reset]: () => null\n }],\n\n\n }),\n\n start: function* () {\n const { checkUserAuthentication } = this.actions\n yield put(checkUserAuthentication())\n },\n\n takeLatest: ({ actions, workers }) => ({\n\n [actions.submit]: workers.submit,\n\n }),\n\n\n workers: {\n\n /**\n * Write something about your form submitons\n * @param {*} action\n */\n * submit(action) {\n const {\n error,\n setForm\n } = this.actions\n\n const form = yield this.get('form')\n const dirty = yield this.get('dirty')\n\n // Check validations\n const validation = Check.checkValidation(form, VALIDATIONS)\n\n if (dirty && validation.invalid) {\n // try to scroll to first form field error\n yield put(error([]))\n return false\n }\n\n if (!dirty && validation.invalid) {\n // try to scroll to first form field error\n yield put(setForm(validation.form))\n yield put(error([]))\n return false\n }\n\n //remove token if it exists (https://gitlab.ubiwhere.com/payt/frontend/-/issues/79)\n window.localStorage.removeItem(\"access_token\")\n\n // Transform object and remove uneeded state values\n let params = mapValues(form, ({ value }) => value)\n try {\n const request = yield call(axios.post, LoginUrl, params)\n\n if (request.status === 200) {\n window.localStorage.setItem(\"access_token\", request.data.access)\n window.localStorage.setItem(\"refresh_token\", request.data.refresh)\n\n\n setAuthorizationInterceptor(request.data.access)\n\n\n const { response, getCurrentUser } = this.actions\n yield put(getCurrentUser(true))\n yield put(response(\"success\"))\n }\n else {\n window.localStorage.removeItem(\"access_token\");\n window.localStorage.removeItem(\"refresh_token\");\n yield put(error([\"login_error\"]))\n }\n\n } catch (er) {\n console.log(er)\n if (er.response) {\n // map WS return errors to form format\n // put the errors on each field and changed them to invalid\n // try to scroll to first form field error\n }\n\n yield put(error([\"login_error\"]))\n }\n },\n\n }\n\n})\n\n","/**\n * Login Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic from \"./logic\";\nimport styled from \"styled-components\";\nimport { Input } from \"element-react\";\n// import { lighten } from \"polished\";\nimport { Theme } from \"globalStyles\";\nimport { withTranslation } from \"react-i18next\";\nimport StyledButton from \"components/StyledButton\";\n\nimport { Link } from \"react-router-dom\";\n\nclass Login extends Component {\n handleEnter = (event) => {\n if (event.key === \"Enter\") {\n const { submit } = this.actions;\n submit();\n }\n };\n\n componentDidUpdate() {\n if (this.props.response === \"success\") {\n const { history } = this.props;\n const { reset } = this.actions;\n\n history.push(\"/\");\n reset();\n }\n }\n\n render() {\n const { username, password } = this.props.form;\n const { t, submiting, error } = this.props;\n const { change, submit } = this.actions;\n\n return (\n \n \n {t(\"login\")}\n\n {\n change({ username: e });\n }}\n onKeyDown={this.handleEnter}\n //haserror needs to be passed as strings and not booleans, to avoid console errors\n haserror={(username.valid === false && username.message != null).toString() || 'false'}\n />\n {username.valid === false && username.message != null && (\n {t(username.message)}\n )}\n\n {\n change({ password: e });\n }}\n onKeyDown={this.handleEnter}\n haserror={(username.valid === false && username.message != null).toString() || 'false'}\n />\n {password.valid === false && password.message != null && (\n {t(password.message)}\n )}\n\n \n \n {t(\"login\")}\n \n \n\n {error && {error.map((error) => t(error))}}\n\n \n {t(\"recover_password\")}\n \n \n \n );\n }\n}\n\nexport default withTranslation()(Logic(Login));\n\nconst Wrapper = styled.div`\n height: calc(100vh - 4rem - 64px);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n background-color: #f8f8f8;\n`;\n\nconst FlexWrapper = styled.div`\n min-height: 330px;\n background-color: #ffffff;\n box-shadow: 0 0 14px 0 rgba(64, 82, 132, 0.1);\n padding: 32px;\n margin: 32px;\n width: min(412px, 100%)\n`;\n\nconst Error = styled.div`\n width: 100%;\n color: red;\n display: flex;\n justify-content: center;\n margin-top: 10px !important;\n font-size: 12px;\n`;\n\nconst AlignCenter = styled.div`\n display: flex;\n justify-content: center;\n margin-top: 20px !important;\n`;\n\n// const StyledButton = styled(Button)`\n// width: 100%;\n// color: #ffffff !important;\n// height: 40px !important;\n// background-color: ${Theme.primaryColor} !important;\n// box-shadow: 0 0 14px 0 rgba(64, 82, 132, 0.1) !important;\n// transition: background-color 0.6s !important;\n// transition: color 0.3s;\n\n// :focus {\n// color: #8391a5 !important;\n// border-color: #8391a5 !important;\n// color: #ffffff !important;\n// }\n\n// :hover {\n// color: #ffffff !important;\n\n// background-color: ${lighten(0.1, Theme.primaryColor)} !important;\n// }\n// `;\n\nconst StyledInput = styled(Input)`\n margin-bottom: 15px;\n\n .el-input__inner {\n color: #242a3e;\n font-family: ${Theme.fontFamily};\n font-size: 12px;\n line-height: 16px;\n padding: 0px 16px;\n :focus {\n border-color: #8391a5;\n }\n }\n\n input {\n text-align: left !important;\n }\n input:-webkit-autofill {\n -webkit-box-shadow: 0 0 0px 1000px #ffffff inset;\n -webkit-text-fill-color: #1f2d3d !important;\n background-color: #ffffff !important;\n color: #1f2d3d !important;\n }\n\n margin-bottom: ${props => props.haserror === 'true' && 0};\n`;\n\nconst LoginText = styled.div`\n height: 36px;\n color: #242a3e;\n font-family: ${Theme.fontFamily};\n font-size: 18px;\n font-weight: bold;\n line-height: 36px;\n margin-bottom: 32px;\n`;\n\nconst RecoverPassword = styled(Link)`\n margin: 0.5rem 0 0 auto;\n display: block;\n width: fit-content;\n\n color: ${Theme.primaryColor};\n font-family: ${Theme.fontFamily};\n font-size: 12px;\n font-weight: bold;\n line-height: 16px;\n\n transition: opacity 0.3s ease-in-out;\n\n &:hover {\n opacity: 0.5;\n }\n`;\n\nconst InputError = styled(Error)`\n text-align: left;\n justify-content: flex-start;\n\n margin: 0.5rem 0\n`","/**\n * Finds a get parameter in url\n *\n * @author Hugo Fonseca \n */\nexport default (parameterName) => {\n let result = null\n let tmp = []\n let items = window.location.search.substr(1).split('&')\n for (let index = 0; index < items.length; index++) {\n tmp = items[index].split('=')\n if (tmp[0] === parameterName) result = decodeURIComponent(tmp[1])\n }\n return result\n}\n","export default (code) => {\n switch (code) {\n case \"y\":\n return \"yellow\";\n case \"b\":\n return \"blue\";\n case \"g\":\n return \"green\";\n case \"u\":\n return \"undifferentiated\";\n case \"bw\":\n return \"bio_waste\";\n default:\n return \"undifferentiated\";\n }\n};\n","import { Theme } from \"globalStyles\";\n\nexport default (code) => {\n switch (code) {\n case \"y\":\n return Theme.warningColor;\n case \"b\":\n return Theme.infoColor;\n case \"g\":\n return Theme.successColor;\n case \"u\":\n return Theme.darkPrimaryColor;\n case \"bw\":\n return Theme.darkPrimaryColor;\n default:\n return Theme.darkPrimaryColor;\n }\n};\n","import moment from \"moment\";\nconst intervalOptions = [\n {\n value: \"day\",\n format: \"DD/MM/YYYY\",\n },\n {\n value: \"month\",\n format: \"MM/YYYY\",\n },\n {\n value: \"year\",\n format: \"YYYY\",\n },\n];\n\nexport default (filtersForm, t) => {\n const selectedInterval = intervalOptions.find(\n (el) => el.value === filtersForm.interval.value\n );\n if (\n selectedInterval != null &&\n filtersForm != null &&\n filtersForm.start != null &&\n filtersForm.end != null\n ) {\n return `${moment(filtersForm.start.value).format(\n selectedInterval.format\n )} ${t(\"to\")} ${moment(filtersForm.end.value).format(\n selectedInterval.format\n )}`;\n }\n};\n","/**\n * NotificationsWrapper Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled from \"styled-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { Theme } from \"globalStyles\";\n\n// title === uuid\n// type === type\n// user === user\n\nexport default ({ children, ...props }) => {\n const { t } = useTranslation();\n const buildNotificationBody = (type, description, title) => {\n if (description != null && description !== \"\") {\n switch (type) {\n case \"alert\":\n return `${title != null && title !== \"\" ? \": \" : \"\"}${t(\n `${description}`\n )}`;\n case \"error\":\n return `${title != null && title !== \"\" ? \": \" : \"\"}${t(\n `${description}`\n )}`;\n case \"drop\":\n return ``;\n case \"pick\":\n return ``;\n case \"maintenance\":\n return ``;\n default:\n return description ? description : \"\";\n }\n }\n };\n\n return (\n \n \n {props.type ? t(`notification.${props.type}`) : t(\"notification.title\")}\n \n \n {props.title != null ? `${props.title}` : \"\"}\n \n {buildNotificationBody(props.type, props.description, props.title)}\n \n \n \n );\n};\n\nconst Wrapper = styled.div``;\n\nconst NotificationTitle = styled.div`\n font-size: 16px;\n font-weight: 700;\n line-height: 1em;\n margin-bottom: 1rem;\n font-family: ${Theme.fontFamily};\n color: ${Theme.textonSecondary};\n`;\n\nconst NotificationBody = styled.div`\n font-size: 14px;\n line-height: 1em;\n color: ${Theme.textonSecondary};\n font-family: ${Theme.fontFamily};\n\n & > p {\n margin-left: auto;\n margin-top: 0.5rem;\n font-size: 10px;\n color: ${Theme.darkInactiveColor};\n }\n`;\n","import React from 'react';\nimport { kea } from 'kea';\nimport { put, call } from 'redux-saga/effects';\nimport { delay } from 'redux-saga';\nimport { BASE_API_URL, API_DATE_FORMAT } from 'config';\nimport PropTypes from 'prop-types';\nimport axios from 'axios';\nimport moment from 'moment';\nimport { decodeColor } from 'utils';\nimport AppLogic from 'containers/App/logic';\nimport { toast } from 'react-toastify';\nimport fileDownload from 'js-file-download';\nimport NotificationsWrapper from 'components/NotificationsWrapper';\n\nconst EVENTSURL = BASE_API_URL + 'events/';\nconst AREASURL = BASE_API_URL + 'areas/';\nconst EQUIPMENTSSURL = BASE_API_URL + 'containers/';\nconst DOWNLOADURL = BASE_API_URL + 'events/export/';\nconst EVENTSMETRICURL = BASE_API_URL + 'metrics/events/';\nconst FILLLEVELURL = BASE_API_URL + 'metrics/fill-level/';\n\nconst getContainerByUUID = (uuid, array) => {\n if (uuid != null && array != null) {\n return array.find((el) => {\n return el.uuid === uuid;\n });\n }\n return null;\n};\n\nconst getAreaByName = (name, array) => {\n if (name != null && array != null) {\n return array.find((el) => {\n return el.name === name;\n });\n }\n return null;\n};\n\nexport const INTERVAL_FORM_DEFAULTS = {\n start: {\n value: moment().startOf('month'),\n },\n end: {\n value: moment(),\n },\n interval: {\n value: 'day',\n },\n};\n\nexport default kea({\n path: () => ['scenes', 'Deposits'],\n\n connect: {\n props: [],\n actions: [\n AppLogic,\n ['setWebSocketHanlder', 'changeWatchingEvents', 'watchEvents'],\n ],\n },\n\n actions: () => ({\n changeFiltersForm: (key, value) => ({ key, value }),\n setFiltersForm: (form) => ({ form }),\n resetFiltersForm: () => true,\n setLoadingPlot: () => true,\n\n fetchAreasEquipments: () => true,\n fetchMaintenancesList: () => true,\n setMaintenancesList: (list) => ({ list }),\n setMaintenancesNumber: (number) => ({ number }),\n fetchEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n\n search: (query, cb, type) => ({ query, cb, type }),\n\n setMaxDrops: (number) => ({ number }),\n setAverageDayDrops: (number) => ({ number }),\n setNumberOfDrops: (number) => ({ number }),\n\n fetchAreasList: () => true,\n setAreasList: (list) => ({ list }),\n setAreasNumber: (number) => ({ number }),\n setLoadingAreas: (loading) => loading,\n\n setLinkedArea: (area) => ({ area, type: 'container', query: '' }),\n setFilteredEquipments: (equipments) => ({ equipments }),\n updateFilteredEquipments: (equipments) => ({ equipments }),\n setFilteredEquipmentsNumber: (number) => ({ number }),\n\n setFilter: (filter) => ({ filter }),\n changeFilter: (key, value) => ({ key, value }),\n resetFilter: () => true,\n filterEntrances: () => true,\n setPagination: (pag) => ({ pag }),\n\n setEquipmentInDetail: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetail: (equipment) => ({\n equipment,\n type: 'container',\n query: '',\n }),\n\n setUsingMonthCalendar: (value) => ({ value }),\n setShowCalendarFilter: (value) => ({ value }),\n\n setDropsListToPlot: (list) => ({ list }),\n fetchDepositsToPlot: () => true,\n\n download: (type) => ({ type }),\n finishDownload: () => true,\n\n setSearchResults: (results) => ({ results }),\n setUserSearchResults: (results) => ({ results }),\n setAreaSearchResults: (results) => ({ results }),\n }),\n\n reducers: ({ actions }) => ({\n filtersForm: [\n INTERVAL_FORM_DEFAULTS,\n PropTypes.object,\n {\n [actions.changeFiltersForm]: (state, payload) => ({\n ...state,\n [payload.key]: { value: payload.value },\n }),\n [actions.setFiltersForm]: (state, { form }) => ({ ...form }),\n [actions.resetFiltersForm]: (state, payloada) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n [actions.resetFilter]: (state, payloada) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n },\n ],\n\n maintenancesList: [\n [],\n PropTypes.array,\n {\n [actions.setMaintenancesList]: (state, { list }) => list,\n },\n ],\n\n pagination: [\n { page: 1, page_size: 10 },\n PropTypes.object,\n {\n [actions.setPagination]: (state, { pag }) => pag,\n [actions.setFetchedEquipmentInDetail]: () => ({\n page: 1,\n page_size: 10,\n }),\n\n [actions.setFiltersForm]: () => ({ page: 1, page_size: 10 }),\n },\n ],\n\n linkedArea: [\n null,\n PropTypes.object,\n {\n [actions.setLinkedArea]: (state, { area }) => area,\n },\n ],\n\n dropsListToPlot: [\n null,\n PropTypes.array,\n {\n [actions.setDropsListToPlot]: (state, { list }) => list,\n },\n ],\n\n filter: [\n {\n container__area__name: '',\n container__uuid: '',\n fill_level: '',\n complete: '',\n },\n PropTypes.object,\n {\n [actions.setFilter]: (state, { filter }) => filter,\n [actions.setLinkedArea]: (state, { area }) => ({\n ...state,\n container__area__name: area != null && area.name ? area.name : '',\n }),\n [actions.setEquipmentInDetail]: (state, { equipment }) => ({\n ...state,\n container__uuid:\n equipment != null && equipment.uuid ? equipment.uuid : '',\n }),\n [actions.changeFilter]: (state, payload) => {\n return Object.assign({}, state, { [payload.key]: payload.value });\n },\n [actions.resetFilter]: () => ({\n container__area__name: '',\n container__uuid: '',\n fill_level: '',\n complete: '',\n }),\n },\n ],\n\n areasList: [\n [],\n PropTypes.array,\n {\n [actions.setAreasList]: (state, { list }) => list,\n },\n ],\n\n loadingAreas: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingAreas]: (state, loading) => loading,\n },\n ],\n\n loadingDownload: [\n false,\n PropTypes.boolean,\n {\n [actions.download]: () => true,\n [actions.finishDownload]: () => false,\n },\n ],\n\n loadingPlot: [\n true,\n PropTypes.boolean,\n {\n [actions.setLoadingPlot]: (state, loading) => true,\n [actions.fetchDepositsToPlot]: (state, loading) => true,\n [actions.setDropsListToPlot]: (state, loading) => false,\n },\n ],\n\n filteredEquipments: [\n null,\n PropTypes.array,\n {\n [actions.setFilteredEquipments]: (state, { equipments }) => equipments,\n [actions.updateFilteredEquipments]: (state, { equipments }) => [\n ...state,\n ...equipments,\n ],\n [actions.setLinkedArea]: (state, { area }) => {\n return area == null ? null : state;\n },\n },\n ],\n\n filteredEquipmentsNumber: [\n 0,\n PropTypes.number,\n {\n [actions.setFilteredEquipmentsNumber]: (state, { number }) => number,\n },\n ],\n\n equipmentInDetail: [\n null,\n PropTypes.object,\n {\n [actions.setFetchedEquipmentInDetail]: (state, { equipment }) =>\n equipment,\n [actions.setFetchedEquipmentInDetailNoFetchs]: (state, { equipment }) =>\n equipment,\n\n [actions.setLinkedArea]: (state, { area }) => {\n return area == null ? null : state;\n },\n [actions.resetFilter]: () => null,\n },\n ],\n\n usingMonthCalendar: [\n true,\n PropTypes.bool,\n {\n [actions.setUsingMonthCalendar]: (state, { value }) => value,\n },\n ],\n\n showCalendarFilter: [\n false,\n PropTypes.bool,\n {\n [actions.setShowCalendarFilter]: (state, { value }) => value,\n },\n ],\n\n numberOfDrops: [\n 0,\n PropTypes.number,\n {\n [actions.setNumberOfDrops]: (state, { number }) => number,\n },\n ],\n\n averageDayDrops: [\n 0,\n PropTypes.number,\n {\n [actions.setAverageDayDrops]: (state, { number }) => number,\n },\n ],\n\n maxDrops: [\n 0,\n PropTypes.number,\n {\n [actions.setMaxDrops]: (state, { number }) => number,\n },\n ],\n\n searchResults: [\n [],\n PropTypes.array,\n {\n [actions.setSearchResults]: (state, { results }) => results,\n },\n ],\n\n searchLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'container',\n [actions.setSearchResults]: () => false,\n },\n ],\n\n fillLevelFilterOptions: [\n [\n {\n value: 'less',\n label: 'x < 25%',\n },\n {\n value: 'between',\n label: '25% < x < 50%',\n },\n {\n value: 'between_2',\n label: '50% < x < 75%',\n },\n {\n value: 'greater',\n label: '75% < x',\n },\n ],\n PropTypes.array,\n {},\n ],\n\n searchAreaResults: [\n [],\n PropTypes.array,\n {\n [actions.setAreaSearchResults]: (state, { results }) => results,\n },\n ],\n\n searchAreaLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'area',\n [actions.setAreaSearchResults]: () => false,\n },\n ],\n }),\n\n start: function* () {\n const {\n fetchMaintenancesList,\n fetchAreasList,\n setWebSocketHanlder,\n watchEvents,\n fetchAreasEquipments,\n } = this.actions;\n\n yield put(fetchAreasList());\n yield put(fetchMaintenancesList());\n yield put(fetchAreasEquipments());\n\n yield put(setWebSocketHanlder(this.workers.handle));\n\n yield put(watchEvents());\n },\n\n stop: function* () {\n const { changeWatchingEvents } = this.actions;\n yield put(changeWatchingEvents(false));\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.fetchMaintenancesList]: [\n workers.fetchMaintenancesList,\n workers.fetchDepositsToPlot,\n ],\n [actions.fetchAreasList]: [\n workers.fetchAreasList,\n workers.fetchDepositsToPlot,\n ],\n [actions.fetchEquipmentInDetailNoFetchs]:\n workers.fetchEquipmentInDetailNoFetchs,\n [actions.fetchAreasEquipments]: workers.fetchAreasEquipments,\n [actions.setLinkedArea]: [\n workers.showOnlyOneArea,\n workers.fetchMaintenancesList,\n workers.fetchAreasEquipments,\n workers.fetchDepositsToPlot,\n ],\n [actions.setEquipmentInDetail]: [\n workers.fetchEquipmentInDetail,\n workers.fetchDepositsToPlot,\n ],\n [actions.setFetchedEquipmentInDetail]: [workers.fetchMaintenancesList],\n [actions.filterEntrances]: [workers.fetchMaintenancesList],\n [actions.resetFilter]: [\n workers.fetchMaintenancesList,\n workers.fetchDepositsToPlot,\n ],\n [actions.setPagination]: workers.fetchMaintenancesList,\n [actions.setFiltersForm]: [\n workers.fetchAreasEquipments,\n workers.fetchMaintenancesList,\n workers.fetchDepositsToPlot,\n ],\n [actions.download]: workers.download,\n }),\n\n workers: {\n *download(action) {\n const { payload } = action;\n const { t } = this.props;\n const { finishDownload } = this.actions;\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n const filtersForm = yield this.get('filtersForm');\n\n let filter = yield this.get('filter');\n\n if (payload.type != null) {\n try {\n let params;\n if (equipmentInDetail) {\n params = { ...filter, container__id: equipmentInDetail.id };\n } else if (linkedArea) {\n params = { ...filter, container__area__id: linkedArea.id };\n } else {\n params = { ...filter };\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n const response = yield call(axios.get, DOWNLOADURL, {\n params: {\n type: 'drop',\n file_type: payload.type,\n ...params,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-datetime',\n },\n responseType: 'blob',\n });\n\n fileDownload(\n new Blob([response.data]),\n `${t('deposits.download')}.${payload.type}`\n );\n } catch (err) {\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: 'downloadError',\n }\n );\n } finally {\n yield put(finishDownload());\n }\n }\n },\n\n *showOnlyOneArea(action) {\n const { setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n const linkedArea = yield this.get('linkedArea');\n\n if (areasList.length === 1 && linkedArea !== areasList[0]) {\n yield delay(300);\n yield put(setLinkedArea(areasList[0]));\n }\n },\n\n *fetchDepositsToPlot(action) {\n const { setDropsListToPlot, setLoadingPlot } = this.actions;\n yield put(setLoadingPlot());\n const filteredEquipments = yield this.get('filteredEquipments');\n const filtersForm = yield this.get('filtersForm');\n const filter = yield this.get('filter');\n const areasList = yield this.get('areasList');\n\n const area = getAreaByName(filter.container__area__name, areasList);\n\n let container;\n\n if (\n filter.container__uuid != null &&\n filter.container__uuid !== '' &&\n getContainerByUUID(filter.container__uuid, filteredEquipments) != null\n ) {\n container = getContainerByUUID(\n filter.container__uuid,\n filteredEquipments\n );\n } else {\n container = null;\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n let fillLevel;\n\n switch (filter.fill_level) {\n case 'less':\n fillLevel = {\n container__fill_level__lte: 25,\n };\n break;\n case 'between':\n fillLevel = {\n container__fill_level__gte: 25,\n container__fill_level__lte: 50,\n };\n break;\n case 'between_2':\n fillLevel = {\n container__fill_level__gte: 50,\n container__fill_level__lte: 75,\n };\n break;\n case 'greater':\n fillLevel = {\n container__fill_level__gte: 75,\n };\n break;\n default:\n fillLevel = {};\n }\n\n const params = {\n area__id: area ? area.id : null,\n container__id: container ? container.id : null,\n ...fillLevel,\n datetime_after: moment(date_after).toISOString(),\n datetime_before: moment(date_before).endOf('day').toISOString(),\n };\n\n try {\n let request = yield call(axios.get, FILLLEVELURL, { params });\n\n if (request.data != null && request.data.timeline != null) {\n const final = request.data.timeline.map((r) => [\n moment(r.timestamp).toISOString(),\n r.averageFillLevel,\n ]);\n\n yield put(setDropsListToPlot(final));\n }\n } catch (err) {\n console.log({ err });\n yield put(setDropsListToPlot([]));\n }\n },\n\n *fetchEquipmentInDetailNoFetchs(action) {\n const { setFetchedEquipmentInDetailNoFetchs } = this.actions;\n\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n yield put(setFetchedEquipmentInDetailNoFetchs(data));\n } catch (error) {\n yield put(setFetchedEquipmentInDetailNoFetchs(null));\n }\n },\n\n *fetchEquipmentInDetail(action) {\n yield delay(300);\n\n const { setFetchedEquipmentInDetail, setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n\n if (\n action.payload &&\n action.payload.equipment &&\n action.payload.equipment.id\n ) {\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n const equipmentArea = areasList.find((el) => el.id === data.area.id);\n\n if (equipmentArea != null) {\n yield put(setLinkedArea(equipmentArea));\n }\n yield put(setFetchedEquipmentInDetail(data));\n } catch (error) {\n yield put(setFetchedEquipmentInDetail(null));\n }\n } else {\n yield put(setFetchedEquipmentInDetail(null));\n }\n },\n\n *fetchMaintenancesList() {\n yield delay(500);\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n let filter = yield this.get('filter');\n const filtersForm = yield this.get('filtersForm');\n const filteredEquipments = yield this.get('filteredEquipments');\n const areasList = yield this.get('areasList');\n\n const {\n setMaintenancesList,\n setMaintenancesNumber,\n setMaxDrops,\n setAverageDayDrops,\n setNumberOfDrops,\n setEquipmentInDetail,\n setLinkedArea,\n } = this.actions;\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let fillLevel;\n\n switch (filter.fill_level) {\n case 'less':\n fillLevel = {\n container__fill_level__lte: 25,\n };\n break;\n case 'between':\n fillLevel = {\n container__fill_level__gte: 25,\n container__fill_level__lte: 50,\n };\n break;\n case 'between_2':\n fillLevel = {\n container__fill_level__gte: 50,\n container__fill_level__lte: 75,\n };\n break;\n case 'greater':\n fillLevel = {\n container__fill_level__gte: 75,\n };\n break;\n default:\n fillLevel = {};\n }\n\n const commonParams = {\n ...filter,\n ...fillLevel,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n event_type: 'drop',\n ordering: '-datetime',\n };\n\n let params = { ...commonParams };\n\n if (equipmentInDetail) {\n params = { ...commonParams, container: equipmentInDetail.id };\n } else if (linkedArea) {\n params = { ...commonParams, area: linkedArea.id };\n }\n\n try {\n const depositsRes = yield call(axios.get, EVENTSURL, { params });\n const deposits = depositsRes.data.results;\n\n const containerAreaNameExists = !!filter.container__area__name;\n const area = getAreaByName(filter.container__area__name, areasList);\n\n if (deposits) {\n if (containerAreaNameExists) {\n if (\n area != null &&\n (linkedArea == null ||\n (linkedArea != null &&\n linkedArea.name !== filter.container__area__name))\n ) {\n yield put(setLinkedArea(area));\n }\n }\n if (filter.container__uuid != null && filter.container__uuid !== '') {\n const container = getContainerByUUID(\n filter.container__uuid,\n filteredEquipments\n );\n if (\n container != null &&\n (equipmentInDetail == null ||\n (equipmentInDetail != null &&\n equipmentInDetail.uuid !== filter.container__uuid))\n ) {\n yield put(setEquipmentInDetail(container));\n } else if (container == null && equipmentInDetail != null) {\n yield put(setEquipmentInDetail(null));\n }\n } else if (\n (filter.container__uuid == null || filter.container__uuid === '') &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n\n yield put(setMaintenancesList(deposits));\n yield put(setMaintenancesNumber(deposits.length));\n } else {\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n } catch (error) {\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n\n let container;\n\n if (\n filter.container__uuid != null &&\n filter.container__uuid !== '' &&\n getContainerByUUID(filter.container__uuid, filteredEquipments) != null\n ) {\n container = getContainerByUUID(\n filter.container__uuid,\n filteredEquipments\n );\n } else {\n container = null;\n }\n\n const metricsEventsParams = {\n container__id: container ? container.id : null,\n area__id:\n (filter.container__uuid == null || filter.container__uuid === '') &&\n linkedArea\n ? linkedArea.id\n : null,\n datetime_after: moment(date_after).toISOString(),\n datetime_before: moment(date_before).endOf('day').toISOString(),\n type: 'drop',\n };\n\n try {\n const response = yield call(axios.get, EVENTSMETRICURL, {\n params: metricsEventsParams,\n });\n if (response.data) {\n const { data } = response;\n yield put(setMaxDrops(data.maxEvents));\n yield put(setAverageDayDrops(data.averageEvents));\n yield put(setNumberOfDrops(data.totalEvents));\n }\n } catch (err) {\n yield put(setMaxDrops(0));\n yield put(setAverageDayDrops(0));\n yield put(setNumberOfDrops(0));\n }\n },\n\n *fetchAreasList() {\n const {\n setAreasList,\n setLinkedArea,\n setAreaSearchResults,\n setAreasNumber,\n } = this.actions;\n\n try {\n const response = yield call(axios.get, AREASURL);\n const areasRes = response.data.results;\n\n if (areasRes.length) {\n // add data to area filter\n const searchAreaArr = areasRes.map((area) => ({\n value: area.name,\n label: area.name,\n }));\n yield put(setAreaSearchResults(searchAreaArr));\n\n // set up areas and prepare polygons\n let results = areasRes.map((area) => {\n area.lines = {\n type: 'LineString',\n coordinates: area.polygon.coordinates[0],\n };\n return area;\n });\n yield put(setAreasList(results));\n yield put(setAreasNumber(areasRes.length));\n\n // if there is only one area, focus it\n if (results.length === 1) {\n yield delay(300);\n yield put(setLinkedArea(results[0]));\n }\n } else {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n }\n } catch (error) {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n yield put(setAreaSearchResults([]));\n }\n },\n\n *fetchAreasEquipments(action) {\n yield delay(600);\n const linkedArea = yield this.get('linkedArea');\n const filter = yield this.get('filter');\n\n const {\n setFilteredEquipments,\n setSearchResults,\n setFilteredEquipmentsNumber,\n } = this.actions;\n\n const installationStatus = ['assembled', 'installed'];\n\n let fillLevel;\n\n switch (filter.fill_level) {\n case 'less':\n fillLevel = {\n fill_level__lte: 25,\n };\n break;\n case 'between':\n fillLevel = {\n fill_level__gte: 25,\n fill_level__lte: 50,\n };\n break;\n case 'between_2':\n fillLevel = {\n fill_level__gte: 50,\n fill_level__lte: 75,\n };\n break;\n case 'greater':\n fillLevel = {\n fill_level__gte: 75,\n };\n break;\n default:\n fillLevel = {};\n }\n\n try {\n let next = 1;\n const commonParams = {\n page_size: 500,\n ...fillLevel,\n };\n\n let results = [];\n while (next) {\n let params = {\n ...commonParams,\n page: next,\n };\n\n if (linkedArea) params = { ...params, area__id: linkedArea.id };\n\n let containers = [];\n\n const responses = yield installationStatus.map((status) => {\n params = { ...params, installation_status: status };\n return call(axios.get, EQUIPMENTSSURL, { params });\n });\n\n responses.forEach((el) =>\n containers.push.apply(containers, el.data.results)\n );\n\n containers.map((container) => {\n container.color = decodeColor(container.type);\n results.push(container);\n return container;\n });\n\n const equipmentsList = results.map((el) => ({\n value: el.uuid,\n label: el.name,\n }));\n\n next = 0;\n\n yield put(setFilteredEquipments(results));\n yield put(setFilteredEquipmentsNumber(results.length));\n yield put(setSearchResults(equipmentsList));\n }\n } catch (error) {\n yield put(setFilteredEquipments([]));\n yield put(setFilteredEquipmentsNumber(0));\n yield put(setSearchResults([]));\n }\n },\n\n *handle(message) {\n const { fetchMaintenancesList, fetchEquipmentInDetailNoFetchs } =\n this.actions;\n const equipmentInDetail = yield this.get('equipmentInDetail');\n if (message.event_type === 'status') {\n let temp = { ...message };\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n toast.info(temp.message, {\n position: toast.POSITION.TOP_RIGHT,\n delay: 200,\n id: message_id ? `uniqueStatusMessage${message_id}` : null,\n });\n } else if (message.event_type === 'event' && message.content) {\n if (message.event_type === 'event') {\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n if (\n message.content != null &&\n message.content.type === 'drop' &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueDropMessage${message_id}` : null,\n }\n );\n\n yield put(fetchMaintenancesList());\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n } else if (\n message.content != null &&\n (message.content.type === 'pick' ||\n message.content.type === 'maintenance') &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniquePickMessage${message_id}` : null,\n }\n );\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n } else if (\n message.content != null &&\n message.content.type === 'alert'\n ) {\n toast.warn(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueAlertMessage${message_id}` : null,\n }\n );\n } else if (message.content && message.content.type === 'error') {\n if (message.content.status === 'closed') {\n toast.success(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n } else {\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n }\n }\n }\n }\n },\n },\n});\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\";\n\nfunction SvgComponent(props) {\n return (\n \n \n \n );\n}\n\nexport default SvgComponent;\n","/**\n * StyledProgressBar Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled from \"styled-components\";\nimport { Progress } from \"element-react\";\nimport { Theme } from \"globalStyles\";\n\nexport default ({ children, ...props }) => (\n \n {`${Number(props.percentage).toFixed(\n 2\n )}%`}\n \n \n);\n\nconst StyledProgress = styled(Progress)`\n width: calc(100% - 5rem);\n & .el-progress-bar__outer {\n background-color: ${Theme.darkInactiveColor};\n }\n & .el-progress-bar__inner {\n background-color: ${Theme.secondaryColor};\n }\n`;\n\nconst Wrapper = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n`;\n\nconst ProgressText = styled.div`\n color: ${Theme.textonSecondary};\n\n min-width: 4rem;\n margin-right: 0.25rem;\n`;\n","import React from \"react\";\nimport moment from \"moment\";\nimport CheckIcon from \"icons/CheckIcon\";\nimport CrossIcon from \"icons/CrossIcon\";\nimport styled from \"styled-components\";\nimport { Theme } from \"globalStyles\";\nimport decodeType from \"utils/decodeType\";\nimport StyledProgressBar from \"components/StyledProgressBar\";\n\nexport const columns = [\n {\n label: \"table.id\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"id\",\n render: function (data) {\n return (\n \n {data.id ? data.id : \"-\"}\n \n );\n },\n minWidth: 90,\n },\n {\n label: \"table.date\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"datetime\",\n render: function (data) {\n return (\n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm\")}\n \n );\n },\n minWidth: 180,\n },\n {\n label: \"table.fill_level\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortMethod: function (a, b) {\n if (!!a && !!b) {\n const first = a.containerFillLevel != null ? a.containerFillLevel : 0;\n const second = b.containerFillLevel != null ? b.containerFillLevel : 0;\n return first >= second;\n }\n return false;\n },\n sortable: true,\n render: function (data) {\n return (\n
\n \n
\n );\n },\n width: 220,\n },\n {\n label: \"table.user\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n sortMethod: function (a, b) {\n if (a.tag != null && b.tag != null) {\n if (\n a.tag.user != null &&\n a.tag.user.fullName != null &&\n a.tag.user.fullName !== \"\" &&\n b.tag.user != null &&\n b.tag.user.fullName != null &&\n b.tag.user.fullName !== \"\"\n ) {\n return a.tag.user.fullName >= b.tag.user.fullName;\n }\n return false;\n }\n },\n render: function (data) {\n if (data.tag) {\n if (\n data.tag.user != null &&\n data.tag.user.fullName != null &&\n data.tag.user.fullName !== \"\"\n ) {\n return {data.tag.user.fullName};\n }\n }\n return {\"-\"};\n },\n minWidth: 150,\n },\n {\n label: \"table.container\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data) {\n return (\n \n {data.container && data.container.uuid ? data.container.uuid : \"-s\"}\n \n );\n },\n minWidth: 140,\n },\n {\n label: \"table.type\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data, { t }) {\n return (\n \n {data.container && data.container.type\n ? t(`table.${decodeType(data.container.type)}`)\n : \"-\"}\n \n );\n },\n width: 150\n },\n {\n label: \"table.earned_points\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortMethod: function (a, b) {\n if (a != null && b != null) {\n const first = a.earnedPoints != null ? a.earnedPoints : 0;\n const second = b.earnedPoints != null ? b.earnedPoints : 0;\n return first >= second;\n }\n return false;\n },\n sortable: true,\n prop: \"points\",\n render: function (data) {\n return (\n \n {data.earnedPoints != null ? data.earnedPoints : 0}\n \n );\n },\n minWidth: 110,\n },\n {\n label: \"table.completed\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n sortMethod: function (a, b) {\n if (a.complete && b.complete) {\n return a.complete >= b.complete;\n }\n return false;\n },\n render: function (data) {\n return (\n \n {data.complete ? (\n \n ) : (\n \n )}\n \n );\n },\n minWidth: 130,\n },\n];\n\nexport const columns_simple = [\n {\n label: \"table.id\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"id\",\n render: function (data) {\n return (\n \n {data.id ? data.id : \"-\"}\n \n );\n },\n minWidth: 70,\n },\n {\n label: \"table.date\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"datetime\",\n render: function (data) {\n return (\n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm:ss\")}\n \n );\n },\n width: 180,\n },\n {\n label: \"table.fill_level\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortMethod: function (a, b) {\n if (!!a && !!b) {\n const first = a.containerFillLevel != null ? a.containerFillLevel : 0;\n const second = b.containerFillLevel != null ? b.containerFillLevel : 0;\n return first >= second;\n }\n return false;\n },\n sortable: true,\n render: function (data) {\n return (\n
\n \n
\n );\n },\n width: 220,\n },\n {\n label: \"table.container\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data) {\n return (\n \n {data.container && data.container.uuid ? data.container.uuid : \"-\"}\n \n );\n },\n minWidth: 125,\n },\n {\n label: \"table.type\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data, { t }) {\n return (\n \n {data.container && data.container.type\n ? t(`table.${decodeType(data.container.type)}`)\n : \"-\"}\n \n );\n },\n minWidth: 90,\n },\n {\n label: \"table.completed\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n align: \"center\",\n headerAlign: \"center\",\n sortable: true,\n minWidth: 115,\n sortMethod: function (a, b) {\n if (a.complete && b.complete) {\n return a.complete >= b.complete;\n }\n return false;\n },\n render: function (data) {\n return (\n \n {data.complete ? (\n \n ) : (\n \n )}\n \n );\n },\n },\n {\n label: \"table.user\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n sortMethod: function (a, b) {\n if (a.tag != null && b.tag != null) {\n if (\n a.tag.user != null &&\n a.tag.user.fullName != null &&\n a.tag.user.fullName !== \"\" &&\n b.tag.user != null &&\n b.tag.user.fullName != null &&\n b.tag.user.fullName !== \"\"\n ) {\n return a.tag.user.fullName >= b.tag.user.fullName;\n }\n return false;\n }\n },\n render: function (data) {\n if (data.tag) {\n if (\n data.tag.user != null &&\n data.tag.user.fullName != null &&\n data.tag.user.fullName !== \"\"\n ) {\n return (\n \n {data.tag.user.fullName}\n \n );\n }\n }\n return {\"-\"};\n },\n minWidth: 125,\n }\n];\n\nconst CenterIcon = styled.div`\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst EllipsisDiv = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n","/**\n * GraphIndicator Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled, { css } from \"styled-components\";\nimport AnimatedNumber from \"react-animated-number\";\nimport { Theme } from \"globalStyles\";\n\nconst formatter = new Intl.NumberFormat(\"en-GB\", {\n minimumFractionDigits: 0,\n maximumFractionDigits: 2,\n});\n\nexport default ({ children, ...props }) => (\n \n
\n \n perc === 100 ? {} : { backgroundColor: \"#ffeb3b\" }\n }\n duration={300}\n stepPrecision={0.01}\n formatValue={(n) => formatter.format(n)}\n />\n
\n {props.name}\n
\n);\n\nconst Wrapper = styled.div`\n padding: 8px;\n display: flex;\n flex-direction: column;\n align-items: center;\n position: relative;\n margin: auto 0;\n /* ${(props) =>\n props.border &&\n css`\n position: relative;\n & + & {\n &::after {\n content: \"\";\n height: 1px;\n width: 90%;\n background-color: ${Theme.lightInactiveColor};\n margin: 0 auto;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n }\n }\n `} */\n`;\n\nconst IndicatorNumber = styled.div`\n color: ${Theme.darkInactiveColor};\n font-family: ${Theme.fontFamily};\n font-weight: 500;\n font-size: 14px;\n line-height: 22px;\n margin: 0;\n text-align: center;\n margin: ${(props) => props.margin};\n`;\n\nconst StyledAnimatedNumber = styled(AnimatedNumber)`\n color: ${Theme.black};\n font-weight: 700;\n font-size: 24px;\n line-height: 24px;\n display: flex;\n flex-direction: column;\n width: fit-content;\n background: transparent !important;\n`;\n","/**\n * ContainerMap Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport { kea } from 'kea'\n//import { put } from 'redux-saga/effects'\n//import { delay } from 'redux-saga'\n//import { } from 'config'\n//import { } from 'utils'\n//import { } from './utils'\n\n//import PropTypes from 'prop-types'\n//import * as Check from 'validations'\n\n\nexport default kea({\n path: () => ['scenes', 'containers', 'ContainerMapMaintenances'],\n\n actions: () => ({\n\n }),\n\n reducers: ({ actions }) => ({\n\n }),\n\n takeLatest: ({ actions, workers }) => ({\n\n }),\n\n workers: {\n\n }\n\n})\n\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n \n \n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n \n \n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\";\n\nfunction SvgComponent(props) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n}\n\nexport default SvgComponent;\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n \n \n \n \n \n )\n}\n\nexport default SvgComponent\n","import React from 'react'\nimport { primaryColor } from 'config'\nimport styled from 'styled-components'\n\nconst Fullscreen = props => (\n \n \n \n)\n\nexport default Fullscreen\n\n\nconst Wrapper = styled.svg`\n margin-bottom:-2px;\n margin-right:5px;\n\n`\n\n\n","import React from 'react'\nimport { primaryColor } from 'config'\nimport styled from 'styled-components'\nimport {lighten} from 'polished'\n\nconst BackArrow = props => (\n \n \n \n)\n\nexport default BackArrow\n\n\nconst Wrapper = styled.svg`\n margin-bottom:-2px;\n margin-right:5px;\n\n`","/**\n * ResponsiveHandler Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport { Theme } from \"globalStyles\";\n\nconst ResponsiveHandler = (WrappedComponent) => {\n return class extends React.Component {\n state = {\n isMobile: window.innerWidth < Theme.breakpoints.tablet.min,\n isTablet: !!(\n window.innerWidth >= Theme.breakpoints.tablet.min &&\n window.innerWidth < Theme.breakpoints.smallDesktop.min\n ),\n isDesktop: window.innerWidth >= Theme.breakpoints.smallDesktop.min,\n isSmallDesktop: window.innerWidth < Theme.breakpoints.desktop.min,\n width: window.innerWidth,\n height: window.innerHeight,\n };\n\n recalculateDimensions = () => {\n const dimensions = {\n isMobile: window.innerWidth < Theme.breakpoints.tablet.min,\n isTablet: !!(\n window.innerWidth >= Theme.breakpoints.tablet.min &&\n window.innerWidth < Theme.breakpoints.smallDesktop.min\n ),\n isDesktop: window.innerWidth >= Theme.breakpoints.smallDesktop.min,\n isSmallDesktop: window.innerWidth < Theme.breakpoints.desktop.min,\n\n width: window.innerWidth,\n height: window.innerHeight,\n };\n for (let i = 0; i < Object.keys(dimensions).length; i++) {\n if (\n dimensions[Object.keys(dimensions)[i]] !==\n this.state[Object.keys(dimensions)[i]]\n ) {\n this.setState({ ...dimensions });\n return;\n }\n }\n };\n\n componentDidMount() {\n window.addEventListener(\"resize\", this.recalculateDimensions);\n }\n\n componentWillUnmount() {\n window.removeEventListener(\"resize\", this.recalculateDimensions);\n }\n\n render() {\n // ... and renders the wrapped component with the fresh data!\n // Notice that we pass through any additional props\n return (\n \n );\n }\n };\n};\n\nexport default ResponsiveHandler;\n","import React, { Component } from 'react';\nimport Logic from './logic';\nimport styled, { css } from 'styled-components';\nimport { MAP_BOX_KEY, MAXZOOMLEVEL, AVAILABLE_CONTAINERS } from 'config';\n//import MapSideBarRoutes from 'containers/MapSideBarRoutes'\n//import MapRouteInformationSideBar from 'containers/MapRouteInformationSideBar'\nimport ReactMapboxGl, { GeoJSONLayer, Cluster, Marker } from 'react-mapbox-gl';\n// import RouteFilterMaps from 'containers/RouteFilterMaps'\nimport MapboxGL from 'mapbox-gl';\nimport moment from 'moment';\nimport PaperMarker from 'icons/Markers/Paper';\nimport GlassMarker from 'icons/Markers/Glass';\nimport PlasticMarker from 'icons/Markers/Plastic';\nimport BinMarker from 'icons/Markers/Bin';\nimport decodeType from 'utils/decodeType';\n\nimport Fullscreen from 'icons/Fullscreen';\nimport BackArrow from 'icons/BackArrow';\nimport { withTranslation } from 'react-i18next';\nimport ResponsiveHandler from 'components/ResponsiveHandler';\n\nimport { decodeColor } from 'utils';\nimport {\n MAPCENTER,\n MAPINITIALBOUNDS,\n ZOOMLEVEL,\n ADDITIONAL_FEATURES,\n} from 'config';\nimport { Theme } from 'globalStyles';\n\nconst COLORS = {\n plastic: Theme.warningColor,\n paper: Theme.infoColor,\n glass: Theme.successColor,\n bio_waste: Theme.darkPrimaryColor,\n undifferentiated: Theme.darkPrimaryColor,\n polygonFill: Theme.lightPrimaryColor,\n polygonLine: Theme.primaryColor,\n};\n\nlet polygonPaint = (MapboxGL.FillPaint = {\n 'fill-color': COLORS['polygonFill'],\n 'fill-opacity': 0.3,\n});\n\nlet linePaint = (MapboxGL.FillPaint = {\n 'line-color': COLORS['polygonLine'],\n 'line-opacity': 0.6,\n 'line-width': 2,\n});\n\nconst getMarker = (\n marker,\n equipmentInDetail,\n dimensions = { height: '20px', width: '20px' }\n) => {\n switch (marker.type) {\n case 'y':\n return ;\n case 'plastic':\n return ;\n case 'b':\n return ;\n case 'paper':\n return ;\n case 'g' || 'glass':\n return ;\n case 'glass':\n return ;\n case 'u':\n return ;\n case 'undifferentiated':\n return ;\n\n default:\n return ;\n }\n};\n\nconst FirstStageLegend = ({ props }) => {\n const { t, responsiveHandlers } = props;\n return (\n \n {!props.equipmentInDetail && (\n \n {`${t('map.containers')}: ${\n props.globalNumberOfContainers ? props.globalNumberOfContainers : 0\n }`}\n \n )}\n \n \n \n\n {t('map.area')}\n \n\n \n \n {4}\n \n {t('map.cluster')}\n \n {AVAILABLE_CONTAINERS.map((key, index) => (\n \n {getMarker({ type: key }, null, {\n height: responsiveHandlers.height > 750 ? '26px' : '20px',\n width: responsiveHandlers.height > 750 ? '26px' : '20px',\n })}\n {t(`map.${key}`)}\n \n ))}\n \n \n );\n};\n\nconst SecondStageLegend = ({ props }) => {\n const { t, responsiveHandlers } = props;\n return (\n \n {!props.equipmentInDetail && (\n \n {`${t('map.containers')}: ${\n props.globalNumberOfContainers ? props.globalNumberOfContainers : 0\n }`}\n \n )}\n \n \n \n {t('map.area')}\n \n\n \n \n {4}\n \n {t('map.cluster')}\n \n {AVAILABLE_CONTAINERS.map((key, index) => (\n \n {getMarker({ type: key }, null, {\n height: responsiveHandlers.height > 750 ? '26px' : '20px',\n width: responsiveHandlers.height > 750 ? '26px' : '20px',\n })}\n {t(`map.${key}`)}\n \n ))}\n \n \n );\n};\n\n/*eslint-disable*/\n\nconst Map = ReactMapboxGl({\n accessToken: MAP_BOX_KEY,\n maxZoom: MAXZOOMLEVEL,\n});\n\nclass ContainerMapMaintenances extends Component {\n constructor(props) {\n super(props);\n this.state = {\n markerAddress: 'NO_ADDRESS',\n activeCollapse: ['1', '2'],\n zoom: ZOOMLEVEL,\n center: MAPCENTER,\n popupLocation: null,\n user: null,\n activeTab: '1',\n addresses: {},\n mapBounds: MAPINITIALBOUNDS,\n linkedArea: null,\n showMarkers: false,\n dialogVisible: false,\n };\n this._mapRef = React.createRef();\n this._isMounted = false;\n }\n\n componentWillUnmount() {\n this._isMounted = false;\n }\n componentDidMount() {\n this._isMounted = true;\n }\n\n findNewBounds = (nextProps) => {\n let delay = 1000;\n if (nextProps.equipmentInDetail) {\n var bounds = new MapboxGL.LngLatBounds();\n bounds.extend(nextProps.equipmentInDetail.location?.coordinates);\n if (nextProps.equipmentInDetail.location?.coordinates) {\n setTimeout(() => {\n if (this._isMounted) {\n this.setState({\n mapBounds: [\n [bounds._sw.lng, bounds._sw.lat],\n [bounds._ne.lng, bounds._ne.lat],\n ],\n });\n }\n }, delay);\n }\n } else if (nextProps.linkedArea) {\n var bounds = new MapboxGL.LngLatBounds();\n nextProps.linkedArea.polygon.coordinates[0][0].forEach(function (\n feature\n ) {\n bounds.extend(feature);\n });\n setTimeout(() => {\n if (this._isMounted) {\n this.setState({\n mapBounds: [\n [bounds._sw.lng, bounds._sw.lat],\n [bounds._ne.lng, bounds._ne.lat],\n ],\n });\n }\n }, delay);\n } else if (nextProps.areas.length) {\n var bounds = new MapboxGL.LngLatBounds();\n nextProps.areas.forEach(function (feature) {\n feature.polygon.coordinates[0][0].forEach(function (feature) {\n bounds.extend(feature);\n });\n });\n setTimeout(() => {\n if (this._isMounted) {\n this.setState({\n mapBounds: [\n [bounds._sw.lng, bounds._sw.lat],\n [bounds._ne.lng, bounds._ne.lat],\n ],\n });\n }\n }, delay);\n }\n };\n\n showPopup(marker) {\n console.log(marker);\n this.setState({\n center: [marker.location.coordinates[0], marker.location.coordinates[1]],\n zoom: [20],\n popupLocation: [\n marker.location.coordinates[0],\n marker.location.coordinates[1],\n ],\n popedArea: { ...marker, color: decodeColor(marker.type) },\n });\n }\n\n closePopup = () => {\n this.setState({\n popedArea: null,\n });\n };\n\n resetZoom() {\n this.resetMapBounds();\n }\n\n componentWillReceiveProps(nextProps) {\n if (nextProps.transitionEnded && this._mapRef && this._mapRef.resize) {\n this._mapRef.resize();\n }\n if (\n nextProps.polygons !== this.props.polygons &&\n this.state.popedArea &&\n nextProps.polygons.filter(\n (marker) => marker.id === this.state.popedArea.id\n ).length === 0\n ) {\n this.closePopup();\n }\n if (this.props.linkedArea !== nextProps.linkedArea) {\n this.findNewBounds(nextProps);\n } else if (this.props.areas !== nextProps.areas && nextProps.areas) {\n this.findNewBounds(nextProps);\n } else if (nextProps.equipmentInDetail !== this.props.equipmentInDetail) {\n this.findNewBounds(nextProps);\n }\n }\n\n showCluster(coordinates, userColection) {\n const { setEquipmentInDetail } = this.props;\n let zoom = this._mapRef.getZoom();\n if (this.state.zoom < 20) {\n zoom = [parseInt(zoom) + 3];\n } else {\n zoom = [parseInt(zoom)];\n }\n this.setState({ center: coordinates, zoom: zoom });\n }\n\n handleZoomEnd = () => {\n this.setState({ showMarkers: true });\n };\n\n clusterMarker = (coordinates, pointCount, getLeaves) => {\n let leaves = getLeaves();\n let userColection = [];\n for (let i = 0; i < leaves.length; i++) {\n userColection.push(leaves[i].props.markerInfo);\n }\n\n const aux = leaves[0].props.markerInfo;\n\n const findArea = this.props.areas.filter(\n (area) => area.id === aux.area.id\n )[0];\n\n return (\n {\n if (!this.props.linkedArea) this.props.setLinkedArea(findArea);\n else if (this.props.linkedArea.id !== findArea.id)\n this.props.setLinkedArea(findArea);\n }}\n >\n \n {pointCount}\n \n \n );\n };\n\n render() {\n const {\n areas,\n linkedArea,\n areaEquipments,\n setLinkedArea,\n equipmentInDetail,\n setEquipmentInDetail,\n t,\n } = this.props;\n\n const { center, zoom, showMarkers } = this.state;\n return (\n \n this.closePopup}\n onZoomEnd={() => this.handleZoomEnd()}\n zoom={zoom}\n center={center}\n onStyleLoad={(map) => {\n this._mapRef = map;\n this._mapRef.resize();\n }}\n >\n {!equipmentInDetail &&\n areas &&\n areas.map((area, index) => (\n \n {!linkedArea || linkedArea.id === area.id ? (\n \n {\n if (!linkedArea) {\n this._mapRef.getCanvas().style.cursor = 'pointer';\n }\n }}\n fillOnMouseLeave={(e) => {\n this._mapRef.getCanvas().style.cursor = '';\n }}\n fillOnClick={() => {\n if (linkedArea && linkedArea.id !== area.id) {\n setLinkedArea(area);\n }\n if (!linkedArea) {\n setLinkedArea(area);\n }\n }}\n />\n\n \n \n ) : (\n \n )}\n \n ))}\n {showMarkers &&\n areaEquipments &&\n areaEquipments.length > 0 &&\n areas.map((area) => (\n \n {areaEquipments\n .filter((equipment) =>\n equipment.area ? equipment.area.id === area.id : false\n )\n .map((marker, index) => (\n {\n e.preventDefault();\n e.stopPropagation();\n setEquipmentInDetail({ ...marker });\n }}\n >\n {getMarker(marker, equipmentInDetail, {\n height:\n equipmentInDetail != null &&\n equipmentInDetail.id === marker.id\n ? '40px'\n : '30px',\n width:\n equipmentInDetail != null &&\n equipmentInDetail.id === marker.id\n ? '40px'\n : '30px',\n })}\n \n ))}\n \n ))}\n \n {!linkedArea ? (\n \n \n {t('map.click_area')}\n \n ) : !equipmentInDetail ? (\n \n {areas && areas.length > 1 && (\n {\n setEquipmentInDetail(null);\n setLinkedArea(null);\n }}\n >\n \n {t('map.see_all')}\n \n )}\n \n \n {t('map.click_device')}\n \n \n ) : (\n \n {areas && areas.length > 1 && (\n {\n setEquipmentInDetail(null);\n setLinkedArea(null);\n }}\n >\n \n {t('map.see_all')}\n \n )}\n setEquipmentInDetail(null)}\n >\n \n {t('map.view_all')}\n \n \n )}\n \n\n {!linkedArea && !equipmentInDetail ? (\n \n ) : (\n !equipmentInDetail && \n )}\n {equipmentInDetail && (\n
\n \n \n \n {t('map.container')}\n {equipmentInDetail.name}\n \n {equipmentInDetail.type != null && (\n \n {t('table.type')}\n \n {t(`table.${decodeType(equipmentInDetail.type)}`)}\n \n \n )}\n {equipmentInDetail.address != null && (\n \n {t('map.address')}\n \n {equipmentInDetail.address}\n \n \n )}\n {equipmentInDetail.tags != null && (\n \n {t('map.number_users')}\n \n {equipmentInDetail.tags != null\n ? equipmentInDetail.tags\n : '-'}\n \n \n )}\n {equipmentInDetail.fillLevel != null &&\n !isNaN(Number(equipmentInDetail.fillLevel)) && (\n \n {t('map.fill_level')}\n \n {Number(equipmentInDetail.fillLevel).toFixed(2)}\n \n \n )}\n {equipmentInDetail.capacity != null && (\n \n {t('map.capacity')}\n \n {equipmentInDetail.capacity}\n \n \n )}\n\n {ADDITIONAL_FEATURES.includes('deposits') && (\n \n {t('map.last_drop')}\n \n {equipmentInDetail.lastDrop\n ? moment(equipmentInDetail.lastDrop).format(\n 'DD/MM/YY HH:mm:ss'\n )\n : '-'}\n \n \n )}\n\n {ADDITIONAL_FEATURES.includes('collects') && (\n \n {t('map.last_pickup')}\n \n {equipmentInDetail.lastPickup\n ? moment(equipmentInDetail.lastPickup).format(\n 'DD/MM/YY HH:mm:ss'\n )\n : '-'}\n \n \n )}\n\n {ADDITIONAL_FEATURES.includes('maintenances') && (\n \n \n {t('map.last_maintenance')}\n \n \n {equipmentInDetail.lastMaintenance\n ? moment(equipmentInDetail.lastMaintenance).format(\n 'DD/MM/YY HH:mm:ss'\n )\n : '-'}\n \n \n )}\n \n {t('map.battery')}\n \n {equipmentInDetail.hardwareDevice &&\n equipmentInDetail.hardwareDevice.battery\n ? (\n equipmentInDetail.hardwareDevice.battery / 100\n ).toFixed(3)\n : '-'}\n \n \n \n \n {t('map.last_communication')}\n \n \n {equipmentInDetail.hardwareDevice &&\n equipmentInDetail.hardwareDevice.lastCommunication\n ? moment(\n equipmentInDetail.hardwareDevice.lastCommunication\n ).format('DD/MM/YY HH:mm:ss')\n : '-'}\n \n \n \n \n
\n )}\n \n
\n );\n }\n}\n\nexport default withTranslation()(\n ResponsiveHandler(Logic(ContainerMapMaintenances))\n);\n\nconst Wrapper = styled.div`\n height: 45vh;\n min-height: 440px;\n width: 100%;\n\n ${({ theme }) => theme.smallDesktop`\n min-height: auto;\n`}\n\n @media (max-height: 768px) {\n height: 320px;\n }\n`;\n\nconst PopupComponent = styled.div`\n max-width: 300px;\n\n ${({ theme }) => theme.smallDesktop`\n min-width: 200px;\n `}\n`;\n\nconst Details = styled.div`\n position: absolute;\n z-index: 100;\n background: ${Theme.white};\n bottom: 8px;\n top: 8px;\n right: 8px;\n overflow-y: auto;\n`;\n\nconst PopupBody = styled.div`\n padding: 5px;\n`;\n\nconst PopupBodyText = styled.div`\n margin-top: ${(props) => props.marginTop};\n display: flex;\n text-align: center;\n align-items: center;\n flex-direction: column;\n justify-content: center;\n padding-top: 5px;\n padding-bottom: 5px;\n`;\n\nconst PopupBodyFirst = styled.div`\n font-weight: bold;\n font-size: 12px;\n line-height: 12px;\n display: flex;\n flex-direction: column;\n justify-content: center;\n ${({ theme }) => theme.smallDesktop`\n font-size: 14px;\n line-height: 14px;\n `}\n @media screen and (min-height: 750px) {\n font-size: 12px;\n line-height: 12px;\n }\n`;\n\nconst PopupBodySecond = styled.div`\n display: flex;\n font-size: 10px;\n line-height: 12px;\n flex-direction: row;\n justify-content: center;\n white-space: normal;\n overflow: hidden;\n text-overflow: ellipsis;\n margin-top: 3px;\n\n ${({ theme }) => theme.smallDesktop`\n font-size: 12px;\n `}\n\n @media screen and (min-height: 950px) {\n margin-top: 5px;\n margin-left: 0;\n }\n`;\nconst CustomMap = styled(Map)`\n .mapboxgl-canvas {\n width: 100% !important;\n outline: none;\n }\n &.mapboxgl-map {\n font-family: ${Theme.fontFamily};\n font-size: 16px;\n }\n`;\n\nconst MapHelp = styled.div`\n background-color: white;\n padding: 8px 11px;\n font-size: 12px;\n font-weight: 400;\n line-height: 12px;\n margin-bottom: 5px;\n cursor: ${(props) => props.cursor};\n width: fit-content;\n\n ${(props) =>\n props.showAlways &&\n css`\n display: block;\n `}\n\n @media screen and (min-height: 950px) {\n display: block;\n }\n`;\n\nconst HelpsWrapper = styled.div`\n position: absolute;\n top: 8px;\n left: 8px;\n display: flex;\n flex-direction: column;\n z-index: 101;\n`;\n\nconst NumberOfContainersWrapper = styled.div`\n padding: 8px 11px 6px 11px;\n font-weight: 400;\n font-size: 8px;\n\n line-height: 12px;\n background-color: ${Theme.white};\n margin-bottom: 10px;\n\n @media screen and (min-height: 750px) {\n display: block;\n font-size: 14px;\n }\n`;\n\nconst MapCaption = styled.div`\n background-color: ${Theme.white};\n padding: 5px;\n font-size: 14px;\n font-weight: 400;\n line-height: 16px;\n z-index: 100;\n`;\n\nconst FlexLegend = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: flex-start;\n align-items: center;\n align-items: center;\n margin-left: ${(props) => props.marginLeft};\n\n & + & {\n margin-top: 5px;\n }\n`;\nconst AreaLegendIcon = styled.div`\n width: 20px;\n height: 20px;\n background-color: ${COLORS['polygonFill']};\n border: 2px solid ${COLORS['polygonLine']};\n border-radius: 50%;\n margin: 0 0 0 1px;\n\n @media screen and (min-height: 950px) {\n height: 26px;\n width: 26px;\n }\n`;\n\nconst LegentTextWrapper = styled.div`\n font-size: 12px;\n line-height: 12px;\n margin-left: 5px;\n margin-left: ${(props) => props.marginLeft};\n`;\n\nconst ClusterMarkerLegend = styled.div`\n width: 20px;\n height: 20px;\n background: ${COLORS['polygonFill']};\n outline: none;\n position: relative;\n cursor: pointer;\n border: 2px solid ${COLORS['polygonLine']};\n border-radius: 50%;\n margin: 0 0 0 1px;\n\n @media screen and (min-height: 950px) {\n height: 26px;\n width: 26px;\n }\n`;\n\nconst ClusterTextLegend = styled.div`\n position: relative;\n left: 50%;\n top: 50%;\n color: ${Theme.textOnPrimary};\n width: fit-content;\n font-family: ${Theme.fontFamily};\n font-size: 12px;\n font-weight: 600;\n line-height: 13px;\n transform: translate(-50%, -50%);\n outline: none;\n cursor: pointer;\n`;\n\nconst Bold = styled.span`\n font-weight: bold;\n`;\n\nconst FlexWrapperLegend = styled.div`\n position: absolute;\n bottom: 8px;\n left: 8px;\n display: flex;\n flex-direction: column;\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport Datetime from \"react-datetime\";\nimport { Theme } from \"globalStyles\";\nimport { useTranslation } from \"react-i18next\";\nimport { isMobile } from \"react-device-detect\";\nimport { API_DATE_FORMAT } from \"config\";\nimport moment from \"moment\";\n\nexport default ({ children, ...props }) => {\n const { i18n } = useTranslation();\n if (isMobile) {\n return (\n \n \n {moment(props.value).format(\"DD/MM/YYYY\")}\n \n \n event.target.value != null &&\n event.target.value !== \"\" &&\n props.onChange(moment(event.target.value))\n }\n type={\"date\"}\n >\n \n );\n }\n return (\n \n );\n};\n\nconst Wrapper = styled(Datetime)`\n width: 250px;\n margin: 10px;\n height: 100%;\n input {\n width: 100%;\n padding: 10px;\n border-radius: 0;\n border: 1px solid ${(props) => props.theme.borderColor};\n\n &:active,\n &:focus {\n border: 1px solid ${(props) => props.theme.borderColor};\n }\n\n &:disabled {\n background: transparent;\n color: ${(props) => props.theme.textonSecondary};\n }\n }\n\n .rdtPicker {\n /* background-color: ${(props) => props.theme.primaryColor}; */\n width: 100%;\n margin-top: 10px;\n th {\n height: 33px;\n border: 0px;\n }\n }\n\n .rdtMonth {\n transition: 0s all;\n :hover {\n background-color: ${(props) => props.theme.secondaryColor} !important;\n border: 2px solid ${(props) => props.theme.secondaryColor} !important;\n color: ${(props) => props.theme.white};\n }\n &.rdtActive {\n background-color: ${(props) => props.theme.secondaryColor} !important;\n }\n }\n .rdtYear {\n transition: 0s all;\n :hover {\n background-color: ${(props) => props.theme.secondaryColor} !important;\n border: 2px solid ${(props) => props.theme.secondaryColor} !important;\n color: ${(props) => props.theme.white};\n }\n &.rdtActive {\n background-color: ${(props) => props.theme.secondaryColor} !important;\n }\n }\n .rdtDay {\n transition: 0s all;\n :hover {\n background-color: ${(props) => props.theme.secondaryColor} !important;\n border: 2px solid ${(props) => props.theme.secondaryColor} !important;\n color: ${(props) => props.theme.white};\n }\n &.rdtActive {\n background-color: ${(props) => props.theme.secondaryColor} !important;\n }\n }\n &.rdtOpen .rdtPicker {\n position: relative;\n }\n`;\n\nconst MobileWrapper = styled.div`\n width: 100%;\n position: relative;\n background: transparent;\n display: flex;\n align-items: center;\n margin: 1rem 0;\n`;\n\nconst MobileCalendarPick = styled.input`\n opacity: 0;\n width: 100%;\n`;\n\nconst MobileInputCalendarView = styled.span`\n width: 100%;\n position: absolute;\n display: flex;\n align-items: center;\n -webkit-appearance: none;\n\n padding: 0 8px;\n color: ${Theme.textonSecondary};\n background-color: transparent;\n border: none;\n font-size: 14px;\n line-height: 1em;\n\n height: 2rem;\n border-radius: 5px;\n border: 1px solid ${(props) => props.theme.borderColor};\n\n &:focus,\n &:active {\n outline: none;\n border: 2px solid ${(props) => props.theme.borderColor} !important;\n }\n &::-webkit-inner-spin-button,\n &::-webkit-calendar-picker-indicator {\n display: none;\n -webkit-appearance: none;\n }\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport StyledDatePicker from \"components/StyledDatePicker\";\nimport moment from \"moment\";\nimport { withTranslation } from \"react-i18next\";\n\nconst getModifiedEndDate = (interval, startDate) => {\n let endDate = moment(startDate);\n\n switch (interval) {\n case \"year\":\n endDate = moment(endDate).endOf(\"year\").isSameOrBefore(moment())\n ? moment(endDate).endOf(\"year\")\n : moment();\n break;\n case \"month\":\n endDate = moment(endDate).endOf(\"month\").isSameOrBefore(moment())\n ? moment(endDate).endOf(\"month\")\n : moment();\n break;\n case \"day\":\n break;\n default:\n endDate = moment(endDate).endOf(\"month\").isSameOrBefore(moment())\n ? moment(endDate).endOf(\"month\")\n : moment();\n break;\n }\n return endDate;\n};\nconst getModifiedStartDate = (interval, startDate) => {\n let modifiedStartDate = moment(startDate);\n\n switch (interval) {\n case \"year\":\n modifiedStartDate.startOf(\"year\");\n break;\n case \"month\":\n modifiedStartDate.startOf(\"month\");\n break;\n case \"day\":\n break;\n default:\n modifiedStartDate.startOf(\"month\");\n break;\n }\n return modifiedStartDate;\n};\n\nconst datePicker = (start, end, interval, onChangeFunction, changeBoth) => {\n let tempFormat = \"YYYY\";\n let timeFormat = false;\n let viewMode = \"years\";\n\n switch (interval) {\n case \"year\":\n tempFormat = \"YYYY\";\n viewMode = \"years\";\n break;\n case \"month\":\n tempFormat = \"MM/YYYY\";\n viewMode = \"months\";\n break;\n case \"day\":\n tempFormat = \"DD/MM/YYYY\";\n viewMode = \"days\";\n break;\n default:\n tempFormat = \"YYYY\";\n viewMode = \"years\";\n break;\n }\n\n return (\n \n \n moment(moment(currentDate)).isSameOrBefore(\n moment(moment(end.value))\n ) && currentDate.isSameOrBefore(moment())\n }\n dateFormat={tempFormat}\n timeFormat={timeFormat}\n value={start.value}\n viewMode={viewMode}\n open={true}\n onChange={(value) => {\n if (end.value.isBefore(value)) {\n changeBoth(interval, value);\n } else {\n onChangeFunction(\"start\", value);\n }\n }}\n />\n \n currentDate.isSameOrAfter(start.value) &&\n currentDate.isSameOrBefore(moment())\n }\n dateFormat={tempFormat}\n timeFormat={timeFormat}\n viewMode={viewMode}\n open={true}\n value={moment(end.value).startOf(interval)}\n onChange={(value) => {\n onChangeFunction(\"end\", value);\n }}\n />\n \n );\n};\n\nclass TimeFramePicker extends React.Component {\n\n modifyFormValue = (key, value) => {\n this.props.setState({\n changedForm: {\n ...this.props.state.changedForm,\n [key]: { value: value },\n end: {\n value:\n key === \"end\"\n ? value\n : moment(this.props.state.changedForm.end.value).startOf(\n this.props.state.changedForm.interval.value\n ),\n },\n },\n });\n };\n\n modifyBoth = (interval, value) => {\n this.props.setState({\n changedForm: {\n ...this.props.state.changedForm,\n start: { value: value },\n end: { value: moment(value).startOf(interval) },\n },\n });\n };\n\n modifyIntervalValue = (value) => {\n this.props.setState({\n changedForm: {\n ...this.props.state.changedForm,\n interval: { value: value },\n end: {\n value: moment(this.props.state.changedForm.start.value).startOf(value),\n },\n start: {\n value: getModifiedStartDate(\n value,\n this.props.state.changedForm.start.value\n ),\n },\n },\n });\n };\n\n componentDidMount() {\n this.props.setState({ changedForm: { ...this.props.form } });\n }\n \n\n componentDidUpdate(oldProps, oldState) {\n if (oldProps.form !== this.props.form) {\n this.props.setState({ changedForm: { ...this.props.form } });\n }\n \n if (\n oldProps.triggerSet !== this.props.triggerSet &&\n this.props.triggerSet\n ) {\n const { resetTriggerSet, replaceForm } = this.props;\n const { changedForm } = this.props.state;\n replaceForm({\n ...changedForm,\n end: {\n value: getModifiedEndDate(\n changedForm.interval.value,\n changedForm.end.value\n ),\n },\n });\n resetTriggerSet();\n }\n }\n \n\n render() {\n const { intervalOptions, t } = this.props;\n\n const { changedForm } = this.props.state;\n\n return (\n \n \n \n {t(\"choose_interval\")}:\n {intervalOptions.map((el) => (\n this.modifyIntervalValue(el.value)}\n >\n {t(el.label)}\n \n ))}\n \n \n\n {datePicker(\n changedForm.start,\n changedForm.end,\n changedForm.interval.value,\n this.modifyFormValue,\n this.modifyBoth\n )}\n \n );\n }\n}\n\nexport default withTranslation()(TimeFramePicker);\n\nconst ColumnFlexer = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n height: auto;\n`;\n\nconst Wrapper = styled.div`\n display: flex;\n background-color: white;\n flex-direction: column;\n position: relative;\n z-index: 1000;\n padding: 20px;\n\n ${({ theme }) => theme.smallDesktop`\n flex-direction: row;\n\n `}\n`;\n\nconst TimeOptionsWrapper = styled.div`\n display: grid;\n grid-template-columns: 1fr 1fr 1fr;\n margin: 0;\n padding: 1rem;\n width: 200px;\n\n ${({ theme }) => theme.smallDesktop`\n display: flex;\n flex-direction: column;\n width: auto;\n align-items: center;\n margin: 15px 30px;\n `}\n`;\n\nconst InfoText = styled.span`\n font-weight: 700;\n white-space: nowrap;\n margin-bottom: 10px;\n\n grid-column: span 3;\n`;\n\nconst OptionSpan = styled.span`\n color: ${(props) => (props.selected ? props.theme.white : props.theme.black)};\n background-color: ${(props) => props.selected && props.theme.secondaryColor};\n width: 100%;\n text-align: center;\n margin: 10px 0px;\n padding: 5px;\n cursor: ${(props) => (props.selected ? \"not-allowed\" : \"pointer\")};\n transition: background-color 0.3s ease-in-out;\n\n &:hover {\n background-color: ${(props) => props.theme.secondaryColorHover};\n }\n`;\n","/**\n * StyledMobileTable Component\n * Please write a description\n *\n * @author Your Name \n */\n\nimport React from \"react\";\nimport styled from \"styled-components\";\nimport { useTranslation } from \"react-i18next\";\n\nexport default ({ children, ...props }) => {\n const { data, template: Template, margin } = props;\n const { t } = useTranslation();\n\n return (\n \n {(data == null || data.length <= 0) && (\n {t(\"no_data\")}\n )}\n {data &&\n data.map((el, index) => (\n props.onRowClick(el)}\n active={props.active(el)}\n >\n ))}\n \n );\n};\n\nconst Wrapper = styled.div`\n display: flex;\n flex-direction: column;\n margin-bottom: 1.5rem;\n margin: ${(props) => props.margin};\n`;\n\nconst NoDataText = styled.div`\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 14px;\n color: #5e7382;\n margin: 5rem 0;\n`;\n","/**\n * StyledOption Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled from \"styled-components\";\nimport { Theme } from \"globalStyles\";\n\nexport default ({ children, ...props }) => (\n {children}\n);\n\nconst Wrapper = styled.div`\n font-family: ${Theme.fontFamily};\n color: ${Theme.textonSecondary};\n background-color: transparent;\n font-size: 14px;\n padding: 8px 10px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n height: 36px;\n line-height: 1.5;\n cursor: pointer;\n transition: background-color 0.3s ease-in-out;\n\n &:hover {\n background-color: ${Theme.secondaryColorHover};\n }\n`;\n","/**\n * Downloadbutton Container\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport { Theme } from \"globalStyles\";\nimport styled from \"styled-components\";\nimport StyledOption from \"components/StyledOption\";\n\nexport default ({ children, ...props }) => {\n const { download } = props;\n return (\n \n download(\"csv\")}>CSV\n download(\"xls\")}>XLS\n download(\"xlsx\")}>XLSX\n \n );\n};\n\nconst OptionsWrapper = styled.div`\n padding: 6px 0;\n background-color: ${Theme.textOnPrimary};\n min-width: 150px;\n`;\n","/**\n * StyledTable Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled from \"styled-components\";\nimport { Table } from \"element-react\";\nimport { Theme } from \"globalStyles\";\nimport { useTranslation } from \"react-i18next\";\n\nexport default React.forwardRef(({ children, ...props }, ref) => {\n const { t } = useTranslation();\n\n return (\n \n {children}\n \n );\n});\n\nconst CustomTable = styled(Table)`\n &&::before,\n && ::after {\n content: none;\n }\n &.el-table {\n th.gutter {\n background-color: ${Theme.primaryColorOpacity};\n }\n\n th.is-leaf {\n border: none;\n background-color: ${Theme.primaryColorOpacity};\n }\n\n td {\n border: none;\n border-bottom: 1px solid ${Theme.inactiveColor};\n }\n\n & .sort-caret.ascending {\n border-bottom-color: ${Theme.darkPrimaryColor};\n }\n\n & .ascending .sort-caret.ascending {\n border-bottom-color: ${Theme.secondaryColor};\n }\n\n & .sort-caret.descending {\n border-top-color: ${Theme.darkPrimaryColor};\n }\n\n & .descending .sort-caret.descending {\n border-top-color: ${Theme.secondaryColor};\n }\n\n tr {\n background-color: ${Theme.white};\n }\n }\n\n .el-table__header-wrapper thead div {\n background-color: transparent;\n color: ${Theme.black};\n font-weight: 700;\n }\n\n td {\n margin: 0px !important;\n height: 35px !important;\n padding: 12px 0;\n color: ${Theme.darkPrimaryColor};\n font-size: 16px;\n line-height: 24px;\n }\n\n tr.error {\n background-color: ${Theme.lightColor};\n td {\n background: ${Theme.lightColor} !important;\n }\n }\n\n .el-table--enable-row-hover .el-table__body tr&:hover > td {\n background-color: ${Theme.secondaryColorHover} !important;\n }\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport { Theme } from \"globalStyles\";\n\nexport const AnimatedArrow = (props) => (\n \n \n \n \n \n);\n\nexport const AnimatedArrowWrapper = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-content: center;\n height: ${(props) => props.height};\n width: ${(props) => props.width};\n transform: ${({ transform }) => transform || \"\"};\n transition: 0.3s all;\n\n & svg, & path {\n transition: 0.3s all;\n\n }\n`;\n","/**\n * StyledSelect Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled from \"styled-components\";\n\nimport { AnimatedArrow } from \"components/AnimatedArrow\";\nimport { Theme } from \"globalStyles\";\n\nclass ToggleFilter extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n open: false,\n };\n this.wrapperRef = React.createRef();\n }\n\n componentDidUpdate(oldProps) {\n if (this.props.variableToWatch !== oldProps.variableToWatch) {\n this.setState({ open: false });\n }\n if (\n this.props.loadingDownload !== oldProps.loadingDownload &&\n this.props.loadingDownload\n ) {\n this.setState({ open: false });\n }\n }\n\n componentDidMount() {\n document.addEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n componentWillUnmount() {\n document.removeEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n handleClickOutside = (event) => {\n if (\n this.wrapperRef &&\n !this.wrapperRef.current.contains(event.target) &&\n this.state.open\n ) {\n this.setState({ open: false });\n }\n };\n\n render() {\n const { open } = this.state;\n const { text, children, type, loadingDownload } = this.props;\n\n return (\n \n {\n if (!loadingDownload) {\n this.setState({ open: !open });\n }\n }}\n >\n {text}\n\n \n \n \n \n {children}\n \n \n \n );\n }\n}\n\nexport default ToggleFilter;\n\nconst Wrapper = styled.div`\n position: relative;\n user-select: none;\n order: -1;\n order: ${(props) => props.order};\n z-index: ${(props) => props.zIndex ? props.zIndex : '1000'};\n`;\n\nconst ReferenceWrapper = styled.div`\n position: absolute;\n box-shadow: 0px 0px 22px 0px rgba(204, 204, 204, 1);\n top: 54px;\n left: 0;\n ${({ theme, isDashboard }) => isDashboard && theme.smallDesktop`\n left: calc(-100vw + 680px);\n `}\n ${({ theme, isDashboard, isContainers }) => (isDashboard || isContainers) && theme.desktop`\n right: 0;\n left: unset;\n `}\n`;\n\nconst DynamicWrapper = styled.div`\n height: auto;\n overflow: hidden;\n position: relative;\n right: 0px;\n`;\n\nconst ToggleButtonWrapper = styled.div`\n padding: 0 16px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n color: ${Theme.textonSecondary};\n height: 36px;\n transition: border-color 0.5s, color 0.5s;\n margin: ${({ margin }) => margin};\n\n font-family: ${Theme.fontFamily};\n background-color: ${Theme.white};\n border: 1px solid #dddfe4;\n cursor: pointer;\n\n &:hover,\n &:focus,\n &:active {\n border: 1px solid #6e7587;\n }\n`;\n\nconst ToggleText = styled.span`\n color: ${(props) => props.theme.black};\n font-size: 14px;\n line-height: 1em;\n margin-right: 5px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n &:focus,\n &:active {\n color: ${(props) => props.theme.darkPrimaryColor};\n }\n\n &::first-letter {\n text-transform: uppercase;\n }\n`;\n","/**\n * DepositsTemplate Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled, { css } from \"styled-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { Theme } from \"globalStyles\";\nimport moment from \"moment\";\n\nexport default ({ children, ...props }) => {\n const { data } = props;\n const { t } = useTranslation();\n\n const getUserName = () => {\n if (data.tag) {\n if (\n data.tag.user != null &&\n data.tag.user.fullName != null &&\n data.tag.user.fullName !== \"\"\n ) {\n return {data.tag.user.fullName};\n }\n }\n return {\"-\"};\n };\n\n return (\n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm:ss\")}\n {getUserName()}\n \n {data.container && data.container.name ? data.container.name : \"-\"}\n \n \n {data.complete ? t(\"table.completed\") : t(\"table.uncompleted\")}\n \n \n );\n};\n\nconst Wrapper = styled.div`\n background: white;\n padding: 16px;\n display: grid;\n grid-template-columns: auto auto;\n grid-template-rows: auto auto;\n row-gap: 8px;\n column-gap: 8px;\n\n border-bottom: 1px solid ${Theme.inactiveColor};\n\n ${(props) =>\n props.error &&\n css`\n border-left: 3px solid ${Theme.errorColor};\n background-color: ${Theme.lightColor};\n `}\n\n ${(props) =>\n props.active &&\n css`\n background-color: ${Theme.activeRowColor};\n background-color: ${Theme.activeRowColor};\n `}\n`;\n\nconst DateTime = styled.div`\n font-weight: 300;\n grid-column: 2/3;\n grid-row: 1/2;\n text-align: right;\n font-size: 12px;\n color: ${Theme.iconDarkColor};\n`;\nconst User = styled.div`\n grid-column: 1/2;\n grid-row: 2/3;\n font-size: 16px;\n`;\nconst Container = styled.div`\n font-size: 12px;\n grid-column: 1/2;\n grid-row: 1/2;\n font-weight: 700;\n color: ${Theme.iconDarkColor};\n`;\nconst Status = styled.div`\n color: ${Theme.successColor};\n grid-column: 2/3;\n grid-row: 2/3;\n text-align: right;\n font-size: 12px;\n margin: auto 0;\n\n ${(props) =>\n props.error &&\n css`\n color: ${Theme.errorColor};\n `}\n`;\n\nconst EllipsisDiv = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n","/**\n * StyledSelect Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled from \"styled-components\";\nimport { Select } from \"element-react\";\nimport { Theme } from \"globalStyles\";\nimport { lighten } from \"polished\";\nimport CrossIcon from \"icons/CrossIcon\";\nimport { isMobile } from \"react-device-detect\";\n\nexport default ({ children, ...props }) => {\n if (isMobile) {\n return (\n props.onChange(event.target.value)}\n value={props.value != null ? props.value : \"\"}\n >\n \n {props.placeholder}\n \n\n {props.options\n ? props.options.map((el, index) => (\n \n {el.label}\n \n ))\n : null}\n \n );\n }\n return (\n \n {props.value != null && props.value !== \"\" && !props.disabled && (\n props.onChange(\"\")}>\n \n \n )}\n \n {props.options != null &&\n props.options.map((el, index) => (\n \n ))}\n \n \n );\n};\n\nconst OuterWrapper = styled.div`\n position: relative;\n height: fit-content;\n`;\nconst IconWrapper = styled.div`\n position: absolute;\n top: 4px;\n bottom: 0;\n right: 8px;\n margin-top: auto;\n margin-bottom: auto;\n z-index: 10;\n height: fit-content;\n cursor: pointer;\n`;\n\nconst Wrapper = styled(Select)`\n position: relative;\n width: 100%;\n &.el-select .el-input .el-input__icon,\n &.el-select .el-input .el-input__icon.is-reverse {\n display: none;\n }\n & .el-input__icon + .el-input__inner {\n padding-right: 10px;\n }\n\n &.el-select .el-input.is-disabled .el-input__inner {\n opacity: 0.5;\n background-color: ${Theme.white};\n border: 1px solid ${lighten(0.4, Theme.borderColor)};\n\n &:hover {\n border: 1px solid ${lighten(0.4, Theme.borderColor)};\n border-color: ${lighten(0.4, Theme.borderColor)};\n }\n }\n & .el-input__inner {\n color: ${Theme.inactiveColor};\n border: none;\n font-family: ${Theme.fontFamily};\n border: 1px solid ${lighten(0.4, Theme.borderColor)};\n transition: border-color 0.5s, color 0.5s;\n width: 100%;\n\n ${({ theme, ...props }) => theme.desktop`\n width: ${props.width ? props.width : \"140px\"};\n `}\n\n :not(:placeholder-shown) {\n color: ${Theme.textonSecondary};\n }\n ::placeholder {\n transition: color 0.5s;\n color: ${Theme.borderColor};\n }\n :focus,\n :hover {\n border: 1px solid ${Theme.borderColor} !important;\n color: ${Theme.textonSecondary};\n ::placeholder {\n color: ${Theme.textonSecondary};\n }\n }\n }\n`;\n\nconst StyledMobileSelect = styled.select`\n color: ${Theme.textonSecondary};\n border: none;\n font-family: ${Theme.fontFamily};\n border: 1px solid ${lighten(0.4, Theme.borderColor)};\n transition: border-color 0.5s, color 0.5s;\n width: 100%;\n height: 36px;\n flex: 0 0 100%;\n background-color: ${Theme.white};\n\n padding: 4px 10px;\n font-size: 14px;\n outline: none;\n\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n &:hover {\n border: 1px solid ${Theme.borderColor} !important;\n }\n\n -webkit-appearance: none;\n -moz-appearance: none;\n\n ::placeholder {\n transition: color 0.5s;\n color: ${Theme.borderColor};\n }\n \n ${({ theme }) => theme.smallDesktop`\n flex: 0 0 140px;\n `}\n\n ${({ theme }) => theme.largeDesktop`\n flex: 0 0 clamp(140px, 100%, 200px);\n `}\n`;\n\nconst StyledOption = styled(Select.Option)`\n &.el-select-dropdown__item {\n font-family: ${Theme.fontFamily};\n color: ${Theme.textonSecondary};\n }\n\n &.el-select-dropdown.is-multiple .el-select-dropdown__item.selected.hover,\n &.el-select-dropdown__item.hover,\n &.el-select-dropdown__item:hover {\n background-color: ${Theme.secondaryColorHover};\n }\n &.el-select-dropdown__item.selected.hover,\n &.el-select-dropdown__item.selected {\n background-color: ${Theme.primaryColor};\n }\n\n &.el-select-dropdown__item.is-disabled {\n background-color: transparent !important;\n }\n`;\n\nconst StyledMobileOption = styled.option`\n font-family: ${Theme.fontFamily};\n color: ${Theme.textonSecondary};\n background-color: ${Theme.white};\n\n &:focus,\n &:active,\n &:hover {\n background-color: ${Theme.secondaryColorHover};\n }\n`;\n","export const locales = [\n {\n name: \"pt\",\n options: {\n months: [\n \"Janeiro\",\n \"Fevereiro\",\n \"Março\",\n \"Abril\",\n \"Maio\",\n \"Junho\",\n \"Julho\",\n \"Agosto\",\n \"Setembro\",\n \"Outubro\",\n \"Novembro\",\n \"Dezembro\",\n ],\n shortMonths: [\n \"Jan\",\n \"Fev\",\n \"Mar\",\n \"Abr\",\n \"Mai\",\n \"Jun\",\n \"Jul\",\n \"Ag\",\n \"Set\",\n \"Out\",\n \"Nov\",\n \"Dez\",\n ],\n days: [\n \"Domingo\",\n \"Segunda-feira\",\n \"Terça-feira\",\n \"Quarta-feira\",\n \"Quinta-feira\",\n \"Sexta-feira\",\n \"Sábado\",\n ],\n shortDays: [\"Do\", \"Se\", \"Te\", \"Qa\", \"Qi\", \"Sx\", \"Sa\"],\n toolbar: {\n exportToSVG: \"Baixar SVG\",\n exportToPNG: \"Baixar PNG\",\n exportToCSV: \"Baixar CSV\",\n menu: \"Menu\",\n selection: \"Selecionar\",\n selectionZoom: \"Zoom: Selecionar\",\n zoomIn: \"Zoom: Aumentar\",\n zoomOut: \"Zoom: Diminuir\",\n pan: \"Deslocamento\",\n reset: \"Redefinir\",\n },\n },\n },\n\n {\n name: \"en\",\n options: {\n months: [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n ],\n shortMonths: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n days: [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\",\n ],\n shortDays: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n toolbar: {\n exportToSVG: \"Download SVG\",\n exportToPNG: \"Download PNG\",\n exportToCSV: \"Download CSV\",\n menu: \"Menu\",\n selection: \"Selection\",\n selectionZoom: \"Selection Zoom\",\n zoomIn: \"Zoom In\",\n zoomOut: \"Zoom Out\",\n pan: \"Panning\",\n reset: \"Reset Zoom\",\n },\n },\n },\n];\n","/**\n * Clients Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic, { INTERVAL_FORM_DEFAULTS } from \"./logic\";\nimport styled from \"styled-components\";\nimport { Theme } from \"globalStyles\";\nimport { Layout, Breadcrumb, Card, Loading } from \"element-react\";\nimport { withTranslation } from \"react-i18next\";\nimport ReactDOM from \"react-dom\";\nimport moment from \"moment\";\n\nimport ReactApexChart from \"react-apexcharts\";\nimport { columns, columns_simple } from \"./columns\";\nimport GraphIndicator from \"components/GraphIndicator\";\n\nimport ContainerMapMaintenances from \"containers/ContainerMapMaintenances\";\nimport IntervalPicker from \"containers/IntervalPicker\";\nimport StyledMobileTable from \"containers/StyledMobileTable\";\nimport DownloadDropDownContainer from \"containers/DownloadDropDownContainer\";\n\nimport StyledTable from \"components/StyledTable\";\nimport StyledButton from \"components/StyledButton\";\nimport ToggleFilter from \"components/ToggleFilter\";\nimport ResponsiveHandler from \"components/ResponsiveHandler\";\nimport DepositsTemplate from \"components/DepositsTemplate\";\nimport StyledSelect from \"components/StyledSelect\";\n\nimport { locales } from \"./apexLocales\";\nimport { ADDITIONAL_FEATURES } from \"config\";\nimport { getIntervalText } from \"utils\";\n\nconst intervalOptions = [\n {\n value: \"day\",\n label: \"day\",\n },\n {\n value: \"month\",\n label: \"month\",\n },\n {\n value: \"year\",\n label: \"year\",\n },\n];\n\nconst depositCompleteOptions = [\n {\n label: \"closed\",\n value: \"True\",\n },\n {\n label: \"open\",\n value: \"False\",\n },\n];\nclass Deposits extends Component {\n constructor(props) {\n super(props);\n this.state = {\n focusedInput: null,\n transitionEnded: false,\n filtersWidth: 20,\n inputWidth: \"140px\",\n triggerSet: false,\n changedForm: null,\n completeOptions: depositCompleteOptions,\n };\n this.tableRef = React.createRef();\n this.setState = this.setState.bind(this);\n this._autocompleteRef = null;\n this._userAutocompleteRef = null;\n this._areaAutocompleteRef = null;\n }\n\n _mapContainer = React.createRef();\n\n onFocusChange = (focusedInput) => {\n this.setState({ focusedInput });\n };\n\n componentDidMount() {\n ReactDOM.findDOMNode(this._mapContainer).addEventListener(\n \"transitionend\",\n () => {\n this.setState({ transitionEnded: true });\n }\n );\n this.setState({\n changedForm: this.props.filtersForm,\n });\n }\n\n handleEnter = (event) => {\n if (event.key === \"Enter\") {\n const { filterEntrances } = this.actions;\n filterEntrances();\n }\n };\n\n autoCompleteFetch = (queryString) => {\n if (this._autocompleteRef) {\n clearTimeout(this._autocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._autocompleteRef = setTimeout(function () {\n search(queryString, null, \"container\");\n }, 500);\n };\n\n areaAutoCompleteFetch = (queryString) => {\n if (this._areaAutocompleteRef) {\n clearTimeout(this._areaAutocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._areaAutocompleteRef = setTimeout(function () {\n search(queryString, null, \"area\");\n }, 500);\n };\n\n render() {\n const {\n setLinkedArea,\n setEquipmentInDetail,\n resetFilter,\n changeFilter,\n setFiltersForm,\n resetFiltersForm,\n download,\n } = this.actions;\n\n const {\n areasList,\n linkedArea,\n filteredEquipments,\n equipmentInDetail,\n maintenancesList,\n filter,\n dropsListToPlot,\n t,\n filtersForm,\n maxDrops,\n averageDayDrops,\n numberOfDrops,\n responsiveHandlers,\n loadingPlot,\n i18n,\n loadingDownload,\n filteredEquipmentsNumber,\n searchResults,\n searchLoading,\n fillLevelFilterOptions,\n searchAreaResults,\n searchAreaLoading,\n } = this.props;\n\n const {\n filtersWidth,\n inputWidth,\n triggerSet,\n changedForm,\n } = this.state;\n\n const columnsToMap =\n ADDITIONAL_FEATURES.includes(\"transactions\")\n ? columns\n : columns_simple;\n\n const areaEquipments = filteredEquipments\n ? filteredEquipments.reduce(\n (x, y) => (x.findIndex((e) => e.id === y.id) < 0 ? [...x, y] : x),\n []\n )\n : filteredEquipments;\n\n return (\n \n \n \n \n \n \n {\n setLinkedArea(null);\n }}\n >\n {t(\"deposits.title\")}\n \n \n {linkedArea && (\n \n setEquipmentInDetail(null)}\n >\n {linkedArea.name}\n \n \n )}\n {equipmentInDetail && (\n {equipmentInDetail.name}\n )}\n \n \n \n \n \n changeFilter(\"container__area__name\", event)\n }\n remoteMethod={this.areaAutoCompleteFetch}\n options={searchAreaResults}\n loading={searchAreaLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea != null}\n >\n changeFilter(\"container__uuid\", event)}\n value={filter.container__uuid}\n remoteMethod={this.autoCompleteFetch}\n options={searchResults}\n loading={searchLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea == null}\n >\n changeFilter(\"complete\", value)}\n placeholder={t(\"complete\")}\n clearable={true}\n filterMethod={(val) => {\n if (val != null && val !== \"\") {\n this.setState({\n completeOptions: depositCompleteOptions.filter(\n (d) => t(d.label).toLowerCase() === val.toLowerCase()\n ),\n });\n } else {\n this.setState({\n completeOptions: depositCompleteOptions,\n });\n }\n }}\n options={\n this.state.completeOptions != null\n ? this.state.completeOptions.map((el) => ({\n ...el,\n label: t(el.label),\n }))\n : []\n }\n >\n changeFilter(\"fill_level\", event)}\n value={filter.fill_level}\n options={fillLevelFilterOptions}\n remote={true}\n clearable={true}\n >\n \n\n {changedForm != null && (\n \n this.setState({ triggerSet: false })}\n state={{ changedForm }}\n setState={this.setState}\n />\n \n )}\n\n \n {\n resetFilter();\n setLinkedArea(null);\n }}\n >\n {t(\"clear_filters\")}\n \n this.setState({ triggerSet: true })}\n >\n {t(\"apply\")}\n \n \n {!loadingDownload ? \"Download\" : }\n \n }\n type={\"button\"}\n loadingDownload={loadingDownload}\n >\n \n \n \n \n \n \n\n \n (this._mapContainer = elem)}\n span={\"22\"}\n >\n setLinkedArea(area)}\n areaEquipments={areaEquipments}\n equipmentInDetail={equipmentInDetail}\n globalNumberOfContainers={filteredEquipmentsNumber}\n setEquipmentInDetail={(equipment) => setEquipmentInDetail(equipment)}\n />\n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n {t(\"deposits.title\")}\n
\n \n {responsiveHandlers.isMobile || responsiveHandlers.isTablet ? (\n ({ ...equipment }))\n : []\n }\n template={DepositsTemplate}\n active={(row) =>\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id\n }\n onRowClick={(entrance) => {\n window.scrollTo({\n left: 0,\n top: 0,\n behavior: \"smooth\",\n });\n this.setState({\n transitionEnded: false,\n });\n \n setEquipmentInDetail(entrance.container)\n }}\n />\n ) : (\n ({ t, ...column }))}\n data={\n maintenancesList\n ? maintenancesList.map((equipment) => ({ ...equipment }))\n : []\n }\n rowClassName={(row) => {\n let toReturn = \"\";\n if (\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id\n ) {\n toReturn += \" active\";\n }\n if (!row.complete) {\n toReturn += \" error\";\n }\n return toReturn;\n }}\n onRowClick={(entrance) => {\n this.setState({\n transitionEnded: false,\n });\n \n setEquipmentInDetail(entrance.container);\n }}\n />\n )}\n \n \n \n \n \n {t(\"dashboard.fill_graph_title\")}\n \n \n {loadingPlot && }\n {!loadingPlot &&\n (dropsListToPlot == null ||\n dropsListToPlot.length < 2) && (\n {t(\"no_data\")}\n )}\n {!loadingPlot &&\n dropsListToPlot &&\n dropsListToPlot.length > 1 && (\n \n )}\n \n \n \n \n
\n \n
\n );\n }\n}\n\nexport default withTranslation()(ResponsiveHandler(Logic(Deposits)));\n\nconst GraphIndicatorsWrapper = styled.div`\n padding: 1.5rem;\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n height: 100%;\n`;\n\nconst Wrapper = styled.div`\n`;\n\nconst CustomLayoutSecondaryRow = styled(Layout.Row)`\n margin-left: 0px !important;\n margin-right: 0px !important;\n margin-top: ${(props) => props.marginTop};\n height: ${(props) => props.height};\n min-height: ${(props) => props.minHeight};\n & > div {\n ${({ theme }) => theme.smallDesktop`\n height: 100%;\n `}\n }\n`;\n\nconst FlexWrapper = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n`;\n\nconst BreakcrumbWrapper = styled.div`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.desktop`\n flex-direction: row;\n `}\n`;\n\nconst SelectivePaddingColNoFixedHeight = styled(Layout.Col)`\n display: flex;\n justify-content: ${(props) => props.justifyContent};\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n float: ${(props) => props.float} !important;\n transition: width 0.4s;\n overflow: visible;\n`;\n\nconst BreadcrumbWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-4 {\n width: 100%;\n margin-bottom: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-4{\n margin-bottom: 8px;\n padding: 0 16px 0 0 !important;\n }\n `}\n`;\nconst FiltersWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-20 {\n width: 100%;\n display: grid;\n grid-template-columns: repeat(2, minmax(0, 1fr));\n justify-content: left;\n row-gap: 8px;\n column-gap: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n\n `}\n\n ${({ theme }) => theme.desktop`\n &.el-col-20{\n display: flex;\n justify-content: flex-end;\n width: 83.33333%;\n padding-left: 14px !important;\n }\n `}\n`;\n\nconst SelectivePaddingColNoFixedHeightWithBoxShadow = styled(\n SelectivePaddingColNoFixedHeight\n)`\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);\n`;\n\nconst NoPaddingCol = styled(Layout.Col)`\n padding-left: 0px !important;\n padding-right: 0px !important;\n\n padding: ${(props) => props.padding} !important;\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n\n &.el-col-12 {\n width: 100%;\n padding: 0 !important;\n height: calc(100% - 3rem);\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-12{\n width: 50%;\n padding: ${(props) => props.padding} !important;\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n }\n `}\n`;\n\nconst CustomBreakcrumb = styled(Breadcrumb)`\n .el-breadcrumb__item > span {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n\n .el-breadcrumb__separator {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n`;\n\nconst CustomCard = styled(Card)`\n height: ${(props) => props.height};\n\n width: ${(props) => props.width};\n margin: ${(props) => props.margin};\n border: ${(props) => props.border};\n padding: ${(props) => props.padding};\n\n & .el-card__body {\n height: 100%;\n }\n\n @media (max-height: 768px) {\n height: 320px;\n }\n`;\n\nconst GraphCustomCard = styled(CustomCard)`\n height: 15rem;\n height: 100%;\n\n ${({ theme }) => theme.smallDesktop`\n height: ${(props) => props.height};\n min-height: calc(100% - 3rem);\n\n and @media (max-height: 768px) {\n height: 100%;\n }\n\n `}\n`;\n\nconst GraphWrapper = styled.div`\n position: relative;\n height: calc(15rem - 40px);\n width: 100%;\n width: ${(props) => props.width};\n max-height: ${(props) => props.height};\n padding: 0 16px 16px;\n\n ${({ theme }) => theme.smallDesktop`\n height: calc(100% - 40px);\n\n `}\n`;\n\nconst Divider = styled.div`\n height: 1px;\n width: 90%;\n background-color: ${Theme.lightInactiveColor};\n margin: 0 auto;\n`;\n\nconst ButtonWrapper = styled(FlexWrapper)`\n display: grid;\n grid-template-columns: 1fr 1fr;\n column-gap: 8px;\n row-gap: 8px;\n grid-column: span 2;\n justify-content: flex-end;\n\n ${({ theme }) => theme.desktop`\n display flex;\n `}\n`;\n\nconst FirstRow = styled(CustomLayoutSecondaryRow)`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.smallDesktop`\n flex-direction: row;\n `}\n`;\n\nconst MapWrapper = styled(SelectivePaddingColNoFixedHeightWithBoxShadow)`\n &.el-col-22 {\n width: 100%;\n }\n ${({ theme }) => theme.smallDesktop`\n &.el-col-22{\n width: 83.33333%;\n }\n `}\n ${({ theme }) => theme.desktop`\n &.el-col-22{\n width: 91.66667%;\n }\n `}\n`;\n\nconst StatsWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-0 {\n display: none;\n }\n &.el-col-2 {\n width: 100%;\n padding: 0 !important;\n margin-top: 15px;\n }\n\n &.el-col-12 {\n height: 100%;\n width: 100%;\n padding: 0 !important;\n margin: 15px 0;\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-2{\n width: 16.66667%;\n padding-left: 15px !important;\n margin-top: 0;\n }\n &.el-col-12{\n width: 50%;\n padding-left: 16px !important;\n margin: 0;\n }\n `}\n ${({ theme }) => theme.desktop`\n &.el-col-2{\n width: 8.33333%;\n padding-left: 15px !important;\n margin-top: 0;\n }\n `}\n`;\n\nconst GraphLoading = styled(Loading)`\n height: 100%;\n .el-loading-spinner {\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\n\nconst CustomReactApexChart = styled(ReactApexChart)`\n & .apexcharts-menu{\n min-width: initial !important;\n } \n`;\n\nconst DownloadLoading = styled(Loading)`\n height: 24px;\n width: 24px;\n overflow: hidden;\n\n .el-loading-spinner {\n margin-top: 0;\n top: 0;\n svg {\n height: 24px;\n width: 24px;\n }\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\n\nconst SmallCardTitle = styled.div`\n color: ${Theme.black};\n font-family: ${Theme.fontFamily};\n font-size: 16px;\n font-weight: 700;\n line-height: 22px;\n text-align: center;\n margin: 0;\n padding: ${(props) => props.margin};\n`;\n\nconst NoDataText = styled.div`\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 14px;\n color: #5e7382;\n`;\n\nconst TableName = styled.span`\n color: ${Theme.primaryColor};\n font-size: 1rem;\n font-weight: 800;\n line-height: 22px;\n`;","/**\n * Areas Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport React from 'react';\n\nimport { kea } from 'kea';\n\nimport { put, call } from 'redux-saga/effects';\nimport { delay } from 'redux-saga';\nimport { BASE_API_URL, API_DATE_FORMAT } from 'config';\n//import { } from 'utils'\n//import { } from './utils'\n\nimport PropTypes from 'prop-types';\nimport * as Check from 'validations';\nimport axios from 'axios';\nimport moment from 'moment';\nimport { decodeColor } from 'utils';\nimport { toast } from 'react-toastify';\nimport fileDownload from 'js-file-download';\n\nimport NotificationsWrapper from 'components/NotificationsWrapper';\nimport AppLogic from 'containers/App/logic';\n\nconst EVENTSURL = BASE_API_URL + 'containers/maintenances/';\nconst AREASURL = BASE_API_URL + 'areas/';\nconst EQUIPMENTSSURL = BASE_API_URL + 'containers/';\nconst DOWNLOADURL = BASE_API_URL + 'events/export/';\n\nconst getContainerByUUID = (uuid, array) => {\n if (uuid != null && array != null)\n return array.find((el) => el.uuid === uuid);\n return null;\n};\n\nconst getAreaByName = (name, array) => {\n if (name != null && array != null)\n return array.find((el) => el.name === name);\n return null;\n};\n\nexport const INTERVAL_FORM_DEFAULTS = {\n start: {\n value: moment().startOf('month'),\n },\n end: {\n value: moment(),\n },\n interval: {\n value: 'day',\n },\n};\n\nconst DEFAULT_VALUES = {\n description: {\n value: '',\n },\n};\n\nconst VALIDATIONS = {\n description: [Check.isRequired],\n};\n\nexport default kea({\n path: () => ['scenes', 'Maintenances'],\n\n connect: {\n props: [AppLogic, ['user']],\n actions: [\n AppLogic,\n ['watchEvents', 'changeWatchingEvents', 'setWebSocketHanlder'],\n ],\n },\n\n actions: () => ({\n changeFiltersForm: (key, value) => ({ key, value }),\n setFiltersForm: (form) => ({ form }),\n resetFiltersForm: () => true,\n\n fetchMaintenancesList: () => true,\n setMaintenancesList: (list) => ({ list }),\n setMaintenancesNumber: (number) => ({ number }),\n fetchEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n\n setDescriptionResponse: (response) => ({ response }),\n submitDescription: (id) => ({ id }),\n changeDescription: (field) => ({ field }),\n setFormDescription: (form) => ({ form }),\n resetDescriptionForm: () => true,\n\n fetchAreasList: () => true,\n setAreasList: (list) => ({ list }),\n setAreasNumber: (number) => ({ number }),\n setLoadingAreas: (loading) => loading,\n\n setLinkedArea: (area) => ({ area, type: 'container', query: '' }),\n setFilteredEquipments: (equipments) => ({ equipments }),\n updateFilteredEquipments: (equipments) => ({ equipments }),\n setFilteredEquipmentsNumber: (number) => ({ number }),\n\n setFilter: (filter) => ({ filter }),\n changeFilter: (key, value) => ({ key, value }),\n resetFilter: () => true,\n filterEntrances: () => true,\n fetchAreasEquipments: () => true,\n setPagination: (pag) => ({ pag }),\n\n setEquipmentInDetail: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetail: (equipment) => ({\n equipment,\n type: 'container',\n query: '',\n }),\n\n setUsingMonthCalendar: (value) => ({ value }),\n setShowCalendarFilter: (value) => ({ value }),\n\n download: (type) => ({ type }),\n finishDownload: () => true,\n\n setSearchResults: (results) => ({ results }),\n setAreaSearchResults: (results) => ({ results }),\n }),\n\n reducers: ({ actions }) => ({\n descriptionForm: [\n DEFAULT_VALUES,\n PropTypes.object,\n {\n [actions.changeDescription]: (state, payload) =>\n Check.setAndCheckValidation(state, payload, VALIDATIONS),\n [actions.setFormDescription]: (state, payload) =>\n Check.checkValidation(payload.form, VALIDATIONS).form,\n [actions.resetDescriptionForm]: () => DEFAULT_VALUES,\n },\n ],\n descriptionResponse: [\n null,\n PropTypes.string,\n {\n [actions.setDescriptionResponse]: (state, { response }) => response,\n\n [actions.resetDescriptionForm]: () => null,\n },\n ],\n\n filtersForm: [\n INTERVAL_FORM_DEFAULTS,\n PropTypes.object,\n {\n [actions.changeFiltersForm]: (state, payload) => ({\n ...state,\n [payload.key]: { value: payload.value },\n }),\n [actions.setFiltersForm]: (state, { form }) => ({ ...form }),\n [actions.resetFiltersForm]: (state, payload) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n [actions.resetFilter]: (state, payload) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n },\n ],\n\n maintenancesList: [\n [],\n PropTypes.array,\n {\n [actions.setMaintenancesList]: (state, { list }) => list,\n },\n ],\n\n pagination: [\n { page: 1, page_size: 10 },\n PropTypes.object,\n {\n [actions.setPagination]: (state, { pag }) => pag,\n [actions.setFetchedEquipmentInDetail]: () => ({\n page: 1,\n page_size: 10,\n }),\n [actions.setFiltersForm]: () => ({ page: 1, page_size: 10 }),\n },\n ],\n\n linkedArea: [\n null,\n PropTypes.object,\n {\n [actions.setLinkedArea]: (state, { area }) => area,\n },\n ],\n\n filter: [\n {\n container__area__name: '',\n container__uuid: '',\n search_user: '',\n complete: '',\n },\n PropTypes.object,\n {\n [actions.setFilter]: (state, { filter }) => filter,\n [actions.changeFilter]: (state, payload) => {\n return Object.assign({}, state, { [payload.key]: payload.value });\n },\n [actions.setLinkedArea]: (state, { area }) => ({\n ...state,\n container__area__name: area != null && area.name ? area.name : '',\n }),\n [actions.setEquipmentInDetail]: (state, { equipment }) => ({\n ...state,\n container__uuid:\n equipment != null && equipment.uuid ? equipment.uuid : '',\n }),\n [actions.resetFilter]: (state) => ({\n container__area__name: '',\n container__uuid: '',\n search_user: '',\n complete: '',\n }),\n },\n ],\n\n areasList: [\n [],\n PropTypes.array,\n {\n [actions.setAreasList]: (state, { list }) => list,\n },\n ],\n\n loadingDownload: [\n false,\n PropTypes.boolean,\n {\n [actions.download]: () => true,\n [actions.finishDownload]: () => false,\n },\n ],\n\n loadingAreas: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingAreas]: (state, loading) => loading,\n },\n ],\n\n filteredEquipments: [\n null,\n PropTypes.array,\n {\n [actions.setFilteredEquipments]: (state, { equipments }) => equipments,\n [actions.updateFilteredEquipments]: (state, { equipments }) => [\n ...state,\n ...equipments,\n ],\n [actions.setLinkedArea]: (state, { area }) => {\n return area === null ? null : state;\n },\n },\n ],\n\n filteredEquipmentsNumber: [\n 0,\n PropTypes.number,\n {\n [actions.setFilteredEquipmentsNumber]: (state, { number }) => number,\n },\n ],\n\n equipmentInDetail: [\n null,\n PropTypes.object,\n {\n [actions.setFetchedEquipmentInDetail]: (state, { equipment }) =>\n equipment,\n [actions.setFetchedEquipmentInDetailNoFetchs]: (state, { equipment }) =>\n equipment,\n [actions.setLinkedArea]: (state, { area }) => {\n return area === null ? null : state;\n },\n [actions.resetFilter]: () => null,\n },\n ],\n\n usingMonthCalendar: [\n true,\n PropTypes.bool,\n {\n [actions.setUsingMonthCalendar]: (state, { value }) => value,\n },\n ],\n\n showCalendarFilter: [\n false,\n PropTypes.bool,\n {\n [actions.setShowCalendarFilter]: (state, { value }) => value,\n },\n ],\n\n searchResults: [\n [],\n PropTypes.array,\n {\n [actions.setSearchResults]: (state, { results }) => results,\n },\n ],\n\n searchLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'container',\n [actions.setSearchResults]: () => false,\n },\n ],\n\n searchAreaResults: [\n [],\n PropTypes.array,\n {\n [actions.setAreaSearchResults]: (state, { results }) => results,\n },\n ],\n\n searchAreaLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'area',\n [actions.setAreaSearchResults]: () => false,\n },\n ],\n }),\n\n start: function* () {\n const {\n fetchMaintenancesList,\n fetchAreasList,\n setWebSocketHanlder,\n watchEvents,\n fetchAreasEquipments,\n } = this.actions;\n\n yield put(fetchAreasList());\n yield put(fetchMaintenancesList());\n yield put(fetchAreasEquipments());\n\n yield put(setWebSocketHanlder(this.workers.handle));\n\n yield put(watchEvents());\n },\n\n stop: function* () {\n const { changeWatchingEvents } = this.actions;\n yield put(changeWatchingEvents(false));\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.fetchMaintenancesList]: workers.fetchMaintenancesList,\n [actions.fetchAreasList]: workers.fetchAreasList,\n [actions.fetchEquipmentInDetailNoFetchs]:\n workers.fetchEquipmentInDetailNoFetchs,\n [actions.fetchAreasEquipments]: workers.fetchAreasEquipments,\n [actions.setLinkedArea]: [\n workers.showOnlyOneArea,\n workers.fetchMaintenancesList,\n workers.fetchAreasEquipments,\n ],\n [actions.setEquipmentInDetail]: [workers.fetchEquipmentInDetail],\n [actions.setFetchedEquipmentInDetail]: [workers.fetchMaintenancesList],\n [actions.filterEntrances]: [workers.fetchMaintenancesList],\n [actions.resetFilter]: [workers.fetchMaintenancesList],\n [actions.setPagination]: workers.fetchMaintenancesList,\n [actions.setFiltersForm]: workers.fetchMaintenancesList,\n [actions.submitDescription]: workers.submitDescription,\n [actions.download]: workers.download,\n }),\n\n workers: {\n *download(action) {\n const { payload } = action;\n const { t } = this.props;\n const { finishDownload } = this.actions;\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n const filtersForm = yield this.get('filtersForm');\n\n let filter = yield this.get('filter');\n\n if (payload.type != null) {\n try {\n let params;\n if (equipmentInDetail) {\n params = { ...filter, container__id: equipmentInDetail.id };\n } else if (linkedArea) {\n params = { ...filter, container__area__id: linkedArea.id };\n } else {\n params = { ...filter };\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n const response = yield call(axios.get, DOWNLOADURL, {\n params: {\n type: 'maintenance',\n file_type: payload.type,\n ...params,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-datetime',\n },\n responseType: 'blob',\n });\n fileDownload(\n new Blob([response.data]),\n `${t('maintenances.download')}.${payload.type}`\n );\n } catch (err) {\n console.log({ err });\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: 'downloadError',\n }\n );\n } finally {\n yield put(finishDownload());\n }\n }\n },\n\n *showOnlyOneArea(action) {\n const { setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n const linkedArea = yield this.get('linkedArea');\n if (areasList.length === 1 && linkedArea !== areasList[0]) {\n yield delay(300);\n yield put(setLinkedArea(areasList[0]));\n }\n },\n\n *submitDescription(action) {\n const { payload } = action;\n const {\n setFormDescription,\n fetchMaintenancesList,\n setDescriptionResponse,\n } = this.actions;\n const form = yield this.get('descriptionForm');\n\n if (payload.id) {\n const validation = Check.checkValidation(form, VALIDATIONS);\n if (validation.invalid) {\n yield put(setFormDescription(validation.form));\n return false;\n }\n\n try {\n const response = yield call(\n axios.patch,\n EVENTSURL + `${payload.id}/`,\n {\n description: form.description.value,\n }\n );\n if (response.status === 200) {\n yield put(setDescriptionResponse('success'));\n yield put(fetchMaintenancesList());\n }\n } catch (error) {\n console.log({ error });\n yield put(setDescriptionResponse('error'));\n }\n }\n },\n\n *fetchEquipmentInDetailNoFetchs(action) {\n const { setFetchedEquipmentInDetailNoFetchs } = this.actions;\n\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n yield put(setFetchedEquipmentInDetailNoFetchs(data));\n } catch (error) {\n console.log({ error });\n yield put(setFetchedEquipmentInDetailNoFetchs(null));\n }\n },\n\n *fetchEquipmentInDetail(action) {\n yield delay(300);\n\n const { setFetchedEquipmentInDetail, setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n\n if (action.payload != null && action.payload.equipment != null) {\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n const equipmentArea = areasList.find((el) => el.id === data.area.id);\n if (equipmentArea != null) {\n yield put(setLinkedArea(equipmentArea));\n }\n yield put(setFetchedEquipmentInDetail(data));\n } catch (error) {\n console.log({ error });\n yield put(setFetchedEquipmentInDetail(null));\n }\n } else {\n yield put(setFetchedEquipmentInDetail(null));\n }\n },\n\n *fetchMaintenancesList(action) {\n yield delay(500);\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n let filter = yield this.get('filter');\n const pagination = yield this.get('pagination');\n const filtersForm = yield this.get('filtersForm');\n const areasList = yield this.get('areasList');\n const filteredEquipments = yield this.get('filteredEquipments');\n\n const {\n setMaintenancesList,\n setMaintenancesNumber,\n setEquipmentInDetail,\n setLinkedArea,\n } = this.actions;\n\n try {\n let params;\n\n if (equipmentInDetail) {\n params = { ...filter, container__id: equipmentInDetail.id };\n } else if (linkedArea) {\n params = { ...filter, container__area__id: linkedArea.id };\n } else {\n params = { ...filter };\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let response = yield call(axios.get, EVENTSURL, {\n params: {\n ...params,\n page: pagination.page,\n page_size: pagination.limit,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-datetime',\n },\n });\n\n if (response.data.results) {\n if (\n filter.container__area__name != null &&\n filter.container__area__name !== ''\n ) {\n if (\n getAreaByName(filter.container__area__name, areasList) != null &&\n (linkedArea == null ||\n (linkedArea != null &&\n linkedArea.name !== filter.container__area__name))\n ) {\n yield put(\n setLinkedArea(\n getAreaByName(filter.container__area__name, areasList)\n )\n );\n }\n }\n\n if (filter.container__uuid != null && filter.container__uuid !== '') {\n if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) !=\n null &&\n (equipmentInDetail == null ||\n (equipmentInDetail != null &&\n equipmentInDetail.uuid !== filter.container__uuid))\n ) {\n yield put(\n setEquipmentInDetail(\n getContainerByUUID(filter.container__uuid, filteredEquipments)\n )\n );\n } else if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) ==\n null &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n } else if (\n (filter.container__uuid == null || filter.container__uuid === '') &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n\n yield put(setMaintenancesList(response.data.results));\n yield put(setMaintenancesNumber(response.data.results.length));\n } else {\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n } catch (error) {\n console.log({ error });\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n },\n\n *fetchAreasList() {\n const {\n setAreasList,\n setAreasNumber,\n setLinkedArea,\n setAreaSearchResults,\n } = this.actions;\n\n try {\n const response = yield call(axios.get, AREASURL);\n const areasRes = response.data.results;\n\n if (areasRes.length) {\n // add data to area filter\n const searchAreaArr = areasRes.map((area) => ({\n value: area.name,\n label: area.name,\n }));\n yield put(setAreaSearchResults(searchAreaArr));\n\n // set up areas and prepare polygons\n let results = areasRes.map((area) => {\n area.lines = {\n type: 'LineString',\n coordinates: area.polygon.coordinates[0],\n };\n return area;\n });\n yield put(setAreasList(results));\n yield put(setAreasNumber(areasRes.length));\n\n if (results.length === 1) {\n yield delay(300);\n yield put(setLinkedArea(results[0]));\n }\n } else {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n }\n } catch (error) {\n console.log({ error });\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n }\n },\n\n *fetchAreasEquipments() {\n yield delay(600);\n const linkedArea = yield this.get('linkedArea');\n\n const {\n setFilteredEquipments,\n setFilteredEquipmentsNumber,\n setSearchResults,\n } = this.actions;\n\n const installationStatus = ['assembled', 'installed'];\n\n try {\n let next = 1;\n const commonParams = {\n page_size: 500,\n };\n\n let results = [];\n while (next) {\n let params = {\n ...commonParams,\n page: next,\n };\n\n if (linkedArea !== null)\n params = { ...params, area__id: linkedArea.id };\n\n let containers = [];\n\n const responses = yield installationStatus.map((status) => {\n params = { ...params, installation_status: status };\n return call(axios.get, EQUIPMENTSSURL, { params });\n });\n\n responses.forEach((el) =>\n containers.push.apply(containers, el.data.results)\n );\n\n containers.map((container) => {\n container.color = decodeColor(container.type);\n results.push(container);\n return container;\n });\n\n const equipmentsList = results.map((el) => ({\n value: el.uuid,\n label: el.name,\n }));\n\n next = 0;\n\n yield put(setFilteredEquipments(results));\n yield put(setFilteredEquipmentsNumber(containers.length));\n yield put(setSearchResults(equipmentsList));\n }\n } catch (error) {\n console.log({ error });\n yield put(setFilteredEquipments([]));\n yield put(setFilteredEquipmentsNumber(0));\n }\n },\n\n *handle(message) {\n const { fetchMaintenancesList, fetchEquipmentInDetailNoFetchs } =\n this.actions;\n const equipmentInDetail = yield this.get('equipmentInDetail');\n if (message.event_type === 'status') {\n let temp = { ...message };\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n toast.info(temp.message, {\n position: toast.POSITION.TOP_RIGHT,\n delay: 200,\n id: message_id ? `uniqueStatusMessage${message_id}` : null,\n });\n } else if (message.event_type === 'event' && message.content) {\n if (message.event_type === 'event') {\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n if (\n message.content != null &&\n (message.content.type === 'drop' ||\n message.content.type === 'pick') &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueDropMessage${message_id}` : null,\n }\n );\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n } else if (\n message.content != null &&\n message.content.type === 'maintenance' &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueMaintenanceMessage${message_id}`\n : null,\n }\n );\n yield put(fetchMaintenancesList());\n } else if (message.content && message.content.type === 'alert') {\n toast.warn(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueAlertMessage${message_id}` : null,\n }\n );\n } else if (message.content && message.content.type === 'error') {\n if (message.content.status === 'closed') {\n toast.success(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n } else {\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n }\n }\n }\n }\n },\n },\n});\n","import React from \"react\";\nimport moment from \"moment\";\nimport StyledProgressBar from \"components/StyledProgressBar\";\nimport styled from \"styled-components\";\nimport decodeType from \"utils/decodeType\";\n\nexport const columns = [\n {\n label: \"table.id\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"id\",\n render: function (data) {\n return (\n \n {data.id ? data.id : \"-\"}\n \n );\n },\n width: 100,\n },\n {\n label: \"table.date\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"datetime\",\n render: function (data) {\n return
{moment(data.datetime).format(\"DD/MM/YYYY HH:mm\")}
;\n },\n width: 170,\n },\n {\n label: \"table.user\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data) {\n return {data.maintainer && data.maintainer.fullName ? data.maintainer.fullName : \"-\"};\n },\n width: 140\n },\n {\n label: \"table.container\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data) {\n return (\n \n {data.container && data.container.uuid ? data.container.uuid : \"-\"}\n \n );\n },\n width: 140\n },\n {\n label: \"table.type\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data, { t }) {\n return (\n \n {data.container && data.container.type\n ? t(`table.${decodeType(data.container.type)}`)\n : \"-\"}\n \n );\n },\n width: 150\n },\n {\n label: \"table.fill_level\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"container.fillLevel\",\n render: function (data) {\n return (\n
\n 75\n ? \"error\"\n : data.container.fillLevel > 50\n ? \"alert\"\n : \"success\"\n }\n />\n
\n );\n },\n width: 220\n },\n {\n label: \"table.description\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n render: function ({ t, addDescription, user, ...data }) {\n return (\n \n {data.description\n ? data.description\n : (user.isMaintenance || user.isAdmin) && (\n addDescription(e, data)}>\n {t(\"table.add_description\")}\n \n )}\n \n );\n },\n minWidth: 220\n },\n];\n\nconst EllipsisDiv = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n\nconst EllipsisDivFlex = styled.div`\n overflow: hidden;\n text-overflow: ellipsis;\n display: flex;\n`;\n\nconst Link = styled.span`\n color: ${({ theme }) => theme.primaryColor};\n text-decoration: underline;\n cursor: pointer;\n`;\n","/**\n * StyledInput Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled from \"styled-components\";\nimport { Theme } from \"globalStyles\";\nimport { Input } from \"element-react\";\nimport { lighten } from \"polished\";\n\nexport default ({ children, ...props }) => (\n \n);\n\nconst CustomInput = styled(Input)`\n &.el-input,\n &.el-textarea {\n width: ${(props) => (props.width ? props.width : \"auto\")};\n &:not(:first-child) {\n margin-left: 14px;\n }\n }\n & .el-input__inner,\n & .el-textarea__inner {\n resize: none;\n color: ${Theme.inactiveColor};\n border: none;\n /* box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04); */\n font-family: ${Theme.fontFamily};\n border: 1px solid ${lighten(0.4, Theme.borderColor)};\n transition: border-color 0.5s, color 0.5s;\n :not(:placeholder-shown) {\n color: ${Theme.textonSecondary};\n }\n ::placeholder {\n transition: color 0.5s;\n color: ${Theme.borderColor};\n }\n :focus,\n :hover {\n border: 1px solid ${Theme.borderColor} !important;\n color: ${Theme.textonSecondary};\n ::placeholder {\n color: ${Theme.textonSecondary};\n }\n }\n }\n`;\n","/**\n * Disclaimer Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled from \"styled-components\";\nimport { Theme } from \"globalStyles\";\nimport { Dialog } from \"element-react\";\n\nexport default ({ children, ...props }) => (\n \n {children}\n \n);\n\nconst Wrapper = styled(Dialog)`\n &.el-dialog--small {\n width: 100%;\n max-width: 20rem;\n margin: auto;\n top: 0 !important;\n left: 0;\n transform: none;\n position: initial;\n }\n .el-dialog__header {\n padding: 20px;\n }\n\n .el-dialog__body {\n padding: 0 20px 20px;\n }\n\n .el-dialog__headerbtn .el-dialog__close {\n color: ${Theme.textonSecondary};\n margin-left: 8px;\n }\n\n .el-dialog__headerbtn:focus .el-dialog__close, .el-dialog__headerbtn:hover .el-dialog__close{\n color: ${Theme.secondaryColor};\n }\n\n &.el-dialog--large{\n max-width: calc(100vw - 8rem);\n padding: 40px 20px 20px;\n width: auto;\n\n .el-dialog__header{\n display: none;\n }\n }\n\n &.el-dialog{\n top: 15%;\n bottom: 15%;\n overflow: scroll;\n height: fit-content;\n max-height: calc(100vh - 35%);\n }\n`;\n","/**\n * MaintenancesTemplate Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled, { css } from \"styled-components\";\nimport { Theme } from \"globalStyles\";\nimport { useTranslation } from \"react-i18next\";\n\nimport moment from \"moment\";\n\nexport default ({ children, ...props }) => {\n const { data, user } = props;\n const { t } = useTranslation();\n const getUserName = () => {\n if (data.tag) {\n if (\n data.tag.user != null &&\n data.tag.user.fullName != null &&\n data.tag.user.fullName !== \"\"\n ) {\n return {data.tag.user.fullName};\n }\n }\n return {\"-\"};\n };\n return (\n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm:ss\")}\n {getUserName()}\n \n {data.container && data.container.name ? data.container.name : \"-\"}\n \n \n {data.previousFillLevel != null\n ? ` ${data.previousFillLevel}%`\n : ` 0%`}\n \n \n {data.maintDescription\n ? data.maintDescription\n : (user.isMaintenance || user.isAdmin) && (\n data.addDescription(e, data)}>\n {t(\"table.add_description\")}\n \n )}\n \n \n );\n};\n\nconst Wrapper = styled.div`\n background: white;\n padding: 16px;\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-template-rows: auto auto;\n row-gap: 8px;\n column-gap: 8px;\n\n border-bottom: 1px solid ${Theme.inactiveColor};\n\n ${(props) =>\n props.error &&\n css`\n border-left: 3px solid ${Theme.errorColor};\n background-color: ${Theme.lightColor};\n `}\n\n ${(props) =>\n props.active &&\n css`\n background-color: ${Theme.activeRowColor};\n background-color: ${Theme.activeRowColor};\n `}\n`;\n\nconst DateTime = styled.div`\n font-weight: 300;\n grid-column: 2/3;\n grid-row: 1/2;\n text-align: right;\n font-size: 12px;\n color: ${Theme.iconDarkColor};\n`;\nconst User = styled.div`\n grid-column: 1/2;\n grid-row: 2/3;\n font-size: 16px;\n`;\nconst Container = styled.div`\n font-size: 12px;\n grid-column: 1/2;\n grid-row: 1/2;\n font-weight: 700;\n color: ${Theme.iconDarkColor};\n`;\nconst Status = styled.div`\n color: ${Theme.textonSecondary};\n grid-column: 2/3;\n grid-row: 2/3;\n text-align: right;\n font-size: 12px;\n margin: auto 0;\n position: relative;\n z-index: 100;\n font-weight: bold;\n\n &::before {\n z-index: -1;\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n border-radius: 4px;\n width: ${(props) => (props.percentage ? `${props.percentage}%` : 0)};\n background-color: ${Theme.secondaryColor};\n }\n`;\n\nconst EllipsisDiv = styled.div`\n font-size: 12px;\n rid-column: 1/3;\n grid-row: 3/4;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n\nconst Link = styled.span`\n color: ${({ theme }) => theme.primaryColor};\n text-decoration: underline;\n cursor: pointer;\n`;\n\nconst EllipsisDivName = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n","/**\n * Clients Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic, { INTERVAL_FORM_DEFAULTS } from \"./logic\";\nimport styled from \"styled-components\";\nimport { Layout, Breadcrumb, Loading } from \"element-react\";\nimport ContainerMapMaintenances from \"containers/ContainerMapMaintenances\";\nimport { columns } from \"./columns\";\nimport { Theme } from \"globalStyles\";\n\nimport { withTranslation } from \"react-i18next\";\nimport { toast } from \"react-toastify\";\n\nimport StyledTable from \"components/StyledTable\";\nimport StyledButton from \"components/StyledButton\";\nimport StyledInput from \"components/StyledInput\";\nimport Dialog from \"components/Dialog\";\nimport ResponsiveHandler from \"components/ResponsiveHandler\";\nimport NotificationsWrapper from \"components/NotificationsWrapper\";\nimport MaintenancesTemplate from \"components/MaintenancesTemplate\";\nimport ToggleFilter from \"components/ToggleFilter\";\nimport StyledSelect from \"components/StyledSelect\";\n\nimport IntervalPicker from \"containers/IntervalPicker\";\nimport StyledMobileTable from \"containers/StyledMobileTable\";\nimport DownloadDropDownContainer from \"containers/DownloadDropDownContainer\";\nimport { getIntervalText } from \"utils\";\n\nconst intervalOptions = [\n {\n value: \"day\",\n label: \"day\",\n },\n {\n value: \"month\",\n label: \"month\",\n },\n {\n value: \"year\",\n label: \"year\",\n },\n];\nclass Maintenances extends Component {\n constructor(props) {\n super(props);\n // https://stackoverflow.com/a/61346857/15423901\n this.setState = this.setState.bind(this);\n this._autocompleteRef = null;\n this._areaAutocompleteRef = null;\n }\n\n state = {\n focusedInput: null,\n filtersWidth: 20,\n triggerSet: false,\n inputWidth: \"140px\",\n dialogOpen: false,\n dialogContainer: null,\n changedForm: null,\n };\n\n onFocusChange = (focusedInput) => {\n this.setState({ focusedInput });\n };\n\n componentDidMount() {\n this.setState({\n changedForm: this.props.filtersForm,\n });\n }\n\n autoCompleteFetch = (queryString) => {\n if (this._autocompleteRef) {\n clearTimeout(this._autocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._autocompleteRef = setTimeout(function () {\n search(queryString, null, \"container\");\n }, 500);\n };\n\n areaAutoCompleteFetch = (queryString) => {\n if (this._areaAutocompleteRef) {\n clearTimeout(this._areaAutocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._areaAutocompleteRef = setTimeout(function () {\n search(queryString, null, \"area\");\n }, 500);\n };\n\n componentDidUpdate(prevProps, prevState) {\n const { t } = this.props;\n if (\n prevProps.descriptionResponse !== this.props.descriptionResponse &&\n this.props.descriptionResponse != null\n ) {\n if (this.props.descriptionResponse === \"success\") {\n this.setState({ dialogOpen: false, dialogContainer: null });\n const { resetDescriptionForm } = this.actions;\n resetDescriptionForm();\n toast.success(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: \"table-add-description-success\",\n }\n );\n }\n if (this.props.descriptionResponse === \"error\") {\n this.setState({ dialogOpen: false, dialogContainer: null });\n const { resetDescriptionForm } = this.actions;\n resetDescriptionForm();\n\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: \"table-add-description-error\",\n }\n );\n }\n }\n }\n\n handleEnter = (event) => {\n if (event.key === \"Enter\") {\n const { filterEntrances } = this.actions;\n filterEntrances();\n }\n };\n\n addDescription = (event, row) => {\n event.stopPropagation();\n this.setState({ dialogOpen: true, dialogContainer: row });\n };\n\n render() {\n const {\n setLinkedArea,\n setEquipmentInDetail,\n resetFilter,\n changeFilter,\n setFiltersForm,\n resetFiltersForm,\n submitDescription,\n changeDescription,\n resetDescriptionForm,\n download,\n } = this.actions;\n const {\n areasList,\n linkedArea,\n filteredEquipments,\n equipmentInDetail,\n maintenancesList,\n filter,\n t,\n filtersForm,\n descriptionForm,\n responsiveHandlers,\n loadingDownload,\n user,\n filteredEquipmentsNumber,\n searchResults,\n searchLoading,\n searchAreaResults,\n searchAreaLoading,\n } = this.props;\n\n const {\n filtersWidth,\n inputWidth,\n triggerSet,\n dialogOpen,\n dialogContainer,\n changedForm,\n } = this.state;\n\n const columnsToMap = columns;\n\n const areaEquipments = filteredEquipments\n ? filteredEquipments.reduce(\n (x, y) => (x.findIndex((e) => e.id === y.id) < 0 ? [...x, y] : x),\n []\n )\n : filteredEquipments;\n\n return (\n \n \n \n \n \n \n setLinkedArea(null)}>\n {t(\"maintenances.title\")}\n \n \n {linkedArea && (\n \n setEquipmentInDetail(null)}\n >\n {linkedArea.name}\n \n \n )}\n {equipmentInDetail && (\n {equipmentInDetail.name}\n )}\n \n \n \n \n \n changeFilter(\"container__area__name\", event)\n }\n remoteMethod={this.areaAutoCompleteFetch}\n options={searchAreaResults}\n loading={searchAreaLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea != null}\n >\n changeFilter(\"container__uuid\", event)}\n value={filter.container__uuid}\n remoteMethod={this.autoCompleteFetch}\n triggerOnFocus={false}\n options={searchResults}\n loading={searchLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea == null}\n >\n \n {changedForm != null && (\n \n this.setState({ triggerSet: false })}\n state={{ changedForm }}\n setState={this.setState}\n />\n \n )}\n \n {\n resetFilter();\n setLinkedArea(null);\n }}\n >\n {t(\"clear_filters\")}\n \n this.setState({ triggerSet: true })}\n >\n {t(\"apply\")}\n \n \n {!loadingDownload ? \"Download\" : }\n \n }\n type={\"button\"}\n loadingDownload={loadingDownload}\n >\n \n \n \n \n \n \n\n \n \n setLinkedArea(area)}\n areaEquipments={areaEquipments}\n equipmentInDetail={equipmentInDetail}\n globalNumberOfContainers={filteredEquipmentsNumber}\n setEquipmentInDetail={(equipment) =>\n setEquipmentInDetail(equipment)\n }\n />\n \n \n\n \n \n {t(\"maintenances.title\")}\n {responsiveHandlers.isMobile || responsiveHandlers.isTablet ? (\n ({\n addDescription: this.addDescription,\n ...equipment,\n }))\n : []\n }\n template={MaintenancesTemplate}\n user={user}\n active={(row) =>\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id\n }\n onRowClick={(entrance) => {\n window.scrollTo({\n left: 0,\n top: 0,\n behavior: \"smooth\",\n });\n this.setState({\n transitionEnded: false,\n });\n \n setEquipmentInDetail(entrance.container);\n }}\n />\n ) : (\n 768\n ? \"calc(55vh - 64px - 36px - 48px - 4rem - 42px - 1px )\"\n : \"\"\n }\n columns={columnsToMap.map((column) => ({ t, ...column }))}\n data={\n maintenancesList\n ? maintenancesList.map((equipment) => ({\n t,\n user,\n addDescription: this.addDescription,\n ...equipment,\n }))\n : []\n }\n rowClassName={(row) =>\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id &&\n \"active\"\n }\n onRowClick={(entrance) => setEquipmentInDetail(entrance.container)}\n />\n )}\n \n \n {dialogOpen && dialogContainer != null && (\n {\n this.setState({\n dialogOpen: false,\n dialogContainer: null,\n });\n resetDescriptionForm();\n }}\n title={t(\"table.add_description\")}\n >\n \n
\n {\n changeDescription({ description: e });\n }}\n />\n {descriptionForm.description && (\n {descriptionForm.description.message && t(descriptionForm.description.message)}\n )}\n
\n \n submitDescription(dialogContainer.id)}\n >\n {t(\"table.submit\")}\n \n \n
\n \n )}\n
\n );\n }\n}\n\nexport default withTranslation()(ResponsiveHandler(Logic(Maintenances)));\n\nconst DialogBodyWrapper = styled.div``;\n\nconst Wrapper = styled.div`\n`;\n\nconst CustomLayoutSecondaryRow = styled(Layout.Row)`\n margin-left: 0px !important;\n margin-right: 0px !important;\n margin-top: ${(props) => props.marginTop};\n`;\n\nconst ErrorText = styled.p`\n margin-top: 0.5rem;\n font-size: 0.875rem;\n line-heihgt: 1em;\n color: ${({ theme }) => theme.errorColor};\n`;\n\nconst FlexWrapper = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n`;\n\nconst DialogButtonWrapper = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: flex-end;\n max-width: 150px;\n margin-left: auto;\n`;\n\nconst SelectivePaddingColNoFixedHeight = styled(Layout.Col)`\n display: flex;\n justify-content: ${(props) => props.justifyContent};\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n float: ${(props) => props.float} !important;\n`;\n\nconst SelectivePaddingColNoFixedHeightWithBoxShadow = styled(\n SelectivePaddingColNoFixedHeight\n)`\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);\n`;\n\nconst NoPaddingCol = styled(Layout.Col)`\n padding-left: 0px !important;\n padding-right: 0px !important;\n\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n`;\n\nconst CustomBreakcrumb = styled(Breadcrumb)`\n .el-breadcrumb__item > span {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n\n .el-breadcrumb__separator {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n`;\n\n\nconst ButtonWrapper = styled(FlexWrapper)`\n display: grid;\n grid-template-columns: 1fr 1fr;\n column-gap: 8px;\n row-gap: 8px;\n grid-column: span 2;\n\n ${({ theme }) => theme.desktop`\n display flex;\n `}\n`;\n\nconst BreadcrumbWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-4 {\n width: 100%;\n margin-bottom: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-4{\n margin-bottom: 8px;\n padding: 0 16px 0 0 !important;\n }\n `}\n`;\n\nconst FiltersWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-20 {\n width: 100%;\n display: grid;\n grid-template-columns: repeat(2, minmax(0, 1fr));\n justify-content: left;\n row-gap: 8px;\n column-gap: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-20{\n display: grid;\n }\n `}\n\n ${({ theme }) => theme.desktop`\n &.el-col-20{\n display: flex;\n justify-content: flex-end;\n width: 83.33333%;\n padding-left: 14px !important;\n }\n `}\n`;\n\nconst BreakcrumbWrapper = styled.div`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.desktop`\n flex-direction: row;\n `}\n`;\n\nconst DownloadLoading = styled(Loading)`\n height: 24px;\n width: 24px;\n overflow: hidden;\n\n .el-loading-spinner {\n margin-top: 0;\n top: 0;\n svg {\n height: 24px;\n width: 24px;\n }\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\n\nconst TableName = styled.span`\n color: ${Theme.primaryColor};\n font-size: 1rem;\n font-weight: 800;\n line-height: 22px;\n`;","import React from 'react';\nimport { kea } from 'kea';\nimport { put, call } from 'redux-saga/effects';\nimport { delay } from 'redux-saga';\nimport { BASE_API_URL, API_DATE_FORMAT } from 'config';\nimport PropTypes from 'prop-types';\nimport axios from 'axios';\nimport moment from 'moment';\nimport { decodeColor } from 'utils';\nimport { toast } from 'react-toastify';\nimport fileDownload from 'js-file-download';\nimport NotificationsWrapper from 'components/NotificationsWrapper';\nimport AppLogic from 'containers/App/logic';\n\nconst EVENTSURL = BASE_API_URL + 'events/';\nconst AREASURL = BASE_API_URL + 'areas/';\nconst EQUIPMENTSSURL = BASE_API_URL + 'containers/';\nconst DOWNLOADURL = BASE_API_URL + 'events/export/';\nconst PERFORMEDROUTES = BASE_API_URL + 'trucks/routes/performed/';\nconst PLANNEDROUTES = BASE_API_URL + 'trucks/routes/planned/';\n\nconst getContainerByUUID = (uuid, array) => {\n if (uuid != null && array != null) {\n return array.find((el) => {\n return el.uuid === uuid;\n });\n }\n return null;\n};\n\nconst getAreaByName = (name, array) => {\n if (name != null && array != null) {\n return array.find((el) => {\n return el.name === name;\n });\n }\n return null;\n};\n\nexport const INTERVAL_FORM_DEFAULTS = {\n start: {\n value: moment().startOf('month'),\n },\n end: {\n value: moment(),\n },\n interval: {\n value: 'day',\n },\n};\n\nexport default kea({\n path: () => ['scenes', 'Collects'],\n\n connect: {\n props: [],\n actions: [\n AppLogic,\n ['watchEvents', 'changeWatchingEvents', 'setWebSocketHanlder'],\n ],\n },\n\n actions: () => ({\n changeFiltersForm: (key, value) => ({ key, value }),\n setFiltersForm: (form) => ({ form }),\n resetFiltersForm: () => true,\n fetchAreasEquipments: () => true,\n\n fetchMaintenancesList: () => true,\n setMaintenancesList: (list) => ({ list }),\n setMaintenancesNumber: (number) => ({ number }),\n fetchEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n\n search: (query, cb, type) => ({ query, cb, type }),\n\n fetchAreasList: () => true,\n setAreasList: (list) => ({ list }),\n setAreasNumber: (number) => ({ number }),\n setLoadingAreas: (loading) => loading,\n\n setLinkedArea: (area) => ({ area, type: 'container', query: '' }),\n setFilteredEquipments: (equipments) => ({ equipments }),\n updateFilteredEquipments: (equipments) => ({ equipments }),\n setFilteredEquipmentsNumber: (number) => ({ number }),\n\n setFilter: (filter) => ({ filter }),\n changeFilter: (key, value) => ({ key, value }),\n resetFilter: () => true,\n filterEntrances: () => true,\n setPagination: (pag) => ({ pag }),\n\n setEquipmentInDetail: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetail: (equipment) => ({\n equipment,\n type: 'container',\n query: '',\n }),\n\n fetchRoutes: () => true,\n setRoutes: (routes) => ({ routes }),\n\n setUsingMonthCalendar: (value) => ({ value }),\n setShowCalendarFilter: (value) => ({ value }),\n\n download: (type) => ({ type }),\n finishDownload: () => true,\n\n setSearchResults: (results) => ({ results }),\n setAreaSearchResults: (results) => ({ results }),\n\n reset: () => true,\n }),\n\n reducers: ({ actions }) => ({\n filtersForm: [\n INTERVAL_FORM_DEFAULTS,\n PropTypes.object,\n {\n [actions.changeFiltersForm]: (state, payload) => ({\n ...state,\n [payload.key]: { value: payload.value },\n }),\n [actions.setFiltersForm]: (state, { form }) => ({ ...form }),\n [actions.resetFiltersForm]: (state, payload) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n [actions.resetFilter]: (state, payload) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n },\n ],\n\n maintenancesList: [\n [],\n PropTypes.array,\n {\n [actions.setMaintenancesList]: (state, { list }) => list,\n },\n ],\n\n pagination: [\n { page: 1, page_size: 10 },\n PropTypes.object,\n {\n [actions.setPagination]: (state, { pag }) => pag,\n [actions.setFetchedEquipmentInDetail]: () => ({\n page: 1,\n page_size: 10,\n }),\n [actions.setFiltersForm]: () => ({ page: 1, page_size: 10 }),\n },\n ],\n\n linkedArea: [\n null,\n PropTypes.object,\n {\n [actions.setLinkedArea]: (state, { area }) => area,\n },\n ],\n\n filter: [\n {\n container__area__name: '',\n container__uuid: '',\n fill_level: '',\n complete: '',\n },\n PropTypes.object,\n {\n [actions.setFilter]: (state, { filter }) => filter,\n [actions.changeFilter]: (state, payload) => {\n return Object.assign({}, state, { [payload.key]: payload.value });\n },\n [actions.setLinkedArea]: (state, { area }) => ({\n ...state,\n container__area__name: area != null && area.name ? area.name : '',\n }),\n [actions.setEquipmentInDetail]: (state, { equipment }) => ({\n ...state,\n container__uuid:\n equipment != null && equipment.uuid ? equipment.uuid : '',\n }),\n [actions.resetFilter]: () => ({\n container__area__name: '',\n container__uuid: '',\n fill_level: '',\n complete: '',\n }),\n },\n ],\n\n fillLevelFilterOptions: [\n [\n {\n value: 'less',\n label: 'x < 25%',\n },\n {\n value: 'between',\n label: '25% < x < 50%',\n },\n {\n value: 'between_2',\n label: '50% < x < 75%',\n },\n {\n value: 'greater',\n label: '75% < x',\n },\n ],\n PropTypes.array,\n {},\n ],\n\n areasList: [\n [],\n PropTypes.array,\n {\n [actions.setAreasList]: (state, { list }) => list,\n },\n ],\n\n loadingDownload: [\n false,\n PropTypes.boolean,\n {\n [actions.download]: () => true,\n [actions.finishDownload]: () => false,\n },\n ],\n\n loadingAreas: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingAreas]: (state, loading) => loading,\n },\n ],\n\n routesList: [\n [],\n PropTypes.array,\n {\n [actions.setRoutes]: (state, { routes }) => routes,\n },\n ],\n\n filteredEquipments: [\n null,\n PropTypes.array,\n {\n [actions.setFilteredEquipments]: (state, { equipments }) => equipments,\n [actions.updateFilteredEquipments]: (state, { equipments }) => [\n ...state,\n ...equipments,\n ],\n [actions.setLinkedArea]: (state, { area }) => {\n return area === null ? null : state;\n },\n },\n ],\n\n filteredEquipmentsNumber: [\n 0,\n PropTypes.number,\n {\n [actions.setFilteredEquipmentsNumber]: (state, { number }) => number,\n },\n ],\n\n equipmentInDetail: [\n null,\n PropTypes.object,\n {\n [actions.setFetchedEquipmentInDetail]: (state, { equipment }) =>\n equipment,\n [actions.setFetchedEquipmentInDetailNoFetchs]: (state, { equipment }) =>\n equipment,\n [actions.setLinkedArea]: (state, { area }) => {\n return area === null ? null : state;\n },\n [actions.resetFilter]: () => null,\n },\n ],\n\n usingMonthCalendar: [\n true,\n PropTypes.bool,\n {\n [actions.setUsingMonthCalendar]: (state, { value }) => value,\n },\n ],\n\n showCalendarFilter: [\n false,\n PropTypes.bool,\n {\n [actions.setShowCalendarFilter]: (state, { value }) => value,\n },\n ],\n searchResults: [\n [],\n PropTypes.array,\n {\n [actions.setSearchResults]: (state, { results }) => results,\n },\n ],\n searchLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'container',\n [actions.setSearchResults]: () => false,\n },\n ],\n searchAreaResults: [\n [],\n PropTypes.array,\n {\n [actions.setAreaSearchResults]: (state, { results }) => results,\n },\n ],\n searchAreaLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'area',\n [actions.setAreaSearchResults]: () => false,\n },\n ],\n }),\n\n start: function* () {\n const {\n fetchMaintenancesList,\n fetchAreasList,\n setWebSocketHanlder,\n watchEvents,\n fetchAreasEquipments,\n fetchRoutes,\n } = this.actions;\n\n yield put(fetchAreasList());\n yield put(fetchMaintenancesList());\n yield put(fetchAreasEquipments());\n yield put(fetchRoutes());\n\n yield put(setWebSocketHanlder(this.workers.handle));\n\n yield put(watchEvents());\n },\n\n stop: function* () {\n const { changeWatchingEvents } = this.actions;\n yield put(changeWatchingEvents(false));\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.fetchMaintenancesList]: workers.fetchMaintenancesList,\n [actions.fetchEquipmentInDetailNoFetchs]:\n workers.fetchEquipmentInDetailNoFetchs,\n [actions.fetchAreasList]: workers.fetchAreasList,\n [actions.fetchAreasEquipments]: workers.fetchAreasEquipments,\n [actions.fetchRoutes]: workers.fetchRoutes,\n [actions.setLinkedArea]: [\n workers.showOnlyOneArea,\n workers.fetchMaintenancesList,\n workers.fetchAreasEquipments,\n ],\n [actions.setEquipmentInDetail]: [workers.fetchEquipmentInDetail],\n [actions.setFetchedEquipmentInDetail]: [workers.fetchMaintenancesList],\n [actions.filterEntrances]: [workers.fetchMaintenancesList],\n [actions.resetFilter]: [workers.fetchMaintenancesList],\n [actions.setPagination]: workers.fetchMaintenancesList,\n [actions.setFiltersForm]: [\n workers.fetchMaintenancesList,\n workers.fetchAreasEquipments,\n ],\n [actions.download]: workers.download,\n }),\n\n workers: {\n *download(action) {\n const { payload } = action;\n const { t } = this.props;\n const { finishDownload } = this.actions;\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n const filtersForm = yield this.get('filtersForm');\n\n let filter = yield this.get('filter');\n\n if (payload.type != null) {\n try {\n let params;\n if (equipmentInDetail) {\n params = { ...filter, container__id: equipmentInDetail.id };\n } else if (linkedArea) {\n params = { ...filter, container__area__id: linkedArea.id };\n } else {\n params = { ...filter };\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n const response = yield call(axios.get, DOWNLOADURL, {\n params: {\n type: 'pick',\n file_type: payload.type,\n ...params,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-datetime',\n },\n responseType: 'blob',\n });\n fileDownload(\n new Blob([response.data]),\n `${t('collects.download')}.${payload.type}`\n );\n } catch (err) {\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: 'downloadError',\n }\n );\n } finally {\n yield put(finishDownload());\n }\n }\n },\n\n *showOnlyOneArea(action) {\n const { setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n const linkedArea = yield this.get('linkedArea');\n if (areasList.length === 1 && linkedArea !== areasList[0]) {\n yield delay(300);\n yield put(setLinkedArea(areasList[0]));\n }\n },\n\n *fetchEquipmentInDetailNoFetchs(action) {\n const { setFetchedEquipmentInDetailNoFetchs } = this.actions;\n\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n yield put(setFetchedEquipmentInDetailNoFetchs(data));\n } catch (error) {\n yield put(setFetchedEquipmentInDetailNoFetchs(null));\n }\n },\n\n *fetchEquipmentInDetail(action) {\n yield delay(300);\n\n const { setFetchedEquipmentInDetail, setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n\n if (\n action.payload &&\n action.payload.equipment &&\n action.payload.equipment.id\n ) {\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n const equipmentArea = areasList.find((el) => el.id === data.area.id);\n\n if (equipmentArea != null) {\n yield put(setLinkedArea(equipmentArea));\n }\n yield put(setFetchedEquipmentInDetail(data));\n } catch (error) {\n yield put(setFetchedEquipmentInDetail(null));\n }\n } else {\n yield put(setFetchedEquipmentInDetail(null));\n }\n },\n\n *fetchMaintenancesList() {\n yield delay(500);\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n const pagination = yield this.get('pagination');\n const filtersForm = yield this.get('filtersForm');\n const filteredEquipments = yield this.get('filteredEquipments');\n const areasList = yield this.get('areasList');\n\n let filter = yield this.get('filter');\n\n const {\n setMaintenancesList,\n setMaintenancesNumber,\n setEquipmentInDetail,\n setLinkedArea,\n } = this.actions;\n\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let fillLevel;\n\n switch (filter.fill_level) {\n case 'less':\n fillLevel = {\n container__fill_level__lte: 25,\n };\n break;\n case 'between':\n fillLevel = {\n container__fill_level__gte: 25,\n container__fill_level__lte: 50,\n };\n break;\n case 'between_2':\n fillLevel = {\n container__fill_level__gte: 50,\n container__fill_level__lte: 75,\n };\n break;\n case 'greater':\n fillLevel = {\n container__fill_level__gte: 75,\n };\n break;\n default:\n fillLevel = {};\n }\n\n const commonParams = {\n ...filter,\n ...fillLevel,\n ...pagination,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n event_type: 'pick',\n ordering: '-datetime',\n };\n\n let params = { ...commonParams };\n\n if (equipmentInDetail) {\n params = { ...commonParams, container: equipmentInDetail.id };\n } else if (linkedArea) {\n params = { ...commonParams, area: linkedArea.id };\n }\n\n let eventsRes = yield call(axios.get, EVENTSURL, { params });\n const events = eventsRes.data.results;\n\n const containerAreaNameExists = !!filter.container__area__name;\n const area = getAreaByName(filter.container__area__name, areasList);\n\n if (events) {\n if (containerAreaNameExists) {\n if (\n area != null &&\n (linkedArea == null ||\n (linkedArea != null &&\n linkedArea.name !== filter.container__area__name))\n ) {\n yield put(setLinkedArea(area));\n }\n }\n\n if (filter.container__uuid != null && filter.container__uuid !== '') {\n if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) !=\n null &&\n (equipmentInDetail == null ||\n (equipmentInDetail != null &&\n equipmentInDetail.uuid !== filter.container__uuid))\n ) {\n yield put(\n setEquipmentInDetail(\n getContainerByUUID(filter.container__uuid, filteredEquipments)\n )\n );\n } else if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) ==\n null &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n } else if (\n (filter.container__uuid == null || filter.container__uuid === '') &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n yield put(setMaintenancesList(events));\n yield put(setMaintenancesNumber(events.length));\n } else {\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n } catch (error) {\n console.log({ error });\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n },\n\n *fetchAreasList(action) {\n const {\n setAreasList,\n setLinkedArea,\n setAreaSearchResults,\n setAreasNumber,\n } = this.actions;\n\n try {\n const response = yield call(axios.get, AREASURL);\n const areasRes = response.data.results;\n\n if (areasRes.length) {\n // add data to area filter\n const searchAreaArr = areasRes.map((area) => ({\n value: area.name,\n label: area.name,\n }));\n yield put(setAreaSearchResults(searchAreaArr));\n\n // set up areas and prepare polygons\n let results = areasRes.map((area) => {\n area.lines = {\n type: 'LineString',\n coordinates: area.polygon.coordinates[0],\n };\n return area;\n });\n yield put(setAreasList(results));\n yield put(setAreasNumber(areasRes.length));\n\n // if there is only one area, focus it\n if (results.length === 1) {\n yield delay(300);\n yield put(setLinkedArea(results[0]));\n }\n } else {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n }\n } catch (error) {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n yield put(setAreaSearchResults([]));\n }\n },\n\n *fetchAreasEquipments() {\n yield delay(600);\n const linkedArea = yield this.get('linkedArea');\n const filter = yield this.get('filter');\n\n const {\n setFilteredEquipments,\n setSearchResults,\n setFilteredEquipmentsNumber,\n } = this.actions;\n\n const installationStatus = ['assembled', 'installed'];\n\n let fillLevel;\n\n switch (filter.fill_level) {\n case 'less':\n fillLevel = {\n fill_level__lte: 25,\n };\n break;\n case 'between':\n fillLevel = {\n fill_level__gte: 25,\n fill_level__lte: 50,\n };\n break;\n case 'between_2':\n fillLevel = {\n fill_level__gte: 50,\n fill_level__lte: 75,\n };\n break;\n case 'greater':\n fillLevel = {\n fill_level__gte: 75,\n };\n break;\n default:\n fillLevel = {};\n }\n\n try {\n let next = 1;\n const commonParams = {\n ...fillLevel,\n page_size: 500,\n };\n\n let results = [];\n while (next) {\n let params = {\n ...commonParams,\n page: next,\n };\n\n if (linkedArea) params = { ...params, area__id: linkedArea.id };\n\n let containers = [];\n\n const responses = yield installationStatus.map((status) => {\n params = { ...params, installation_status: status };\n return call(axios.get, EQUIPMENTSSURL, { params });\n });\n\n responses.forEach((el) =>\n containers.push.apply(containers, el.data.results)\n );\n\n containers.map((container) => {\n container.color = decodeColor(container.type);\n results.push(container);\n return container;\n });\n\n const equipmentsList = results.map((el) => ({\n value: el.uuid,\n label: el.name,\n }));\n\n next = 0;\n\n yield put(setFilteredEquipments(results));\n yield put(setFilteredEquipmentsNumber(results.length));\n yield put(setSearchResults(equipmentsList));\n }\n } catch (error) {\n yield put(setFilteredEquipments([]));\n yield put(setFilteredEquipmentsNumber(0));\n yield put(setSearchResults([]));\n }\n },\n\n *fetchRoutes() {\n const { setRoutes } = this.actions;\n\n try {\n let results = [];\n\n let params = {\n ordering: '-datetime',\n type: 'pickup',\n page_size: 500,\n };\n\n const responsePlanned = yield call(axios.get, PLANNEDROUTES, {\n params,\n });\n\n const plannedRoutes = responsePlanned.data.results;\n\n const responsePerformed = yield call(axios.get, PERFORMEDROUTES, {\n params,\n });\n\n const performedRoutes = responsePerformed.data.results;\n\n for (let planned of plannedRoutes) {\n const lastPerformedRoute = performedRoutes.filter(\n (route) => route.plannedRoute.id === planned.id\n )[0];\n\n const status = !lastPerformedRoute\n ? '-'\n : lastPerformedRoute.missedContainers.length\n ? true\n : false;\n\n let aux = {\n name: planned.name,\n day: !planned.schedules.length ? '-' : planned.schedules[0].day,\n lastCollect: status,\n licensePlate: lastPerformedRoute\n ? lastPerformedRoute.truck.licensePlate\n : '-',\n };\n\n let containers = [];\n\n if (lastPerformedRoute) {\n for (let container of lastPerformedRoute.plannedRoute.containers) {\n const missed = lastPerformedRoute.missedContainers.filter(\n (miss) => miss.id === container.id\n ).length\n ? true\n : false;\n\n let containerAux = {\n id: container.id,\n name: container.name,\n address: container.address,\n missed: missed,\n };\n\n containers.push(containerAux);\n }\n } else {\n for (let container of planned.containers) {\n let containerAux = {\n id: container.id,\n name: container.name,\n address: container.address,\n missed: '-',\n };\n containers.push(containerAux);\n }\n }\n\n aux = { ...aux, containers: containers };\n\n results.push(aux);\n }\n\n yield put(setRoutes(results));\n } catch (error) {\n yield put(setRoutes([]));\n }\n },\n\n *handle(message) {\n const { fetchMaintenancesList, fetchEquipmentInDetailNoFetchs } =\n this.actions;\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n if (message.event_type === 'status') {\n let temp = { ...message };\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n toast.info(temp.message, {\n position: toast.POSITION.TOP_RIGHT,\n delay: 200,\n id: message_id ? `uniqueStatusMessage${message_id}` : null,\n });\n } else if (message.event_type === 'event' && message.content) {\n if (message.event_type === 'event') {\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n if (\n message.content != null &&\n (message.content.type === 'drop' ||\n message.content.type === 'maintenance') &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueDropMessage${message_id}` : null,\n }\n );\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n } else if (\n message.content &&\n message.content.type === 'pick' &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniquePickMessage${message_id}` : null,\n }\n );\n\n yield put(fetchMaintenancesList());\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n } else if (message.content && message.content.type === 'alert') {\n toast.warn(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueAlertMessage${message_id}` : null,\n }\n );\n } else if (message.content && message.content.type === 'error') {\n if (message.content.status === 'closed') {\n toast.success(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n } else {\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n }\n }\n }\n }\n },\n },\n});\n","import React from 'react'\n\n\nexport const DropOff = props => (\n \n \n \n \n)\n\n\nexport const Prize = props => (\n \n \n \n)\n\nexport const GarbageBin = props=> (\n \n \n \n)\n","import moment from \"moment\";\n\nexport const checkDay = (day) => {\n if (day !== \"-\") {\n if (!(moment().day(day) < moment().day()))\n return moment().add(7, \"d\").day(day).format(\"dddd, DD/MM/YYYY\");\n return moment().day(day).format(\"dddd, DD/MM/YYYY\");\n }\n return \"-\";\n};\n","import React from 'react';\nimport moment from 'moment';\nimport StyledProgressBar from 'components/StyledProgressBar';\nimport styled from 'styled-components';\nimport decodeType from 'utils/decodeType';\nimport { Table, Tag } from 'element-react';\nimport { GarbageBin } from 'icons/ClientIcons';\nimport { checkDay } from './utils';\n\nexport const columns = [\n {\n label: 'table.id',\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: 'id',\n render: function (data) {\n return (\n \n {data.id ? data.id : '-'}\n \n );\n },\n width: 80,\n },\n {\n label: 'table.date',\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: 'datetime',\n render: function (data) {\n return (\n \n {moment(data.datetime).format('DD/MM/YYYY HH:mm')}\n \n );\n },\n minWidth: 180,\n },\n {\n label: 'table.user',\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n sortMethod: function (a, b) {\n if (a.tag != null && b.tag != null) {\n if (\n a.tag.user != null &&\n a.tag.user.fullName != null &&\n a.tag.user.fullName !== '' &&\n b.tag.user != null &&\n b.tag.user.fullName != null &&\n b.tag.user.fullName !== ''\n ) {\n return a.tag.user.fullName >= b.tag.user.fullName;\n }\n return false;\n }\n },\n render: function (data) {\n if (data.tag) {\n if (\n data.tag.user != null &&\n data.tag.user.fullName != null &&\n data.tag.user.fullName !== ''\n ) {\n return (\n \n {data.tag.user.fullName}\n \n );\n }\n }\n return {'-'};\n },\n minWidth: 130,\n },\n {\n label: 'table.container',\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data) {\n return (\n \n {data.container && data.container.uuid ? data.container.uuid : '-'}\n \n );\n },\n minWidth: 130,\n },\n {\n label: 'table.type',\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data, { t }) {\n return (\n \n {data.container && data.container.type\n ? t(`table.${decodeType(data.container.type)}`)\n : '-'}\n \n );\n },\n minWidth: 160,\n },\n {\n label: 'table.fill_level',\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: 'previousFillLevel',\n render: function (data) {\n return (\n
\n \n
\n );\n },\n minWidth: 230,\n },\n];\n\nexport const collectScheduleColumn = [\n {\n label: 'table.route_name',\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data) {\n return {data.name};\n },\n width: 290,\n },\n {\n label: 'table.license_plate',\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n render: function (data) {\n return (\n {data.licensePlate}\n );\n },\n width: 125,\n },\n {\n label: 'table.last_collect_status',\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n render: function ({ t, ...data }) {\n return (\n \n \n {data.lastCollect === '-'\n ? '-'\n : !data.lastCollect\n ? t('table.success')\n : t('table.failed')}\n \n \n );\n },\n width: 200,\n },\n {\n label: 'table.next_collect',\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: 'datetime',\n render: function (data) {\n return (\n \n {checkDay(data.day)}\n \n );\n },\n width: 240,\n },\n {\n type: 'expand',\n expandPannel: function ({ t, ...data }) {\n return (\n
\n ({ t, ...column }))}\n data={\n data.containers\n ? data.containers.map((container) => ({ t, ...container }))\n : []\n }\n emptyText='No Results'\n />\n
\n );\n },\n },\n];\n\nconst expandedColumns = [\n {\n label: 'dashboard.containers',\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n render: function (data) {\n return (\n \n \n \n \n {data.name}\n \n {data.address}\n \n \n );\n },\n fit: true,\n },\n {\n label: 'table.all_containers',\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n filters: [\n { text: 'Recolhido', value: false },\n { text: 'Falhou', value: true },\n ],\n filterMethod: (value, row) =>\n value === 'Recolhido' && !row.missed ? true : false,\n render: function ({ t, ...data }) {\n return (\n \n {data.missed === '-' ? (\n {t('table.for_collect')}\n ) : data.missed ? (\n {t('table.failed')}\n ) : (\n {t('table.container_status')}\n )}\n \n );\n },\n width: 200,\n headerAlign: 'center',\n align: 'center',\n },\n];\n\nconst EllipsisDiv = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n\nconst StatusText = styled.span`\n color: ${(props) =>\n props.status === '-' ? 'black' : !props.status ? 'green' : 'red'};\n`;\n\nconst ContainerDescriptionWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n gap: 0.8rem;\n`;\n\nconst ContainerName = styled.span`\n display: flex;\n align-items: center;\n gap: 0.3rem;\n font-weight: 700;\n`;\n\nconst ContainerAddress = styled.span`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n\nconst CustomTable = styled(Table)`\n &.el-table th {\n background-color: transparent !important;\n\n div {\n color: #9d9d9d;\n font-weight: 600;\n }\n }\n`;\n\nconst CustomTag = styled(Tag)`\n &.el-tag {\n border-radius: 50px;\n }\n`;\n","/**\n * CollectsTemplate Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled, { css } from \"styled-components\";\nimport { Theme } from \"globalStyles\";\n\nimport moment from \"moment\";\n\nexport default ({ children, ...props }) => {\n const { data } = props;\n const getUserName = () => {\n if (data.tag) {\n if (\n data.tag.user != null &&\n data.tag.user.fullName != null &&\n data.tag.user.fullName !== \"\"\n ) {\n return {data.tag.user.fullName};\n }\n }\n return {\"-\"};\n };\n return (\n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm:ss\")}\n {getUserName()}\n \n {data.container && data.container.name ? data.container.name : \"-\"}\n \n \n {data.previousFillLevel != null ? ` ${Number(data.previousFillLevel).toFixed(2)}%` : ` 0%`}\n \n \n );\n};\n\nconst Wrapper = styled.div`\n background: white;\n padding: 16px;\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-template-rows: auto auto;\n row-gap: 8px;\n column-gap: 8px;\n\n border-bottom: 1px solid ${Theme.inactiveColor};\n\n ${(props) =>\n props.error &&\n css`\n border-left: 3px solid ${Theme.errorColor};\n background-color: ${Theme.lightColor};\n `}\n\n ${(props) =>\n props.active &&\n css`\n background-color: ${Theme.activeRowColor};\n background-color: ${Theme.activeRowColor};\n `}\n`;\n\nconst DateTime = styled.div`\n font-weight: 300;\n grid-column: 2/3;\n grid-row: 1/2;\n text-align: right;\n font-size: 12px;\n color: ${Theme.iconDarkColor};\n`;\nconst User = styled.div`\n grid-column: 1/2;\n grid-row: 2/3;\n font-size: 16px;\n`;\nconst Container = styled.div`\n font-size: 12px;\n grid-column: 1/2;\n grid-row: 1/2;\n font-weight: 700;\n color: ${Theme.iconDarkColor};\n`;\nconst Status = styled.div`\n color: ${Theme.textonSecondary};\n grid-column: 2/3;\n grid-row: 2/3;\n text-align: right;\n font-size: 12px;\n margin: auto 0;\n position: relative;\n z-index: 100;\n font-weight: bold;\n\n &::before {\n z-index: -1;\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n border-radius: 4px;\n width: ${(props) => (props.percentage ? `${props.percentage}%` : 0)};\n background-color: ${Theme.secondaryColor };\n }\n`;\n\nconst EllipsisDiv = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n","/**\n * Clients Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic, { INTERVAL_FORM_DEFAULTS } from \"./logic\";\nimport styled from \"styled-components\";\nimport { Layout, Breadcrumb, Loading } from \"element-react\";\nimport ContainerMapMaintenances from \"containers/ContainerMapMaintenances\";\nimport { collectScheduleColumn, columns } from \"./columns\";\nimport { withTranslation } from \"react-i18next\";\nimport { Theme } from \"globalStyles\";\n\nimport StyledTable from \"components/StyledTable\";\nimport StyledButton from \"components/StyledButton\";\nimport ToggleFilter from \"components/ToggleFilter\";\nimport ResponsiveHandler from \"components/ResponsiveHandler\";\nimport CollectsTemplate from \"components/CollectsTemplate\";\nimport StyledSelect from \"components/StyledSelect\";\n\nimport StyledMobileTable from \"containers/StyledMobileTable\";\nimport IntervalPicker from \"containers/IntervalPicker\";\nimport DownloadDropDownContainer from \"containers/DownloadDropDownContainer\";\nimport { getIntervalText } from \"utils\";\nimport { ADDITIONAL_FEATURES } from \"config\";\n\nconst intervalOptions = [\n {\n value: \"day\",\n label: \"day\",\n },\n {\n value: \"month\",\n label: \"month\",\n },\n {\n value: \"year\",\n label: \"year\",\n },\n];\n\nclass Maintenances extends Component {\n constructor(props) {\n super(props);\n // https://stackoverflow.com/a/61346857/15423901\n this.setState = this.setState.bind(this);\n this._autocompleteRef = null;\n this._areaAutocompleteRef = null;\n }\n\n state = {\n focusedInput: null,\n filtersWidth: 20,\n inputWidth: \"140px\",\n triggerSet: false,\n changedForm: null,\n };\n\n componentDidMount() {\n this.setState({\n changedForm: this.props.filtersForm,\n });\n }\n\n autoCompleteFetch = (queryString) => {\n if (this._autocompleteRef) {\n clearTimeout(this._autocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._autocompleteRef = setTimeout(function () {\n search(queryString, null, \"container\");\n }, 500);\n };\n\n areaAutoCompleteFetch = (queryString) => {\n if (this._areaAutocompleteRef) {\n clearTimeout(this._areaAutocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._areaAutocompleteRef = setTimeout(function () {\n search(queryString, null, \"area\");\n }, 500);\n };\n\n render() {\n const {\n setLinkedArea,\n setEquipmentInDetail,\n resetFilter,\n changeFilter,\n setFiltersForm,\n resetFiltersForm,\n download,\n } = this.actions;\n\n const {\n areasList,\n linkedArea,\n filteredEquipments,\n equipmentInDetail,\n maintenancesList,\n filter,\n filtersForm,\n t,\n responsiveHandlers,\n loadingDownload,\n filteredEquipmentsNumber,\n searchResults,\n searchLoading,\n \n fillLevelFilterOptions,\n\n searchAreaResults,\n searchAreaLoading,\n\n routesList,\n } = this.props;\n\n const { filtersWidth, inputWidth, triggerSet, changedForm } = this.state;\n\n const areaEquipments = filteredEquipments\n ? filteredEquipments.reduce(\n (x, y) => (x.findIndex((e) => e.id === y.id) < 0 ? [...x, y] : x),\n []\n )\n : filteredEquipments;\n\n return (\n \n \n \n \n \n \n setLinkedArea(null)}>\n {t(\"collects.title\")}\n \n \n {linkedArea && (\n \n {\n setEquipmentInDetail(null);\n }}\n >\n {linkedArea.name}\n \n \n )}\n {equipmentInDetail && (\n {equipmentInDetail.name}\n )}\n \n \n \n \n \n changeFilter(\"container__area__name\", event)\n }\n remoteMethod={this.areaAutoCompleteFetch}\n options={searchAreaResults}\n loading={searchAreaLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea != null}\n >\n changeFilter(\"container__uuid\", event)}\n value={filter.container__uuid}\n remoteMethod={this.autoCompleteFetch}\n triggerOnFocus={false}\n options={searchResults}\n loading={searchLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea == null}\n >\n changeFilter(\"fill_level\", event)}\n remoteMethod={this.userAutoCompleteFetch}\n value={filter.fill_level}\n options={fillLevelFilterOptions}\n remote={true}\n clearable={true}\n >\n \n {changedForm != null && (\n \n this.setState({ triggerSet: false })}\n state={{ changedForm }}\n setState={this.setState}\n />\n \n )}\n\n \n {\n resetFilter();\n setLinkedArea(null);\n }}\n >\n {t(\"clear_filters\")}\n \n this.setState({ triggerSet: true })}\n >\n {t(\"apply\")}\n \n \n {!loadingDownload ? \"Download\" : }\n \n }\n type={\"button\"}\n loadingDownload={loadingDownload}\n >\n \n \n \n \n \n \n\n \n \n setLinkedArea(area)}\n areaEquipments={areaEquipments}\n globalNumberOfContainers={filteredEquipmentsNumber}\n equipmentInDetail={equipmentInDetail}\n setEquipmentInDetail={(equipment) => {\n setEquipmentInDetail(equipment);\n }}\n />\n \n \n\n \n \n \n {t(\"dashboard.collects_metrics_title\")}\n {responsiveHandlers.isMobile || responsiveHandlers.isTablet ? (\n ({ ...equipment }))\n : []\n }\n template={CollectsTemplate}\n active={(row) =>\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id\n }\n onRowClick={(entrance) => {\n window.scrollTo({\n left: 0,\n top: 0,\n behavior: \"smooth\",\n });\n this.setState({\n transitionEnded: false,\n });\n\n setEquipmentInDetail(entrance.container);\n }}\n />\n ) : (\n 768\n ? \"calc(55vh - 64px - 36px - 48px - 4rem - 42px - 1px )\"\n : \"\"\n }\n columns={columns.map((column) => ({ t, ...column }))}\n data={\n maintenancesList\n ? maintenancesList.map((equipment) => ({ ...equipment }))\n : []\n }\n rowClassName={(row) =>\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id &&\n \"active\"\n }\n onRowClick={(entrance) =>\n setEquipmentInDetail(entrance.container)\n }\n />\n )}\n \n {ADDITIONAL_FEATURES.includes(\"route_schedules\") && (\n \n {t(\"table.planned_routes\")}\n 768\n ? \"calc(55vh - 64px - 36px - 48px - 4rem - 42px - 1px )\"\n : \"\"\n }\n columns={collectScheduleColumn.map((column) => ({\n t,\n ...column,\n }))}\n data={\n routesList\n ? routesList.map((route) => ({ t, ...route }))\n : []\n }\n />\n \n )}\n \n \n \n );\n }\n}\n\nexport default withTranslation()(ResponsiveHandler(Logic(Maintenances)));\n\nconst Wrapper = styled.div``;\n\nconst CustomLayoutSecondaryRow = styled(Layout.Row)`\n margin-left: 0px !important;\n margin-right: 0px !important;\n margin-top: ${(props) => props.marginTop};\n min-height: ${(props) => props.minHeight};\n`;\n\nconst FlexWrapper = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n`;\n\nconst SelectivePaddingColNoFixedHeight = styled(Layout.Col)`\n display: flex;\n justify-content: ${(props) => props.justifyContent};\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n float: ${(props) => props.float} !important;\n`;\n\nconst SelectivePaddingColNoFixedHeightWithBoxShadow = styled(\n SelectivePaddingColNoFixedHeight\n)`\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);\n`;\n\nconst NoPaddingCol = styled(Layout.Col)`\n padding-left: 0px !important;\n padding-right: 0px !important;\n\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n\n &.el-col-24 {\n padding: 0 !important;\n height: calc(100% - 3rem);\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-24{\n padding: ${(props) => props.padding} !important;\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n }\n `}\n`;\n\nconst SecondRowWrapper = styled.div`\n width: 100%;\n display: flex;\n gap: 1rem;\n justify-content: center;\n`;\n\nconst CustomBreakcrumb = styled(Breadcrumb)`\n .el-breadcrumb__item > span {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n\n .el-breadcrumb__separator {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n`;\n\nconst ButtonWrapper = styled(FlexWrapper)`\n display: grid;\n grid-template-columns: 1fr 1fr;\n column-gap: 8px;\n row-gap: 8px;\n grid-column: span 2;\n\n ${({ theme }) => theme.desktop`\n display flex;\n `}\n`;\n\nconst BreakcrumbWrapper = styled.div`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.desktop`\n flex-direction: row;\n `}\n`;\n\nconst BreadcrumbWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-4 {\n width: 100%;\n margin-bottom: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-4{\n margin-bottom: 8px;\n padding: 0 16px 0 0 !important;\n\n }\n `}\n`;\nconst FiltersWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-20 {\n width: 100%;\n display: grid;\n grid-template-columns: repeat(2, minmax(0, 1fr));\n justify-content: left;\n row-gap: 8px;\n column-gap: 8px;\n padding: 0 !important;\n }\n ${({ theme }) => theme.smallDesktop`\n &.el-col-20{\n display: grid;\n }\n `}\n\n ${({ theme }) => theme.desktop`\n &.el-col-20{\n display: flex;\n justify-content: flex-end;\n width: 83.33333%;\n padding-left: 14px !important;\n }\n `}\n`;\n\nconst DownloadLoading = styled(Loading)`\n height: 24px;\n width: 24px;\n overflow: hidden;\n\n .el-loading-spinner {\n margin-top: 0;\n top: 0;\n svg {\n height: 24px;\n width: 24px;\n }\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\n\nconst TableName = styled.span`\n color: ${Theme.primaryColor};\n font-size: 1rem;\n font-weight: 800;\n line-height: 22px;\n`;\n","/**\n * DashboardWrapper Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport { kea } from \"kea\";\n\n//import { put } from 'redux-saga/effects'\n//import { delay } from 'redux-saga'\n//import { } from 'config'\n//import { } from 'utils'\n//import { } from './utils'\n\n//import PropTypes from 'prop-types'\n//import * as Check from 'validations'\n\nimport AppLogic from \"containers/App/logic\";\n\nexport default kea({\n path: () => [\"scenes\", \"DashboardWrapper\"],\n\n connect: {\n props: [AppLogic, [\"user\", \"loadingUser\"]],\n actions: [AppLogic, [\"logout\"]]\n },\n\n actions: () => ({}),\n\n reducers: ({ actions }) => ({}),\n\n start: function*() {},\n\n takeLatest: ({ actions, workers }) => ({}),\n\n workers: {}\n});\n","/**\n * Areas Container Logic\n * Please write a description\n *\n * @author Your Name \n */\nimport React from 'react';\n\nimport { kea } from 'kea';\n\nimport { put, call } from 'redux-saga/effects';\n\nimport { delay } from 'redux-saga';\nimport {\n BASE_API_URL,\n API_DATE_FORMAT,\n ADDITIONAL_FEATURES,\n MEDIA_API_URL,\n} from 'config';\n\nimport PropTypes from 'prop-types';\nimport axios from 'axios';\nimport { decodeColor } from 'utils';\nimport moment from 'moment';\n\nimport { toast } from 'react-toastify';\nimport NotificationsWrapper from 'components/NotificationsWrapper';\nimport fileDownload from 'js-file-download';\n\nimport AppLogic from 'containers/App/logic';\n\nconst AREASURL = BASE_API_URL + 'areas/';\nconst EQUIPMENTSSURL = BASE_API_URL + 'containers/';\nconst EVENTSBYDAYURL = BASE_API_URL + 'events/by-day/';\nconst MAINTENANCESBYDAYURL = BASE_API_URL + 'containers/maintenances/by-day/';\n\nconst ACTIVEUSERSURLV2 = BASE_API_URL + 'metrics/active-customers/';\nconst EFFICIENTPICKERSURL = BASE_API_URL + 'metrics/efficient-pickups/';\nconst NUMBEROFEVENTS = BASE_API_URL + 'metrics/events/';\nconst NUMBEROFMAINTENANCES = BASE_API_URL + 'metrics/maintenances/';\nconst TICKETSURL = BASE_API_URL + 'metrics/alerts/system/';\nconst ALERTSURL = BASE_API_URL + 'metrics/alerts/usage/';\nconst TOPUSEDCONTAINERSURL = BASE_API_URL + 'metrics/most-used-containers/';\nconst LOGINCOUNTERURL = BASE_API_URL + 'metrics/customers-logins/';\nconst LASTEVENTSINTERVALURL =\n BASE_API_URL + 'metrics/last-events-time-interval/';\nconst FILLLEVEL = BASE_API_URL + 'metrics/fill-level/';\nconst DOWNLOADURL = BASE_API_URL + 'metrics/get-report';\n\nexport const INTERVAL_FORM_DEFAULTS = {\n start: {\n value: moment().startOf('month'),\n },\n end: {\n value: moment(),\n },\n interval: {\n value: 'day',\n },\n};\n\nexport default kea({\n path: () => ['scenes', 'Dashboard'],\n\n connect: {\n props: [],\n actions: [\n AppLogic,\n ['watchEvents', 'changeWatchingEvents', 'setWebSocketHanlder'],\n ],\n },\n\n actions: () => ({\n changeFiltersForm: (key, value) => ({ key, value }),\n setFiltersForm: (form) => ({ form }),\n resetFiltersForm: () => true,\n fetchAreasEquipments: () => true,\n download: () => true,\n finishDownload: () => true,\n\n fetchDrops: (data) => ({ data }),\n setDrops: (data) => ({ data }),\n setLoadingDrops: (loading) => loading,\n\n setNumberOfDropsMetrics: (data) => ({ data }),\n setNumberOfPicksMetrics: (data) => ({ data }),\n setNumberOfMaintenancesMetrics: (data) => ({ data }),\n\n fetchPicks: (data) => ({ data }),\n setPicks: (data) => ({ data }),\n setLoadingPicks: (loading) => loading,\n\n fetchMaintenances: (data) => ({ data }),\n setMaintenances: (data) => ({ data }),\n setLoadingMaintenances: (loading) => loading,\n\n setSelectOptions: (options) => ({ options }),\n\n fetchAreasList: () => true,\n setAreasList: (list) => ({ list }),\n setAreasNumber: (number) => ({ number }),\n setLoadingAreas: (loading) => loading,\n\n fetchMetrics: () => true,\n setMetrics: (metrics) => ({ metrics }),\n fetchActiveUsers: () => true,\n setActiveUsers: (activeUsers) => ({ activeUsers }),\n setLoadingActiveUsers: (loading) => loading,\n\n setLinkedArea: (area) => ({ area }),\n setAreaEquipments: (equipments) => ({ equipments }),\n setAreaEquipmentsNumber: (number) => ({ number }),\n setLoadingEquipments: (loading) => loading,\n\n setEquipmentInDetail: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetail: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n setLoadingEquipmentInDetail: (loading) => loading,\n\n fetchEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n\n setAlerts: (alerts) => ({ alerts }),\n setTickets: (tickets) => ({ tickets }),\n setEfficient: (efficient) => ({ efficient }),\n setMostUsedContainers: (containers) => ({ containers }),\n setLoginCounter: (logins) => ({ logins }),\n setLastEventsInterval: (interval) => ({ interval }),\n\n setGlobalNumberOfContainers: (number) => ({ number }),\n setGlobalNumberOfMaintenances: (number) => ({ number }),\n setGlobalNumberOfDeposits: (number) => ({ number }),\n setGlobalNumberOfCollects: (number) => ({ number }),\n\n fetchGlobalNumberOfContainers: () => true,\n fetchGlobalNumberOfDeposits: () => true,\n fetchGlobalNumberOfCollects: () => true,\n fetchGlobalNumberOfMaintenances: () => true,\n\n setDropsListToPlot: (list) => ({ list }),\n setDropsListToPlotLabels: (list) => ({ list }),\n setLoadingFillLevelGraph: (loading) => loading,\n\n fetchDepositsToPlot: () => true,\n\n updateGraphDrop: (event) => ({ event }),\n updateGraphPick: (event) => ({ event }),\n updateGraphMaintenance: (event) => ({ event }),\n updateGraphAreaFillLevel: (event) => event,\n\n setFilter: (filter) => ({ filter }),\n changeFilter: (key, value) => ({ key, value }),\n resetFilter: () => true,\n filterEntrances: () => true,\n }),\n\n reducers: ({ actions }) => ({\n loadingDrops: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingDrops]: (state, loading) => loading,\n [actions.setFiltersForm]: () => true,\n },\n ],\n\n loadingPicks: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingPicks]: (state, loading) => loading,\n [actions.setFiltersForm]: () => true,\n },\n ],\n\n loadingMaintenances: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingMaintenances]: (state, loading) => loading,\n [actions.setFiltersForm]: () => true,\n },\n ],\n\n loadingAreas: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingAreas]: (state, loading) => loading,\n },\n ],\n\n loadingDownload: [\n false,\n PropTypes.boolean,\n {\n [actions.download]: () => true,\n [actions.finishDownload]: () => false,\n },\n ],\n\n loadingActiveUsers: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingActiveUsers]: (state, loading) => loading,\n },\n ],\n\n loadingEquipments: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingEquipments]: (state, loading) => loading,\n },\n ],\n\n loadingEquipmentInDetail: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingEquipmentInDetail]: (state, loading) => loading,\n },\n ],\n\n loadingFillLevelGraph: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingFillLevelGraph]: (state, loading) => loading,\n [actions.setFiltersForm]: () => true,\n },\n ],\n\n metrics: [\n null,\n PropTypes.object,\n {\n [actions.setMetrics]: (state, { metrics }) => metrics,\n },\n ],\n\n drops: [\n [],\n PropTypes.array,\n {\n [actions.setDrops]: (state, { data }) => data,\n },\n ],\n\n picks: [\n [],\n PropTypes.array,\n {\n [actions.setPicks]: (state, { data }) => data,\n },\n ],\n\n maintenances: [\n [],\n PropTypes.array,\n {\n [actions.setMaintenances]: (state, { data }) => data,\n },\n ],\n\n selectOptions: [\n [],\n PropTypes.array,\n {\n [actions.setSelectOptions]: (state, { options }) => options,\n },\n ],\n\n filtersForm: [\n INTERVAL_FORM_DEFAULTS,\n PropTypes.object,\n {\n [actions.changeFiltersForm]: (state, payload) => ({\n ...state,\n [payload.key]: { value: payload.value },\n }),\n [actions.setFiltersForm]: (state, { form }) => ({ ...form }),\n [actions.resetFiltersForm]: (state, payloada) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n },\n ],\n\n filter: [\n {\n container__area__name: '',\n container__uuid: '',\n fill_level: '',\n complete: '',\n },\n PropTypes.object,\n {\n [actions.setFilter]: (state, { filter }) => filter,\n [actions.changeFilter]: (state, payload) => {\n return Object.assign({}, state, { [payload.key]: payload.value });\n },\n [actions.resetFilter]: () => ({\n fill_level: '',\n }),\n },\n ],\n\n fillLevelFilterOptions: [\n [\n {\n value: 'less',\n label: 'x < 25%',\n },\n {\n value: 'between',\n label: '25% < x < 50%',\n },\n {\n value: 'between_2',\n label: '50% < x < 75%',\n },\n {\n value: 'greater',\n label: '75% < x',\n },\n ],\n PropTypes.array,\n {},\n ],\n\n areasList: [\n [],\n PropTypes.array,\n {\n [actions.setAreasList]: (state, { list }) => list,\n },\n ],\n\n dropsListToPlot: [\n [],\n PropTypes.array,\n {\n [actions.setDropsListToPlot]: (state, { list }) => list,\n },\n ],\n\n dropsListToPlotLabels: [\n [],\n PropTypes.array,\n {\n [actions.setDropsListToPlotLabels]: (state, { list }) => list,\n },\n ],\n\n linkedArea: [\n null,\n PropTypes.object,\n {\n [actions.setLinkedArea]: (state, { area }) => area,\n },\n ],\n\n areaEquipments: [\n null,\n PropTypes.array,\n {\n [actions.setAreaEquipments]: (state, { equipments }) => equipments,\n [actions.setLinkedArea]: (state, { area }) => {\n return area == null ? null : state;\n },\n [actions.resetFiltersForm]: () => null,\n },\n ],\n\n areaEquipmentsNumber: [\n 0,\n PropTypes.number,\n {\n [actions.setAreaEquipmentsNumber]: (state, { number }) => number,\n },\n ],\n\n areasCount: [\n 0,\n PropTypes.number,\n {\n [actions.setAreasNumber]: (state, { number }) => number,\n },\n ],\n\n equipmentInDetail: [\n null,\n PropTypes.object,\n {\n [actions.setFetchedEquipmentInDetail]: (state, { equipment }) =>\n equipment,\n [actions.setFetchedEquipmentInDetailNoFetchs]: (state, { equipment }) =>\n equipment,\n [actions.setLinkedArea]: (state, { area }) => {\n return area == null ? null : state;\n },\n [actions.resetFiltersForm]: () => null,\n },\n ],\n\n activeUsers: [\n {\n activeUsers: 0,\n inactiveUsers: 0,\n },\n PropTypes.object,\n {\n [actions.setActiveUsers]: (state, { activeUsers }) => activeUsers,\n },\n ],\n\n numberOfDropsMetrics: [\n {\n total: 0,\n average: 0,\n max: 0,\n },\n PropTypes.object,\n {\n [actions.setNumberOfDropsMetrics]: (state, { data }) => data,\n },\n ],\n\n numberOfPicksMetrics: [\n {\n total: 0,\n average: 0,\n max: 0,\n },\n PropTypes.object,\n {\n [actions.setNumberOfPicksMetrics]: (state, { data }) => data,\n },\n ],\n\n numberOfMaintenancesMetrics: [\n {\n total: 0,\n average: 0,\n max: 0,\n },\n PropTypes.object,\n {\n [actions.setNumberOfMaintenancesMetrics]: (state, { data }) => data,\n },\n ],\n\n tickets: [\n {\n openTickets: 0,\n closedTickets: 0,\n },\n PropTypes.object,\n {\n [actions.setTickets]: (state, { tickets }) => tickets,\n },\n ],\n\n efficient: [\n {\n efficientPickups: 0,\n inefficientPickups: 0,\n },\n PropTypes.object,\n {\n [actions.setEfficient]: (state, { efficient }) => efficient,\n },\n ],\n\n alerts: [\n {\n openAlerts: 0,\n closedAlerts: 0,\n },\n PropTypes.object,\n {\n [actions.setAlerts]: (state, { alerts }) => alerts,\n },\n ],\n\n mostUsedContainers: [\n null,\n PropTypes.array,\n {\n [actions.setMostUsedContainers]: (state, { containers }) => containers,\n },\n ],\n\n loginCounter: [\n null,\n PropTypes.array,\n {\n [actions.setLoginCounter]: (state, { logins }) => logins,\n },\n ],\n\n lastEventsInterval: [\n null,\n PropTypes.string,\n {\n [actions.setLastEventsInterval]: (state, { interval }) => interval,\n },\n ],\n\n globalNumberOfContainers: [\n 0,\n PropTypes.number,\n {\n [actions.setGlobalNumberOfContainers]: (state, { number }) => number,\n },\n ],\n\n globalNumberOfDeposits: [\n 0,\n PropTypes.number,\n {\n [actions.setGlobalNumberOfDeposits]: (state, { number }) => number,\n },\n ],\n\n globalNumberOfCollects: [\n 0,\n PropTypes.number,\n {\n [actions.setGlobalNumberOfCollects]: (state, { number }) => number,\n },\n ],\n\n globalNumberOfMaintenances: [\n 0,\n PropTypes.number,\n {\n [actions.setGlobalNumberOfMaintenances]: (state, { number }) => number,\n },\n ],\n }),\n\n start: function* () {\n const {\n watchEvents,\n setWebSocketHanlder,\n fetchAreasList,\n fetchGlobalNumberOfContainers,\n fetchAreasEquipments,\n fetchMetrics,\n } = this.actions;\n\n yield put(fetchAreasList());\n yield put(fetchMetrics());\n yield put(fetchGlobalNumberOfContainers());\n yield put(setWebSocketHanlder(this.workers.handle));\n yield put(watchEvents());\n yield put(fetchAreasEquipments());\n },\n\n stop: function* () {\n const { changeWatchingEvents } = this.actions;\n yield put(changeWatchingEvents(false));\n },\n\n selectors: ({ selectors }) => ({\n /** Returns and array of the current loading areas */\n picksValues: [\n () => [selectors.picks],\n (picks) => {\n if (picks.length === 0) {\n return { min: 0, average: 0, max: 0 };\n }\n var min = picks.length\n ? picks.reduce((accumulator, currentValue) => {\n return accumulator < currentValue ? accumulator : currentValue;\n })\n : 0;\n var max = picks.length\n ? picks.reduce((accumulator, currentValue) => {\n return accumulator > currentValue ? accumulator : currentValue;\n })\n : 0;\n let total = picks.length\n ? picks.reduce((accumulator, currentValue) => {\n return accumulator + currentValue;\n })\n : 0;\n let avg = picks.length ? total / picks.length.toFixed(2) : 0;\n avg = parseInt(avg * 100) / 100;\n return { min: min, average: avg, max: max, total: total };\n },\n PropTypes.object,\n ],\n dropsValues: [\n () => [selectors.drops],\n (drops) => {\n if (drops.length === 0) {\n return { min: 0, average: 0, max: 0 };\n }\n var min = drops.length\n ? drops.reduce((accumulator, currentValue) => {\n return accumulator < currentValue ? accumulator : currentValue;\n })\n : 0;\n var max = drops.length\n ? drops.reduce((accumulator, currentValue) => {\n return accumulator > currentValue ? accumulator : currentValue;\n })\n : 0;\n let total = drops.length\n ? drops.reduce((accumulator, currentValue) => {\n return accumulator + currentValue;\n })\n : 0;\n let avg = drops.length ? total / drops.length.toFixed(2) : 0;\n avg = parseInt(avg * 100) / 100;\n return { min: min, average: avg, max: max, total: total };\n },\n PropTypes.object,\n ],\n maintenancesValues: [\n () => [selectors.maintenances],\n (maintenances) => {\n if (maintenances.length === 0) {\n return { min: 0, average: 0, max: 0 };\n }\n var min = maintenances.length\n ? maintenances.reduce((accumulator, currentValue) => {\n return accumulator < currentValue ? accumulator : currentValue;\n })\n : 0;\n var max = maintenances.length\n ? maintenances.reduce((accumulator, currentValue) => {\n return accumulator > currentValue ? accumulator : currentValue;\n })\n : 0;\n let total = maintenances.length\n ? maintenances.reduce((accumulator, currentValue) => {\n return accumulator + currentValue;\n })\n : 0;\n let avg = maintenances.length\n ? total / maintenances.length.toFixed(2)\n : 0;\n avg = parseInt(avg * 100) / 100;\n return { min: min, average: avg, max: max, total: total };\n },\n PropTypes.object,\n ],\n }),\n\n takeLatest: ({ actions, workers }) => ({\n [actions.fetchAreasList]: workers.fetchAreasList,\n [actions.fetchAreasEquipments]: workers.fetchAreasEquipments,\n [actions.fetchEquipmentInDetailNoFetchs]:\n workers.fetchEquipmentInDetailNoFetchs,\n [actions.setLinkedArea]: [\n workers.showOnlyOneArea,\n workers.fetchAreasEquipments,\n workers.fetchDrops,\n workers.fetchPicks,\n workers.fetchMaintenances,\n workers.fetchActiveUsers,\n workers.fetchMetrics,\n workers.fetchGlobalNumberOfMaintenances,\n workers.fetchGlobalNumberOfDeposits,\n workers.fetchGlobalNumberOfCollects,\n workers.fetchDepositsToPlot,\n workers.fetchGlobalNumberOfContainers,\n ],\n [actions.setFetchedEquipmentInDetail]: [\n workers.fetchDrops,\n workers.fetchPicks,\n workers.fetchMaintenances,\n workers.fetchActiveUsers,\n workers.fetchMetrics,\n workers.fetchGlobalNumberOfMaintenances,\n workers.fetchGlobalNumberOfDeposits,\n workers.fetchGlobalNumberOfCollects,\n workers.fetchDepositsToPlot,\n ],\n [actions.fetchDrops]: workers.fetchDrops,\n [actions.fetchMaintenances]: workers.fetchMaintenances,\n [actions.fetchPicks]: workers.fetchPicks,\n [actions.fetchMetrics]: [\n workers.fetchActiveUsers,\n workers.fetchDrops,\n workers.fetchPicks,\n workers.fetchMaintenances,\n workers.fetchMetrics,\n workers.fetchDepositsToPlot,\n workers.fetchGlobalNumberOfDeposits,\n workers.fetchGlobalNumberOfCollects,\n workers.fetchGlobalNumberOfMaintenances,\n ],\n [actions.fetchActiveUsers]: workers.fetchActiveUsers,\n [actions.setEquipmentInDetail]: workers.fetchEquipmentInDetail,\n [actions.fetchGlobalNumberOfContainers]:\n workers.fetchGlobalNumberOfContainers,\n [actions.fetchGlobalNumberOfMaintenances]:\n workers.fetchGlobalNumberOfMaintenances,\n [actions.fetchGlobalNumberOfDeposits]: workers.fetchGlobalNumberOfDeposits,\n [actions.fetchGlobalNumberOfCollects]: workers.fetchGlobalNumberOfCollects,\n // [actions.watchEvents]: workers.watchEvents,\n [actions.updateGraphDrop]: workers.updateGraphDrop,\n [actions.updateGraphPick]: workers.updateGraphPick,\n [actions.updateGraphMaintenance]: workers.updateGraphMaintenance,\n [actions.updateGraphAreaFillLevel]: workers.updateGraphAreaFillLevel,\n [actions.fetchDepositsToPlot]: workers.fetchDepositsToPlot,\n [actions.setFiltersForm]: [\n workers.fetchActiveUsers,\n workers.fetchDrops,\n workers.fetchPicks,\n workers.fetchMaintenances,\n workers.fetchMetrics,\n workers.fetchDepositsToPlot,\n workers.fetchGlobalNumberOfDeposits,\n workers.fetchGlobalNumberOfCollects,\n workers.fetchGlobalNumberOfMaintenances,\n workers.fetchAreasEquipments,\n ],\n [actions.resetFiltersForm]: [\n workers.fetchActiveUsers,\n workers.fetchDrops,\n workers.fetchPicks,\n workers.fetchMaintenances,\n workers.fetchMetrics,\n workers.fetchDepositsToPlot,\n workers.fetchGlobalNumberOfDeposits,\n workers.fetchGlobalNumberOfCollects,\n workers.fetchGlobalNumberOfMaintenances,\n ],\n [actions.download]: workers.download,\n }),\n\n workers: {\n *download(action) {\n const { finishDownload } = this.actions;\n try {\n const response = yield call(axios.get, DOWNLOADURL);\n\n const { data } = response;\n const instance = axios.create();\n\n const downloadFile = yield call(\n instance.get,\n `${MEDIA_API_URL}${data.url}`,\n {\n responseType: 'blob',\n }\n );\n\n fileDownload(new Blob([downloadFile.data]), `report-dashboard.pdf`);\n } catch (err) {\n const { t } = this.props;\n\n console.log({ err });\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: 'downloadError',\n }\n );\n } finally {\n yield put(finishDownload());\n }\n },\n\n *fetchDepositsToPlot(action) {\n const {\n setDropsListToPlotLabels,\n setDropsListToPlot,\n setLoadingFillLevelGraph,\n } = this.actions;\n\n if (!ADDITIONAL_FEATURES.includes('deposits')) {\n return false;\n }\n\n yield put(setLoadingFillLevelGraph(true));\n\n const equipmentInDetail = yield this.get('equipmentInDetail');\n const linkedArea = yield this.get('linkedArea');\n const filtersForm = yield this.get('filtersForm');\n\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let params = {\n datetime_after: moment(date_after).toISOString(),\n datetime_before: moment(date_before).endOf('day').toISOString(),\n area__id: linkedArea != null ? linkedArea.id : null,\n };\n\n if (equipmentInDetail) {\n params = { ...params, container__id: equipmentInDetail.id };\n }\n\n const request = yield call(axios.get, FILLLEVEL, { params });\n\n if (request.data) {\n const { timeline } = request.data;\n\n const averageFillLevel = timeline.map((r) =>\n r.averageFillLevel.toFixed(2)\n );\n const fillLevelTimestamp = timeline.map((r) =>\n moment(r.timestamp).format('DD/MM/YYYY HH:mm')\n );\n\n yield put(setDropsListToPlot(averageFillLevel));\n yield put(setDropsListToPlotLabels(fillLevelTimestamp));\n }\n } catch (err) {\n console.log({ err });\n yield put(setDropsListToPlot([]));\n yield put(setDropsListToPlotLabels([]));\n } finally {\n yield put(setLoadingFillLevelGraph(false));\n }\n },\n\n *showOnlyOneArea(action) {\n const { setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n const linkedArea = yield this.get('linkedArea');\n if (areasList.length === 1 && linkedArea !== areasList[0]) {\n yield delay(300);\n yield put(setLinkedArea(areasList[0]));\n }\n },\n\n *fetchGlobalNumberOfContainers(action) {\n const { setGlobalNumberOfContainers } = this.actions;\n let linkedArea = yield this.get('linkedArea');\n try {\n if (linkedArea) {\n let { data } = yield call(axios.get, EQUIPMENTSSURL, {\n params: {\n container__area__id: linkedArea.id,\n },\n });\n yield put(setGlobalNumberOfContainers(data.results.length));\n } else {\n const { data } = yield call(axios.get, EQUIPMENTSSURL);\n yield put(setGlobalNumberOfContainers(data.results.length));\n }\n } catch (error) {\n setGlobalNumberOfContainers(0);\n }\n },\n\n *fetchGlobalNumberOfMaintenances(action) {\n const { setGlobalNumberOfMaintenances, setNumberOfMaintenancesMetrics } =\n this.actions;\n\n const linkedArea = yield this.get('linkedArea');\n const filtersForm = yield this.get('filtersForm');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n if (!ADDITIONAL_FEATURES.includes('maintenances')) {\n return false;\n }\n\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let params = {\n datetime_after: moment(date_after).toISOString(),\n datetime_before: moment(date_before).endOf('day').toISOString(),\n };\n\n if (linkedArea) {\n params = {\n ...params,\n area__id: linkedArea != null ? linkedArea.id : null,\n };\n }\n\n if (equipmentInDetail) {\n params = { ...params, container__id: equipmentInDetail.id };\n }\n\n const response = yield call(axios.get, NUMBEROFMAINTENANCES, {\n params,\n });\n\n if (response.data) {\n yield put(\n setGlobalNumberOfMaintenances(response.data.totalMaintenances)\n );\n\n const { averageMaintenances, maxMaintenances, totalMaintenances } =\n response.data;\n\n yield put(\n setNumberOfMaintenancesMetrics({\n total: totalMaintenances,\n average: averageMaintenances,\n max: maxMaintenances,\n })\n );\n }\n } catch (error) {\n console.log({ error });\n yield put(setGlobalNumberOfMaintenances(0));\n yield put(\n setNumberOfMaintenancesMetrics({\n total: 0,\n average: 0,\n max: 0,\n })\n );\n }\n },\n\n *fetchGlobalNumberOfDeposits(action) {\n const { setGlobalNumberOfDeposits, setNumberOfDropsMetrics } =\n this.actions;\n\n const linkedArea = yield this.get('linkedArea');\n const filtersForm = yield this.get('filtersForm');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let params = {\n type: 'drop',\n datetime_after: moment(date_after).toISOString(),\n datetime_before: moment(date_before).endOf('day').toISOString(),\n };\n\n if (linkedArea) {\n params = {\n ...params,\n area__id: linkedArea != null ? linkedArea.id : null,\n };\n }\n\n if (equipmentInDetail) {\n params = { ...params, container__id: equipmentInDetail.id };\n }\n\n const response = yield call(axios.get, NUMBEROFEVENTS, { params });\n\n if (response.data) {\n yield put(setGlobalNumberOfDeposits(response.data.totalEvents));\n\n const { averageEvents, maxEvents, totalEvents } = response.data;\n\n yield put(\n setNumberOfDropsMetrics({\n total: totalEvents,\n average: averageEvents,\n max: maxEvents,\n })\n );\n }\n } catch (err) {\n console.log({ err });\n yield put(setGlobalNumberOfDeposits(0));\n yield put(\n setNumberOfDropsMetrics({\n total: 0,\n average: 0,\n max: 0,\n })\n );\n }\n },\n\n *fetchGlobalNumberOfCollects(action) {\n const { setGlobalNumberOfCollects, setNumberOfPicksMetrics } =\n this.actions;\n\n const linkedArea = yield this.get('linkedArea');\n const filtersForm = yield this.get('filtersForm');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n if (!ADDITIONAL_FEATURES.includes('collects')) {\n return false;\n }\n\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let params = {\n type: 'pick',\n datetime_after: moment(date_after).toISOString(),\n datetime_before: moment(date_before).endOf('day').toISOString(),\n };\n\n if (linkedArea) {\n params = {\n ...params,\n area__id: linkedArea != null ? linkedArea.id : null,\n };\n }\n\n if (equipmentInDetail) {\n params = { ...params, container__id: equipmentInDetail.id };\n }\n\n const response = yield call(axios.get, NUMBEROFEVENTS, { params });\n\n if (response.data) {\n yield put(setGlobalNumberOfCollects(response.data.totalEvents));\n\n const { averageEvents, maxEvents, totalEvents } = response.data;\n\n yield put(\n setNumberOfPicksMetrics({\n total: totalEvents,\n average: averageEvents,\n max: maxEvents,\n })\n );\n }\n } catch (err) {\n yield put(setGlobalNumberOfCollects(0));\n yield put(\n setNumberOfPicksMetrics({\n total: 0,\n average: 0,\n max: 0,\n })\n );\n }\n },\n\n *fetchEquipmentInDetailNoFetchs(action) {\n const {\n setFetchedEquipmentInDetailNoFetchs,\n setLoadingEquipmentInDetail,\n } = this.actions;\n\n yield put(setLoadingEquipmentInDetail(true));\n\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n\n data.color = decodeColor(data.type);\n\n yield put(setFetchedEquipmentInDetailNoFetchs(data));\n } catch (error) {\n console.log({ error });\n yield put(setFetchedEquipmentInDetailNoFetchs(null));\n }\n yield put(setLoadingEquipmentInDetail(false));\n },\n\n *fetchEquipmentInDetail(action) {\n const {\n setFetchedEquipmentInDetail,\n setLoadingEquipmentInDetail,\n setLinkedArea,\n } = this.actions;\n const areasList = yield this.get('areasList');\n\n yield put(setLoadingEquipmentInDetail(true));\n\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n\n data.color = decodeColor(data.type);\n\n const equipmentArea = areasList.find((el) => el.id === data.area.id);\n\n if (equipmentArea != null) {\n yield put(setLinkedArea(equipmentArea));\n }\n\n yield put(setFetchedEquipmentInDetail(data));\n } catch (error) {\n yield put(setFetchedEquipmentInDetail(null));\n }\n\n yield put(setLoadingEquipmentInDetail(false));\n },\n\n *fetchAreasList(action) {\n const { setAreasList, setAreasNumber, setLoadingAreas, setLinkedArea } =\n this.actions;\n yield put(setLoadingAreas(true));\n try {\n const response = yield call(axios.get, AREASURL);\n const areasRes = response.data.results;\n\n if (areasRes.length) {\n const results = areasRes.map((area) => {\n area.lines = {\n type: 'LineString',\n coordinates: area.polygon.coordinates[0],\n };\n return area;\n });\n yield put(setAreasList(results));\n yield put(setAreasNumber(areasRes.length));\n\n if (results.length === 1) {\n yield delay(300);\n yield put(setLinkedArea(results[0]));\n }\n } else {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n }\n } catch (error) {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n }\n yield put(setLoadingAreas(false));\n },\n\n *fetchAreasEquipments(action) {\n const linkedArea = yield this.get('linkedArea');\n const filter = yield this.get('filter');\n\n const {\n setAreaEquipments,\n setAreaEquipmentsNumber,\n setLoadingEquipments,\n } = this.actions;\n yield put(setLoadingEquipments(true));\n\n const installationStatus = ['assembled', 'installed'];\n\n let fillLevel;\n\n switch (filter.fill_level) {\n case 'less':\n fillLevel = {\n fill_level__lte: 25,\n };\n break;\n case 'between':\n fillLevel = {\n fill_level__gte: 25,\n fill_level__lte: 50,\n };\n break;\n case 'between_2':\n fillLevel = {\n fill_level__gte: 50,\n fill_level__lte: 75,\n };\n break;\n case 'greater':\n fillLevel = {\n fill_level__gte: 75,\n };\n break;\n default:\n fillLevel = {};\n }\n\n try {\n let next = 1;\n const commonParams = {\n ...fillLevel,\n page_size: 500,\n };\n\n let results = [];\n while (next) {\n let params = {\n ...commonParams,\n page: next,\n };\n\n if (linkedArea) params = { ...params, area__id: linkedArea.id };\n\n let containers = [];\n\n const responses = yield installationStatus.map((status) => {\n params = { ...params, installation_status: status };\n return call(axios.get, EQUIPMENTSSURL, { params });\n });\n\n responses.forEach((el) =>\n containers.push.apply(containers, el.data.results)\n );\n\n containers.map((container) => {\n container.color = decodeColor(container.type);\n results.push(container);\n return container;\n });\n\n next = 0;\n\n yield put(setAreaEquipments(results));\n yield put(setAreaEquipmentsNumber(results.length));\n }\n } catch (error) {\n yield put(setAreaEquipments([]));\n yield put(setAreaEquipmentsNumber(0));\n } finally {\n yield put(setLoadingEquipments(false));\n }\n },\n\n *fetchDrops(action) {\n yield delay(1500);\n const { setDrops, setLoadingDrops } = this.actions;\n yield put(setLoadingDrops(true));\n\n let linkedArea = yield this.get('linkedArea');\n let equipmentInDetail = yield this.get('equipmentInDetail');\n const filtersForm = yield this.get('filtersForm');\n\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let params = {\n event_type: 'drop',\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n area: linkedArea != null ? linkedArea.id : null,\n };\n\n if (equipmentInDetail) {\n params = { ...params, container: equipmentInDetail.id };\n }\n\n const response = yield call(axios.get, EVENTSBYDAYURL, { params });\n\n if (response.data) {\n const { results } = response.data;\n\n yield put(setDrops(results));\n }\n } catch (err) {\n yield put(setDrops([]));\n } finally {\n yield put(setLoadingDrops(false));\n }\n },\n\n *fetchMaintenances(action) {\n yield delay(1500);\n const { setMaintenances, setLoadingMaintenances } = this.actions;\n\n if (!ADDITIONAL_FEATURES.includes('maintenances')) {\n return false;\n }\n\n yield put(setLoadingMaintenances(true));\n\n let linkedArea = yield this.get('linkedArea');\n let equipmentInDetail = yield this.get('equipmentInDetail');\n const filtersForm = yield this.get('filtersForm');\n\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let params = {\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n area: linkedArea != null ? linkedArea.id : null,\n };\n\n if (equipmentInDetail) {\n params = { ...params, container__id: equipmentInDetail.id };\n }\n\n const response = yield call(axios.get, MAINTENANCESBYDAYURL, {\n params,\n });\n\n if (response.data) {\n const { results } = response.data;\n\n yield put(setMaintenances(results));\n }\n } catch (err) {\n yield put(setMaintenances([]));\n } finally {\n yield put(setLoadingMaintenances(false));\n }\n },\n\n *fetchPicks(action) {\n yield delay(1500);\n const { setPicks, setLoadingPicks } = this.actions;\n\n if (!ADDITIONAL_FEATURES.includes('collects')) {\n return false;\n }\n\n yield put(setLoadingPicks(true));\n\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n const filtersForm = yield this.get('filtersForm');\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let params = {\n event_type: 'pick',\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n area: linkedArea != null ? linkedArea.id : null,\n };\n\n if (equipmentInDetail) {\n params = { ...params, container: equipmentInDetail.id };\n }\n\n try {\n const response = yield call(axios.get, EVENTSBYDAYURL, {\n params,\n });\n\n if (response.data) {\n const { results } = response.data;\n\n yield put(setPicks(results));\n }\n } catch (err) {\n yield put(setPicks([]));\n } finally {\n yield put(setLoadingPicks(false));\n }\n },\n\n *fetchMetrics(action) {\n yield delay(1500);\n const {\n setTickets,\n setAlerts,\n setEfficient,\n setMostUsedContainers,\n setLoginCounter,\n setLastEventsInterval,\n } = this.actions;\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n const filtersForm = yield this.get('filtersForm');\n\n let systemAlerts = {\n openErrors: 0,\n closedErrors: 0,\n };\n\n let usageAlerts = {\n openAlerts: 0,\n closedAlerts: 0,\n };\n\n let totalEfficientPickups = {\n efficientPickups: 0,\n inefficientPickups: 0,\n };\n\n let usedContainers = [];\n\n let loginCounter = [];\n\n let interval = '';\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let params = {\n datetime_after: moment(date_after).toISOString(),\n datetime_before: moment(date_before).endOf('day').toISOString(),\n };\n\n if (linkedArea) {\n params = {\n ...params,\n area__id: linkedArea != null ? linkedArea.id : null,\n };\n }\n\n if (equipmentInDetail) {\n params = { ...params, container__id: equipmentInDetail.id };\n }\n\n try {\n const response = yield call(axios.get, TICKETSURL, { params });\n\n if (response.data) {\n const { openSystemAlerts, closedSystemAlerts } = response.data;\n\n systemAlerts = {\n openErrors: openSystemAlerts,\n closedErrors: closedSystemAlerts,\n };\n }\n } catch (err) {\n console.log({ err });\n }\n\n try {\n const response = yield call(axios.get, ALERTSURL, { params });\n\n if (response.data) {\n const { openUsageAlerts, closedUsageAlerts } = response.data;\n\n usageAlerts = {\n openAlerts: openUsageAlerts,\n closedAlerts: closedUsageAlerts,\n };\n }\n } catch (err) {\n console.log({ err });\n }\n\n try {\n const response = yield call(axios.get, EFFICIENTPICKERSURL, { params });\n\n if (response.data) {\n const { efficientPickups, inefficientPickups } = response.data;\n\n totalEfficientPickups = {\n efficientPickups: efficientPickups,\n inefficientPickups: inefficientPickups,\n };\n }\n } catch (err) {\n console.log({ err });\n }\n\n try {\n const response = yield call(axios.get, TOPUSEDCONTAINERSURL, {\n params,\n });\n\n if (response.data) {\n const { topContainers } = response.data;\n\n for (const filteredContainer of topContainers) {\n const filteredEquipmentResponse = yield call(\n axios.get,\n EQUIPMENTSSURL,\n { params: { uuid: filteredContainer.containerUuid } }\n );\n\n const { results } = filteredEquipmentResponse.data;\n\n const finalContainer = {\n ...filteredContainer,\n name: results[0].name,\n };\n\n usedContainers.push(finalContainer);\n }\n }\n } catch (err) {\n setMostUsedContainers(null);\n }\n\n try {\n const response = yield call(axios.get, LOGINCOUNTERURL, { params });\n\n if (response.data) {\n const { timeline } = response.data;\n loginCounter = timeline;\n }\n } catch (err) {\n setLoginCounter(null);\n }\n\n try {\n const response = yield call(axios.get, LASTEVENTSINTERVALURL, {\n params,\n });\n\n if (response.data) {\n const { timeInterval } = response.data;\n interval = timeInterval;\n }\n } catch (err) {\n yield put(setLastEventsInterval(null));\n }\n\n yield put(setTickets(systemAlerts));\n yield put(setAlerts(usageAlerts));\n yield put(setEfficient(totalEfficientPickups));\n yield put(setMostUsedContainers(usedContainers));\n yield put(setLoginCounter(loginCounter));\n yield put(setLastEventsInterval(interval));\n },\n\n *fetchActiveUsers(action) {\n yield delay(1500);\n const { setActiveUsers, setLoadingActiveUsers } = this.actions;\n yield put(setLoadingActiveUsers(true));\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n const filtersForm = yield this.get('filtersForm');\n\n let final = {\n activeUsers: 0,\n inactiveUsers: 0,\n };\n\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n const commonParams = {\n datetime_after: moment(date_after).toISOString(),\n datetime_before: moment(date_before).endOf('day').toISOString(),\n };\n\n let params = { ...commonParams };\n\n if (linkedArea) {\n params = { ...params, area__id: linkedArea.id };\n }\n if (equipmentInDetail) {\n params = { ...params, container__id: equipmentInDetail.id };\n }\n\n const response = yield call(axios.get, ACTIVEUSERSURLV2, {\n params,\n });\n\n if (response.data) {\n final.activeUsers =\n response.data.activeCustomers > 0\n ? response.data.activeCustomers\n : 0;\n final.inactiveUsers =\n response.data.inactiveCustomers > 0\n ? response.data.inactiveCustomers\n : 0;\n }\n } catch (err) {\n console.log({ err });\n } finally {\n yield put(setActiveUsers(final));\n yield put(setLoadingActiveUsers(false));\n }\n },\n\n *updateGraphDrop(action) {\n const { fetchDrops, fetchGlobalNumberOfDeposits } = this.actions;\n yield put(fetchDrops());\n yield put(fetchGlobalNumberOfDeposits());\n },\n\n *updateGraphPick(action) {\n const { fetchPicks, fetchGlobalNumberOfCollects } = this.actions;\n yield put(fetchPicks());\n yield put(fetchGlobalNumberOfCollects());\n },\n\n *updateGraphMaintenance(action) {\n const { fetchMaintenances, fetchGlobalNumberOfMaintenances } =\n this.actions;\n yield put(fetchMaintenances());\n yield put(fetchGlobalNumberOfMaintenances());\n },\n\n *updateGraphAreaFillLevel(action) {\n const { fetchDepositsToPlot } = this.actions;\n yield put(fetchDepositsToPlot());\n },\n\n *handle(message) {\n const {\n updateGraphDrop,\n fetchGlobalNumberOfDeposits,\n fetchGlobalNumberOfCollects,\n fetchGlobalNumberOfMaintenances,\n updateGraphPick,\n updateGraphMaintenance,\n fetchMetrics,\n fetchAreasEquipments,\n fetchEquipmentInDetailNoFetchs,\n } = this.actions;\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n if (message.event_type === 'status') {\n let temp = { ...message };\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n toast.info(temp.message, {\n position: toast.POSITION.TOP_RIGHT,\n delay: 200,\n id: message_id ? `uniqueStatusMessage${message_id}` : null,\n });\n } else if (message.event_type === 'event' && message.content) {\n if (message.event_type === 'event') {\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n if (\n message.content != null &&\n message.content.type === 'drop' &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueDropMessage${message_id}` : null,\n }\n );\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n yield put(fetchAreasEquipments());\n yield put(updateGraphDrop(message.content));\n yield put(fetchGlobalNumberOfDeposits());\n } else if (\n message.content != null &&\n message.content.type === 'pick' &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniquePickMessage${message_id}` : null,\n }\n );\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n yield put(fetchAreasEquipments());\n yield put(updateGraphPick(message.content));\n yield put(fetchGlobalNumberOfCollects());\n yield put(fetchMetrics());\n } else if (\n message.content != null &&\n message.content.type === 'maintenance' &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueMaintenanceMessage${message_id}`\n : null,\n }\n );\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n yield put(fetchAreasEquipments());\n yield put(updateGraphMaintenance(message.content));\n yield put(fetchGlobalNumberOfMaintenances());\n } else if (message.content && message.content.type === 'alert') {\n toast.warn(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueAlertMessage${message_id}` : null,\n }\n );\n yield put(fetchMetrics());\n } else if (message.content && message.content.type === 'error') {\n if (message.content.status === 'closed') {\n toast.success(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n } else {\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n }\n yield put(fetchMetrics());\n }\n } else if (\n message.event_type === 'fill-level' &&\n message.type === 'new'\n ) {\n const { updateGraphAreaFillLevel } = this.actions;\n\n yield put(updateGraphAreaFillLevel(message.content));\n }\n }\n },\n },\n});\n","/**\n * ContainerMap Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport { kea } from 'kea'\n//import { put } from 'redux-saga/effects'\n//import { delay } from 'redux-saga'\n//import { } from 'config'\n//import { } from 'utils'\n//import { } from './utils'\n\n//import PropTypes from 'prop-types'\n//import * as Check from 'validations'\n\n\nexport default kea({\n path: () => ['scenes', 'containers', 'ContainerMapAreas'],\n\n actions: () => ({\n\n }),\n\n reducers: ({ actions }) => ({\n\n }),\n\n takeLatest: ({ actions, workers }) => ({\n\n }),\n\n workers: {\n\n }\n\n})\n\n","import React, { Component } from 'react';\nimport Logic from './logic';\nimport styled, { css } from 'styled-components';\nimport { MAP_BOX_KEY, AVAILABLE_CONTAINERS } from 'config';\n//import MapSideBarRoutes from 'containers/MapSideBarRoutes'\n//import MapRouteInformationSideBar from 'containers/MapRouteInformationSideBar'\nimport ReactMapboxGl, { GeoJSONLayer, Cluster, Marker } from 'react-mapbox-gl';\n// import RouteFilterMaps from 'containers/RouteFilterMaps'\nimport MapboxGL from 'mapbox-gl';\nimport PaperMarker from 'icons/Markers/Paper';\nimport GlassMarker from 'icons/Markers/Glass';\nimport PlasticMarker from 'icons/Markers/Plastic';\nimport BinMarker from 'icons/Markers/Bin';\nimport decodeType from 'utils/decodeType';\n\nimport moment from 'moment';\nimport Fullscreen from 'icons/Fullscreen';\nimport BackArrow from 'icons/BackArrow';\nimport { Loading } from 'element-react';\nimport { decodeColor } from 'utils';\nimport {\n MAPCENTER,\n MAPINITIALBOUNDS,\n ZOOMLEVEL,\n MAXZOOMLEVEL,\n ADDITIONAL_FEATURES,\n} from 'config';\nimport { withTranslation } from 'react-i18next';\nimport ResponsiveHandler from 'components/ResponsiveHandler';\n\nimport { Theme } from 'globalStyles';\n\nconst COLORS = {\n plastic: Theme.warningColor,\n paper: Theme.infoColor,\n glass: Theme.successColor,\n bio_waste: Theme.darkPrimaryColor,\n undifferentiated: Theme.darkPrimaryColor,\n polygonFill: Theme.lightPrimaryColor,\n polygonLine: Theme.primaryColor,\n};\n\nlet polygonPaint = (MapboxGL.FillPaint = {\n 'fill-color': COLORS['polygonFill'],\n 'fill-opacity': 0.3,\n});\n\nlet linePaint = (MapboxGL.FillPaint = {\n 'line-color': COLORS['polygonLine'],\n 'line-opacity': 0.6,\n 'line-width': 2,\n});\n\nconst getMarker = (\n marker,\n equipmentInDetail,\n dimensions = { height: '20px', width: '20px' }\n) => {\n switch (marker.type) {\n case 'y':\n return ;\n case 'plastic':\n return ;\n case 'b':\n return ;\n case 'paper':\n return ;\n case 'g' || 'glass':\n return ;\n case 'glass':\n return ;\n case 'u':\n return ;\n case 'undifferentiated':\n return ;\n\n default:\n return ;\n }\n};\n\nconst FirstStageLegend = ({ props }) => {\n const { t } = props;\n return (\n \n {!props.equipmentInDetail && (\n \n {`${t('map.containers')}: ${\n props.globalNumberOfContainers ? props.globalNumberOfContainers : 0\n }`}\n \n )}\n \n \n \n\n {t('map.area')}\n \n \n \n );\n};\n\nconst SecondStageLegend = ({ props }) => {\n const { t, responsiveHandlers } = props;\n return (\n \n {!props.equipmentInDetail && (\n \n {`${t('map.containers')}: ${\n props.globalNumberOfContainers ? props.globalNumberOfContainers : 0\n }`}\n \n )}\n \n \n \n {t('map.area')}\n \n\n \n \n {4}\n \n {t('map.cluster')}\n \n {AVAILABLE_CONTAINERS.map((key, index) => (\n \n {getMarker({ type: key }, null, {\n height: responsiveHandlers.height > 750 ? '26px' : '20px',\n width: responsiveHandlers.height > 750 ? '26px' : '20px',\n })}\n {t(`map.${key}`)}\n \n ))}\n \n \n );\n};\n\n/*eslint-disable*/\n\nconst Map = ReactMapboxGl({\n accessToken: MAP_BOX_KEY,\n maxZoom: MAXZOOMLEVEL,\n});\n\nclass ContainerMapAreas extends Component {\n constructor(props) {\n super(props);\n this.state = {\n markerAddress: 'NO_ADDRESS',\n activeCollapse: ['1', '2'],\n zoom: ZOOMLEVEL,\n center: MAPCENTER,\n popupLocation: null,\n user: null,\n activeTab: '1',\n addresses: {},\n mapBounds: MAPINITIALBOUNDS,\n linkedArea: null,\n };\n }\n\n findNewBounds = (nextProps) => {\n let delay = 0;\n if (nextProps.equipmentInDetail) {\n var bounds = new MapboxGL.LngLatBounds();\n bounds.extend(nextProps.equipmentInDetail.location?.coordinates);\n if (nextProps.equipmentInDetail.location?.coordinates) {\n setTimeout(\n () =>\n this.setState({\n mapBounds: [\n [bounds._sw.lng, bounds._sw.lat],\n [bounds._ne.lng, bounds._ne.lat],\n ],\n }),\n delay\n );\n }\n } else if (nextProps.linkedArea) {\n var bounds = new MapboxGL.LngLatBounds();\n nextProps.linkedArea.polygon.coordinates[0][0].forEach(function (\n feature\n ) {\n bounds.extend(feature);\n });\n setTimeout(\n () =>\n this.setState({\n mapBounds: [\n [bounds._sw.lng, bounds._sw.lat],\n [bounds._ne.lng, bounds._ne.lat],\n ],\n }),\n delay\n );\n } else if (nextProps.areas.length) {\n var bounds = new MapboxGL.LngLatBounds();\n nextProps.areas.forEach(function (feature) {\n feature.polygon.coordinates[0][0].forEach(function (feat) {\n bounds.extend(feat);\n });\n });\n setTimeout(\n () =>\n this.setState({\n mapBounds: [\n [bounds._sw.lng, bounds._sw.lat],\n [bounds._ne.lng, bounds._ne.lat],\n ],\n }),\n delay\n );\n }\n };\n\n showPopup(marker) {\n this.setState({\n center: [marker.location.coordinates[0], marker.location.coordinates[1]],\n zoom: [20],\n popupLocation: [\n marker.location.coordinates[0],\n marker.location.coordinates[1],\n ],\n popedArea: { ...marker, color: decodeColor(marker.type) },\n });\n }\n\n closePopup = () => {\n this.setState({\n popedArea: null,\n });\n };\n\n resetZoom() {\n this.resetMapBounds();\n }\n\n componentWillReceiveProps(nextProps) {\n if (\n nextProps.polygons !== this.props.polygons &&\n this.state.popedArea &&\n nextProps.polygons.filter(\n (marker) => marker.id === this.state.popedArea.id\n ).length === 0\n ) {\n this.closePopup();\n }\n if (this.props.linkedArea !== nextProps.linkedArea) {\n this.findNewBounds(nextProps);\n } else if (this.props.areas !== nextProps.areas && nextProps.areas) {\n this.findNewBounds(nextProps);\n } else if (nextProps.equipmentInDetail !== this.props.equipmentInDetail) {\n this.findNewBounds(nextProps);\n }\n }\n\n componentDidMount() {\n if (this.props.linkedArea) {\n var bounds = new MapboxGL.LngLatBounds();\n this.props.linkedArea.polygon.coordinates[0].forEach(function (feature) {\n bounds.extend(feature);\n });\n setTimeout(\n () =>\n this.setState({\n mapBounds: [\n [bounds._sw.lng, bounds._sw.lat],\n [bounds._ne.lng, bounds._ne.lat],\n ],\n }),\n 200\n );\n }\n }\n\n showCluster(coordinates, userColection) {\n const { setEquipmentInDetail } = this.props;\n // setEquipmentInDetail(null);\n let zoom = this.map.getZoom();\n if (this.state.zoom < 20) {\n zoom = [parseInt(zoom) + 3];\n } else {\n zoom = [parseInt(zoom)];\n }\n this.setState({ center: coordinates, zoom: zoom });\n }\n\n clusterMarker = (coordinates, pointCount, getLeaves) => {\n let leaves = getLeaves();\n let userColection = [];\n for (let i = 0; i < leaves.length; i++) {\n userColection.push(leaves[i].props.markerInfo);\n }\n\n const aux = leaves[0].props.markerInfo;\n\n const findArea = this.props.areas.filter(\n (area) => area.id === aux.area.id\n )[0];\n\n return (\n {\n if (!this.props.linkedArea) this.props.setLinkedArea(findArea);\n else if (this.props.linkedArea.id !== findArea.id)\n this.props.setLinkedArea(findArea);\n }}\n >\n \n {pointCount}\n \n \n );\n };\n\n render() {\n const {\n areas,\n linkedArea,\n loading,\n setLinkedArea,\n equipmentInDetail,\n setEquipmentInDetail,\n areaEquipments,\n t,\n } = this.props;\n const { center, zoom } = this.state;\n\n return (\n \n this.closePopup}\n onStyleLoad={(el) => (this.map = el)}\n zoom={zoom}\n center={center}\n >\n {loading && }\n {!equipmentInDetail &&\n areas &&\n areas.map((area, index) => (\n \n {!linkedArea || linkedArea.id === area.id ? (\n \n {\n if (!linkedArea) {\n this.map.getCanvas().style.cursor = 'pointer';\n }\n }}\n fillOnMouseLeave={(e) => {\n this.map.getCanvas().style.cursor = '';\n }}\n fillOnClick={() => {\n if (linkedArea && linkedArea.id !== area.id) {\n setLinkedArea(area);\n }\n if (!linkedArea) {\n setLinkedArea(area);\n }\n }}\n />\n\n \n \n ) : (\n \n )}\n \n ))}\n {areaEquipments &&\n areaEquipments.length > 0 &&\n areas.map((area) => (\n \n {areaEquipments\n .filter((equipment) =>\n equipment.area ? equipment.area.id === area.id : false\n )\n .map((marker, index) => (\n {\n e.stopPropagation();\n setEquipmentInDetail({ ...marker });\n }}\n >\n {getMarker(marker, equipmentInDetail, {\n height:\n equipmentInDetail != null &&\n equipmentInDetail.id === marker.id\n ? '40px'\n : '30px',\n width:\n equipmentInDetail != null &&\n equipmentInDetail.id === marker.id\n ? '40px'\n : '30px',\n })}\n \n ))}\n \n ))}\n\n \n {!linkedArea ? (\n \n \n {t('map.click_area')}\n \n ) : !equipmentInDetail ? (\n \n {areas && areas.length > 1 && (\n {\n setEquipmentInDetail(null);\n setLinkedArea(null);\n }}\n >\n \n {t('map.see_all')}\n \n )}\n \n \n {t('map.click_device')}\n \n \n ) : (\n \n {areas && areas.length > 1 && (\n {\n setEquipmentInDetail(null);\n setLinkedArea(null);\n }}\n >\n \n {t('map.see_all')}\n \n )}\n setEquipmentInDetail(null)}\n >\n \n {t('map.view_all')}\n \n \n )}\n \n\n {!linkedArea ? (\n \n ) : (\n !equipmentInDetail && \n )}\n\n {equipmentInDetail && (\n
\n \n \n \n {t('map.container')}\n {equipmentInDetail.name}\n \n {equipmentInDetail.type != null && (\n \n {t('table.type')}\n \n {t(`table.${decodeType(equipmentInDetail.type)}`)}\n \n \n )}\n {equipmentInDetail.address != null && (\n \n {t('map.address')}\n \n {equipmentInDetail.address}\n \n \n )}\n {equipmentInDetail.tags != null && (\n \n {t('map.number_users')}\n \n {equipmentInDetail.tags != null\n ? equipmentInDetail.tags\n : '-'}\n \n \n )}\n {equipmentInDetail.fillLevel != null &&\n !isNaN(Number(equipmentInDetail.fillLevel)) && (\n \n {t('map.fill_level')}\n \n {Number(equipmentInDetail.fillLevel).toFixed(2)}\n \n \n )}\n {equipmentInDetail.capacity != null && (\n \n {t('map.capacity')}\n \n {equipmentInDetail.capacity}\n \n \n )}\n {ADDITIONAL_FEATURES.includes('deposits') && (\n \n {t('map.last_drop')}\n \n {equipmentInDetail.lastDrop\n ? moment(equipmentInDetail.lastDrop).format(\n 'DD/MM/YY HH:mm:ss'\n )\n : '-'}\n \n \n )}\n\n {ADDITIONAL_FEATURES.includes('collects') && (\n \n {t('map.last_pickup')}\n \n {equipmentInDetail.lastPickup\n ? moment(equipmentInDetail.lastPickup).format(\n 'DD/MM/YY HH:mm:ss'\n )\n : '-'}\n \n \n )}\n\n {ADDITIONAL_FEATURES.includes('maintenances') && (\n \n \n {t('map.last_maintenance')}\n \n \n {equipmentInDetail.lastMaintenance\n ? moment(equipmentInDetail.lastMaintenance).format(\n 'DD/MM/YY HH:mm:ss'\n )\n : '-'}\n \n \n )}\n \n {t('map.battery')}\n \n {equipmentInDetail.hardwareDevice &&\n equipmentInDetail.hardwareDevice.battery\n ? (\n equipmentInDetail.hardwareDevice.battery / 100\n ).toFixed(3)\n : '-'}\n \n \n \n \n {t('map.last_communication')}\n \n \n {equipmentInDetail.hardwareDevice &&\n equipmentInDetail.hardwareDevice.lastCommunication\n ? moment(\n equipmentInDetail.hardwareDevice.lastCommunication\n ).format('DD/MM/YY HH:mm:ss')\n : '-'}\n \n \n \n \n
\n )}\n \n
\n );\n }\n}\n\nexport default withTranslation()(ResponsiveHandler(Logic(ContainerMapAreas)));\n\nconst Wrapper = styled.div`\n height: 41vh;\n min-height: 440px;\n width: 100%;\n\n ${({ theme }) => theme.smallDesktop`\n min-height: auto;\n`}\n\n @media (max-height: 768px) {\n height: 320px;\n }\n`;\n\nconst PopupComponent = styled.div`\n max-width: 300px;\n\n ${({ theme }) => theme.smallDesktop`\n min-width: 200px;\n `}\n`;\n\nconst Details = styled.div`\n position: absolute;\n z-index: 100;\n background: ${Theme.white};\n bottom: 8px;\n top: 8px;\n right: 8px;\n overflow-y: auto;\n`;\n\nconst PopupBody = styled.div`\n padding: 5px;\n`;\n\nconst PopupBodyText = styled.div`\n margin-top: ${(props) => props.marginTop};\n display: flex;\n text-align: center;\n align-items: center;\n flex-direction: column;\n justify-content: center;\n padding-top: 5px;\n padding-bottom: 5px;\n`;\n\nconst PopupBodyFirst = styled.div`\n font-weight: bold;\n font-size: 12px;\n line-height: 12px;\n display: flex;\n flex-direction: column;\n justify-content: center;\n ${({ theme }) => theme.smallDesktop`\n font-size: 14px;\n line-height: 14px;\n `}\n @media screen and (min-height: 750px) {\n font-size: 12px;\n line-height: 12px;\n }\n`;\nconst PopupBodySecond = styled.div`\n display: flex;\n font-size: 10px;\n line-height: 12px;\n flex-direction: row;\n justify-content: center;\n white-space: normal;\n overflow: hidden;\n text-overflow: ellipsis;\n margin-top: 3px;\n\n ${({ theme }) => theme.smallDesktop`\n font-size: 12px;\n `}\n\n @media screen and (min-height: 950px) {\n margin-top: 5px;\n margin-left: 0;\n }\n`;\n\nconst CustomMap = styled(Map)`\n .mapboxgl-canvas {\n width: 100% !important;\n outline: none;\n }\n\n &.mapboxgl-map {\n font-family: ${Theme.fontFamily};\n font-size: 16px;\n }\n`;\n\nconst MapHelp = styled.div`\n background-color: white;\n padding: 8px 11px;\n font-size: 12px;\n font-weight: 400;\n line-height: 12px;\n margin-bottom: 5px;\n cursor: ${(props) => props.cursor};\n width: fit-content;\n z-index: 100;\n\n ${(props) =>\n props.showAlways &&\n css`\n display: block;\n `}\n\n @media screen and (min-height: 750px) {\n display: block;\n }\n`;\n\nconst HelpsWrapper = styled.div`\n position: absolute;\n top: 8px;\n left: 8px;\n display: flex;\n flex-direction: column;\n /* z-index:100; */\n`;\n\nconst NumberOfContainersWrapper = styled.div`\n padding: 8px 11px 6px 11px;\n font-weight: 400;\n font-size: 8px;\n\n line-height: 12px;\n background-color: ${Theme.white};\n margin-bottom: 10px;\n\n @media screen and (min-height: 750px) {\n display: block;\n font-size: 14px;\n }\n`;\n\nconst MapCaption = styled.div`\n background-color: ${Theme.white};\n padding: 5px;\n font-size: 14px;\n font-weight: 400;\n line-height: 16px;\n z-index: 100;\n`;\n\nconst FlexLegend = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: flex-start;\n align-items: center;\n margin-left: ${(props) => props.marginLeft};\n\n & + & {\n margin-top: 5px;\n }\n`;\n\nconst AreaLegendIcon = styled.div`\n width: 20px;\n height: 20px;\n background-color: ${COLORS['polygonFill']};\n border: 2px solid ${COLORS['polygonLine']};\n border-radius: 50%;\n margin: 0 0 0 1px;\n\n @media screen and (min-height: 750px) {\n height: 26px;\n width: 26px;\n }\n`;\n\nconst LegentTextWrapper = styled.div`\n font-size: 12px;\n line-height: 12px;\n margin-left: 5px;\n margin-left: ${(props) => props.marginLeft};\n`;\n\nconst ClusterMarkerLegend = styled.div`\n width: 20px;\n height: 20px;\n background: ${COLORS['polygonFill']};\n outline: none;\n position: relative;\n cursor: pointer;\n border: 2px solid ${COLORS['polygonLine']};\n border-radius: 50%;\n margin: 0 0 0 1px;\n\n @media screen and (min-height: 750px) {\n height: 26px;\n width: 26px;\n }\n`;\n\nconst ClusterTextLegend = styled.div`\n position: relative;\n left: 50%;\n top: 50%;\n color: ${Theme.textOnPrimary};\n width: fit-content;\n font-family: ${Theme.fontFamily};\n font-size: 12px;\n font-weight: 600;\n line-height: 13px;\n transform: translate(-50%, -50%);\n outline: none;\n cursor: pointer;\n`;\n\nconst MapLoading = styled(Loading)`\n right: 60px !important;\n top: 37px;\n display: flex !important;\n position: absolute !important;\n\n .el-loading-spinner {\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\n\nconst FlexWrapperLegend = styled.div`\n position: absolute;\n bottom: 8px;\n left: 8px;\n display: flex;\n flex-direction: column;\n`;\n\nconst Bold = styled.span`\n font-weight: bold;\n`;\n","/**\n * DoughnutWithText Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport { Doughnut } from \"react-chartjs-2\";\n\nimport { Theme } from \"globalStyles\";\n\n// some of this code is a variation on https://jsfiddle.net/cmyker/u6rr5moq/\nvar originalDoughnutDraw = Chart.controllers.doughnut.prototype.draw;\nChart.helpers.extend(Chart.controllers.doughnut.prototype, {\n draw: function () {\n originalDoughnutDraw.apply(this, arguments);\n\n var chart = this.chart.chart;\n var ctx = chart.ctx;\n var width = chart.width;\n var height = chart.height;\n\n var fontSize = (height / 150).toFixed(2);\n ctx.font = `bold normal ${fontSize}em ${Theme.fontFamily}`;\n ctx.textBaseline = \"middle\";\n\n var text = chart.config.data.text,\n textX = Math.round((width - ctx.measureText(text).width) / 2),\n textY = Math.round(height / 2);\n\n ctx.fillText(text, textX, textY);\n },\n});\n\nexport default ({ children, ...props }) => ;\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n )\n}\n\nexport default SvgComponent\n","/**\n * Dashboard Container Utils\n * Please write a description\n *\n * @author Your Name \n */\n\nexport const GRAPH_COLORS = [\n \"#F4AC45\",\n \"#2C423F\",\n \"#1a73e8\",\n \"#4DA989\",\n \"#f2510e\",\n \"#d298e2\",\n \"#d2737d\",\n \"#156448\",\n \"#C2CDCB\",\n \"#14a9ad\",\n \"#4C5B61\",\n \"#4bb473\",\n \"#6119d0\",\n \"#4ca2f9\",\n \"#c0a43c\",\n \"#79806e\",\n \"#651be6\",\n \"#61da5e\",\n \"#cd2f00\",\n \"#9348af\",\n \"#01ac53\",\n \"#c5a4fb\",\n \"#996635\",\n \"#b11573\",\n \"#63b598\",\n \"#ce7d78\",\n \"#ea9e70\",\n \"#a48a9e\",\n \"#c6e1e8\",\n \"#648177\",\n \"#0d5ac1\",\n \"#75d89e\",\n \"#2f3f94\",\n \"#34891f\",\n \"#2f7b99\",\n \"#da967d\",\n \"#b0d87b\",\n \"#ca4751\",\n \"#7e50a8\",\n \"#11dec1\",\n \"#c4d647\",\n \"#ffdbe1\",\n \"#566ca0\",\n \"#289812\",\n \"#2f1179\",\n \"#935b6d\",\n \"#916988\",\n \"#a4e43f\",\n \"#513d98\",\n \"#aead3a\",\n \"#9e6d71\",\n \"#4b5bdc\",\n \"#0cd36d\",\n \"#250662\",\n \"#cb5bea\",\n \"#228916\",\n \"#ac3e1b\",\n \"#df514a\",\n \"#539397\",\n \"#880977\",\n \"#f697c1\",\n \"#ba96ce\",\n \"#679c9d\",\n \"#c6c42c\",\n \"#5d2c52\",\n \"#48b41b\",\n \"#e1cf3b\",\n \"#5be4f0\",\n \"#57c4d8\",\n \"#a4d17a\",\n \"#225b8\",\n \"#be608b\",\n \"#96b00c\",\n \"#088baf\",\n \"#f158bf\",\n \"#e145ba\",\n \"#ee91e3\",\n \"#05d371\",\n \"#5426e0\",\n \"#4834d0\",\n \"#802234\",\n \"#e0eeb8\",\n \"#6749e8\",\n \"#0971f0\",\n \"#8fb413\",\n \"#b2b4f0\",\n \"#c3c89d\",\n \"#c9a941\",\n \"#41d158\",\n \"#fb21a3\",\n \"#51aed9\",\n \"#5bb32d\",\n \"#807fb\",\n \"#21538e\",\n \"#89d534\",\n \"#d36647\",\n \"#7fb411\",\n \"#0023b8\",\n \"#3b8c2a\",\n \"#986b53\",\n \"#f50422\",\n \"#983f7a\",\n \"#ea24a3\",\n \"#79352c\",\n \"#521250\",\n \"#c79ed2\",\n \"#d6dd92\",\n \"#e33e52\",\n \"#b2be57\",\n \"#1bb699\",\n \"#6b2e5f\",\n \"#64820f\",\n \"#1c271\",\n \"#fa06ec\",\n \"#9cb64a\",\n \"#996c48\",\n \"#9ab9b7\",\n \"#06e052\",\n \"#e3a481\",\n \"#0eb621\",\n \"#fc458e\",\n \"#b2db15\",\n \"#aa226d\",\n \"#792ed8\",\n \"#73872a\",\n \"#520d3a\",\n \"#cefcb8\",\n \"#a5b3d9\",\n \"#7d1d85\",\n \"#c4fd57\",\n \"#f1ae16\",\n \"#8fe22a\",\n \"#ef6e3c\",\n \"#243eeb\",\n \"#1dc18\",\n \"#dd93fd\",\n \"#3f8473\",\n \"#e7dbce\",\n \"#421f79\",\n \"#7a3d93\",\n \"#635f6d\",\n \"#93f2d7\",\n \"#9b5c2a\",\n \"#15b9ee\",\n \"#0f5997\",\n \"#409188\",\n \"#911e20\",\n \"#1350ce\",\n \"#10e5b1\",\n \"#fff4d7\",\n \"#cb2582\",\n \"#ce00be\",\n \"#32d5d6\",\n \"#17232\",\n \"#608572\",\n \"#c79bc2\",\n \"#00f87c\",\n \"#77772a\",\n \"#6995ba\",\n \"#fc6b57\",\n \"#f07815\",\n \"#8fd883\",\n \"#060e27\",\n \"#96e591\",\n \"#21d52e\",\n \"#d00043\",\n \"#b47162\",\n \"#1ec227\",\n \"#4f0f6f\",\n \"#1d1d58\",\n \"#947002\",\n \"#bde052\",\n \"#e08c56\",\n \"#28fcfd\",\n \"#bb09b\",\n \"#36486a\",\n \"#d02e29\",\n \"#1ae6db\",\n \"#3e464c\",\n \"#a84a8f\",\n \"#911e7e\",\n \"#3f16d9\",\n \"#0f525f\",\n \"#ac7c0a\",\n \"#b4c086\",\n \"#c9d730\",\n \"#30cc49\",\n \"#3d6751\",\n \"#fb4c03\",\n \"#640fc1\",\n \"#62c03e\",\n \"#d3493a\",\n \"#88aa0b\",\n \"#406df9\",\n \"#615af0\",\n \"#4be47\",\n \"#2a3434\",\n \"#4a543f\",\n \"#79bca0\",\n \"#a8b8d4\",\n \"#00efd4\",\n \"#7ad236\",\n \"#7260d8\",\n \"#1deaa7\",\n \"#06f43a\",\n \"#823c59\",\n \"#e3d94c\",\n \"#dc1c06\",\n \"#f53b2a\",\n \"#b46238\",\n \"#2dfff6\",\n \"#a82b89\",\n \"#1a8011\",\n \"#436a9f\",\n \"#1a806a\",\n \"#4cf09d\",\n \"#c188a2\",\n \"#67eb4b\",\n \"#b308d3\",\n \"#fc7e41\",\n \"#af3101\",\n \"#ff065\",\n \"#71b1f4\",\n \"#a2f8a5\",\n \"#e23dd0\",\n \"#d3486d\",\n \"#00f7f9\",\n \"#474893\",\n \"#3cec35\",\n \"#1c65cb\",\n \"#5d1d0c\",\n \"#2d7d2a\",\n \"#ff3420\",\n \"#5cdd87\",\n \"#a259a4\",\n \"#e4ac44\",\n \"#1bede6\",\n \"#8798a4\",\n \"#d7790f\",\n \"#b2c24f\",\n \"#de73c2\",\n \"#d70a9c\",\n \"#25b67\",\n \"#88e9b8\",\n \"#c2b0e2\",\n \"#86e98f\",\n \"#ae90e2\",\n \"#1a806b\",\n \"#436a9e\",\n \"#0ec0ff\",\n \"#f812b3\",\n \"#b17fc9\",\n \"#8d6c2f\",\n \"#d3277a\",\n \"#2ca1ae\",\n \"#9685eb\",\n \"#8a96c6\",\n \"#dba2e6\",\n \"#76fc1b\",\n \"#608fa4\",\n \"#20f6ba\",\n \"#07d7f6\",\n \"#dce77a\",\n \"#77ecca\",\n];\n","/**\n * Clients Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic, { INTERVAL_FORM_DEFAULTS } from \"./logic\";\nimport styled, { css } from \"styled-components\";\nimport AnimatedNumber from \"react-animated-number\";\n\nimport { withTranslation } from \"react-i18next\";\nimport { Layout, Card, Carousel, Breadcrumb, Loading } from \"element-react\";\nimport { Theme, media } from \"globalStyles\";\n\nimport { Bar } from \"react-chartjs-2\";\n\nimport ContainerMapAreas from \"containers/ContainerMapAreas\";\nimport IntervalPicker from \"containers/IntervalPicker\";\n\nimport ResponsiveHandler from \"components/ResponsiveHandler\";\nimport StyledButton from \"components/StyledButton\";\nimport GraphIndicator from \"components/GraphIndicator\";\nimport ToggleFilter from \"components/ToggleFilter\";\nimport DoughnutWithText from \"components/DoughnutWithText\";\nimport StyledSelect from \"components/StyledSelect\";\n\nimport Maintenance from \"icons/Maintenance\";\nimport Deposit from \"icons/Deposit\";\nimport Pick from \"icons/Pick\";\nimport Alert from \"icons/Alert\";\n\nimport { ADDITIONAL_FEATURES } from \"config\";\nimport { getIntervalText } from \"utils\";\nimport { GRAPH_COLORS } from \"./utils\";\n\nconst intervalOptions = [\n {\n value: \"day\",\n label: \"day\",\n },\n {\n value: \"month\",\n label: \"month\",\n },\n {\n value: \"year\",\n label: \"year\",\n },\n];\n\nclass Dashboard extends Component {\n constructor(props) {\n super(props);\n this.carouselFirst = React.createRef();\n this.carouselSecond = React.createRef();\n this.carouselThird = React.createRef();\n this.chartRefs = [];\n // https://stackoverflow.com/a/61346857/15423901\n this.setState = this.setState.bind(this);\n }\n\n state = {\n visibleCarousel: 0,\n triggerSet: false,\n changedForm: null,\n };\n\n componentDidMount() {\n this.setState({\n changedForm: this.props.filtersForm,\n });\n }\n\n mapTooltips = (text, data) => {\n return text;\n };\n\n timeIntervalSelect = () => {\n const { filtersForm, filter, fillLevelFilterOptions, t } = this.props;\n const { setFiltersForm, resetFiltersForm, setLinkedArea, download, changeFilter } =\n this.actions;\n\n const { triggerSet, changedForm } = this.state;\n\n return (\n \n {changedForm != null && (\n \n \n this.setState({ triggerSet: false })}\n state={{ changedForm }}\n setState={this.setState}\n />\n \n \n )}\n changeFilter(\"fill_level\", event)}\n value={filter.fill_level}\n options={fillLevelFilterOptions}\n remote={true}\n clearable={true}\n >\n \n {\n resetFiltersForm();\n setLinkedArea(null);\n }}\n >\n {t(\"clear_filters\")}\n \n this.setState({ triggerSet: true })}\n >\n {t(\"apply\")}\n \n \n {t(\"periodic_report\")}\n \n \n \n );\n };\n\n incrementCarousel = (which) => {\n switch (which) {\n case 1:\n this.carouselFirst.current.next();\n break;\n case 2:\n this.carouselSecond.current.next();\n break;\n case 3:\n this.carouselThird.current.next();\n break;\n default:\n break;\n }\n };\n\n decrementCarousel = (which) => {\n switch (which) {\n case 1:\n this.carouselFirst.current.prev();\n break;\n case 2:\n this.carouselSecond.current.prev();\n break;\n case 3:\n this.carouselThird.current.prev();\n break;\n default:\n break;\n }\n };\n\n userIndicators = () => {\n const { activeUsers, t } = this.props;\n const data = {\n labels: [t(\"dashboard.active\"), t(\"dashboard.inactive\")],\n datasets: [\n {\n data: [activeUsers.activeUsers, activeUsers.inactiveUsers],\n backgroundColor: [Theme.primaryColor, Theme.errorColor],\n hoverBackgroundColor: [Theme.lightPrimaryColor, Theme.darkErrorColor],\n },\n ],\n text: `${activeUsers.inactiveUsers}/${\n activeUsers.inactiveUsers + activeUsers.activeUsers\n }`,\n };\n return (\n \n \n \n {t(\"dashboard.user_indicators_title\")}\n \n \n \n \n \n \n \n \n );\n };\n\n alertsIndicators = () => {\n const { alerts, t } = this.props;\n const data = {\n labels: [t(\"dashboard.unresolved\"), t(\"dashboard.resolved\")],\n datasets: [\n {\n data: [alerts.openAlerts, alerts.closedAlerts],\n backgroundColor: [Theme.errorColor, Theme.primaryColor],\n hoverBackgroundColor: [Theme.darkErrorColor, Theme.lightPrimaryColor],\n },\n ],\n text: `${alerts.openAlerts}/${alerts.closedAlerts + alerts.openAlerts}`,\n };\n\n return (\n \n \n \n {t(\"dashboard.alerts_indicators_title\")}\n \n \n \n \n \n \n \n \n );\n };\n\n errorsIndicators = () => {\n const { tickets, t } = this.props;\n\n const data = {\n labels: [t(\"dashboard.unresolved\"), t(\"dashboard.resolved\")],\n datasets: [\n {\n data: [tickets.openErrors, tickets.closedErrors],\n backgroundColor: [Theme.errorColor, Theme.primaryColor],\n hoverBackgroundColor: [Theme.darkErrorColor, Theme.lightPrimaryColor],\n },\n ],\n text: `${tickets.openErrors}/${\n tickets.closedErrors + tickets.openErrors\n }`,\n };\n\n return (\n \n \n \n {t(\"dashboard.errors_indicators_title\")}\n \n \n \n \n \n \n \n \n );\n };\n\n efficientPickupsIndicators = () => {\n const { efficient, t } = this.props;\n\n const data = {\n labels: [t(\"dashboard.efficient\"), t(\"dashboard.inefficient\")],\n datasets: [\n {\n data: [efficient.efficientPickups, efficient.inefficientPickups],\n backgroundColor: [Theme.primaryColor, Theme.errorColor],\n hoverBackgroundColor: [Theme.lightPrimaryColor, Theme.darkErrorColor],\n },\n ],\n text: `${efficient.inefficientPickups}/${\n efficient.inefficientPickups + efficient.efficientPickups\n }`,\n };\n\n return (\n \n \n \n {t(\"dashboard.efficient_indicators_title\")}\n \n \n \n \n \n \n \n \n );\n };\n\n webUsage = () => {\n const { loginCounter, t } = this.props;\n let labels = [];\n let dataAux = [];\n let counter = 0;\n\n if (loginCounter) {\n for (const loginDay of loginCounter) {\n labels.push(loginDay.date);\n dataAux.push(loginDay.logins);\n counter += loginDay.logins;\n }\n }\n\n const data = {\n labels: labels,\n datasets: [\n {\n data: dataAux,\n backgroundColor: GRAPH_COLORS,\n },\n ],\n text: `${counter} Logins`,\n };\n\n return (\n \n \n {t(\"dashboard.logins_counter\")}\n \n \n \n \n \n \n \n );\n };\n\n eventsInterval = () => {\n const { lastEventsInterval, t } = this.props;\n let interval = lastEventsInterval ? lastEventsInterval : \"00:00:00\";\n\n return (\n \n \n {t(\"dashboard.events_interval\")}\n \n \n {interval}\n \n \n \n \n );\n };\n\n createDropTooltip = (tooltipItem, type) => {\n const { t } = this.props;\n return `${tooltipItem.value} ${t(`graph.${type}`)}`;\n };\n\n createTooltipTile = (tooltipItem, data) => {\n return tooltipItem[0].label;\n };\n\n dropsGraph = () => {\n const { drops, loadingDrops, t, numberOfDropsMetrics, responsiveHandlers } =\n this.props;\n\n let labels = [];\n let counter = [];\n\n for (const drop of drops) {\n labels.push(drop.date);\n counter.push(drop.count);\n }\n\n const dataset = [\n {\n label: labels,\n backgroundColor: Theme.secondaryColor,\n borderColor: Theme.secondaryColor,\n fill: false,\n data: counter,\n },\n ];\n\n return (\n \n \n {t(\"dashboard.drops_graph_title\")}\n \n \n \n \n {!loadingDrops && (\n (this.chartRefs[\"drops\"] = reference)}\n data={{\n labels: labels,\n datasets: dataset,\n }}\n style={{ height: \"100%\" }}\n options={{\n legend: {\n display: false,\n position: \"top\",\n },\n maintainAspectRatio: false,\n responsive: true,\n scales: {\n yAxes: [\n {\n stacked: true,\n ticks: {\n suggestedMin: 0,\n suggestedMax: 10,\n },\n },\n ],\n xAxes: [\n {\n stacked: true,\n ticks: {\n autoSkip: true,\n maxRotation:\n responsiveHandlers.isMobile ||\n responsiveHandlers.isTablet\n ? 0\n : 70,\n minRotation: 0,\n maxTicksLimit:\n responsiveHandlers.isMobile ||\n responsiveHandlers.isTablet\n ? 12\n : 31,\n },\n },\n ],\n },\n tooltips: {\n // Disable the on-canvas tooltip\n backgroundColor: \"#FFFFFF\",\n bodyFontColor: \"#000000\",\n titleFontColor: \"#000000\",\n borderColor: \"rgba(0,0,0,1)\",\n borderWidth: \"0.5\",\n callbacks: {\n title: (tooltipItem, data) => {\n return this.createTooltipTile(tooltipItem, data);\n },\n label: (tooltipItem, data) => {\n return this.createDropTooltip(tooltipItem, \"drops\");\n },\n },\n },\n animation: {\n onComplete: (e) => {\n if (e.numSteps > 0 && this.state.dropsReady === false) {\n this.setState({ dropsReady: true });\n }\n },\n },\n }}\n />\n )}\n \n {numberOfDropsMetrics != null && (\n \n \n \n \n \n )}\n \n \n \n );\n };\n\n picksGraph = () => {\n const {\n picks,\n loadingPicks,\n t,\n responsiveHandlers,\n // numberOfPicksMetrics,\n } = this.props;\n\n let labels = [];\n let counter = [];\n\n for (const pick of picks) {\n labels.push(pick.date);\n counter.push(pick.count);\n }\n\n const dataset = [\n {\n label: labels,\n backgroundColor: Theme.secondaryColor,\n borderColor: Theme.secondaryColor,\n fill: false,\n data: counter,\n },\n ];\n\n return (\n \n \n {t(\"dashboard.picks_graph_title\")}\n \n \n \n \n {!loadingPicks && (\n (this.chartRefs[\"picks\"] = reference)}\n data={{\n labels: labels,\n datasets: dataset,\n }}\n style={{ height: \"100%\" }}\n options={{\n legend: {\n display: false,\n position: \"top\",\n },\n maintainAspectRatio: false,\n responsive: true,\n scales: {\n yAxes: [\n {\n stacked: true,\n ticks: {\n suggestedMin: 0,\n suggestedMax: 10,\n },\n },\n ],\n xAxes: [\n {\n stacked: true,\n ticks: {\n autoSkip: true,\n maxRotation:\n responsiveHandlers.isMobile ||\n responsiveHandlers.isTablet\n ? 0\n : 70,\n minRotation: 0,\n maxTicksLimit:\n responsiveHandlers.isMobile ||\n responsiveHandlers.isTablet\n ? 12\n : 31,\n },\n },\n ],\n },\n tooltips: {\n // Disable the on-canvas tooltip\n backgroundColor: \"#FFFFFF\",\n bodyFontColor: \"#000000\",\n titleFontColor: \"#000000\",\n borderColor: \"rgba(0,0,0,1)\",\n borderWidth: \"0.5\",\n callbacks: {\n title: (tooltipItem, data) => {\n return this.createTooltipTile(tooltipItem, data);\n },\n label: (tooltipItem, data) => {\n return this.createDropTooltip(tooltipItem, \"picks\");\n },\n },\n },\n animation: {\n onComplete: (e) => {\n if (e.numSteps > 0) {\n this.setState({ picksReady: true });\n }\n },\n },\n }}\n />\n )}\n \n \n \n \n );\n };\n\n maintenancesGraph = () => {\n const { maintenances, loadingMaintenances, t, responsiveHandlers } =\n this.props;\n\n let labels = [];\n let counter = [];\n\n for (const maintenance of maintenances) {\n labels.push(maintenance.date);\n counter.push(maintenance.count);\n }\n\n const dataset = [\n {\n label: labels,\n backgroundColor: Theme.secondaryColor,\n borderColor: Theme.secondaryColor,\n fill: false,\n data: counter,\n },\n ];\n\n return (\n \n \n {t(\"dashboard.maintenances_graph_title\")}\n \n \n \n \n {!loadingMaintenances && (\n \n (this.chartRefs[\"maintenances\"] = reference)\n }\n data={{\n labels: labels,\n datasets: dataset,\n }}\n style={{ height: \"100%\" }}\n options={{\n legend: {\n display: false,\n position: \"top\",\n },\n maintainAspectRatio: false,\n responsive: true,\n scales: {\n yAxes: [\n {\n stacked: true,\n ticks: {\n suggestedMin: 0,\n suggestedMax: 10,\n },\n },\n ],\n xAxes: [\n {\n stacked: true,\n ticks: {\n autoSkip: true,\n maxRotation:\n responsiveHandlers.isMobile ||\n responsiveHandlers.isTablet\n ? 0\n : 70,\n minRotation: 0,\n maxTicksLimit:\n responsiveHandlers.isMobile ||\n responsiveHandlers.isTablet\n ? 12\n : 31,\n },\n },\n ],\n },\n tooltips: {\n // Disable the on-canvas tooltip\n backgroundColor: \"#FFFFFF\",\n bodyFontColor: \"#000000\",\n titleFontColor: \"#000000\",\n borderColor: \"rgba(0,0,0,1)\",\n borderWidth: \"0.5\",\n callbacks: {\n title: (tooltipItem, data) => {\n return this.createTooltipTile(tooltipItem, data);\n },\n label: (tooltipItem, data) => {\n return this.createDropTooltip(\n tooltipItem,\n \"maintenances\"\n );\n },\n },\n },\n animation: {\n onComplete: (e) => {\n if (\n e.numSteps > 0 &&\n this.state.maintenancesReady === false\n ) {\n this.setState({ maintenancesReady: true });\n }\n },\n },\n }}\n />\n )}\n \n \n \n \n );\n };\n\n alertsMetrics = () => {\n const { alerts, t } = this.props;\n return (\n \n \n \n \n \n \n \n \n \n {t(\"dashboard.alerts_metrics_title\")}\n \n \n \n );\n };\n\n dropsMetrics = () => {\n const { globalNumberOfDeposits, t } = this.props;\n return (\n \n \n \n \n \n \n \n \n \n {t(\"dashboard.drops_metrics_title\")}\n \n \n \n );\n };\n\n maintenancesMetrics = () => {\n const { globalNumberOfMaintenances, t } = this.props;\n return (\n \n \n \n \n \n \n \n \n \n {t(\"dashboard.maintenances_metrics_title\")}\n \n \n \n );\n };\n\n collectsMetrics = () => {\n const { globalNumberOfCollects, t } = this.props;\n return (\n \n \n \n \n \n \n \n \n \n {t(\"dashboard.collects_metrics_title\")}\n \n \n \n );\n };\n\n mostUsedContainersStatic = () => {\n const { mostUsedContainers, t } = this.props;\n \n return (\n \n \n {t(\"dashboard.most_used_containers\")}\n \n \n {mostUsedContainers && mostUsedContainers.length ? (\n mostUsedContainers.map((el, index) => {\n return (\n \n {index !== 0 && (\n \n )}\n this.selectMostUsedContainer(el)}>\n \n \n \n \n \n \n \n \n {el.name}\n \n \n \n \n );\n })\n ) : (\n \n {t(\"no_data\")}\n \n )}\n \n \n );\n };\n\n selectMostUsedContainer = (container) => {\n const { setEquipmentInDetail } = this.actions;\n const { areaEquipments } = this.props;\n \n const getEquipment = areaEquipments.filter((equipment) => equipment.uuid === container.containerUuid)[0];\n setEquipmentInDetail(getEquipment);\n }\n\n handleEnter = (event) => {\n if (event.key === \"Enter\") {\n const { filterEntrances } = this.actions;\n filterEntrances();\n }\n };\n\n render() {\n const { setLinkedArea, setEquipmentInDetail } = this.actions;\n const {\n areasList,\n linkedArea,\n areaEquipments,\n equipmentInDetail,\n loadingAreas,\n loadingEquipments,\n loadingEquipmentInDetail,\n areaEquipmentsNumber,\n t,\n responsiveHandlers,\n } = this.props;\n\n const metricsCards = [\n ADDITIONAL_FEATURES.includes(\"deposits\") && this.dropsMetrics(),\n ADDITIONAL_FEATURES.includes(\"collects\") && this.collectsMetrics(),\n ADDITIONAL_FEATURES.includes(\"maintenances\") &&\n this.maintenancesMetrics(),\n ].filter((el) => el);\n \n const indicatorsDonuts = [\n this.userIndicators(),\n ADDITIONAL_FEATURES.includes(\"alerts\") && this.alertsIndicators(),\n this.errorsIndicators(),\n ADDITIONAL_FEATURES.includes(\"inefficient_pickups_metrics\") &&\n this.efficientPickupsIndicators(),\n ADDITIONAL_FEATURES.includes(\"login_metrics\") && this.webUsage(),\n this.eventsInterval(),\n ].filter((el) => el);\n\n const statsGraphs = [\n ADDITIONAL_FEATURES.includes(\"deposits\") && this.dropsGraph(),\n ADDITIONAL_FEATURES.includes(\"collects\") && this.picksGraph(),\n ADDITIONAL_FEATURES.includes(\"maintenances\") && this.maintenancesGraph(),\n ].filter((el) => el);\n const filteredEquipments = areaEquipments\n ? areaEquipments.reduce(\n (x, y) => (x.findIndex((e) => e.id === y.id) < 0 ? [...x, y] : x),\n []\n )\n : areaEquipments;\n return (\n \n \n \n \n \n setLinkedArea(null)}>\n {t(\"dashboard.title\")}\n \n \n {linkedArea && (\n \n setEquipmentInDetail(null)}>\n {linkedArea.name}\n \n \n )}\n {equipmentInDetail && (\n \n {equipmentInDetail.name}\n \n )}\n \n {this.timeIntervalSelect()}\n \n \n\n \n {\n if (area !== linkedArea) {\n setLinkedArea(area);\n }\n }}\n areaEquipments={filteredEquipments}\n loading={\n loadingAreas || loadingEquipments || loadingEquipmentInDetail\n }\n equipmentInDetail={equipmentInDetail}\n setEquipmentInDetail={(equipment) => {\n if (equipment !== equipmentInDetail) {\n setEquipmentInDetail(equipment);\n }\n }}\n globalNumberOfContainers={areaEquipmentsNumber}\n />\n \n \n \n \n {metricsCards.map((el, index) => {\n return (\n \n {index !== 0 && (\n \n )}\n {el}\n \n );\n })}\n \n \n \n {this.mostUsedContainersStatic()}\n \n \n \n \n {indicatorsDonuts.map((item, index) => {\n return (\n \n {item}\n \n );\n })}\n \n \n \n\n \n 1\n ? responsiveHandlers.isMobile\n ? \"always\"\n : \"hover\"\n : \"never\"\n }\n indicatorPosition={statsGraphs.length > 1 ? \"outside\" : \"none\"}\n ref={this.carouselThird}\n >\n {statsGraphs.map((item, index) => {\n return (\n {item}\n );\n })}\n \n \n \n \n );\n }\n}\n\nexport default withTranslation()(ResponsiveHandler(Logic(Dashboard)));\n\nconst Wrapper = styled.div``;\n\nconst BreakcrumbWrapper = styled.div`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.smallDesktop`\n flex-direction: row;\n `}\n`;\n\nconst CustomCard = styled(Card)`\n height: 100%;\n min-height: ${(props) => props.height};\n margin: ${(props) => props.margin};\n border: ${(props) => props.border + \" !important\"};\n .el-card__body {\n height: 100%;\n }\n`;\n\nconst LayoutColLessPadding = styled(Layout.Col)`\n padding-left: ${(props) => props.paddingSides + \" !important\"};\n padding-right: ${(props) => props.paddingSides + \" !important\"};\n &:first-child {\n padding-left: 0 !important;\n }\n &:last-child {\n padding-right: 0 !important;\n }\n`;\n\nconst CardWrapper = styled(LayoutColLessPadding)`\n &.el-col {\n margin-top: 14px;\n height: 100%;\n }\n\n &.el-col-3,\n &.el-col-4,\n &.el-col-5,\n &.el-col-12,\n &.el-col-16 {\n width: 100%;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col{\n margin-top: 0;\n }\n\n &.el-col-3 {\n width: 10%;\n padding-right: 5px !important;\n }\n \n &.el-col-4{\n width: 17.5%;\n padding-right: 5px !important;\n }\n\n &.el-col-5{\n width: 22.5%;\n }\n\n &.el-col-12{\n width: 50%;\n padding-left: 5px !important;\n }\n\n &.el-col-16{\n width: 66.66667%;\n padding-left: 5px !important;\n }\n`}\n`;\n\nconst CustomLayoutSecondaryRow = styled(Layout.Row)`\n margin-left: 0px !important;\n margin-right: 0px !important;\n height: 100%;\n margin-top: ${(props) => props.marginTop};\n`;\n\nconst GraphsWrapper = styled(CustomLayoutSecondaryRow)`\n display: flex;\n flex-direction: column;\n margin-top: 0;\n\n ${({ theme }) => theme.smallDesktop`\n margin-top: ${(props) => props.marginTop};\n display: block;\n height: calc(55vh - 68px - 4rem - 52px);\n min-height: 289px;\n `}\n`;\n\nconst FlexRowNormal = styled.div`\n display: flex;\n flex-direction: row;\n position: relative;\n width: 100%;\n flex: 100%;\n height: 100%;\n min-height: 440px;\n ${({ theme }) => theme.smallDesktop`\n min-height: auto;\n`}\n`;\n\nconst GraphIndicatorsWrapper = styled.div`\n width: 100%;\n margin-top: 16px;\n padding-top: 20px;\n padding-bottom: 20px;\n padding-left: 14px;\n padding-right: 14px;\n\n display: grid;\n grid-template-columns: 1fr auto 1fr;\n\n ${({ theme }) => theme.smallDesktop`\n display: flex;\n justify-content: space-between;\n width: 20%;\n min-width: 105px;\n flex-direction: column;\n margin-top: -40px;\n `}\n\n ${({ theme }) => theme.desktop`\n display: flex;\n justify-content: space-between;\n width: 12%;\n min-width: 105px;\n flex-direction: column;\n margin-top: -40px;\n `}\n`;\n\nconst GraphWrapper = styled.div`\n position: relative;\n height: 100%;\n width: ${(props) => props.width};\n padding: 5px 10px 10px 10px;\n display: flex;\n justify-content: center;\n align-items: center;\n max-height: 240px;\n`;\n\nconst FillLevelGraphWrapper = styled(GraphWrapper)`\n max-height: 440px;\n ${({ theme }) => theme.smallDesktop`\n max-height: calc(100% - 41px);\n `}\n`;\n\nconst MainGraphWrapper = styled(GraphWrapper)`\n max-height: 440px;\n width: 100%;\n ${({ theme }) => theme.smallDesktop`\n width: 80%;\n max-height: calc(100% - 41px);\n `}\n ${({ theme }) => theme.desktop`\n width: 88%;\n `};\n`;\n\nconst CarousedItemCustom = styled(Carousel.Item)`\n height: 100%;\n h3 {\n margin: 0px !important;\n padding-bottom: 5px;\n }\n padding: 0px 0px;\n`;\n\nconst CustomCarousel = styled(Carousel)`\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);\n &.el-carousel {\n height: 100%;\n background: white;\n }\n .el-carousel__container {\n height: 100%;\n min-height: 440px;\n ${({ theme }) => theme.smallDesktop`\n min-height: auto;\n `}\n }\n`;\n\nconst GraphCustomCarousel = styled(CustomCarousel)`\n .el-carousel__container {\n /* min-height: 558px; */\n min-height: calc(122px + 408px + 40px + 36px);\n\n ${(props) =>\n props.indicatorPosition === \"outside\" &&\n css`\n height: calc(100% - 38px);\n `}\n\n ${({ theme }) => theme.smallDesktop`\n min-height: auto;\n `}\n }\n\n .el-carousel__indicators {\n margin-bottom: 0 !important;\n }\n`;\n\nconst FlexInsideCard = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n`;\n\nconst DoughnutFlexInside = styled.div`\n height: calc(100% - 5rem);\n display: flex;\n flex-direction: row;\n align-items: center;\n`;\n\nconst RightNavWrapper = styled(FlexInsideCard)`\n margin-top: 1rem;\n justify-content: flex-start;\n\n ${({ theme }) => theme.smallDesktop`\n margin-top: 0;\n align-items: center;\n margin-left: auto;\n\n `}\n`;\n\nconst SelectPositioner = styled.div`\n display: grid;\n grid-template-columns: repeat(2, minmax(0, 1fr));\n row-gap: 8px;\n column-gap: 8px;\n\n height: auto;\n padding: 0px 0px 0px 0px;\n width: 100%;\n grid-column: span 2;\n\n ${({ theme }) => theme.desktop`\n grid-template-columns: repeat(3, minmax(0, 1fr));\n column-gap: 8px;\n width: auto;\n grid-column: auto;\n `}\n ${({ theme }) => theme.smallDesktop`\n display: flex;\n column-gap: 8px;\n `}\n`;\n\nconst SmallCardTitle = styled.div`\n color: ${Theme.black};\n font-family: ${Theme.fontFamily};\n font-size: 16px;\n font-weight: 700;\n line-height: 22px;\n text-align: center;\n margin: 0;\n padding: 17px 15px 0px 15px;\n padding: ${(props) => props.margin};\n`;\n\nconst CardTitle = styled.div`\n color: ${Theme.darkInactiveColor};\n font-family: ${Theme.fontFamily};\n font-weight: 500;\n font-size: 14px;\n line-height: 22px;\n margin: 0;\n text-align: center;\n margin: ${(props) => props.margin};\n\n ${media.smallDesktop`\n font-size: 12px;\n margin: 0;\n `}\n`;\n\nconst FlexWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n`;\n\nconst CustomLoading = styled(Loading)`\n display: flex !important;\n width: 100%;\n width: -webkit-fill-available !important;\n flex-direction: column;\n\n ${media.smallDesktop`\n flex-direction: row;\n `}\n\n .el-loading-spinner {\n left: 0px !important;\n top: ${(props) => (props.top ? props.top : \"40px\")};\n display: flex !important;\n justify-content: center;\n\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\n\nconst CustomBreakcrumb = styled(Breadcrumb)`\n .el-breadcrumb__item > span {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n\n .el-breadcrumb__separator {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n`;\n\nconst StaticCardsWrapper = styled.div`\n height: 100%;\n padding: 14px 0;\n min-height: ${(props) => props.height};\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n background: white;\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);\n`;\n\nconst StaticCardIconContainer = styled.div`\n grid-row: 2/3;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst StaticCardTextContainer = styled(StaticCardIconContainer)`\n font-size: 2rem;\n grid-row: 2/3;\n font-weight: bold;\n color: ${Theme.darkPrimaryColor};\n`;\n\nconst MostUsedContainersWrapper = styled.div`\n display: flex;\n flex-direction: column;\n text-align: center;\n height: 100%;\n overflow: auto;\n padding: 8px;\n`;\n\nconst InsideMostUsedContainer = styled.div`\n display: flex;\n flex-direction: column;\n min-height: 78px;\n height: 100%;\n padding: 8px;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n`;\n\nconst CardInsideWrapper = styled.div`\n display: flex;\n flex-direction: column;\n height: 100%;\n padding: 8px;\n align-items: center;\n justify-content: center;\n`;\n\nconst SectionInfo = styled(AnimatedNumber)`\n margin: 0 0 0 8px;\n color: ${Theme.black};\n font-weight: 700;\n font-size: 24px;\n line-height: 24px;\n display: flex;\n flex-direction: column;\n width: fit-content;\n background: transparent !important;\n`;\n\nconst Divider = styled.div`\n background-color: ${Theme.lightInactiveColor};\n margin: auto auto;\n width: 1px;\n height: 90%;\n\n ${media.smallDesktop`\n\n margin: 0 auto;\n width: 90%;\n height: 1px;\n `}\n`;\n\nconst AlwaysHorizontalDivider = styled.div`\n background-color: ${Theme.lightInactiveColor};\n\n margin: 0 auto;\n width: 90%;\n height: 1px;\n`;\n\nconst ButtonWrapper = styled(FlexWrapper)`\n display: grid;\n\n grid-column: span 2;\n grid-gap: 8px;\n\n grid-template-columns: repeat(2, minmax(0, 1fr));\n margin-left: 0;\n\n ${({ theme }) => theme.smallDesktop`\n display flex;\n margin-left: 0;\n column-gap: 8px;\n grid-template-columns: auto auto;\n\n `}\n ${({ theme }) => theme.desktop`\n display flex;\n margin-left: 0;\n column-gap: 8px;\n \n `}\n`;\n\nexport const DateFilterWrapper = styled.div`\n grid-column: span 2;\n ${({ theme }) => theme.smallDesktop`\n grid-column: span 1;\n\n `}\n`;\n\nconst TimeStamp = styled.span`\n font-size: 1.5rem;\n font-weight: 800;\n`;\n","import moment from \"moment\";\n\n\nexport const mapLabelsAndData = (data, start, end, type, i18n) => {\n let labels = [];\n let dataValues = [];\n let labelsKeys = [\"\"];\n let currentYearData = {};\n let format = \"DD/MM/YY\";\n let total = 0;\n switch (type) {\n case \"day\":\n format = \"DD/MM/YY\";\n break;\n case \"month\":\n format = \"MM/YYYY\";\n break;\n case \"year\":\n format = \"YYYY\";\n break;\n default:\n format = \"DD/MM/YY\";\n break;\n }\n\n let startTime = start;\n let endTime = end;\n while (startTime.isSameOrBefore(endTime, type)) {\n const toJoin = [moment(startTime).format(format)];\n toJoin.forEach((el) => (currentYearData[el] = 0));\n labels = [...labels, ...toJoin];\n startTime.add(1, type);\n }\n data.forEach((value) => {\n currentYearData[moment(value.dateTime).format(format)] += Number(\n value.count\n );\n total += value.count;\n });\n\n dataValues = [Object.values(currentYearData)];\n\n return { labels, data: dataValues, labelsKeys, total };\n};\n","/**\n * Areas Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport { kea } from \"kea\";\n\nimport { put, call } from \"redux-saga/effects\";\nimport { delay } from \"redux-saga\";\nimport { BASE_API_URL, API_DATE_FORMAT } from \"config\";\n//import { } from 'utils'\n//import { } from './utils'\n\nimport PropTypes from \"prop-types\";\n//import * as Check from 'validations'\nimport axios from \"axios\";\nimport { decodeColor } from \"utils\";\nimport moment from \"moment\";\nimport { mapLabelsAndData } from \"./dataFetching\";\n\nimport AppLogic from \"containers/App/logic\";\n\nconst EVENTSURL = BASE_API_URL + \"events/\";\nconst EQUIPMENTSSURL = BASE_API_URL + \"min-containers/\";\n\nconst EVENTSBYDAYURLV2 = BASE_API_URL + \"v2/events-by-day/\";\nconst ALERTSURL = BASE_API_URL + \"alerts/\";\n\nexport const INTERVAL_FORM_DEFAULTS = {\n start: {\n value: moment().startOf(\"month\"),\n },\n end: {\n value: moment(),\n },\n interval: {\n value: \"day\",\n },\n};\n\nexport default kea({\n path: () => [\"scenes\", \"ClientDashboard\"],\n\n connect: {\n props: [AppLogic, [\"user\"]],\n actions: [\n AppLogic,\n [\n \"logout\",\n \"watchEvents\",\n \"changeWatchingEvents\",\n \"setWebSocketHanlder\",\n \"getCurrentUser\",\n ],\n ],\n },\n\n actions: () => ({\n changeFiltersForm: (key, value) => ({ key, value }),\n setFiltersForm: (form) => ({ form }),\n resetFiltersForm: () => true,\n fetchAreasEquipments: () => true,\n fetchEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n fetchDropsList: () => true,\n setDropsNumber: (number) => ({ number }),\n setGlobalNumberOfAlerts: (number) => ({ number }),\n\n setPagination: (pag) => ({ pag }),\n\n setDropsList: (list) => ({ list }),\n\n setFilteredEquipments: (equipments) => ({ equipments }),\n updateFilteredEquipments: (equipments) => ({ equipments }),\n setFilteredEquipmentsNumber: (number) => ({ number }),\n\n setEquipmentInDetail: (equipment) => ({ equipment }),\n\n triggerFetch: () => true,\n\n fetchDrops: (data) => ({ data }),\n setDropsLabels: (labels) => ({ labels }),\n setDropsLabelsKeys: (labels) => ({ labels }),\n setDrops: (data) => ({ data }),\n setLoadingDrops: (loading) => loading,\n\n setSelectOptions: (options) => ({ options }),\n reset: () => true,\n }),\n\n reducers: ({ actions }) => ({\n dropsList: [\n null,\n PropTypes.array,\n {\n [actions.setDropsList]: (state, { list }) => list,\n [actions.reset]: () => null,\n },\n ],\n dropsCount: [\n 0,\n PropTypes.number,\n {\n [actions.setDropsNumber]: (state, { number }) => number,\n [actions.reset]: () => 0,\n },\n ],\n\n pagination: [\n { offset: 1, limit: 10 },\n PropTypes.object,\n {\n [actions.setPagination]: (state, { pag }) => pag,\n [actions.setFiltersForm]: (state) => ({ ...state, offset: 1 }),\n [actions.setEquipmentInDetail]: (state) => ({ ...state, offset: 1 }),\n [actions.reset]: () => ({ offset: 1, limit: 10 }),\n },\n ],\n\n filteredEquipments: [\n null,\n PropTypes.array,\n {\n [actions.setFilteredEquipments]: (state, { equipments }) => equipments,\n [actions.updateFilteredEquipments]: (state, { equipments }) => [\n ...state,\n ...equipments,\n ],\n [actions.reset]: () => null,\n },\n ],\n\n filteredEquipmentsNumber: [\n 0,\n PropTypes.number,\n {\n [actions.setFilteredEquipmentsNumber]: (state, { number }) => number,\n [actions.reset]: () => 0,\n },\n ],\n\n equipmentInDetail: [\n null,\n PropTypes.object,\n {\n [actions.setEquipmentInDetail]: (state, { equipment }) => equipment,\n [actions.setFetchedEquipmentInDetailNoFetchs]: (state, { equipment }) =>\n equipment,\n [actions.setLinkedArea]: (state, { area }) => {\n return area === null ? null : state;\n },\n [actions.resetFiltersForm]: () => null,\n [actions.reset]: () => null,\n },\n ],\n\n drops: [\n [],\n PropTypes.array,\n {\n [actions.setDrops]: (state, { data }) => data,\n [actions.reset]: () => [],\n },\n ],\n\n dropsLabels: [\n [],\n PropTypes.array,\n {\n [actions.setDropsLabels]: (state, { labels }) => labels,\n [actions.reset]: () => [],\n },\n ],\n dropsLabelsKeys: [\n [],\n PropTypes.array,\n {\n [actions.setDropsLabelsKeys]: (state, { labels }) => labels,\n [actions.reset]: () => [],\n },\n ],\n\n loadingDrops: [\n false,\n PropTypes.boolean,\n {\n [actions.fetchDrops]: (state, loading) => true,\n [actions.setDrops]: (state, loading) => false,\n\n [actions.reset]: () => false,\n },\n ],\n\n filtersForm: [\n INTERVAL_FORM_DEFAULTS,\n PropTypes.object,\n {\n [actions.changeFiltersForm]: (state, payload) => ({\n ...state,\n [payload.key]: { value: payload.value },\n }),\n [actions.setFiltersForm]: (state, { form }) => ({ ...form }),\n [actions.resetFiltersForm]: (state, payloada) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n [actions.reset]: () => ({ ...INTERVAL_FORM_DEFAULTS }),\n },\n ],\n\n selectOptions: [\n [],\n PropTypes.array,\n {\n [actions.setSelectOptions]: (state, { options }) => options,\n [actions.reset]: () => [],\n },\n ],\n globalNumberOfAlerts: [\n 0,\n PropTypes.number,\n {\n [actions.setGlobalNumberOfAlerts]: (state, { number }) => number,\n [actions.reset]: () => 0,\n },\n ],\n }),\n\n selectors: ({ selectors }) => ({}),\n\n start: function* () {\n const {\n triggerFetch,\n fetchAreasEquipments,\n reset,\n watchEvents,\n setWebSocketHanlder,\n } = this.actions;\n\n yield put(reset());\n\n yield put(triggerFetch());\n yield put(fetchAreasEquipments());\n yield put(setWebSocketHanlder(this.workers.handle));\n yield put(watchEvents());\n },\n\n stop: function* () {\n const { changeWatchingEvents } = this.actions;\n yield put(changeWatchingEvents(false));\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.triggerFetch]: [\n workers.fetchDropsList,\n workers.fetchDrops,\n workers.fetchGlobalNumberOfAlerts,\n ],\n [actions.fetchAreasEquipments]: workers.fetchAreasEquipments,\n [actions.fetchEquipmentInDetailNoFetchs]:\n workers.fetchEquipmentInDetailNoFetchs,\n [actions.fetchDropsList]: workers.fetchDropsList,\n [actions.setPagination]: workers.fetchDropsList,\n [actions.fetchDepositsToPlot]: workers.fetchDrops,\n [actions.setEquipmentInDetail]: [\n workers.fetchEquipmentInDetailNoFetchs,\n workers.fetchDropsList,\n workers.fetchDrops,\n workers.fetchGlobalNumberOfAlerts,\n ],\n [actions.setFiltersForm]: [\n workers.fetchDropsList,\n workers.fetchDrops,\n workers.fetchGlobalNumberOfAlerts,\n ],\n [actions.resetFiltersForm]: [\n workers.fetchDropsList,\n workers.fetchDrops,\n workers.fetchGlobalNumberOfAlerts,\n ],\n }),\n\n workers: {\n *fetchDropsList() {\n yield delay(500);\n\n const user = yield this.get(\"user\");\n const filtersForm = yield this.get(\"filtersForm\");\n const equipmentInDetail = yield this.get(\"equipmentInDetail\");\n\n const { setDropsList, setDropsNumber } = this.actions;\n\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let params = {\n type: \"drop\",\n user: user.id,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf(\"day\").toISOString(),\n ordering: \"-datetime\",\n };\n\n if (equipmentInDetail) {\n params = { ...params, container__id: equipmentInDetail.id };\n }\n const response = yield call(axios.get, EVENTSURL, {\n params,\n });\n if (response.data.results) {\n yield put(setDropsList(response.data.results));\n yield put(setDropsNumber(response.data.count));\n } else {\n yield put(setDropsList([]));\n yield put(setDropsNumber(0));\n }\n } catch (err) {\n console.log({ err });\n yield put(setDropsList([]));\n yield put(setDropsNumber(0));\n }\n },\n\n *fetchDrops(action) {\n yield delay(100);\n const { setDropsLabels, setDrops, setDropsLabelsKeys } = this.actions;\n const user = yield this.get(\"user\");\n const filtersForm = yield this.get(\"filtersForm\");\n const equipmentInDetail = yield this.get(\"equipmentInDetail\");\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let params = {\n type: \"drop\",\n user: user.id,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf(\"day\").toISOString(),\n };\n\n if (equipmentInDetail) {\n params = { ...params, container: equipmentInDetail.id };\n }\n\n try {\n const { data } = yield call(axios.get, EVENTSBYDAYURLV2, {\n params,\n });\n if (data) {\n const response = mapLabelsAndData(\n data,\n filtersForm.start.value.clone(),\n filtersForm.end.value.clone(),\n filtersForm.interval.value\n );\n yield put(setDropsLabels(response.labels));\n yield put(setDrops(response.data));\n yield put(setDropsLabelsKeys(response.labelsKeys));\n }\n } catch (err) {\n console.log({ err });\n\n yield put(setDropsLabels([]));\n yield put(setDrops([]));\n }\n },\n\n *fetchGlobalNumberOfAlerts(action) {\n const { setGlobalNumberOfAlerts } = this.actions;\n const user = yield this.get(\"user\");\n const filtersForm = yield this.get(\"filtersForm\");\n const equipmentInDetail = yield this.get(\"equipmentInDetail\");\n\n try {\n let params = {};\n\n if (equipmentInDetail) {\n params = { container__id: equipmentInDetail.id };\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n const { data } = yield call(axios.get, ALERTSURL, {\n params: {\n ...params,\n limit: 1,\n user: user.id,\n start_date_after: moment(date_after).toISOString(),\n start_date_before: moment(date_before).endOf(\"day\").toISOString(),\n },\n });\n yield put(setGlobalNumberOfAlerts(data.count));\n } catch (err) {\n console.log({ err });\n yield put(setGlobalNumberOfAlerts(0));\n }\n },\n\n *handle(message) {\n const { triggerFetch, fetchEquipmentInDetailNoFetchs } = this.actions;\n const equipmentInDetail = yield this.get(\"equipmentInDetail\");\n\n if (message.event_type === \"event\" && message.content) {\n if (message.event_type === \"event\") {\n if (\n (message.content.type === \"alert\" ||\n message.content.type === \"pick\" ||\n message.content.type === \"drop\") &&\n message.type === \"new\"\n ) {\n yield put(triggerFetch());\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n } else if (\n message.sender &&\n message.sender === \"transaction\" &&\n message.type === \"new\"\n ) {\n yield put(triggerFetch());\n }\n }\n }\n },\n\n *fetchEquipmentInDetailNoFetchs(action) {\n const { setFetchedEquipmentInDetailNoFetchs } = this.actions;\n\n try {\n if (\n action != null &&\n action.payload != null &&\n action.payload.equipment != null &&\n action.payload.equipment.id != null\n ) {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n yield put(setFetchedEquipmentInDetailNoFetchs(data));\n }\n } catch (error) {\n console.log({ error });\n yield put(setFetchedEquipmentInDetailNoFetchs(null));\n }\n },\n\n *fetchAreasEquipments(action) {\n yield delay(600);\n const { setFilteredEquipments, setFilteredEquipmentsNumber } =\n this.actions;\n\n try {\n let next = 1;\n let number = 0;\n\n while (next) {\n let params = {\n limit: 500,\n offset: (next - 1) * 500,\n };\n\n let results = [];\n const { data } = yield call(axios.get, EQUIPMENTSSURL, {\n params,\n });\n\n if (data.results && data.results.length) {\n number = number + data.results.length;\n\n data.results.map((container) => {\n container.color = decodeColor(container.type);\n results.push(container);\n return container;\n });\n }\n next = data.next ? next + 1 : 0;\n\n yield put(setFilteredEquipments(results));\n yield put(setFilteredEquipmentsNumber(number));\n }\n } catch (error) {\n console.log({ error });\n yield put(setFilteredEquipments([]));\n yield put(setFilteredEquipmentsNumber(0));\n }\n },\n },\n});\n","/**\n * ContainerMap Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport { kea } from 'kea'\n//import { put } from 'redux-saga/effects'\n//import { delay } from 'redux-saga'\n//import { } from 'config'\n//import { } from 'utils'\n//import { } from './utils'\n\n//import PropTypes from 'prop-types'\n//import * as Check from 'validations'\n\n\nexport default kea({\n path: () => ['scenes', 'containers', 'ContainerMapClientDashboard'],\n\n actions: () => ({\n\n }),\n\n reducers: ({ actions }) => ({\n\n }),\n\n takeLatest: ({ actions, workers }) => ({\n\n }),\n\n workers: {\n\n }\n\n})\n\n","import React, { Component } from \"react\";\nimport Logic from \"./logic\";\nimport styled, { css } from \"styled-components\";\nimport { MAP_BOX_KEY, AVAILABLE_CONTAINERS } from \"config\";\nimport ReactMapboxGl, { Cluster, Marker } from \"react-mapbox-gl\";\n// import RouteFilterMaps from 'containers/RouteFilterMaps'\nimport MapboxGL from \"mapbox-gl\";\nimport PaperMarker from \"icons/Markers/Paper\";\nimport GlassMarker from \"icons/Markers/Glass\";\nimport PlasticMarker from \"icons/Markers/Plastic\";\nimport BinMarker from \"icons/Markers/Bin\";\nimport decodeType from \"utils/decodeType\";\n\nimport Fullscreen from \"icons/Fullscreen\";\n\nimport {\n MAPCENTER,\n MAPINITIALBOUNDS,\n ZOOMLEVEL,\n MAXZOOMLEVEL,\n} from \"config\";\nimport { withTranslation } from \"react-i18next\";\n\nimport { Theme } from \"globalStyles\";\n/*eslint-disable*/\nimport BackArrow from \"icons/BackArrow\";\nimport ResponsiveHandler from \"components/ResponsiveHandler\";\n\nconst Map = ReactMapboxGl({\n accessToken: MAP_BOX_KEY,\n maxZoom: MAXZOOMLEVEL,\n});\n\nconst COLORS = {\n plastic: Theme.warningColor,\n paper: Theme.infoColor,\n glass: Theme.successColor,\n bio_waste: Theme.darkPrimaryColor,\n undifferentiated: Theme.darkPrimaryColor,\n polygonFill: Theme.lightPrimaryColor,\n polygonLine: Theme.primaryColor,\n};\n\nconst getMarker = (\n marker,\n equipmentInDetail,\n dimensions = { height: \"20px\", width: \"20px\" }\n) => {\n switch (marker.type) {\n case \"y\":\n return ;\n case \"plastic\":\n return ;\n case \"b\":\n return ;\n case \"paper\":\n return ;\n case \"g\" || \"glass\":\n return ;\n case \"glass\":\n return ;\n case \"u\":\n return ;\n case \"undifferentiated\":\n return ;\n\n default:\n return ;\n }\n};\n\nconst FirstStageLegend = ({ props }) => {\n const { t, responsiveHandlers } = props;\n return (\n \n \n \n \n {4}\n \n {t(\"map.cluster\")}\n \n {AVAILABLE_CONTAINERS.map((key, index) => (\n \n {getMarker({ type: key }, null, {\n height: responsiveHandlers.height > 750 ? \"26px\" : \"20px\",\n width: responsiveHandlers.height > 750 ? \"26px\" : \"20px\",\n })}\n {t(`map.${key}`)}\n \n ))}\n \n \n );\n};\n\nclass ContainerMapClientDashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n markerAddress: \"NO_ADDRESS\",\n activeCollapse: [\"1\", \"2\"],\n zoom: ZOOMLEVEL,\n center: MAPCENTER,\n popupLocation: null,\n user: null,\n activeTab: \"1\",\n addresses: {},\n mapBounds: MAPINITIALBOUNDS,\n linkedArea: null,\n dialogVisible: false,\n };\n }\n\n findNewBounds = (nextProps) => {\n let delay = 0;\n\n if (nextProps.equipmentInDetail) {\n var bounds = new MapboxGL.LngLatBounds();\n bounds.extend(nextProps.equipmentInDetail.location.coordinates);\n setTimeout(\n () =>\n this.setState({\n mapBounds: [\n [bounds._sw.lng, bounds._sw.lat],\n [bounds._ne.lng, bounds._ne.lat],\n ],\n }),\n delay\n );\n } else if (nextProps.equipments && nextProps.equipments.length) {\n var bounds = new MapboxGL.LngLatBounds();\n nextProps.equipments.forEach(function (feature) {\n bounds.extend(feature.location.coordinates);\n });\n\n setTimeout(\n () =>\n this.setState({\n mapBounds: [\n [bounds._sw.lng, bounds._sw.lat],\n [bounds._ne.lng, bounds._ne.lat],\n ],\n }),\n 0\n );\n }\n };\n\n closePopup = (e) => {\n this.setState({\n popedArea: null,\n });\n };\n\n resetZoom() {\n this.resetMapBounds();\n }\n\n componentWillReceiveProps(nextProps) {\n if (this.props.equipments !== nextProps.equipments) {\n this.findNewBounds(nextProps);\n }\n if (this.props.linkedArea !== nextProps.linkedArea) {\n this.findNewBounds(nextProps);\n } else if (this.props.areas !== nextProps.areas && nextProps.areas) {\n this.findNewBounds(nextProps);\n } else if (nextProps.equipmentInDetail !== this.props.equipmentInDetail) {\n this.findNewBounds(nextProps);\n }\n }\n\n showCluster(coordinates, userColection) {\n const { setEquipmentInDetail } = this.props;\n // setEquipmentInDetail(null);\n let zoom = this.map.getZoom();\n if (this.state.zoom < 20) {\n zoom = [parseInt(zoom) + 3];\n } else {\n zoom = [parseInt(zoom)];\n }\n this.setState({ center: coordinates, zoom: zoom });\n }\n\n clusterMarker = (coordinates, pointCount, getLeaves) => {\n let leaves = getLeaves();\n let userColection = [];\n for (let i = 0; i < leaves.length; i++) {\n userColection.push(leaves[i].props.markerInfo);\n }\n\n return (\n \n \n {pointCount}\n \n \n );\n };\n\n render() {\n const {\n equipments,\n equipmentInDetail,\n setEquipmentInDetail,\n t,\n } = this.props;\n const { center, zoom } = this.state;\n\n return (\n \n this.closePopup}\n onStyleLoad={(el) => (this.map = el)}\n zoom={zoom}\n center={center}\n >\n {equipments && equipments.length > 0 && (\n \n {equipments.map((marker, index) => (\n setEquipmentInDetail({ ...marker })}\n >\n {getMarker(marker, equipmentInDetail, {\n height:\n equipmentInDetail != null &&\n equipmentInDetail.id === marker.id\n ? \"40px\"\n : \"30px\",\n width:\n equipmentInDetail != null &&\n equipmentInDetail.id === marker.id\n ? \"40px\"\n : \"30px\",\n })}\n \n ))}\n \n )}\n\n \n {!equipmentInDetail ? (\n \n \n {t(\"map.click_device\")}\n \n ) : (\n {\n setEquipmentInDetail(null);\n }}\n showAlways\n >\n \n {t(\"map.view_all\")}\n \n )}\n \n\n {!equipmentInDetail && }\n\n {equipmentInDetail && (\n
\n \n \n \n \n {t(\"map.container\")}\n \n {equipmentInDetail.name}\n \n {equipmentInDetail.type != null && (\n \n {t(\"table.type\")}\n \n {t(`table.${decodeType(equipmentInDetail.type)}`)}\n \n \n )}\n {equipmentInDetail.address != null && (\n \n {t(\"map.address\")}\n \n {equipmentInDetail.address}\n \n \n )}\n {equipmentInDetail.fillLevel != null &&\n !isNaN(Number(equipmentInDetail.fillLevel)) && (\n \n {t(\"map.fill_level\")}\n \n {Number(equipmentInDetail.fillLevel).toFixed(2)}\n \n \n )}\n {equipmentInDetail.capacity != null && (\n \n {t(\"map.capacity\")}\n \n {equipmentInDetail.capacity}\n \n \n )}\n \n \n
\n )}\n \n
\n );\n }\n}\n\nexport default withTranslation()(\n ResponsiveHandler(Logic(ContainerMapClientDashboard))\n);\n\nconst Wrapper = styled.div`\n min-height: 440px;\n\n height: calc(40vh + 15px);\n\n width: 100%;\n\n ${({ theme }) => theme.smallDesktop`\n min-height: auto;\n`}\n\n @media (max-height: 768px) {\n height: 320px;\n }\n`;\n\nconst CustomMap = styled(Map)`\n .mapboxgl-canvas {\n width: 100% !important;\n outline: none;\n }\n &.mapboxgl-map {\n font-family: ${Theme.fontFamily};\n font-size: 16px;\n }\n`;\n\nconst ClusterMarkerLegend = styled.div`\n width: 20px;\n height: 20px;\n background: ${COLORS[\"polygonFill\"]};\n outline: none;\n position: relative;\n cursor: pointer;\n border: 2px solid ${COLORS[\"polygonLine\"]};\n border-radius: 50%;\n margin: 0 0 0 1px;\n\n @media screen and (min-height: 750px) {\n height: 26px;\n width: 26px;\n }\n`;\n\nconst ClusterTextLegend = styled.div`\n position: relative;\n left: 50%;\n top: 50%;\n color: #ffffff;\n width: fit-content;\n font-size: 12px;\n font-weight: 600;\n line-height: 13px;\n transform: translate(-50%, -50%);\n outline: none;\n cursor: pointer;\n`;\n\nconst PopupComponent = styled.div`\n height: auto;\n width: auto;\n\n ${({ theme }) => theme.smallDesktop`\n min-width: 200px;\n `}\n`;\n\nconst Details = styled.div`\n position: absolute;\n z-index: 100;\n background: ${Theme.white};\n bottom: 8px;\n right: 8px;\n margin: auto 0 0;\n height: fit-content;\n\n ${({ theme }) => theme.smallDesktop`\n top: 0;\n bottom: 0;\n right: 8px;\n margin: auto 0;\n `}\n`;\n\nconst PopupBody = styled.div`\n padding: 12px 8px;\n`;\n\nconst PopupBodyText = styled.div`\n padding-top: 2.5px;\n padding-bottom: 2.5px;\n margin-top: ${(props) => props.marginTop};\n display: flex;\n text-align: center;\n justify-content: space-between;\n align-items: center;\n\n @media screen and (min-height: 750px) {\n flex-direction: column;\n justify-content: center;\n padding-top: 5px;\n padding-bottom: 5px;\n }\n`;\n\nconst PopupBodyFirst = styled.div`\n font-weight: bold;\n font-size: 12px;\n line-height: 12px;\n display: flex;\n flex-direction: row;\n justify-content: center;\n ${({ theme }) => theme.smallDesktop`\n font-size: 14px;\n line-height: 14px;\n `}\n @media screen and (min-height: 750px) {\n font-size: 12px;\n line-height: 12px;\n }\n`;\n\nconst PopupBodySecond = styled.div`\n display: flex;\n font-size: 10px;\n line-height: 8px;\n flex-direction: row;\n justify-content: center;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n margin-top: 3px;\n\n ${({ theme }) => theme.smallDesktop`\n font-size: 12px;\n line-height: 12px;\n `}\n\n @media screen and (min-height: 950px) {\n margin-top: 5px;\n margin-left: 0;\n }\n`;\nconst MapHelp = styled.div`\n background-color: white;\n padding: 8px 11px;\n font-size: 12px;\n font-weight: 400;\n line-height: 12px;\n margin-bottom: 5px;\n cursor: ${(props) => props.cursor};\n width: fit-content;\n z-index: 100;\n\n ${(props) =>\n props.showAlways &&\n css`\n display: block;\n `}\n\n @media screen and (min-height: 750px) {\n display: block;\n }\n`;\n\nconst HelpsWrapper = styled.div`\n position: absolute;\n top: 8px;\n left: 8px;\n display: flex;\n flex-direction: column;\n /* z-index: 100; */\n`;\n\nconst Bold = styled.span`\n font-weight: bold;\n`;\n\nconst FlexLegend = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: flex-start;\n align-items: center;\n margin-left: ${(props) => props.marginLeft};\n\n & + & {\n margin-top: 5px;\n }\n`;\n\nconst LegentTextWrapper = styled.div`\n font-size: 12px;\n line-height: 12px;\n margin-left: 5px;\n margin-left: ${(props) => props.marginLeft};\n white-space: nowrap;\n`;\n\nconst MapCaption = styled.div`\n position: absolute;\n bottom: 8px;\n left: 8px;\n background-color: ${Theme.white};\n padding: 5px;\n z-index: 100;\n`;\n\nconst FlexWrapperLegend = styled.div`\n position: absolute;\n bottom: 8px;\n left: 8px;\n display: flex;\n flex-direction: column;\n`;\n","import React from \"react\";\nimport moment from \"moment\";\nimport styled from \"styled-components\";\nimport decodeType from \"utils/decodeType\";\n\nconst columns = [\n {\n label: \"table.date\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"datetime\",\n render: function (data) {\n return {moment(data.datetime).format(\"DD/MM/YYYY HH:mm\")};\n },\n width: 200,\n },\n {\n label: \"table.container\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n sortMethod: function (a, b) {\n if (a.container && a.container.name && b.container && b.container.name) {\n return a.container.name >= b.container.name;\n }\n return false;\n },\n render: function (data) {\n return (\n \n {data.container && data.container.name ? data.container.name : \"-\"}\n \n );\n },\n minWidth: 115,\n },\n {\n label: \"table.type\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data, { t }) {\n return (\n \n {data.container && data.container.type\n ? t(`table.${decodeType(data.container.type)}`)\n : \"-\"}\n \n );\n },\n },\n {\n label: \"table.earned_points\",\n\n sortMethod: function (a, b) {\n if (a != null && b != null) {\n const first = a.earnedPoints != null ? a.earnedPoints : 0;\n const second = b.earnedPoints != null ? b.earnedPoints : 0;\n return first >= second;\n }\n return false;\n },\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"points\",\n render: function (data) {\n return {data.earnedPoints != null ? data.earnedPoints : 0};\n },\n minWidth: 90,\n\n },\n];\n\nconst EllipsisDiv = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n\nexport default columns;\n","import * as React from \"react\";\n\nfunction SvgComponent(props) {\n return (\n \n \n \n );\n}\n\nexport default SvgComponent;\n","import * as React from \"react\";\n\nfunction SvgComponent(props) {\n return (\n \n \n \n );\n}\n\nexport default SvgComponent;\n","/**\n * ClientDepositsTemplate Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled, { css } from \"styled-components\";\nimport { Theme } from \"globalStyles\";\nimport { useTranslation } from \"react-i18next\";\n\nimport moment from \"moment\";\n\nexport default ({ children, ...props }) => {\n const { data } = props;\n const { t } = useTranslation();\n return (\n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm\")}\n \n {data.container && data.container.name ? data.container.name : \"-\"}\n \n {`${t(\"table.earned_points\")}: ${data.earnedPoints ? data.earnedPoints : 0}`}\n
\n );\n};\n\nconst Wrapper = styled.div`\n background: white;\n padding: 16px;\n display: grid;\n grid-template-columns: auto auto;\n grid-template-rows: auto auto;\n row-gap: 8px;\n column-gap: 8px;\n\n border-bottom: 1px solid ${Theme.inactiveColor};\n\n ${(props) =>\n props.error &&\n css`\n border-left: 3px solid ${Theme.errorColor};\n background-color: ${Theme.lightColor};\n `}\n\n ${(props) =>\n props.active &&\n css`\n background-color: ${Theme.activeRowColor};\n background-color: ${Theme.activeRowColor};\n `}\n`;\n\nconst DateTime = styled.div`\n font-weight: 300;\n grid-column: 2/3;\n grid-row: 1/2;\n text-align: right;\n font-size: 12px;\n color: ${Theme.iconDarkColor};\n`;\n\nconst Container = styled.div`\n font-size: 12px;\n grid-column: 1/2;\n grid-row: 1/2;\n font-weight: 700;\n color: ${Theme.iconDarkColor};\n`;\nconst Status = styled.div`\n color: ${Theme.iconDarkColor};\n grid-column: 1/2;\n grid-row: 2/3;\n text-align: left;\n font-size: 12px;\n margin: auto 0;\n`;\n","/**\n * Dashboard Container Utils\n * Please write a description\n *\n * @author Your Name \n */\n\nexport const GRAPH_COLORS = [\n \"#F4AC45\",\n \"#2C423F\",\n \"#1a73e8\",\n \"#4DA989\",\n \"#f2510e\",\n \"#d298e2\",\n \"#d2737d\",\n \"#156448\",\n \"#C2CDCB\",\n \"#14a9ad\",\n \"#4C5B61\",\n \"#4bb473\",\n \"#6119d0\",\n \"#4ca2f9\",\n \"#c0a43c\",\n \"#79806e\",\n \"#651be6\",\n \"#61da5e\",\n \"#cd2f00\",\n \"#9348af\",\n \"#01ac53\",\n \"#c5a4fb\",\n \"#996635\",\n \"#b11573\",\n \"#63b598\",\n \"#ce7d78\",\n \"#ea9e70\",\n \"#a48a9e\",\n \"#c6e1e8\",\n \"#648177\",\n \"#0d5ac1\",\n \"#75d89e\",\n \"#2f3f94\",\n \"#34891f\",\n \"#2f7b99\",\n \"#da967d\",\n \"#b0d87b\",\n \"#ca4751\",\n \"#7e50a8\",\n \"#11dec1\",\n \"#c4d647\",\n \"#ffdbe1\",\n \"#566ca0\",\n \"#289812\",\n \"#2f1179\",\n \"#935b6d\",\n \"#916988\",\n \"#a4e43f\",\n \"#513d98\",\n \"#aead3a\",\n \"#9e6d71\",\n \"#4b5bdc\",\n \"#0cd36d\",\n \"#250662\",\n \"#cb5bea\",\n \"#228916\",\n \"#ac3e1b\",\n \"#df514a\",\n \"#539397\",\n \"#880977\",\n \"#f697c1\",\n \"#ba96ce\",\n \"#679c9d\",\n \"#c6c42c\",\n \"#5d2c52\",\n \"#48b41b\",\n \"#e1cf3b\",\n \"#5be4f0\",\n \"#57c4d8\",\n \"#a4d17a\",\n \"#225b8\",\n \"#be608b\",\n \"#96b00c\",\n \"#088baf\",\n \"#f158bf\",\n \"#e145ba\",\n \"#ee91e3\",\n \"#05d371\",\n \"#5426e0\",\n \"#4834d0\",\n \"#802234\",\n \"#e0eeb8\",\n \"#6749e8\",\n \"#0971f0\",\n \"#8fb413\",\n \"#b2b4f0\",\n \"#c3c89d\",\n \"#c9a941\",\n \"#41d158\",\n \"#fb21a3\",\n \"#51aed9\",\n \"#5bb32d\",\n \"#807fb\",\n \"#21538e\",\n \"#89d534\",\n \"#d36647\",\n \"#7fb411\",\n \"#0023b8\",\n \"#3b8c2a\",\n \"#986b53\",\n \"#f50422\",\n \"#983f7a\",\n \"#ea24a3\",\n \"#79352c\",\n \"#521250\",\n \"#c79ed2\",\n \"#d6dd92\",\n \"#e33e52\",\n \"#b2be57\",\n \"#1bb699\",\n \"#6b2e5f\",\n \"#64820f\",\n \"#1c271\",\n \"#fa06ec\",\n \"#9cb64a\",\n \"#996c48\",\n \"#9ab9b7\",\n \"#06e052\",\n \"#e3a481\",\n \"#0eb621\",\n \"#fc458e\",\n \"#b2db15\",\n \"#aa226d\",\n \"#792ed8\",\n \"#73872a\",\n \"#520d3a\",\n \"#cefcb8\",\n \"#a5b3d9\",\n \"#7d1d85\",\n \"#c4fd57\",\n \"#f1ae16\",\n \"#8fe22a\",\n \"#ef6e3c\",\n \"#243eeb\",\n \"#1dc18\",\n \"#dd93fd\",\n \"#3f8473\",\n \"#e7dbce\",\n \"#421f79\",\n \"#7a3d93\",\n \"#635f6d\",\n \"#93f2d7\",\n \"#9b5c2a\",\n \"#15b9ee\",\n \"#0f5997\",\n \"#409188\",\n \"#911e20\",\n \"#1350ce\",\n \"#10e5b1\",\n \"#fff4d7\",\n \"#cb2582\",\n \"#ce00be\",\n \"#32d5d6\",\n \"#17232\",\n \"#608572\",\n \"#c79bc2\",\n \"#00f87c\",\n \"#77772a\",\n \"#6995ba\",\n \"#fc6b57\",\n \"#f07815\",\n \"#8fd883\",\n \"#060e27\",\n \"#96e591\",\n \"#21d52e\",\n \"#d00043\",\n \"#b47162\",\n \"#1ec227\",\n \"#4f0f6f\",\n \"#1d1d58\",\n \"#947002\",\n \"#bde052\",\n \"#e08c56\",\n \"#28fcfd\",\n \"#bb09b\",\n \"#36486a\",\n \"#d02e29\",\n \"#1ae6db\",\n \"#3e464c\",\n \"#a84a8f\",\n \"#911e7e\",\n \"#3f16d9\",\n \"#0f525f\",\n \"#ac7c0a\",\n \"#b4c086\",\n \"#c9d730\",\n \"#30cc49\",\n \"#3d6751\",\n \"#fb4c03\",\n \"#640fc1\",\n \"#62c03e\",\n \"#d3493a\",\n \"#88aa0b\",\n \"#406df9\",\n \"#615af0\",\n \"#4be47\",\n \"#2a3434\",\n \"#4a543f\",\n \"#79bca0\",\n \"#a8b8d4\",\n \"#00efd4\",\n \"#7ad236\",\n \"#7260d8\",\n \"#1deaa7\",\n \"#06f43a\",\n \"#823c59\",\n \"#e3d94c\",\n \"#dc1c06\",\n \"#f53b2a\",\n \"#b46238\",\n \"#2dfff6\",\n \"#a82b89\",\n \"#1a8011\",\n \"#436a9f\",\n \"#1a806a\",\n \"#4cf09d\",\n \"#c188a2\",\n \"#67eb4b\",\n \"#b308d3\",\n \"#fc7e41\",\n \"#af3101\",\n \"#ff065\",\n \"#71b1f4\",\n \"#a2f8a5\",\n \"#e23dd0\",\n \"#d3486d\",\n \"#00f7f9\",\n \"#474893\",\n \"#3cec35\",\n \"#1c65cb\",\n \"#5d1d0c\",\n \"#2d7d2a\",\n \"#ff3420\",\n \"#5cdd87\",\n \"#a259a4\",\n \"#e4ac44\",\n \"#1bede6\",\n \"#8798a4\",\n \"#d7790f\",\n \"#b2c24f\",\n \"#de73c2\",\n \"#d70a9c\",\n \"#25b67\",\n \"#88e9b8\",\n \"#c2b0e2\",\n \"#86e98f\",\n \"#ae90e2\",\n \"#1a806b\",\n \"#436a9e\",\n \"#0ec0ff\",\n \"#f812b3\",\n \"#b17fc9\",\n \"#8d6c2f\",\n \"#d3277a\",\n \"#2ca1ae\",\n \"#9685eb\",\n \"#8a96c6\",\n \"#dba2e6\",\n \"#76fc1b\",\n \"#608fa4\",\n \"#20f6ba\",\n \"#07d7f6\",\n \"#dce77a\",\n \"#77ecca\",\n];\n","/**\n * Clients Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic, { INTERVAL_FORM_DEFAULTS } from \"./logic\";\nimport styled from \"styled-components\";\nimport { Layout, Card, Loading, Breadcrumb } from \"element-react\";\nimport { withTranslation } from \"react-i18next\";\n\nimport ContainerMapClientDashboard from \"containers/ContainerMapClientDashboard\";\n\nimport { Theme } from \"globalStyles\";\nimport AnimatedNumber from \"react-animated-number\";\n\nimport { Bar } from \"react-chartjs-2\";\n\nimport columns from \"./columns\";\n\nimport ContainerIcon from \"icons/ContainerIcon\";\nimport Alert from \"icons/Alert\";\nimport Deposit from \"icons/Deposit\";\nimport PointsIcon from \"icons/PointsIcon\";\n\nimport IntervalPicker from \"containers/IntervalPicker\";\n\nimport ResponsiveHandler from \"components/ResponsiveHandler\";\nimport ToggleFilter from \"components/ToggleFilter\";\nimport StyledButton from \"components/StyledButton\";\n\nimport StyledMobileTable from \"containers/StyledMobileTable\";\n\nimport StyledTable from \"components/StyledTable\";\nimport ClientDepositsTemplate from \"components/ClientDepositsTemplate\";\n\nimport { GRAPH_COLORS } from \"./utils\";\nimport { ADDITIONAL_FEATURES } from \"config\";\nimport { getIntervalText } from \"utils\";\n\nconst intervalOptions = [\n {\n value: \"day\",\n label: \"day\",\n },\n {\n value: \"month\",\n label: \"month\",\n },\n {\n value: \"year\",\n label: \"year\",\n },\n];\n\nclass ClientDashboard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n iconHeight: 32,\n triggerSet: false,\n changedForm: null,\n };\n this.tableRef = React.createRef();\n this.setState = this.setState.bind(this);\n }\n\n handleEnter = (event) => {\n if (event.key === \"Enter\") {\n const { filterEntrances } = this.actions;\n filterEntrances();\n }\n };\n\n componentDidMount() {\n this.setState({\n changedForm: this.props.filtersForm,\n });\n }\n\n mapTooltips = (text, data) => {\n return text;\n };\n\n timeIntervalSelect = () => {\n const { filtersForm, t } = this.props;\n const {\n setFiltersForm,\n resetFiltersForm,\n changeFiltersForm,\n setEquipmentInDetail,\n } = this.actions;\n\n const { triggerSet, changedForm } = this.state;\n\n return (\n \n {changedForm != null && (\n \n \n this.setState({ triggerSet: false })}\n defaultForm={INTERVAL_FORM_DEFAULTS}\n state={{ changedForm }}\n setState={this.setState}\n />\n \n \n )}\n \n {\n resetFiltersForm();\n setEquipmentInDetail(null);\n }}\n >\n {t(\"clear_filters\")}\n \n this.setState({ triggerSet: true })}\n >\n {t(\"apply\")}\n \n \n \n );\n };\n\n createDropTooltip = (tooltipItem) => {\n const { t } = this.props;\n return `${tooltipItem.value} ${t(\"graph.drops\")}`;\n };\n\n createTooltipTile = (tooltipItem, data) => {\n return tooltipItem[0].label;\n };\n\n render() {\n const { setEquipmentInDetail } =\n this.actions;\n const {\n filteredEquipments,\n equipmentInDetail,\n dropsLabels,\n drops,\n loadingDrops,\n globalNumberOfAlerts,\n dropsCount,\n t,\n dropsLabelsKeys,\n responsiveHandlers,\n dropsList,\n user,\n filteredEquipmentsNumber,\n } = this.props;\n\n const { iconHeight } = this.state;\n\n const areaEquipments = filteredEquipments\n ? filteredEquipments.reduce(\n (x, y) => (x.findIndex((e) => e.id === y.id) < 0 ? [...x, y] : x),\n []\n )\n : filteredEquipments;\n\n return (\n \n \n \n \n \n setEquipmentInDetail(null)}\n >\n {t(\"dashboard.title\")}\n \n \n {equipmentInDetail && (\n \n {equipmentInDetail.name}\n \n )}\n \n {this.timeIntervalSelect()}\n \n \n\n \n \n \n {ADDITIONAL_FEATURES.includes(\"transactions\") && user != null && (\n \n \n \n \n \n \n \n \n \n {t(\"dashboard.points\")}\n \n \n \n )}\n\n \n \n \n \n \n \n \n \n \n {t(\"dashboard.containers\")}\n \n \n \n\n \n \n \n \n \n \n \n \n \n {t(\"dashboard.drops_metrics_title\")}\n \n \n \n\n \n \n \n \n \n \n \n \n \n {t(\"dashboard.alerts_metrics_title\")}\n \n \n \n \n \n\n \n \n setEquipmentInDetail(equipment)\n }\n />\n \n \n\n \n \n \n \n {t(\"dashboard.drops_graph_title\")}\n \n \n \n \n {!loadingDrops && (\n \n this.mapTooltips(label)\n ),\n datasets: drops.map((el, index) => ({\n label: dropsLabelsKeys[index],\n backgroundColor:\n GRAPH_COLORS[index] != null\n ? GRAPH_COLORS[index]\n : Theme.secondaryColor,\n borderColor: Theme.secondaryColor,\n fill: false,\n data: [...el],\n })),\n }}\n style={{ height: \"100%\" }}\n options={{\n legend: {\n display: false,\n position: \"top\",\n },\n maintainAspectRatio: false,\n responsive: true,\n scales: {\n yAxes: [\n {\n stacked: true,\n ticks: {\n suggestedMin: 0,\n suggestedMax: 10,\n },\n },\n ],\n xAxes: [\n {\n stacked: true,\n ticks: {\n autoSkip: true,\n maxRotation:\n responsiveHandlers.isMobile ||\n responsiveHandlers.isTablet\n ? 0\n : 70,\n minRotation: 0,\n maxTicksLimit:\n responsiveHandlers.isMobile ||\n responsiveHandlers.isTablet\n ? 12\n : 31,\n },\n },\n ],\n },\n tooltips: {\n // Disable the on-canvas tooltip\n backgroundColor: \"#FFFFFF\",\n bodyFontColor: \"#000000\",\n titleFontColor: \"#000000\",\n borderColor: \"rgba(0,0,0,1)\",\n borderWidth: \"0.5\",\n callbacks: {\n title: (tooltipItem, data) => {\n return this.createTooltipTile(\n tooltipItem,\n data\n );\n },\n label: (tooltipItem, data) => {\n return this.createDropTooltip(tooltipItem);\n },\n },\n },\n }}\n />\n )}\n \n \n \n \n {ADDITIONAL_FEATURES.includes(\"transactions\") && (\n \n
\n \n \n {responsiveHandlers.isMobile ||\n responsiveHandlers.smallDesktop ? (\n ({\n ...equipment,\n }))\n : []\n }\n template={ClientDepositsTemplate}\n active={(row) =>\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id\n }\n onRowClick={(entrance) => {\n window.scrollTo({\n left: 0,\n top: 0,\n behavior: \"smooth\",\n });\n this.setState({\n transitionEnded: false,\n });\n \n setEquipmentInDetail(entrance.container);\n }}\n margin={0}\n />\n ) : (\n ({ t, ...column }))}\n data={\n dropsList != null\n ? dropsList.map((equipment) => ({\n ...equipment,\n }))\n : []\n }\n height=\"calc(55vh - 112px)\"\n onRowClick={(entrance) => {\n this.setState({\n transitionEnded: false,\n });\n \n setEquipmentInDetail(entrance.container);\n }}\n />\n )}\n \n \n
\n \n )}\n
\n
\n
\n );\n }\n}\n\nexport default withTranslation()(ResponsiveHandler(Logic(ClientDashboard)));\n\nconst Wrapper = styled.div``;\n\nconst SectionInfo = styled(AnimatedNumber)`\n margin: 0 0 0 8px;\n color: ${Theme.black};\n font-weight: 700;\n font-size: 24px;\n line-height: 24px;\n display: flex;\n flex-direction: column;\n width: fit-content;\n background: transparent !important;\n`;\n\nconst BreakcrumbWrapper = styled.div`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.smallDesktop`\n flex-direction: row;\n `}\n`;\n\nconst CustomCard = styled(Card)`\n width: ${(props) => props.width};\n margin: ${(props) => props.margin};\n border: ${(props) => props.border + \" !important\"};\n flex: 0 auto;\n\n & + & {\n margin-top: 8px;\n }\n\n ${({ theme }) => theme.smallDesktop`\n height: ${(props) => props.height};\n\n & + & {\n margin-top: 0;\n margin-left: 16px;\n }\n `}\n\n .el-card__body {\n height: 100%;\n display: flex;\n flex-direction: column;\n flex: 1 auto;\n\n & > div {\n height: 100%;\n }\n }\n\n @media (max-height: 768px) {\n min-height: 280px;\n }\n`;\n\nconst CustomCardTransparent = styled(CustomCard)`\n box-shadow: ${(props) => !props.boxShadow && \"none !important;\"};\n &.el-card {\n background-color: transparent;\n }\n @media (max-height: 768px) {\n &.el-card {\n min-height: auto;\n height: 320px;\n }\n }\n`;\n\nconst CardInsideWrapper = styled.div`\n display: flex;\n flex-direction: column;\n height: 100%;\n padding: 5px;\n align-items: center;\n justify-content: center;\n\n position: relative;\n & + & {\n &::after {\n content: \"\";\n height: 1px;\n width: 90%;\n background-color: ${Theme.lightInactiveColor};\n margin: 0 auto;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n }\n }\n`;\n\nconst CustomLayoutSecondaryRow = styled(Layout.Row)`\n margin-left: 0px !important;\n margin-right: 0px !important;\n margin-top: ${(props) => props.marginTop};\n width: 100%;\n`;\n\nconst MapCardsWrapper = styled(CustomLayoutSecondaryRow)`\n display: flex;\n flex-direction: column;\n\n ${({ theme }) => theme.smallDesktop`\n display: block;\n `}\n`;\n\nconst FlexRowNormal = styled.div`\n display: flex;\n flex-direction: row;\n position: relative;\n width: 100%;\n flex: 100%;\n\n flex-direction: column;\n ${({ theme }) => theme.smallDesktop`\n flex-direction: row;\n `}\n`;\n\nconst GraphFlex = styled(FlexRowNormal)`\n .el-card__body && {\n ${({ theme }) => theme.smallDesktop`\n height: calc(100% - 40px);\n `}\n }\n`;\n\nconst GraphWrapper = styled.div`\n position: relative;\n height: 100%;\n width: 100%;\n width: ${(props) => props.width};\n padding: 4px 10px 12px 25px;\n`;\n\nconst FlexInsideCard = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n`;\n\nconst SmallCardTitle = styled.div`\n color: ${Theme.darkInactiveColor};\n font-family: ${Theme.fontFamily};\n font-weight: 500;\n font-size: 14px;\n line-height: 22px;\n margin: 0;\n text-align: center;\n margin: ${(props) => props.margin};\n\n ${({ theme }) => theme.smallDesktop`\n font-size: 12px;\n margin: 0;\n `}\n`;\n\nconst CustomLoading = styled(Loading)`\n display: flex !important;\n width: -webkit-fill-available !important;\n position: relative;\n width: 100%;\n\n .el-loading-spinner {\n left: 0px !important;\n top: ${(props) => (props.top ? props.top : \"40px\")};\n display: flex !important;\n justify-content: center;\n\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\n\nconst SelectPositioner = styled.div`\n display: grid;\n grid-template-columns: repeat(2, minmax(0, 1fr));\n row-gap: 8px;\n column-gap: 8px;\n\n height: auto;\n padding: 0px 0px 0px 0px;\n width: 100%;\n grid-column: span 2;\n\n ${({ theme }) => theme.desktop`\n grid-template-columns: repeat(3, minmax(0, 1fr));\n column-gap: 8px;\n width: auto;\n grid-column: auto;\n `}\n ${({ theme }) => theme.smallDesktop`\n display: flex;\n column-gap: 8px;\n `}\n`;\n\nconst LayoutColLessPadding = styled(Layout.Col)`\n padding-left: ${(props) => props.paddingSides + \" !important\"};\n padding-right: ${(props) => props.paddingSides + \" !important\"};\n &:first-child {\n padding-left: 0 !important;\n }\n &:last-child {\n padding-right: 0 !important;\n }\n`;\n\nconst MapWrapper = styled(LayoutColLessPadding)`\n &.el-col {\n order: -1;\n width: 100%;\n padding: 0 !important;\n\n ${({ theme }) => theme.smallDesktop`\n width: 83.33333%;\n padding-left: 5px !important;\n `}\n }\n`;\nconst CardsWrapper = styled(LayoutColLessPadding)`\n &.el-col {\n order: 0;\n width: 100%;\n padding: 0 !important;\n margin-top: 16px;\n\n ${({ theme }) => theme.smallDesktop`\n width: 16.66667%;\n padding-right: 5px !important;\n margin-top: 0;\n\n `}\n }\n`;\n\nconst StaticCardTextContainer = styled.div`\n grid-column: 2;\n color: ${Theme.darkPrimaryColor};\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n`;\n\nconst StaticCardIconContainer = styled.div`\n grid-column: 1;\n color: ${Theme.darkPrimaryColor};\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n`;\n\nconst StaticCardsWrapper = styled.div`\n height: ${(props) => props.height};\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n min-height: 280px;\n background: white;\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);\n\n min-height: 440px;\n\n height: calc(40vh + 15px);\n\n width: 100%;\n\n ${({ theme }) => theme.smallDesktop`\n min-height: auto;\n `}\n\n @media (max-height: 768px) {\n height: 320px;\n }\n`;\n\nconst FlexWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n`;\n\nconst CustomBreakcrumb = styled(Breadcrumb)`\n .el-breadcrumb__item > span {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n\n .el-breadcrumb__separator {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n`;\n\nconst RightNavWrapper = styled(FlexInsideCard)`\n margin-top: 1rem;\n justify-content: flex-start;\n ${({ theme }) => theme.smallDesktop`\n margin-top: 0;\n align-items: center;\n margin-left: auto;\n\n `}\n`;\n\nconst GraphTitle = styled.h2`\n color: ${Theme.black};\n font-family: ${Theme.fontFamily};\n font-size: 16px;\n line-height: 22px;\n padding: 17px 15px 0px 15px;\n text-align: center;\n margin: 0;\n padding: ${(props) => props.margin};\n`;\n\nconst ButtonWrapper = styled(FlexWrapper)`\n display: grid;\n\n grid-column: span 2;\n column-gap: 8px;\n\n grid-template-columns: repeat(2, minmax(0, 1fr));\n margin-left: 0;\n\n ${({ theme }) => theme.smallDesktop`\n display flex;\n margin-left: 0;\n column-gap: 8px;\n grid-template-columns: auto auto;\n\n`}\n ${({ theme }) => theme.desktop`\n display flex;\n margin-left: 0;\n column-gap: 8px;\n \n`}\n`;\n\nconst NoPaddingCol = styled(Layout.Col)`\n padding-left: 0px !important;\n padding-right: 0px !important;\n\n padding: ${(props) => props.padding} !important;\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n\n height: 100%;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n`;\n\nexport const DateFilterWrapper = styled.div`\n grid-column: span 2;\n ${({ theme }) => theme.smallDesktop`\n grid-column: span 1;\n\n `}\n`;\n","/**\n * DashboardWrapper Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic from \"./logic\";\nimport Dashboard from \"../Dashboard\";\nimport ClientDashboard from \"../ClientDashboard\";\nimport { Redirect } from \"react-router\";\nimport { Loading } from \"element-react\";\nimport { ADDITIONAL_FEATURES } from \"config\";\n\nclass DashboardWrapper extends Component {\n render() {\n const { user, loadingUser } = this.props;\n if (loadingUser) {\n return ;\n }\n if (user != null) {\n if (user.isAdmin) {\n return ;\n } else if (\n !ADDITIONAL_FEATURES.includes(\"trader_switch\") &&\n user.isTrader\n ) {\n return ;\n } else {\n return ;\n }\n }\n return ;\n }\n}\n\nexport default Logic(DashboardWrapper);\n","/**\n * Areas Container Logic\n * Please write a description\n *\n * @author Your Name \n */\nimport React from 'react';\n\nimport { kea } from 'kea';\n\nimport { put, call } from 'redux-saga/effects';\nimport { delay } from 'redux-saga';\nimport { BASE_API_URL, API_DATE_FORMAT } from 'config';\n\nimport PropTypes from 'prop-types';\n//import * as Check from 'validations'\nimport axios from 'axios';\nimport moment from 'moment';\nimport { decodeColor } from 'utils';\nimport { toast } from 'react-toastify';\nimport fileDownload from 'js-file-download';\n\nimport NotificationsWrapper from 'components/NotificationsWrapper';\nimport AppLogic from 'containers/App/logic';\n\nconst EVENTSURL = BASE_API_URL + 'alerts/usage/';\nconst AREASURL = BASE_API_URL + 'areas/';\nconst EQUIPMENTSSURL = BASE_API_URL + 'containers/';\nconst DOWNLOADURL = BASE_API_URL + 'alerts/usage/export/';\n\nconst getContainerByUUID = (uuid, array) => {\n if (uuid != null && array != null) {\n return array.find((el) => {\n return el.uuid === uuid;\n });\n }\n return null;\n};\n\nconst getAreaByName = (name, array) => {\n if (name != null && array != null) {\n return array.find((el) => {\n return el.name === name;\n });\n }\n return null;\n};\n\nexport const INTERVAL_FORM_DEFAULTS = {\n start: {\n value: moment().startOf('month'),\n },\n end: {\n value: moment(),\n },\n interval: {\n value: 'day',\n },\n};\n\nexport default kea({\n path: () => ['scenes', 'Alerts'],\n\n connect: {\n props: [],\n actions: [\n AppLogic,\n ['watchEvents', 'changeWatchingEvents', 'setWebSocketHanlder'],\n ],\n },\n\n actions: () => ({\n changeFiltersForm: (key, value) => ({ key, value }),\n setFiltersForm: (form) => ({ form }),\n resetFiltersForm: () => true,\n fetchAreasEquipments: () => true,\n\n fetchMaintenancesList: () => true,\n setMaintenancesList: (list) => ({ list }),\n setMaintenancesNumber: (number) => ({ number }),\n fetchEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n\n fetchAreasList: () => true,\n setAreasList: (list) => ({ list }),\n setAreasNumber: (number) => ({ number }),\n setLoadingAreas: (loading) => loading,\n\n setLinkedArea: (area) => ({ area, type: 'container', query: '' }),\n setFilteredEquipments: (equipments) => ({ equipments }),\n updateFilteredEquipments: (equipments) => ({ equipments }),\n setFilteredEquipmentsNumber: (number) => ({ number }),\n\n setFilter: (filter) => ({ filter }),\n changeFilter: (key, value) => ({ key, value }),\n resetFilter: () => true,\n filterEntrances: () => true,\n setPagination: (pag) => ({ pag }),\n\n setEquipmentInDetail: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetail: (equipment) => ({\n equipment,\n type: 'container',\n query: '',\n }),\n\n setUsingMonthCalendar: (value) => ({ value }),\n setShowCalendarFilter: (value) => ({ value }),\n\n download: (type) => ({ type }),\n finishDownload: () => true,\n\n setSearchResults: (results) => ({ results }),\n setUserSearchResults: (results) => ({ results }),\n setAreaSearchResults: (results) => ({ results }),\n }),\n\n reducers: ({ actions }) => ({\n filtersForm: [\n INTERVAL_FORM_DEFAULTS,\n PropTypes.object,\n {\n [actions.changeFiltersForm]: (state, payload) => ({\n ...state,\n [payload.key]: { value: payload.value },\n }),\n [actions.setFiltersForm]: (state, { form }) => ({ ...form }),\n [actions.resetFiltersForm]: (state, payload) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n [actions.resetFilter]: (state, payload) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n },\n ],\n\n maintenancesList: [\n [],\n PropTypes.array,\n {\n [actions.setMaintenancesList]: (state, { list }) => list,\n },\n ],\n\n pagination: [\n { page: 1, page_size: 10 },\n PropTypes.object,\n {\n [actions.setPagination]: (state, { pag }) => pag,\n [actions.setFetchedEquipmentInDetail]: () => ({\n page: 1,\n page_size: 10,\n }),\n [actions.setFiltersForm]: () => ({ page: 1, page_size: 10 }),\n },\n ],\n\n linkedArea: [\n null,\n PropTypes.object,\n {\n [actions.setLinkedArea]: (state, { area }) => area,\n },\n ],\n\n filter: [\n {\n container__area__name: '',\n container__uuid: '',\n search_user: '',\n user_notified: '',\n },\n PropTypes.object,\n {\n [actions.setFilter]: (state, { filter }) => filter,\n [actions.changeFilter]: (state, payload) => {\n return Object.assign({}, state, { [payload.key]: payload.value });\n },\n [actions.setEquipmentInDetail]: (state, { equipment }) => ({\n ...state,\n container__uuid:\n equipment != null && equipment.uuid ? equipment.uuid : '',\n }),\n [actions.setLinkedArea]: (state, { area }) => ({\n ...state,\n container__area__name: area != null && area.name ? area.name : '',\n }),\n [actions.resetFilter]: (state) => ({\n container__area__name: '',\n container__uuid: '',\n search_user: '',\n user_notified: '',\n }),\n },\n ],\n\n areasList: [\n [],\n PropTypes.array,\n {\n [actions.setAreasList]: (state, { list }) => list,\n },\n ],\n\n loadingDownload: [\n false,\n PropTypes.boolean,\n {\n [actions.download]: () => true,\n [actions.finishDownload]: () => false,\n },\n ],\n\n loadingAreas: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingAreas]: (state, loading) => loading,\n },\n ],\n\n filteredEquipments: [\n null,\n PropTypes.array,\n {\n [actions.setFilteredEquipments]: (state, { equipments }) => equipments,\n [actions.updateFilteredEquipments]: (state, { equipments }) => [\n ...state,\n ...equipments,\n ],\n [actions.setLinkedArea]: (state, { area }) => {\n return area === null ? null : state;\n },\n },\n ],\n\n filteredEquipmentsNumber: [\n 0,\n PropTypes.number,\n {\n [actions.setFilteredEquipmentsNumber]: (state, { number }) => number,\n },\n ],\n\n equipmentInDetail: [\n null,\n PropTypes.object,\n {\n [actions.setFetchedEquipmentInDetail]: (state, { equipment }) =>\n equipment,\n [actions.setFetchedEquipmentInDetailNoFetchs]: (state, { equipment }) =>\n equipment,\n\n [actions.setLinkedArea]: (state, { area }) => {\n return area === null ? null : state;\n },\n [actions.resetFilter]: () => null,\n },\n ],\n\n usingMonthCalendar: [\n true,\n PropTypes.bool,\n {\n [actions.setUsingMonthCalendar]: (state, { value }) => value,\n },\n ],\n\n showCalendarFilter: [\n false,\n PropTypes.bool,\n {\n [actions.setShowCalendarFilter]: (state, { value }) => value,\n },\n ],\n\n searchResults: [\n [],\n PropTypes.array,\n {\n [actions.setSearchResults]: (state, { results }) => results,\n },\n ],\n\n searchLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'container',\n [actions.setSearchResults]: () => false,\n },\n ],\n\n searchUserResults: [\n [],\n PropTypes.array,\n {\n [actions.setUserSearchResults]: (state, { results }) => results,\n },\n ],\n\n searchUserLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'username',\n [actions.setUserSearchResults]: () => false,\n },\n ],\n\n searchAreaResults: [\n [],\n PropTypes.array,\n {\n [actions.setAreaSearchResults]: (state, { results }) => results,\n },\n ],\n\n searchAreaLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'area',\n [actions.setAreaSearchResults]: () => false,\n },\n ],\n }),\n\n selectors: ({ selectors }) => ({}),\n\n start: function* () {\n const {\n fetchMaintenancesList,\n fetchAreasList,\n setWebSocketHanlder,\n watchEvents,\n fetchAreasEquipments,\n } = this.actions;\n\n yield put(fetchAreasList());\n yield put(fetchMaintenancesList());\n yield put(fetchAreasEquipments());\n\n yield put(setWebSocketHanlder(this.workers.handle));\n\n yield put(watchEvents());\n },\n\n stop: function* () {\n const { changeWatchingEvents } = this.actions;\n yield put(changeWatchingEvents(false));\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.fetchMaintenancesList]: workers.fetchMaintenancesList,\n [actions.fetchEquipmentInDetailNoFetchs]:\n workers.fetchEquipmentInDetailNoFetchs,\n [actions.fetchAreasList]: workers.fetchAreasList,\n [actions.fetchAreasEquipments]: workers.fetchAreasEquipments,\n [actions.setLinkedArea]: [\n workers.showOnlyOneArea,\n workers.fetchMaintenancesList,\n workers.fetchAreasEquipments,\n ],\n [actions.setEquipmentInDetail]: [workers.fetchEquipmentInDetail],\n [actions.setFetchedEquipmentInDetail]: [workers.fetchMaintenancesList],\n [actions.filterEntrances]: [workers.fetchMaintenancesList],\n [actions.resetFilter]: [workers.fetchMaintenancesList],\n [actions.setPagination]: workers.fetchMaintenancesList,\n [actions.setFiltersForm]: workers.fetchMaintenancesList,\n [actions.download]: workers.download,\n }),\n\n workers: {\n *download(action) {\n const { payload } = action;\n const { t } = this.props;\n const { finishDownload } = this.actions;\n const equipmentInDetail = yield this.get('equipmentInDetail');\n const linkedArea = yield this.get('linkedArea');\n\n const filtersForm = yield this.get('filtersForm');\n\n let filter = yield this.get('filter');\n\n if (payload.type != null) {\n try {\n let params;\n if (equipmentInDetail) {\n params = { ...filter, container__id: equipmentInDetail.id };\n } else if (linkedArea) {\n params = { ...filter, container__area__id: linkedArea.id };\n } else {\n params = { ...filter };\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n const response = yield call(axios.get, DOWNLOADURL, {\n params: {\n type: 'alert',\n file_type: payload.type,\n ...params,\n start_date_after: moment(date_after).toISOString(),\n start_date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-start_date',\n },\n responseType: 'blob',\n });\n fileDownload(\n new Blob([response.data]),\n `${t('alerts.download')}.${payload.type}`\n );\n } catch (err) {\n console.log({ err });\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: 'downloadError',\n }\n );\n } finally {\n yield put(finishDownload());\n }\n }\n },\n\n *showOnlyOneArea(action) {\n const { setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n const linkedArea = yield this.get('linkedArea');\n if (areasList.length === 1 && linkedArea !== areasList[0]) {\n yield delay(300);\n yield put(setLinkedArea(areasList[0]));\n }\n },\n\n *fetchEquipmentInDetailNoFetchs(action) {\n const { setFetchedEquipmentInDetailNoFetchs } = this.actions;\n\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n yield put(setFetchedEquipmentInDetailNoFetchs(data));\n } catch (error) {\n console.log({ error });\n yield put(setFetchedEquipmentInDetailNoFetchs(null));\n }\n },\n\n *fetchEquipmentInDetail(action) {\n yield delay(300);\n\n const { setFetchedEquipmentInDetail, setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n\n if (action.payload != null && action.payload.equipment != null) {\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n const equipmentArea = areasList.find((el) => el.id === data.area.id);\n if (equipmentArea != null) {\n yield put(setLinkedArea(equipmentArea));\n }\n yield put(setFetchedEquipmentInDetail(data));\n } catch (error) {\n yield put(setFetchedEquipmentInDetail(null));\n }\n } else {\n yield put(setFetchedEquipmentInDetail(null));\n }\n },\n\n *fetchMaintenancesList(action) {\n yield delay(500);\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n let filter = yield this.get('filter');\n const filtersForm = yield this.get('filtersForm');\n const areasList = yield this.get('areasList');\n const filteredEquipments = yield this.get('filteredEquipments');\n\n const {\n setMaintenancesList,\n setMaintenancesNumber,\n setEquipmentInDetail,\n setLinkedArea,\n } = this.actions;\n\n try {\n let params;\n\n if (equipmentInDetail) {\n params = { ...filter, container__id: equipmentInDetail.id };\n } else if (linkedArea) {\n params = { ...filter, container__area__id: linkedArea.id };\n } else {\n params = { ...filter };\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let { data } = yield call(axios.get, EVENTSURL, {\n params: {\n ...params,\n start_date_after: moment(date_after).toISOString(),\n start_date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-start_date',\n },\n });\n\n if (data.results) {\n if (\n filter.container__area__name != null &&\n filter.container__area__name !== ''\n ) {\n if (\n getAreaByName(filter.container__area__name, areasList) != null &&\n (linkedArea == null ||\n (linkedArea != null &&\n linkedArea.name !== filter.container__area__name))\n ) {\n yield put(\n setLinkedArea(\n getAreaByName(filter.container__area__name, areasList)\n )\n );\n }\n }\n\n if (filter.container__uuid != null && filter.container__uuid !== '') {\n if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) !=\n null &&\n (equipmentInDetail == null ||\n (equipmentInDetail != null &&\n equipmentInDetail.uuid !== filter.container__uuid))\n ) {\n yield put(\n setEquipmentInDetail(\n getContainerByUUID(filter.container__uuid, filteredEquipments)\n )\n );\n } else if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) ==\n null &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n } else if (\n (filter.container__uuid == null || filter.container__uuid === '') &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n yield put(setMaintenancesList(data.results));\n yield put(setMaintenancesNumber(data.results.length));\n } else {\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n } catch (error) {\n console.log({ error });\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n },\n\n *fetchAreasList() {\n const {\n setAreasList,\n setAreasNumber,\n setLinkedArea,\n setAreaSearchResults,\n } = this.actions;\n\n try {\n const response = yield call(axios.get, AREASURL);\n const areasRes = response.data.results;\n\n if (areasRes.length) {\n // add data to area filter\n const searchAreaArr = areasRes.map((area) => ({\n value: area.name,\n label: area.name,\n }));\n yield put(setAreaSearchResults(searchAreaArr));\n\n // set up areas and prepare polygons\n let results = areasRes.map((area) => {\n area.lines = {\n type: 'LineString',\n coordinates: area.polygon.coordinates[0],\n };\n return area;\n });\n yield put(setAreasList(results));\n yield put(setAreasNumber(areasRes.length));\n\n if (results.length === 1) {\n yield delay(300);\n yield put(setLinkedArea(results[0]));\n }\n } else {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n }\n } catch (error) {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n }\n },\n\n *fetchAreasEquipments() {\n yield delay(600);\n const linkedArea = yield this.get('linkedArea');\n\n const {\n setFilteredEquipments,\n setFilteredEquipmentsNumber,\n setSearchResults,\n } = this.actions;\n\n const installationStatus = ['assembled', 'installed'];\n\n try {\n let next = 1;\n const commonParams = {\n page_size: 500,\n };\n\n let results = [];\n while (next) {\n let params = {\n ...commonParams,\n page: next,\n };\n\n if (linkedArea !== null)\n params = { ...params, area__id: linkedArea.id };\n\n let containers = [];\n\n const responses = yield installationStatus.map((status) => {\n params = { ...params, installation_status: status };\n return call(axios.get, EQUIPMENTSSURL, { params });\n });\n\n responses.forEach((el) =>\n containers.push.apply(containers, el.data.results)\n );\n\n containers.map((container) => {\n container.color = decodeColor(container.type);\n results.push(container);\n return container;\n });\n\n const equipmentsList = results.map((el) => ({\n value: el.uuid,\n label: el.name,\n }));\n\n next = 0;\n\n yield put(setFilteredEquipments(results));\n yield put(setFilteredEquipmentsNumber(containers.length));\n yield put(setSearchResults(equipmentsList));\n }\n } catch (error) {\n yield put(setFilteredEquipments([]));\n yield put(setFilteredEquipmentsNumber(0));\n }\n },\n\n *handle(message) {\n const { fetchMaintenancesList, fetchEquipmentInDetailNoFetchs } =\n this.actions;\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n if (message.event_type === 'status') {\n let temp = { ...message };\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n toast.info(temp.message, {\n position: toast.POSITION.TOP_RIGHT,\n delay: 200,\n id: message_id ? `uniqueStatusMessage${message_id}` : null,\n });\n } else if (message.event_type === 'event' && message.content) {\n if (message.event_type === 'event') {\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n if (\n message.content &&\n (message.content.type === 'drop' ||\n message.content.type === 'pick' ||\n message.content.type === 'maintenance') &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueDropMessage${message_id}` : null,\n }\n );\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n } else if (message.content && message.content.type === 'alert') {\n toast.warn(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueAlertMessage${message_id}` : null,\n }\n );\n yield put(fetchMaintenancesList());\n } else if (message.content && message.content.type === 'error') {\n if (message.content.status === 'closed') {\n toast.success(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n } else {\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n }\n }\n }\n }\n },\n },\n});\n","/**\n * AlertsTemplate Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled, { css } from \"styled-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { Theme } from \"globalStyles\";\nimport moment from \"moment\";\n\nexport default ({ children, ...props }) => {\n const { data } = props;\n const { t } = useTranslation();\n const error = !data.userNotified ? 1 : 0;\n\n const getUserName = () => {\n if (data.tag) {\n if (\n data.tag.user != null &&\n data.tag.user.fullName != null &&\n data.tag.user.fullName !== \"\"\n ) {\n return {data.tag.user.fullName};\n }\n }\n return {\"-\"};\n };\n\n return (\n \n \n {moment(data.startDate).format(\"DD/MM/YYYY HH:mm:ss\")}\n \n \n {data.container && data.container.name ? data.container.name : \"-\"}\n \n {getUserName()}\n \n {data.type && data.type.name ? t(data.type.name) : \"-\"}\n \n {!error && {t(\"table.notified\")}}\n {!error && (\n \n {moment(data.endDate).format(\"DD/MM/YYYY HH:mm:ss\")}\n \n )}\n \n );\n};\n\nconst Wrapper = styled.div`\n background: white;\n padding: 16px;\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-template-rows: auto auto auto;\n row-gap: 8px;\n column-gap: 8px;\n\n border-bottom: 1px solid ${Theme.inactiveColor};\n\n ${(props) =>\n props.error &&\n css`\n border-left: 3px solid ${Theme.errorColor};\n background-color: ${Theme.lightColor};\n `}\n ${(props) =>\n props.active &&\n css`\n background-color: ${Theme.activeRowColor};\n background-color: ${Theme.activeRowColor};\n `}\n`;\n\nconst DateTime = styled.div`\n font-weight: 300;\n grid-column: 2/3;\n grid-row: 1/2;\n text-align: right;\n font-size: 12px;\n color: ${Theme.iconDarkColor};\n`;\nconst User = styled.div`\n grid-column: 1/2;\n grid-row: 2/3;\n font-size: 16px;\n`;\nconst Container = styled.div`\n font-size: 12px;\n grid-column: 1/2;\n grid-row: 1/2;\n font-weight: 700;\n color: ${Theme.iconDarkColor};\n`;\n\nconst Description = styled.div`\n font-size: 12px;\n grid-column: 1/2;\n grid-row: 3/4;\n color: ${Theme.successColor};\n\n ${(props) =>\n props.error &&\n css`\n color: ${Theme.errorColor};\n `}\n`;\nconst DescriptionDateTime = styled.div`\n font-size: 12px;\n grid-column: 2/3;\n grid-row: 3/4;\n color: ${Theme.successColor};\n text-align: right;\n`;\nconst Notified = styled.div`\n margin-top: auto;\n font-size: 12px;\n grid-column: 2/3;\n grid-row: 2/3;\n color: ${Theme.successColor};\n text-align: right;\n`;\n\nconst EllipsisDiv = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n","import React from \"react\";\nimport moment from \"moment\";\nimport CrossIcon from \"icons/CrossIcon\";\nimport CheckIcon from \"icons/CheckIcon\";\nimport { Theme } from \"globalStyles\";\nimport styled from \"styled-components\";\nimport decodeType from \"utils/decodeType\";\n\nconst columns = [\n {\n label: \"table.id\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"id\",\n render: function (data) {\n return (\n \n {data.id ? data.id : \"-\"}\n \n );\n },\n width: 100,\n },\n {\n label: \"table.date\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n prop: \"startDate\",\n sortable: true,\n render: function (data) {\n return (\n \n {moment(data.startDate).format(\"DD/MM/YYYY HH:mm\")}\n \n );\n },\n width: 180,\n },\n {\n label: \"table.user\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n sortMethod: function (a, b) {\n if (a.tag != null && b.tag != null) {\n if (\n a.tag.user != null &&\n a.tag.user.fullName != null &&\n a.tag.user.fullName !== \"\" &&\n b.tag.user != null &&\n b.tag.user.fullName != null &&\n b.tag.user.fullName !== \"\"\n ) {\n return a.tag.user.fullName >= b.tag.user.fullName;\n }\n return false;\n }\n },\n render: function (data) {\n if (data.tag) {\n if (\n data.tag.user != null &&\n data.tag.user.fullName != null &&\n data.tag.user.fullName !== \"\"\n ) {\n return (\n \n {data.tag.user.fullName}\n \n );\n }\n }\n return {\"-\"};\n },\n width: 200\n },\n {\n label: \"table.container\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortMethod: function (a, b) {\n if (a.container && a.container.name && b.container && b.container.name) {\n return a.container.name >= b.container.name;\n }\n return false;\n },\n sortable: true,\n render: function (data) {\n return (\n \n {data.container && data.container.name ? data.container.name : \"-\"}\n \n );\n },\n width: 250\n },\n {\n label: \"table.type\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data, { t }) {\n return (\n \n {data.container && data.container.type\n ? t(`table.${decodeType(data.container.type)}`)\n : \"-\"}\n \n );\n },\n width: 200\n },\n {\n label: \"table.description\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n render: function ({ t, ...data }) {\n return (\n \n {data.type && data.type.name ? t(data.type.name) : \"-\"}\n \n );\n },\n minWidth: 250\n },\n {\n label: \"dashboard.resolved\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortMethod: function (a, b) {\n if (a && b) {\n const first = a.userNotified ? moment(a.endDate) : moment(null);\n\n const second = b.userNotified ? moment(b.endDate) : moment(null);\n return first >= second;\n }\n return false;\n },\n prop: \"status\",\n sortable: true,\n render: function (data) {\n return data.status === \"closed\" ? (\n data.endDate ? (\n \n \n \n ) : (\n \"-\"\n )\n ) : (\n \n \n \n \n \n );\n },\n width: 150\n },\n];\n\nexport default columns;\n\nconst CenterIcon = styled.div`\n display: flex;\n`;\n\nconst EllipsisDiv = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n","/**\n * Clients Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic, { INTERVAL_FORM_DEFAULTS } from \"./logic\";\nimport styled from \"styled-components\";\nimport { Layout, Breadcrumb, Loading } from \"element-react\";\n\nimport { withTranslation } from \"react-i18next\";\nimport { Theme } from \"globalStyles\";\n\nimport StyledTable from \"components/StyledTable\";\nimport StyledButton from \"components/StyledButton\";\nimport ToggleFilter from \"components/ToggleFilter\";\nimport StyledMobileTable from \"containers/StyledMobileTable\";\nimport DownloadDropDownContainer from \"containers/DownloadDropDownContainer\";\n\nimport IntervalPicker from \"containers/IntervalPicker\";\nimport ContainerMapMaintenances from \"containers/ContainerMapMaintenances\";\nimport ResponsiveHandler from \"components/ResponsiveHandler\";\nimport AlertsTemplate from \"components/AlertsTemplate\";\n// import StyledSwitch from \"components/StyledSwitch\";\nimport StyledSelect from \"components/StyledSelect\";\nimport { getIntervalText } from \"utils\";\n\nimport columns from \"./columns\";\n\nconst intervalOptions = [\n {\n value: \"day\",\n label: \"day\",\n },\n {\n value: \"month\",\n label: \"month\",\n },\n {\n value: \"year\",\n label: \"year\",\n },\n];\n\nconst userNotifiedOptions = [\n {\n label: \"yes\",\n value: \"true\",\n },\n {\n label: \"no\",\n value: \"false\",\n },\n];\nclass Alerts extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n focusedInput: null,\n filtersWidth: 20,\n inputWidth: \"140px\",\n triggerSet: false,\n changedForm: null,\n notifiedOptions: userNotifiedOptions,\n };\n this.tableRef = React.createRef();\n // https://stackoverflow.com/a/61346857/15423901\n this.setState = this.setState.bind(this);\n this._autocompleteRef = null;\n this._userAutocompleteRef = null;\n this._areaAutocompleteRef = null;\n }\n\n componentDidMount() {\n this.setState({\n changedForm: this.props.filtersForm,\n });\n }\n\n onFocusChange = (focusedInput) => {\n this.setState({ focusedInput });\n };\n\n handleEnter = (event) => {\n if (event.key === \"Enter\") {\n const { filterEntrances } = this.actions;\n filterEntrances();\n }\n };\n\n autoCompleteFetch = (queryString) => {\n if (this._autocompleteRef) {\n clearTimeout(this._autocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._autocompleteRef = setTimeout(function () {\n search(queryString, null, \"container\");\n }, 500);\n };\n\n userAutoCompleteFetch = (queryString) => {\n if (this._userAutocompleteRef) {\n clearTimeout(this._userAutocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._userAutocompleteRef = setTimeout(function () {\n search(queryString, null, \"username\");\n }, 500);\n };\n\n areaAutoCompleteFetch = (queryString) => {\n if (this._areaAutocompleteRef) {\n clearTimeout(this._areaAutocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._areaAutocompleteRef = setTimeout(function () {\n search(queryString, null, \"area\");\n }, 500);\n };\n\n render() {\n const {\n setLinkedArea,\n setEquipmentInDetail,\n changeFilter,\n resetFilter,\n setFiltersForm,\n resetFiltersForm,\n download,\n } = this.actions;\n const {\n areasList,\n linkedArea,\n filteredEquipments,\n equipmentInDetail,\n maintenancesList,\n filter,\n t,\n filtersForm,\n responsiveHandlers,\n loadingDownload,\n filteredEquipmentsNumber,\n searchResults,\n searchLoading,\n searchUserResults,\n searchUserLoading,\n searchAreaResults,\n searchAreaLoading,\n } = this.props;\n\n const { filtersWidth, inputWidth, triggerSet, changedForm } = this.state;\n\n const areaEquipments = filteredEquipments\n ? filteredEquipments.reduce(\n (x, y) => (x.findIndex((e) => e.id === y.id) < 0 ? [...x, y] : x),\n []\n )\n : filteredEquipments;\n return (\n \n \n \n \n \n \n {\n setLinkedArea(null);\n setEquipmentInDetail(null);\n }}>\n {t(\"alerts.title\")}\n \n \n {linkedArea && (\n \n setEquipmentInDetail(null)}\n >\n {linkedArea.name}\n \n \n )}\n {equipmentInDetail && (\n {equipmentInDetail.name}\n )}\n \n \n \n \n \n changeFilter(\"container__area__name\", event)\n }\n remoteMethod={this.areaAutoCompleteFetch}\n options={searchAreaResults}\n loading={searchAreaLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea != null}\n >\n changeFilter(\"container__uuid\", event)}\n value={filter.container__uuid}\n remoteMethod={this.autoCompleteFetch}\n triggerOnFocus={false}\n options={searchResults}\n loading={searchLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea == null}\n >\n changeFilter(\"user_notified\", value)}\n placeholder={t(\"table.notified\")}\n clearable={true}\n filterMethod={(val) => {\n if (val != null && val !== \"\") {\n this.setState({\n notifiedOptions: userNotifiedOptions.filter(\n (d) => t(d.label).toLowerCase() === val.toLowerCase()\n ),\n });\n } else {\n this.setState({\n notifiedOptions: userNotifiedOptions,\n });\n }\n }}\n options={\n this.state.notifiedOptions != null\n ? this.state.notifiedOptions.map((el) => ({\n ...el,\n label: t(el.label),\n }))\n : []\n }\n >\n changeFilter(\"search_user\", event)}\n remoteMethod={this.userAutoCompleteFetch}\n value={filter.search_user}\n options={searchUserResults}\n loading={searchUserLoading}\n filterable={true}\n remote={true}\n clearable={true}\n >\n \n\n {changedForm != null && (\n \n this.setState({ triggerSet: false })}\n state={{ changedForm }}\n setState={this.setState}\n />\n \n )}\n\n \n {\n resetFilter();\n setLinkedArea(null);\n }}\n >\n {t(\"clear_filters\")}\n \n\n this.setState({ triggerSet: true })}\n >\n {t(\"apply\")}\n \n \n {!loadingDownload ? \"Download\" : }\n \n }\n type={\"button\"}\n loadingDownload={loadingDownload}\n >\n \n \n \n \n \n \n\n \n \n setLinkedArea(area)}\n globalNumberOfContainers={filteredEquipmentsNumber}\n areaEquipments={areaEquipments}\n equipmentInDetail={equipmentInDetail}\n setEquipmentInDetail={(equipment) =>\n setEquipmentInDetail(equipment)\n }\n />\n \n \n\n \n
\n \n {t(\"alerts.title\")}\n {responsiveHandlers.isMobile || responsiveHandlers.isTablet ? (\n ({ ...equipment }))\n : []\n }\n template={AlertsTemplate}\n active={(row) =>\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id\n ? 1\n : 0\n }\n onRowClick={(entrance) => {\n window.scrollTo({\n left: 0,\n top: 0,\n behavior: \"smooth\",\n });\n this.setState({\n transitionEnded: false,\n });\n\n setEquipmentInDetail(entrance.container);\n }}\n />\n ) : (\n 768\n ? \"calc(55vh - 64px - 36px - 48px - 4rem - 42px - 1px )\"\n : \"\"\n }\n defaultSort={{ prop: \"startDate\", order: \"descending\" }}\n columns={columns.map((column) => ({ t, ...column }))}\n data={\n maintenancesList\n ? maintenancesList.map((equipment) => ({\n t,\n ...equipment,\n }))\n : []\n }\n rowClassName={(row) => {\n let toReturn = \"\";\n if (\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id\n ) {\n toReturn += \" active\";\n }\n if (!row.endDate) {\n toReturn += \" error\";\n }\n return toReturn;\n }}\n onRowClick={(entrance) => {\n setEquipmentInDetail(entrance.container);\n }}\n />\n )}\n \n
\n \n
\n );\n }\n}\n\nexport default withTranslation()(ResponsiveHandler(Logic(Alerts)));\n\nconst Wrapper = styled.div`\n`;\n\nconst CustomLayoutSecondaryRow = styled(Layout.Row)`\n margin-left: 0px !important;\n margin-right: 0px !important;\n margin-top: ${(props) => props.marginTop};\n`;\n\nconst FlexWrapper = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n`;\n\nconst SelectivePaddingColNoFixedHeight = styled(Layout.Col)`\n display: flex;\n justify-content: ${(props) => props.justifyContent};\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n float: ${(props) => props.float} !important;\n overflow: visible;\n`;\n\nconst SelectivePaddingColNoFixedHeightWithBoxShadow = styled(\n SelectivePaddingColNoFixedHeight\n)`\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);\n min-height: ${(props) => props.minHeight};\n`;\n\nconst NoPaddingCol = styled(Layout.Col)`\n padding-left: 0px !important;\n padding-right: 0px !important;\n\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n`;\n\nconst CustomBreakcrumb = styled(Breadcrumb)`\n .el-breadcrumb__item > span {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n\n .el-breadcrumb__separator {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n`;\n\nconst BreakcrumbWrapper = styled.div`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.desktop`\n flex-direction: row;\n `}\n`;\n\nconst BreadcrumbWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-4 {\n width: 100%;\n margin-bottom: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-4{\n margin-bottom: 8px;\n padding: 0 16px 0 0 !important;\n }\n `}\n`;\n\nconst FiltersWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-20 {\n width: 100%;\n display: grid;\n grid-template-columns: repeat(2, minmax(0, 1fr));\n justify-content: left;\n row-gap: 8px;\n column-gap: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.desktop`\n &.el-col-20{\n display: flex;\n justify-content: flex-end;\n width: 83.33333%;\n padding-left: 14px !important;\n }\n `}\n`;\n\nconst ButtonWrapper = styled(FlexWrapper)`\n display: grid;\n grid-template-columns: 1fr 1fr;\n column-gap: 8px;\n row-gap: 8px;\n grid-column: span 2;\n\n ${({ theme }) => theme.desktop`\n display flex;\n `}\n`;\n\nconst DownloadLoading = styled(Loading)`\n height: 24px;\n width: 24px;\n overflow: hidden;\n\n .el-loading-spinner {\n margin-top: 0;\n top: 0;\n svg {\n height: 24px;\n width: 24px;\n }\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\n\nconst TableName = styled.span`\n color: ${Theme.primaryColor};\n font-size: 1rem;\n font-weight: 800;\n line-height: 22px;\n`;","/**\n * Areas Container Logic\n * Please write a description\n *\n * @author Your Name \n */\nimport React from 'react';\n\nimport { kea } from 'kea';\n\nimport { put, call } from 'redux-saga/effects';\nimport { delay } from 'redux-saga';\nimport { BASE_API_URL, API_DATE_FORMAT } from 'config';\n\nimport PropTypes from 'prop-types';\nimport * as Check from 'validations';\nimport axios from 'axios';\nimport moment from 'moment';\nimport { decodeColor } from 'utils';\n\nimport { toast } from 'react-toastify';\nimport fileDownload from 'js-file-download';\n\nimport NotificationsWrapper from 'components/NotificationsWrapper';\nimport AppLogic from 'containers/App/logic';\n\nconst EVENTSURL = BASE_API_URL + 'alerts/system/';\nconst AREASURL = BASE_API_URL + 'areas/';\nconst EQUIPMENTSSURL = BASE_API_URL + 'containers/';\nconst DOWNLOADURL = BASE_API_URL + 'alerts/system/export/';\n\nconst getContainerByUUID = (uuid, array) => {\n if (uuid != null && array != null) {\n return array.find((el) => {\n return el.uuid === uuid;\n });\n }\n return null;\n};\n\nconst getAreaByName = (name, array) => {\n if (name != null && array != null) {\n return array.find((el) => {\n return el.name === name;\n });\n }\n return null;\n};\n\nexport const INTERVAL_FORM_DEFAULTS = {\n start: {\n value: moment().startOf('month'),\n },\n end: {\n value: moment(),\n },\n interval: {\n value: 'day',\n },\n};\n\nconst DEFAULT_VALUES = {\n description: {\n value: '',\n },\n};\n\nconst VALIDATIONS = {\n description: [Check.isRequired],\n};\n\nexport default kea({\n path: () => ['scenes', 'Tickets'],\n\n connect: {\n props: [],\n actions: [\n AppLogic,\n ['watchEvents', 'changeWatchingEvents', 'setWebSocketHanlder'],\n ],\n },\n\n actions: () => ({\n changeFiltersForm: (key, value) => ({ key, value }),\n setFiltersForm: (form) => ({ form }),\n resetFiltersForm: () => true,\n fetchAreasEquipments: () => true,\n fetchEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n\n setDescriptionResponse: (response) => ({ response }),\n submitDescription: (id) => ({ id }),\n changeDescription: (field) => ({ field }),\n setFormDescription: (form) => ({ form }),\n resetDescriptionForm: () => true,\n\n fetchMaintenancesList: () => true,\n setMaintenancesList: (list) => ({ list }),\n setMaintenancesNumber: (number) => ({ number }),\n\n search: (query, cb, type) => ({ query, cb, type }),\n\n fetchAreasList: () => true,\n setAreasList: (list) => ({ list }),\n setAreasNumber: (number) => ({ number }),\n setLoadingAreas: (loading) => loading,\n\n setLinkedArea: (area) => ({ area, type: 'container', query: '' }),\n setFilteredEquipments: (equipments) => ({ equipments }),\n updateFilteredEquipments: (equipments) => ({ equipments }),\n setFilteredEquipmentsNumber: (number) => ({ number }),\n\n setFilter: (filter) => ({ filter }),\n changeFilter: (key, value) => ({ key, value }),\n resetFilter: () => true,\n filterEntrances: () => true,\n setPagination: (pag) => ({ pag }),\n\n setEquipmentInDetail: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetail: (equipment) => ({\n equipment,\n type: 'container',\n query: '',\n }),\n\n setUsingMonthCalendar: (value) => ({ value }),\n setShowCalendarFilter: (value) => ({ value }),\n\n download: (type) => ({ type }),\n finishDownload: () => true,\n\n markAsResolved: (columnToResolve) => ({ columnToResolve }),\n\n setSearchResults: (results) => ({ results }),\n setAreaSearchResults: (results) => ({ results }),\n }),\n\n reducers: ({ actions }) => ({\n descriptionForm: [\n DEFAULT_VALUES,\n PropTypes.object,\n {\n [actions.changeDescription]: (state, payload) =>\n Check.setAndCheckValidation(state, payload, VALIDATIONS),\n [actions.setFormDescription]: (state, payload) =>\n Check.checkValidation(payload.form, VALIDATIONS).form,\n [actions.resetDescriptionForm]: () => DEFAULT_VALUES,\n },\n ],\n\n descriptionResponse: [\n null,\n PropTypes.string,\n {\n [actions.setDescriptionResponse]: (state, { response }) => response,\n\n [actions.resetDescriptionForm]: () => null,\n },\n ],\n\n filtersForm: [\n INTERVAL_FORM_DEFAULTS,\n PropTypes.object,\n {\n [actions.changeFiltersForm]: (state, payload) => ({\n ...state,\n [payload.key]: { value: payload.value },\n }),\n [actions.setFiltersForm]: (state, { form }) => ({ ...form }),\n [actions.resetFiltersForm]: (state, payload) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n [actions.resetFilter]: (state, payload) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n },\n ],\n\n maintenancesList: [\n [],\n PropTypes.array,\n {\n [actions.setMaintenancesList]: (state, { list }) => list,\n },\n ],\n\n pagination: [\n { page: 1, page_size: 10 },\n PropTypes.object,\n {\n [actions.setPagination]: (state, { pag }) => pag,\n [actions.setFetchedEquipmentInDetail]: () => ({\n page: 1,\n page_size: 10,\n }),\n [actions.setFiltersForm]: () => ({ page: 1, page_size: 10 }),\n },\n ],\n\n linkedArea: [\n null,\n PropTypes.object,\n {\n [actions.setLinkedArea]: (state, { area }) => area,\n },\n ],\n\n filter: [\n {\n container__area__name: '',\n container__uuid: '',\n search_user: '',\n status: '',\n },\n PropTypes.object,\n {\n [actions.setFilter]: (state, { filter }) => filter,\n [actions.setLinkedArea]: (state, { area }) => ({\n ...state,\n container__area__name: area != null && area.name ? area.name : '',\n }),\n [actions.setEquipmentInDetail]: (state, { equipment }) => ({\n ...state,\n container__uuid:\n equipment != null && equipment.uuid ? equipment.uuid : '',\n }),\n [actions.changeFilter]: (state, payload) => {\n return Object.assign({}, state, { [payload.key]: payload.value });\n },\n [actions.resetFilter]: (state) => ({\n container__area__name: '',\n container__uuid: '',\n search_user: '',\n status: '',\n }),\n },\n ],\n\n areasList: [\n [],\n PropTypes.array,\n {\n [actions.setAreasList]: (state, { list }) => list,\n },\n ],\n\n loadingDownload: [\n false,\n PropTypes.boolean,\n {\n [actions.download]: () => true,\n [actions.finishDownload]: () => false,\n },\n ],\n\n loadingAreas: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingAreas]: (state, loading) => loading,\n },\n ],\n\n filteredEquipments: [\n null,\n PropTypes.array,\n {\n [actions.setFilteredEquipments]: (state, { equipments }) => equipments,\n [actions.updateFilteredEquipments]: (state, { equipments }) => [\n ...state,\n ...equipments,\n ],\n [actions.setLinkedArea]: (state, { area }) => {\n return area === null ? null : state;\n },\n },\n ],\n\n filteredEquipmentsNumber: [\n 0,\n PropTypes.number,\n {\n [actions.setFilteredEquipmentsNumber]: (state, { number }) => number,\n },\n ],\n\n equipmentInDetail: [\n null,\n PropTypes.object,\n {\n [actions.setFetchedEquipmentInDetail]: (state, { equipment }) =>\n equipment,\n [actions.setFetchedEquipmentInDetailNoFetchs]: (state, { equipment }) =>\n equipment,\n [actions.setLinkedArea]: (state, { area }) => {\n return area === null ? null : state;\n },\n [actions.resetFilter]: () => null,\n },\n ],\n\n usingMonthCalendar: [\n true,\n PropTypes.bool,\n {\n [actions.setUsingMonthCalendar]: (state, { value }) => value,\n },\n ],\n\n showCalendarFilter: [\n false,\n PropTypes.bool,\n {\n [actions.setShowCalendarFilter]: (state, { value }) => value,\n },\n ],\n\n columnToResolve: [\n null,\n PropTypes.object,\n {\n [actions.markAsResolved]: (state, { columnToResolve }) =>\n columnToResolve,\n },\n ],\n\n searchResults: [\n [],\n PropTypes.array,\n {\n [actions.setSearchResults]: (state, { results }) => results,\n },\n ],\n\n searchLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'container',\n [actions.setSearchResults]: () => false,\n },\n ],\n\n searchAreaResults: [\n [],\n PropTypes.array,\n {\n [actions.setAreaSearchResults]: (state, { results }) => results,\n },\n ],\n\n searchAreaLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'area',\n [actions.setAreaSearchResults]: () => false,\n },\n ],\n }),\n\n selectors: ({ selectors }) => ({}),\n\n start: function* () {\n const {\n fetchMaintenancesList,\n fetchAreasList,\n setWebSocketHanlder,\n watchEvents,\n fetchAreasEquipments,\n } = this.actions;\n\n yield put(fetchAreasList());\n yield put(fetchMaintenancesList());\n yield put(fetchAreasEquipments());\n\n yield put(setWebSocketHanlder(this.workers.handle));\n\n yield put(watchEvents());\n },\n\n stop: function* () {\n const { changeWatchingEvents } = this.actions;\n yield put(changeWatchingEvents(false));\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.fetchMaintenancesList]: workers.fetchMaintenancesList,\n [actions.fetchAreasList]: workers.fetchAreasList,\n [actions.fetchEquipmentInDetailNoFetchs]:\n workers.fetchEquipmentInDetailNoFetchs,\n [actions.fetchAreasEquipments]: workers.fetchAreasEquipments,\n [actions.setLinkedArea]: [\n workers.showOnlyOneArea,\n workers.fetchMaintenancesList,\n workers.fetchAreasEquipments,\n ],\n [actions.setEquipmentInDetail]: [\n workers.fetchEquipmentInDetail,\n workers.fetchMaintenancesList,\n ],\n [actions.setFetchedEquipmentInDetail]: [workers.fetchMaintenancesList],\n [actions.filterEntrances]: [workers.fetchMaintenancesList],\n [actions.resetFilter]: [workers.fetchMaintenancesList],\n [actions.setPagination]: workers.fetchMaintenancesList,\n [actions.setFiltersForm]: workers.fetchMaintenancesList,\n [actions.markAsResolved]: workers.markAsResolved,\n [actions.download]: workers.download,\n }),\n\n workers: {\n *download(action) {\n const { payload } = action;\n const { t } = this.props;\n const { finishDownload } = this.actions;\n\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n let filter = yield this.get('filter');\n const filtersForm = yield this.get('filtersForm');\n\n if (payload.type != null) {\n try {\n let params;\n\n if (equipmentInDetail) {\n params = { ...filter, container__uuid: equipmentInDetail.uuid };\n } else if (linkedArea) {\n params = { ...filter, container__area__id: linkedArea.id };\n } else {\n params = { ...filter };\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n const response = yield call(axios.get, DOWNLOADURL, {\n params: {\n file_type: payload.type,\n ...params,\n start_date_after: moment(date_after).toISOString(),\n start_date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-start_date',\n },\n responseType: 'blob',\n });\n fileDownload(\n new Blob([response.data]),\n `${t('errors.download')}.${payload.type}`\n );\n } catch (err) {\n console.log({ err });\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: 'downloadError',\n }\n );\n } finally {\n yield put(finishDownload());\n }\n }\n },\n\n *showOnlyOneArea() {\n const { setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n const linkedArea = yield this.get('linkedArea');\n if (areasList.length === 1 && linkedArea !== areasList[0]) {\n yield delay(300);\n yield put(setLinkedArea(areasList[0]));\n }\n },\n\n *fetchEquipmentInDetailNoFetchs(action) {\n const { setFetchedEquipmentInDetailNoFetchs } = this.actions;\n\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n yield put(setFetchedEquipmentInDetailNoFetchs(data));\n } catch (error) {\n console.log({ error });\n yield put(setFetchedEquipmentInDetailNoFetchs(null));\n }\n },\n\n *fetchEquipmentInDetail(action) {\n yield delay(300);\n\n const { setFetchedEquipmentInDetail, setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n\n if (action.payload != null && action.payload.equipment != null) {\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n const equipmentArea = areasList.find((el) => el.id === data.area.id);\n if (equipmentArea != null) {\n yield put(setLinkedArea(equipmentArea));\n }\n yield put(setFetchedEquipmentInDetail(data));\n } catch (error) {\n yield put(setFetchedEquipmentInDetail(null));\n }\n } else {\n yield put(setFetchedEquipmentInDetail(null));\n }\n },\n\n *fetchMaintenancesList(action) {\n yield delay(500);\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n let filter = yield this.get('filter');\n const filtersForm = yield this.get('filtersForm');\n const areasList = yield this.get('areasList');\n const filteredEquipments = yield this.get('filteredEquipments');\n\n const {\n setMaintenancesList,\n setMaintenancesNumber,\n setEquipmentInDetail,\n setLinkedArea,\n } = this.actions;\n\n try {\n let params;\n\n if (equipmentInDetail) {\n params = { ...filter, container__id: equipmentInDetail.id };\n } else if (linkedArea) {\n params = { ...filter, container__area__id: linkedArea.id };\n } else {\n params = { ...filter };\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let { data } = yield call(axios.get, EVENTSURL, {\n params: {\n ...params,\n start_date_after: moment(date_after).toISOString(),\n start_date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-start_date',\n },\n });\n\n if (data.results) {\n if (\n filter.container__area__name != null &&\n filter.container__area__name !== ''\n ) {\n if (\n getAreaByName(filter.container__area__name, areasList) != null &&\n (linkedArea == null ||\n (linkedArea != null &&\n linkedArea.name !== filter.container__area__name))\n ) {\n yield put(\n setLinkedArea(\n getAreaByName(filter.container__area__name, areasList)\n )\n );\n }\n }\n if (filter.container__uuid != null && filter.container__uuid !== '') {\n if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) !=\n null &&\n (equipmentInDetail == null ||\n (equipmentInDetail != null &&\n equipmentInDetail.uuid !== filter.container__uuid))\n ) {\n yield put(\n setEquipmentInDetail(\n getContainerByUUID(filter.container__uuid, filteredEquipments)\n )\n );\n } else if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) ==\n null &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n } else if (\n (filter.container__uuid == null || filter.container__uuid === '') &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n\n yield put(setMaintenancesList(data.results));\n yield put(setMaintenancesNumber(data.results.length));\n } else {\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n } catch (error) {\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n },\n\n *fetchAreasList() {\n const {\n setAreasList,\n setAreasNumber,\n setLinkedArea,\n setAreaSearchResults,\n } = this.actions;\n\n try {\n const response = yield call(axios.get, AREASURL);\n const areasRes = response.data.results;\n\n if (areasRes.length) {\n // add data to area filter\n const searchAreaArr = areasRes.map((area) => ({\n value: area.name,\n label: area.name,\n }));\n yield put(setAreaSearchResults(searchAreaArr));\n\n // set up areas and prepare polygons\n let results = response.data.results.map((area) => {\n area.lines = {\n type: 'LineString',\n coordinates: area.polygon.coordinates[0],\n };\n return area;\n });\n yield put(setAreasList(results));\n yield put(setAreasNumber(areasRes.length));\n\n if (results.length === 1) {\n yield delay(300);\n yield put(setLinkedArea(results[0]));\n }\n } else {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n }\n } catch (error) {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n }\n },\n\n *fetchAreasEquipments() {\n yield delay(600);\n const linkedArea = yield this.get('linkedArea');\n\n const {\n setFilteredEquipments,\n setFilteredEquipmentsNumber,\n setSearchResults,\n } = this.actions;\n\n const installationStatus = ['assembled', 'installed'];\n\n try {\n let next = 1;\n const commonParams = {\n page_size: 500,\n };\n\n let results = [];\n while (next) {\n let params = {\n ...commonParams,\n page: next,\n };\n\n if (linkedArea !== null)\n params = { ...params, area__id: linkedArea.id };\n\n let containers = [];\n\n const responses = yield installationStatus.map((status) => {\n params = { ...params, installation_status: status };\n return call(axios.get, EQUIPMENTSSURL, { params });\n });\n\n responses.forEach((el) =>\n containers.push.apply(containers, el.data.results)\n );\n\n containers.map((container) => {\n container.color = decodeColor(container.type);\n results.push(container);\n return container;\n });\n\n const equipmentsList = results.map((el) => ({\n value: el.uuid,\n label: el.name,\n }));\n\n next = 0;\n\n yield put(setFilteredEquipments(results));\n yield put(setFilteredEquipmentsNumber(containers.length));\n yield put(setSearchResults(equipmentsList));\n }\n } catch (error) {\n yield put(setFilteredEquipments([]));\n yield put(setFilteredEquipmentsNumber(0));\n }\n },\n\n *markAsResolved(action) {\n const columnToResolve = yield this.get('columnToResolve');\n const form = yield this.get('descriptionForm');\n\n const {\n fetchMaintenancesList,\n setFormDescription,\n setDescriptionResponse,\n } = this.actions;\n\n if (columnToResolve.id) {\n const validation = Check.checkValidation(form, VALIDATIONS);\n if (validation.invalid) {\n yield put(setFormDescription(validation.form));\n return false;\n }\n try {\n const response = yield call(\n axios.patch,\n EVENTSURL + `${columnToResolve.id}/`,\n {\n status: 'closed',\n end_date: new Date(),\n additional_information: form.description.value,\n }\n );\n if (response.status === 200) {\n yield put(setDescriptionResponse('success'));\n yield put(fetchMaintenancesList());\n }\n } catch (error) {\n console.log({ error });\n yield put(setDescriptionResponse('error'));\n }\n }\n },\n\n *handle(message) {\n const { fetchMaintenancesList, fetchEquipmentInDetailNoFetchs } =\n this.actions;\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n if (message.event_type === 'status') {\n let temp = { ...message };\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n toast.info(temp.message, {\n position: toast.POSITION.TOP_RIGHT,\n delay: 200,\n id: message_id ? `uniqueStatusMessage${message_id}` : null,\n });\n } else if (message.event_type === 'event' && message.content) {\n if (message.event_type === 'event') {\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n if (\n message.content != null &&\n (message.content.type === 'drop' ||\n message.content.type === 'pick' ||\n message.content.type === 'maintenance') &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueDropMessage${message_id}` : null,\n }\n );\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n } else if (message.content && message.content.type === 'alert') {\n toast.warn(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueAlertMessage${message_id}` : null,\n }\n );\n } else if (message.content && message.content.type === 'error') {\n if (message.content.status === 'closed') {\n toast.success(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n } else {\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n }\n yield put(fetchMaintenancesList());\n }\n }\n }\n },\n },\n});\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n )\n}\n\nexport default SvgComponent\n","import React from \"react\";\nimport moment from \"moment\";\nimport MarkAsResolved from \"icons/MarkAsResolved\";\nimport CrossIcon from \"icons/CrossIcon\";\nimport styled from \"styled-components\";\nimport { Theme } from \"globalStyles\";\nimport decodeType from \"utils/decodeType\";\n\nconst columns = [\n {\n label: \"table.id\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"id\",\n render: function (data) {\n return (\n \n {data.id ? data.id : \"-\"}\n \n );\n },\n width: 80,\n },\n {\n label: \"table.date\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n prop: \"startDate\",\n sortable: true,\n render: function (data) {\n return (\n \n {moment(data.startDate).format(\"DD/MM/YYYY HH:mm\")}\n \n );\n },\n width: 180,\n },\n {\n label: \"table.container\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data) {\n return (\n \n {data.container && data.container.uuid ? data.container.uuid : \"-\"}\n \n );\n },\n width: 250,\n },\n {\n label: \"table.type\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data, { t }) {\n return (\n \n {data.container && data.container.type\n ? t(`table.${decodeType(data.container.type)}`)\n : \"-\"}\n \n );\n },\n width: 170\n },\n {\n label: \"table.description\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n render: function ({ t, ...data }) {\n return (\n \n {data.type && data.type.name ? t(data.type.name) : \"-\"}\n \n );\n },\n minWidth: 120\n },\n {\n label: \"table.status\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n sortMethod: function (a, b) {\n if (a.status && b.status) {\n return a.status >= b.status;\n }\n return false;\n },\n render: function (data) {\n return data.status && data.status === \"open\" ? (\n \n ) : data.endDate ? (\n \n {moment(data.endDate).format(\"DD/MM/YY HH:mm\")}\n \n ) : (\n \"-\"\n );\n },\n width: 170,\n },\n {\n label: \"table.resolve\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n render: function (data, options) {\n return data.status && data.status === \"open\" ? (\n {\n e.stopPropagation();\n options.markAsResolved(data);\n }}\n fill={Theme.primaryColor}\n >\n ) : data.additionalInformation ? (\n \n {data.additionalInformation}\n \n ) : (\n \"\"\n );\n },\n minWidth: 100\n },\n];\n\nexport default columns;\n\nconst ClickIcon = styled(MarkAsResolved)`\n cursor: pointer;\n z-index: 100;\n\n :hover path {\n fill: ${Theme.darkPrimaryColor};\n }\n`;\n\nconst EllipsisDiv = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n","/**\n * ErrorsTemplate Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled, { css } from \"styled-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { Theme } from \"globalStyles\";\nimport moment from \"moment\";\nimport MarkAsResolved from \"icons/MarkAsResolved\";\n\nexport default ({ children, ...props }) => {\n const { data } = props;\n const { t } = useTranslation();\n const error = data.status && data.status === \"open\" ? 1 : 0;\n return (\n \n {moment(data.startDate).format(\"DD/MM/YYYY HH:mm:ss\")}\n \n {data.container && data.container.name ? data.container.name : \"-\"}\n \n \n {data.type && data.type.name ? t(data.type.name) : \"-\"}\n \n {!!error && (\n {\n e.stopPropagation();\n props.markAsResolved(data);\n }}\n >\n \n \n )}\n {!error && {t(\"table.status\")}}\n {!error && (\n \n {moment(data.endDate).format(\"DD/MM/YYYY HH:mm:ss\")}\n \n )}\n \n );\n};\n\nconst Wrapper = styled.div`\n background: white;\n padding: 16px;\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-template-rows: auto auto auto;\n row-gap: 8px;\n column-gap: 8px;\n\n border-bottom: 1px solid ${Theme.inactiveColor};\n\n ${(props) =>\n props.error &&\n css`\n border-left: 3px solid ${Theme.errorColor};\n background-color: ${Theme.lightColor};\n `}\n \n ${(props) =>\n props.active &&\n css`\n background-color: ${Theme.activeRowColor};\n background-color: ${Theme.activeRowColor};\n `}\n`;\n\nconst DateTime = styled.div`\n font-weight: 300;\n grid-column: 2/3;\n grid-row: 1/2;\n text-align: right;\n font-size: 12px;\n color: ${Theme.iconDarkColor};\n`;\n\nconst Container = styled.div`\n font-size: 12px;\n grid-column: 1/2;\n grid-row: 1/2;\n font-weight: 700;\n color: ${Theme.iconDarkColor};\n`;\n\nconst Description = styled.div`\n font-size: 14px;\n grid-column: 1/2;\n grid-row: 2/4;\n color: ${Theme.successColor};\n\n ${(props) =>\n props.error &&\n css`\n color: ${Theme.errorColor};\n `}\n`;\nconst DescriptionDateTime = styled.div`\n font-size: 12px;\n grid-column: 2/3;\n grid-row: 3/4;\n color: ${Theme.successColor};\n text-align: right;\n`;\nconst Notified = styled.div`\n font-size: 12px;\n grid-column: 2/3;\n grid-row: 2/3;\n color: ${Theme.successColor};\n text-align: right;\n`;\n\nconst Resolve = styled.div`\n display: flex;\n align-items: center;\n justify-content: flex-end;\n grid-row: 2/3;\n grid-column: 2/3;\n`;\n","/**\n * Clients Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic, { INTERVAL_FORM_DEFAULTS } from \"./logic\";\nimport styled from \"styled-components\";\nimport { Layout, Breadcrumb, Loading } from \"element-react\";\nimport ContainerMapMaintenances from \"containers/ContainerMapMaintenances\";\nimport IntervalPicker from \"containers/IntervalPicker\";\nimport StyledMobileTable from \"containers/StyledMobileTable\";\nimport DownloadDropDownContainer from \"containers/DownloadDropDownContainer\";\nimport { Theme } from \"globalStyles\";\n\nimport columns from \"./columns\";\nimport { withTranslation } from \"react-i18next\";\nimport { toast } from \"react-toastify\";\n\nimport StyledTable from \"components/StyledTable\";\nimport StyledButton from \"components/StyledButton\";\nimport ToggleFilter from \"components/ToggleFilter\";\nimport StyledSelect from \"components/StyledSelect\";\nimport ResponsiveHandler from \"components/ResponsiveHandler\";\nimport ErrorsTemplate from \"components/ErrorsTemplate\";\nimport Dialog from \"components/Dialog\";\nimport StyledInput from \"components/StyledInput\";\nimport NotificationsWrapper from \"components/NotificationsWrapper\";\n\nimport { getIntervalText } from \"utils\";\n\nconst intervalOptions = [\n {\n value: \"day\",\n label: \"day\",\n },\n {\n value: \"month\",\n label: \"month\",\n },\n {\n value: \"year\",\n label: \"year\",\n },\n];\n\nconst errorStatusOptions = [\n {\n label: \"yes\",\n value: \"closed\",\n },\n {\n label: \"no\",\n value: \"open\",\n },\n];\n\nclass Tickets extends Component {\n constructor(props) {\n super(props);\n this.state = {\n focusedInput: null,\n filtersWidth: 20,\n inputWidth: \"140px\",\n triggerSet: false,\n dialogContainer: null,\n dialogOpen: false,\n changedForm: null,\n statusOptions: errorStatusOptions,\n };\n this.tableRef = React.createRef();\n // https://stackoverflow.com/a/61346857/15423901\n this.setState = this.setState.bind(this);\n this._autocompleteRef = null;\n this._areaAutocompleteRef = null;\n }\n\n onFocusChange = (focusedInput) => {\n this.setState({ focusedInput });\n };\n\n componentDidMount() {\n this.setState({\n changedForm: this.props.filtersForm,\n });\n }\n\n handleEnter = (event) => {\n if (event.key === \"Enter\") {\n const { filterEntrances } = this.actions;\n filterEntrances();\n }\n };\n\n openDialog = (row) => {\n this.setState({ dialogOpen: true, dialogContainer: row });\n };\n\n componentDidUpdate(prevProps, prevState) {\n const { t } = this.props;\n if (\n prevProps.descriptionResponse !== this.props.descriptionResponse &&\n this.props.descriptionResponse != null\n ) {\n if (this.props.descriptionResponse === \"success\") {\n this.setState({ dialogOpen: false, dialogContainer: null });\n const { resetDescriptionForm } = this.actions;\n resetDescriptionForm();\n toast.success(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: \"table-add-description-success\",\n }\n );\n }\n if (this.props.descriptionResponse === \"error\") {\n this.setState({ dialogOpen: false, dialogContainer: null });\n const { resetDescriptionForm } = this.actions;\n resetDescriptionForm();\n\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: \"table-add-description-error\",\n }\n );\n }\n }\n }\n\n autoCompleteFetch = (queryString) => {\n if (this._autocompleteRef) {\n clearTimeout(this._autocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._autocompleteRef = setTimeout(function () {\n search(queryString, null, \"container\");\n }, 500);\n };\n\n areaAutoCompleteFetch = (queryString) => {\n if (this._areaAutocompleteRef) {\n clearTimeout(this._areaAutocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._areaAutocompleteRef = setTimeout(function () {\n search(queryString, null, \"area\");\n }, 500);\n };\n\n render() {\n const {\n setLinkedArea,\n setEquipmentInDetail,\n resetFilter,\n changeFilter,\n setFiltersForm,\n resetFiltersForm,\n changeDescription,\n resetDescriptionForm,\n markAsResolved,\n download,\n } = this.actions;\n const {\n areasList,\n linkedArea,\n equipmentInDetail,\n maintenancesList,\n filter,\n filteredEquipments,\n t,\n filtersForm,\n responsiveHandlers,\n descriptionForm,\n loadingDownload,\n filteredEquipmentsNumber,\n searchResults,\n searchLoading,\n\n searchAreaResults,\n searchAreaLoading,\n } = this.props;\n const {\n filtersWidth,\n inputWidth,\n triggerSet,\n dialogOpen,\n dialogContainer,\n changedForm,\n } = this.state;\n\n const areaEquipments = filteredEquipments\n ? filteredEquipments.reduce(\n (x, y) => (x.findIndex((e) => e.id === y.id) < 0 ? [...x, y] : x),\n []\n )\n : filteredEquipments;\n\n return (\n \n \n \n \n \n \n {\n setLinkedArea(null);\n setEquipmentInDetail(null);\n }}>\n {t(\"errors.title\")}\n \n \n {linkedArea && (\n \n setEquipmentInDetail(null)}\n >\n {linkedArea.name}\n \n \n )}\n {equipmentInDetail &&(\n {equipmentInDetail.name}\n )}\n \n \n \n \n \n changeFilter(\"container__area__name\", event)\n }\n remoteMethod={this.areaAutoCompleteFetch}\n options={searchAreaResults}\n loading={searchAreaLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea != null}\n >\n changeFilter(\"container__uuid\", event)}\n value={filter.container__uuid}\n remoteMethod={this.autoCompleteFetch}\n options={searchResults}\n loading={searchLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea == null}\n >\n changeFilter(\"status\", value)}\n placeholder={t(\"table.status\")}\n clearable={true}\n filterMethod={(val) => {\n if (val != null && val !== \"\") {\n this.setState({\n statusOptions: errorStatusOptions.filter(\n (d) => t(d.label).toLowerCase() === val.toLowerCase()\n ),\n });\n } else {\n this.setState({\n statusOptions: errorStatusOptions,\n });\n }\n }}\n options={\n this.state.statusOptions != null\n ? this.state.statusOptions.map((el) => ({\n ...el,\n label: t(el.label),\n }))\n : []\n }\n >\n \n\n {changedForm != null && (\n \n this.setState({ triggerSet: false })}\n state={{ changedForm }}\n setState={this.setState}\n />\n \n )}\n\n \n {\n resetFilter();\n setLinkedArea(null);\n }}\n >\n {t(\"clear_filters\")}\n \n\n this.setState({ triggerSet: true })}\n >\n {t(\"apply\")}\n \n \n {!loadingDownload ? \"Download\" : }\n \n }\n type={\"button\"}\n loadingDownload={loadingDownload}\n >\n \n \n \n \n \n \n\n \n \n setLinkedArea(area)}\n areaEquipments={areaEquipments}\n equipmentInDetail={equipmentInDetail}\n globalNumberOfContainers={filteredEquipmentsNumber}\n setEquipmentInDetail={(equipment) =>\n setEquipmentInDetail(equipment)\n }\n />\n \n \n\n \n
\n \n {t(\"errors.title\")}\n {responsiveHandlers.isMobile || responsiveHandlers.isTablet ? (\n ({ ...equipment }))\n : []\n }\n template={ErrorsTemplate}\n active={(row) =>\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id\n ? 1\n : 0\n }\n markAsResolved={(data) => this.openDialog(data)}\n onRowClick={(entrance) => {\n window.scrollTo({\n left: 0,\n top: 0,\n behavior: \"smooth\",\n });\n this.setState({\n transitionEnded: false,\n });\n setEquipmentInDetail(entrance.container);\n }}\n />\n ) : (\n 768\n ? \"calc(55vh - 64px - 36px - 48px - 4rem - 42px - 1px )\"\n : \"\"\n }\n defaultSort={{ prop: \"startDate\", order: \"descending\" }}\n columns={columns.map((column) => ({\n t,\n ...column,\n markAsResolved: (data) => this.openDialog(data),\n }))}\n data={\n maintenancesList\n ? maintenancesList.map((equipment) => ({\n t,\n ...equipment,\n }))\n : []\n }\n rowClassName={(row) => {\n let toReturn = \"\";\n if (\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id\n ) {\n toReturn += \" active\";\n }\n if (row.status === \"open\") {\n toReturn += \" error\";\n }\n return toReturn;\n }}\n onRowClick={(entrance) => {\n setEquipmentInDetail(entrance.container);\n }}\n />\n )}\n \n
\n \n {dialogOpen && dialogContainer != null && (\n {\n this.setState({\n dialogOpen: false,\n dialogContainer: null,\n });\n resetDescriptionForm();\n }}\n title={t(\"table.add_description\")}\n >\n \n
\n {\n changeDescription({ description: e });\n }}\n />\n {descriptionForm.description != null && (\n {descriptionForm.description.message}\n )}\n
\n \n markAsResolved(dialogContainer)}\n >\n {t(\"table.submit\")}\n \n \n
\n \n )}\n
\n );\n }\n}\n\nexport default withTranslation()(ResponsiveHandler(Logic(Tickets)));\n\nconst Wrapper = styled.div`\n`;\n\nconst CustomLayoutSecondaryRow = styled(Layout.Row)`\n margin-left: 0px !important;\n margin-right: 0px !important;\n margin-top: ${(props) => props.marginTop};\n`;\n\nconst FlexWrapper = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n`;\n\nconst SelectivePaddingColNoFixedHeight = styled(Layout.Col)`\n display: flex;\n justify-content: ${(props) => props.justifyContent};\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n float: ${(props) => props.float} !important;\n overflow: visible;\n`;\n\nconst SelectivePaddingColNoFixedHeightWithBoxShadow = styled(\n SelectivePaddingColNoFixedHeight\n)`\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);\n`;\n\nconst NoPaddingCol = styled(Layout.Col)`\n padding-left: 0px !important;\n padding-right: 0px !important;\n\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n`;\n\nconst CustomBreakcrumb = styled(Breadcrumb)`\n .el-breadcrumb__item > span {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n\n .el-breadcrumb__separator {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n`;\n\n\nconst BreakcrumbWrapper = styled.div`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.desktop`\n flex-direction: row;\n `}\n`;\n\nconst BreadcrumbWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-4 {\n width: 100%;\n margin-bottom: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-4{\n margin-bottom: 8px;\n padding: 0 16px 0 0 !important;\n }\n `}\n`;\n\nconst FiltersWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-20 {\n width: 100%;\n display: grid;\n grid-template-columns: repeat(2, minmax(0, 1fr));\n justify-content: left;\n row-gap: 8px;\n column-gap: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.desktop`\n &.el-col-20{\n display: flex;\n justify-content: flex-end;\n width: 83.33333%;\n padding-left: 14px !important;\n }\n `}\n`;\n\nconst ButtonWrapper = styled(FlexWrapper)`\n display: grid;\n grid-template-columns: 1fr 1fr;\n column-gap: 8px;\n row-gap: 8px;\n grid-column: span 2;\n\n ${({ theme }) => theme.desktop`\n display flex;\n `}\n`;\n\nconst DialogBodyWrapper = styled.div``;\n\nconst DialogButtonWrapper = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: flex-end;\n max-width: 150px;\n margin-left: auto;\n`;\n\nconst ErrorText = styled.p`\n margin-top: 0.5rem;\n font-size: 0.875rem;\n line-heihgt: 1em;\n color: ${({ theme }) => theme.errorColor};\n`;\n\nconst DownloadLoading = styled(Loading)`\n height: 24px;\n width: 24px;\n overflow: hidden;\n\n .el-loading-spinner {\n margin-top: 0;\n top: 0;\n svg {\n height: 24px;\n width: 24px;\n }\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\n\nconst TableName = styled.span`\n color: ${Theme.primaryColor};\n font-size: 1rem;\n font-weight: 800;\n line-height: 22px;\n`;","/**\n * Transactions Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport React from 'react';\n\nimport { kea } from 'kea';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { toast } from 'react-toastify';\nimport fileDownload from 'js-file-download';\n\nimport { put, call } from 'redux-saga/effects';\nimport { delay } from 'redux-saga';\nimport { BASE_API_URL, API_DATE_FORMAT } from 'config';\nimport axios from 'axios';\n\nimport NotificationsWrapper from 'components/NotificationsWrapper';\nimport AppLogic from 'containers/App/logic';\n\nconst TRANSACTIONSURL = BASE_API_URL + 'transactions/';\nconst EVENTSBYDAY = BASE_API_URL + 'transactions/by-day/';\nconst METRICSURL = BASE_API_URL + 'metrics/transactions/';\nconst SEARCHBASEURL = BASE_API_URL + 'transactions/';\nconst DOWNLOADURL = BASE_API_URL + 'transactions/export/';\n\nexport const INTERVAL_FORM_DEFAULTS = {\n start: {\n value: moment().startOf('month'),\n },\n end: {\n value: moment(),\n },\n interval: {\n value: 'day',\n },\n};\n\nexport default kea({\n path: () => ['scenes', 'Transactions'],\n\n connect: {\n props: [AppLogic, ['user']],\n actions: [\n AppLogic,\n ['setWebSocketHanlder', 'changeWatchingEvents', 'watchEvents'],\n ],\n },\n\n actions: () => ({\n changeFiltersForm: (key, value) => ({ key, value }),\n setFiltersForm: (form) => ({ form }),\n resetFiltersForm: () => true,\n\n switchCostumerTrader: () => true,\n\n fetchDrops: (data) => ({ data }),\n setDropsLabels: (labels) => ({ labels }),\n setDrops: (data) => ({ data }),\n setLoadingDrops: (loading) => loading,\n\n search: (query, cb, type) => ({ query, cb, type }),\n\n fetchMaintenancesList: () => true,\n setMaintenancesList: (list) => ({ list }),\n setMaintenancesNumber: (number) => ({ number }),\n\n fetchMetrics: () => true,\n setMetrics: (metrics) => ({ metrics }),\n\n setFilter: (filter) => ({ filter }),\n changeFilter: (key, value) => ({ key, value }),\n resetFilter: () => true,\n filterEntrances: () => true,\n\n setPagination: (pag) => ({ pag }),\n\n triggerFetch: () => true,\n\n download: (type) => ({ type }),\n finishDownload: () => true,\n setTraderSearchResults: (results) => ({ results }),\n setCostumerSearchResults: (results) => ({ results }),\n\n reset: () => true,\n }),\n\n reducers: ({ actions }) => ({\n filtersForm: [\n INTERVAL_FORM_DEFAULTS,\n PropTypes.object,\n {\n [actions.changeFiltersForm]: (state, payload) => ({\n ...state,\n [payload.key]: { value: payload.value },\n }),\n [actions.setFiltersForm]: (state, { form }) => ({ ...form }),\n [actions.resetFiltersForm]: (state, payloada) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n [actions.switchCostumerTrader]: () => ({ ...INTERVAL_FORM_DEFAULTS }),\n [actions.reset]: () => ({ ...INTERVAL_FORM_DEFAULTS }),\n [actions.resetFilter]: (state, payloada) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n },\n ],\n\n pagination: [\n { page: 1, page_size: 10 },\n PropTypes.object,\n {\n [actions.setPagination]: (state, { pag }) => pag,\n [actions.setFiltersForm]: (state) => ({ ...state, page: 1 }),\n [actions.switchCostumerTrader]: () => ({ page: 1, page_size: 10 }),\n [actions.resetFilter]: () => ({ page: 1, page_size: 10 }),\n [actions.reset]: () => ({ page: 1, page_size: 10 }),\n },\n ],\n\n maintenancesList: [\n [],\n PropTypes.array,\n {\n [actions.setMaintenancesList]: (state, { list }) => list,\n [actions.switchCostumerTrader]: () => [],\n [actions.reset]: () => [],\n },\n ],\n\n metrics: [\n null,\n PropTypes.object,\n {\n [actions.setMetrics]: (state, { metrics }) => metrics,\n [actions.reset]: () => null,\n [actions.switchCostumerTrader]: () => null,\n [actions.resetFilter]: () => null,\n },\n ],\n\n filter: [\n {\n search_customer: '',\n search_trader: '',\n transaction_status: '',\n },\n PropTypes.object,\n {\n [actions.setFilter]: (state, { filter }) => filter,\n [actions.changeFilter]: (state, payload) => {\n return Object.assign({}, state, { [payload.key]: payload.value });\n },\n [actions.switchCostumerTrader]: () => ({\n search_customer: '',\n search_trader: '',\n transaction_status: '',\n }),\n [actions.resetFilter]: () => ({\n search_customer: '',\n search_trader: '',\n transaction_status: '',\n }),\n [actions.reset]: () => ({\n search_customer: '',\n search_trader: '',\n transaction_status: '',\n }),\n },\n ],\n\n loadingDrops: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingDrops]: (state, loading) => loading,\n [actions.setFiltersForm]: () => true,\n [actions.switchCostumerTrader]: () => true,\n },\n ],\n\n inTraderMode: [\n false,\n PropTypes.boolean,\n {\n [actions.switchCostumerTrader]: (state) => !state,\n [actions.reset]: () => false,\n },\n ],\n\n drops: [\n [],\n PropTypes.array,\n {\n [actions.setDrops]: (state, { data }) => data,\n [actions.switchCostumerTrader]: () => [],\n [actions.reset]: () => [],\n },\n ],\n\n dropsLabels: [\n [],\n PropTypes.array,\n {\n [actions.setDropsLabels]: (state, { labels }) => labels,\n [actions.switchCostumerTrader]: () => [],\n [actions.reset]: () => [],\n },\n ],\n\n loadingDownload: [\n false,\n PropTypes.boolean,\n {\n [actions.download]: () => true,\n [actions.finishDownload]: () => false,\n [actions.reset]: () => false,\n },\n ],\n\n searchCostumerResults: [\n [],\n PropTypes.array,\n {\n [actions.setCostumerSearchResults]: (state, { results }) => results,\n },\n ],\n searchCostumerLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'costumer',\n [actions.setCostumerSearchResults]: () => false,\n },\n ],\n\n searchTraderResults: [\n [],\n PropTypes.array,\n {\n [actions.setTraderSearchResults]: (state, { results }) => results,\n },\n ],\n searchTraderLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'trader',\n [actions.setTraderSearchResults]: () => false,\n },\n ],\n }),\n\n start: function* () {\n const {\n reset,\n resetFilter,\n switchCostumerTrader,\n setWebSocketHanlder,\n watchEvents,\n search,\n } = this.actions;\n yield put(reset());\n const user = yield this.get('user');\n if (user != null && user.isTrader) {\n yield put(switchCostumerTrader());\n }\n yield put(resetFilter());\n\n yield put(setWebSocketHanlder(this.workers.handle));\n yield put(watchEvents());\n\n yield put(search('', null, 'costumer'));\n yield put(search('', null, 'trader'));\n },\n\n stop: function* () {\n const { changeWatchingEvents } = this.actions;\n yield put(changeWatchingEvents(false));\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.fetchMaintenancesList]: workers.fetchMaintenancesList,\n [actions.switchCostumerTrader]: [\n workers.fetchMaintenancesList,\n workers.fetchDrops,\n workers.fetchMetrics,\n ],\n [actions.resetFilter]: [\n workers.fetchMaintenancesList,\n workers.fetchDrops,\n workers.fetchMetrics,\n ],\n [actions.setPagination]: workers.fetchMaintenancesList,\n [actions.triggerFetch]: [\n workers.fetchMaintenancesList,\n workers.fetchDrops,\n workers.fetchMetrics,\n ],\n [actions.setFiltersForm]: [\n workers.fetchMaintenancesList,\n workers.fetchDrops,\n workers.fetchMetrics,\n ],\n [actions.fetchDrops]: workers.fetchDrops,\n [actions.download]: workers.download,\n }),\n\n takeEvery: ({ actions, workers }) => ({\n [actions.search]: workers.search,\n }),\n\n workers: {\n *search(action) {\n const { query, cb, type } = action.payload;\n const { setTraderSearchResults, setCostumerSearchResults } = this.actions;\n let url = null;\n if (query != null) {\n switch (type) {\n case 'trader':\n url = SEARCHBASEURL + 'search-trader/';\n break;\n\n case 'costumer':\n url = SEARCHBASEURL + 'search-customer/';\n break;\n default:\n break;\n }\n\n try {\n const request = yield call(axios.get, url, {\n params: {\n name: query,\n },\n });\n\n if (request.data) {\n const { results } = request.data;\n switch (type) {\n case 'trader':\n yield put(\n setTraderSearchResults(\n results.map((el) => ({ value: el, label: el }))\n )\n );\n return;\n\n case 'costumer':\n yield put(\n setCostumerSearchResults(\n results.map((el) => ({ value: el, label: el }))\n )\n );\n return;\n default:\n cb(results.map((el) => ({ value: el })));\n return;\n }\n }\n } catch (error) {\n console.log({ error });\n switch (type) {\n case 'trader':\n yield put(setTraderSearchResults([]));\n return;\n\n case 'costumer':\n yield put(setCostumerSearchResults([]));\n return;\n default:\n cb([]);\n return;\n }\n }\n }\n },\n\n *download(action) {\n const { payload } = action;\n const { t } = this.props;\n const { finishDownload } = this.actions;\n const inTraderMode = yield this.get('inTraderMode');\n\n const user = yield this.get('user');\n let filter = yield this.get('filter');\n const filtersForm = yield this.get('filtersForm');\n\n if (payload.type != null) {\n try {\n if (user != null && !user.isAdmin) {\n if (user.isTrader && inTraderMode) {\n filter = { ...filter, trading_as: 'trader' };\n } else {\n filter = { ...filter, trading_as: 'costumer' };\n }\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n const response = yield call(axios.get, DOWNLOADURL, {\n params: {\n file_type: payload.type,\n ...filter,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-datetime',\n },\n responseType: 'blob',\n });\n fileDownload(\n new Blob([response.data]),\n `report-transactions.${payload.type}`\n );\n } catch (err) {\n console.log({ err });\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: 'downloadError',\n }\n );\n } finally {\n yield put(finishDownload());\n }\n }\n },\n\n *fetchMetrics(action) {\n const { setMetrics } = this.actions;\n\n const inTraderMode = yield this.get('inTraderMode');\n const filtersForm = yield this.get('filtersForm');\n const user = yield this.get('user');\n let filter = yield this.get('filter');\n\n if (user != null && !user.isAdmin) {\n if (user.isTrader && inTraderMode) {\n filter = { ...filter, trading_as: 'trader' };\n } else {\n filter = { ...filter, trading_as: 'costumer' };\n }\n }\n\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n const params = {\n ...filter,\n datetime_events_after: moment(date_after).toISOString(),\n datetime_events_before: moment(date_before)\n .endOf('day')\n .toISOString(),\n };\n\n const response = yield call(axios.get, METRICSURL, { params });\n\n if (response.data) {\n yield put(setMetrics(response.data));\n }\n } catch (err) {\n console.log({ err });\n yield put(setMetrics(null));\n }\n },\n\n *fetchMaintenancesList(action) {\n yield delay(500);\n\n const inTraderMode = yield this.get('inTraderMode');\n const filtersForm = yield this.get('filtersForm');\n const pagination = yield this.get('pagination');\n const user = yield this.get('user');\n let filter = yield this.get('filter');\n\n if (user != null && !user.isAdmin) {\n if (user.isTrader && inTraderMode) {\n filter = { ...filter, trading_as: 'trader' };\n } else {\n filter = { ...filter, trading_as: 'customer' };\n }\n }\n\n const { setMaintenancesList, setMaintenancesNumber } = this.actions;\n\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let response = yield call(axios.get, TRANSACTIONSURL, {\n params: {\n ...pagination,\n ...filter,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-datetime',\n },\n });\n\n if (response.data != null && response.data.results) {\n yield put(setMaintenancesList(response.data.results));\n yield put(setMaintenancesNumber(response.data.results.length));\n } else {\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n }\n } catch (error) {\n console.log({ error });\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n }\n },\n\n *fetchDrops(action) {\n yield delay(1500);\n const { setDropsLabels, setDrops, setLoadingDrops } = this.actions;\n yield put(setLoadingDrops(true));\n\n const inTraderMode = yield this.get('inTraderMode');\n const user = yield this.get('user');\n const filtersForm = yield this.get('filtersForm');\n let filter = yield this.get('filter');\n\n if (user != null && !user.isAdmin) {\n if (user.isTrader && inTraderMode) {\n filter = { ...filter, trading_as: 'trader' };\n } else {\n filter = { ...filter, trading_as: 'customer' };\n }\n }\n\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n const { data } = yield call(axios.get, EVENTSBYDAY, {\n params: {\n ...filter,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n },\n });\n\n if (data != null && data.results != null) {\n let labels = [];\n let counter = [];\n\n for (const transaction of data.results) {\n labels.push(transaction.date);\n counter.push(transaction.count);\n }\n yield put(setDropsLabels(labels));\n yield put(setDrops(counter));\n }\n } catch (err) {\n console.log({ err });\n yield put(setDropsLabels([]));\n yield put(setDrops([]));\n } finally {\n yield put(setLoadingDrops(false));\n }\n },\n\n *handle(message) {\n const { triggerFetch } = this.actions;\n const user = yield this.get('user');\n\n if (message.event_type === 'status' && user.isAdmin) {\n let temp = { ...message };\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n toast.info(temp.message, {\n position: toast.POSITION.TOP_RIGHT,\n delay: 200,\n id: message_id ? `uniqueStatusMessage${message_id}` : null,\n });\n } else if (message.event_type === 'event' && message.content) {\n if (message.event_type === 'event') {\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n if (\n message.content &&\n (message.content.type === 'drop' ||\n message.content.type === 'pick' ||\n message.content.type === 'maintenance') &&\n message.type === 'new' &&\n user.isAdmin\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueDropMessage${message_id}` : null,\n }\n );\n } else if (message.sender && message.sender === 'transaction') {\n yield put(triggerFetch());\n } else if (\n message.content &&\n message.content.type === 'alert' &&\n user.isAdmin\n ) {\n toast.warn(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueAlertMessage${message_id}` : null,\n }\n );\n } else if (\n message.content &&\n message.content.type === 'error' &&\n user.isAdmin\n ) {\n if (message.content.status === 'closed') {\n toast.success(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n } else {\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n }\n }\n }\n }\n },\n },\n});\n","import React from \"react\";\nimport moment from \"moment\";\nimport styled from \"styled-components\";\n\nexport const columns_costumer = [\n {\n label: \"table.date\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"datetime\",\n render: function (data) {\n return (\n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm\")}\n \n );\n },\n minWidth: 180,\n },\n {\n label: \"table.trader\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortMethod: function (a, b) {\n if (a && b && a.trader && b.trader) {\n if (a.trader.fullName && b.trader.fullName) {\n return a.trader.fullName >= b.trader.fullName;\n }\n }\n return false;\n },\n sortable: true,\n prop: \"trader\",\n\n render: function (data) {\n return (\n \n {data.trader && data.trader && data.trader.fullName\n ? `${data.trader.fullName}`\n : \"-\"}\n \n );\n },\n },\n {\n label: \"table.points\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"points\",\n render: function ({ t, ...data }) {\n return {data.points};\n },\n },\n {\n label: \"table.transaction_status\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"status\",\n render: function ({ t, ...data }) {\n return (\n \n {t(`table.${data.status}`)}\n \n );\n },\n },\n];\n\nexport const columns_trader = [\n {\n label: \"table.date\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"datetime\",\n render: function (data) {\n return (\n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm\")}\n \n );\n },\n minWidth: 180,\n },\n {\n label: \"table.costumer\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n prop: \"customer\",\n sortMethod: function (a, b) {\n if (a && b && a.customer && b.customer) {\n if (a.customer.fullName && b.customer.fullName) {\n return a.customer.fullName >= b.customer.fullName;\n }\n }\n return false;\n },\n render: function (data) {\n return (\n \n {data.customer && data.customer && data.customer.fullName\n ? `${data.customer.fullName}`\n : \"-\"}\n \n );\n },\n },\n {\n label: \"table.points\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"points\",\n render: function ({ t, ...data }) {\n return {data.points};\n },\n },\n {\n label: \"table.transaction_status\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"status\",\n render: function ({ t, ...data }) {\n return (\n \n {t(`table.${data.status}`)}\n \n );\n },\n },\n];\n\nexport const columns_admin = [\n {\n label: \"table.id\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"id\",\n render: function (data) {\n return (\n \n {data.id ? data.id : \"-\"}\n \n );\n },\n minWidth: 70,\n },\n {\n label: \"table.date\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"datetime\",\n render: function (data) {\n return (\n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm\")}\n \n );\n },\n minWidth: 180,\n },\n {\n label: \"table.trader\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortMethod: function (a, b) {\n if (a && b && a.trader && b.trader) {\n if (a.trader.fullName && b.trader.fullName) {\n return a.trader.fullName >= b.trader.fullName;\n }\n }\n return false;\n },\n sortable: true,\n prop: \"trader\",\n render: function (data) {\n return (\n \n {data.trader && data.trader && data.trader.fullName\n ? `${data.trader.fullName}`\n : \"-\"}\n \n );\n },\n },\n {\n label: \"table.costumer\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortMethod: function (a, b) {\n if (a && b && a.customer && b.customer) {\n if (a.customer.fullName && b.customer.fullName) {\n return a.customer.fullName >= b.customer.fullName;\n }\n }\n return false;\n },\n sortable: true,\n prop: \"customer\",\n render: function (data) {\n return (\n \n {data.customer && data.customer && data.customer.fullName\n ? `${data.customer.fullName}`\n : \"-\"}\n \n );\n },\n },\n {\n label: \"table.points\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"points\",\n render: function ({ t, ...data }) {\n return {data.points};\n },\n },\n {\n label: \"table.transaction_status\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"status\",\n render: function ({ t, ...data }) {\n return (\n \n {t(`table.${data.status}`)}\n \n );\n },\n },\n];\n\nconst EllipsisDiv = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n","/**\n * StyledSelect Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled from \"styled-components\";\n\nimport { AnimatedArrow } from \"components/AnimatedArrow\";\nimport { Theme } from \"globalStyles\";\n\nclass ToggleFilterTitle extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n open: false,\n };\n this.wrapperRef = React.createRef();\n }\n\n componentDidUpdate(oldProps) {\n if (this.props.variableToWatch !== oldProps.variableToWatch) {\n this.setState({ open: false });\n }\n if (\n this.props.loadingDownload !== oldProps.loadingDownload &&\n this.props.loadingDownload\n ) {\n this.setState({ open: false });\n }\n }\n\n componentDidMount() {\n document.addEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n componentWillUnmount() {\n document.removeEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n handleClickOutside = (event) => {\n if (\n this.wrapperRef &&\n !this.wrapperRef.current.contains(event.target) &&\n this.state.open\n ) {\n this.setState({ open: false });\n }\n };\n\n render() {\n const { open } = this.state;\n const { text, children, type, icon } = this.props;\n const Icon = icon;\n return (\n \n {\n this.setState({ open: !open });\n }}\n >\n {icon != null && (\n \n \n \n )}\n {text}\n\n \n \n \n \n {children}\n \n \n \n );\n }\n}\n\nexport default ToggleFilterTitle;\n\nconst Wrapper = styled.div`\n position: relative;\n\n z-index: 1001;\n user-select: none;\n order: -1;\n order: ${(props) => props.order};\n`;\n\nconst ReferenceWrapper = styled.div`\n position: absolute;\n box-shadow: 0px 0px 22px 0px rgba(204, 204, 204, 1);\n top: 40px;\n right: 0;\n`;\n\nconst DynamicWrapper = styled.div`\n height: auto;\n overflow: hidden;\n position: relative;\n left: 0;\n`;\n\nconst ToggleButtonWrapper = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n color: ${Theme.primaryColor};\n margin: ${({ margin }) => margin};\n font-family: ${Theme.fontFamily};\n background-color: transparent;\n cursor: pointer;\n`;\n\nconst ToggleText = styled.span`\n color: ${(props) => props.theme.black};\n font-size: 14px;\n line-height: 1em;\n margin-right: 5px;\n\n &:focus,\n &:active {\n color: ${(props) => props.theme.darkPrimaryColor};\n }\n`;\n\nconst IconWrapper = styled.div`\n background-color: ${Theme.primaryColor};\n padding: 0.5rem;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n\n margin-right: 1rem;\n`;\n","/**\n * CollectsTemplate Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled, { css } from \"styled-components\";\nimport { Theme } from \"globalStyles\";\nimport { useTranslation } from \"react-i18next\";\n\nimport moment from \"moment\";\n\nexport default ({ children, ...props }) => {\n const { data, mode } = props;\n const { t } = useTranslation();\n\n if (mode === \"costumer\") {\n return (\n \n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm:ss\")}\n \n {/* \n {data.costumer && data.costumer && data.costumer.fullName\n ? `${data.costumer.fullName}`\n : \"-\"}\n */}\n \n {data.trader && data.trader && data.trader.fullName\n ? `${data.trader.fullName}`\n : \"-\"}\n \n \n {data.points != null\n ? `${data.points} ${t(\"table.earned_points\")}`\n : \"-\"}\n \n {data.status != null ? t(`table.${data.status}`) : \"-\"}\n \n );\n }\n\n if (mode === \"trader\") {\n return (\n \n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm:ss\")}\n \n \n {data.costumer && data.costumer && data.costumer.fullName\n ? `${data.costumer.fullName}`\n : \"-\"}\n \n {/* \n {data.trader && data.trader && data.trader.fullName\n ? `${data.trader.fullName}`\n : \"-\"}\n */}\n \n {data.points != null\n ? `${data.points} ${t(\"table.earned_points\")}`\n : \"-\"}\n \n {data.status != null ? t(`table.${data.status}`) : \"-\"}\n \n );\n }\n\n if (mode === \"admin\") {\n return (\n \n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm:ss\")}\n \n \n {data.costumer && data.costumer && data.costumer.fullName\n ? `${data.costumer.fullName}`\n : \"-\"}\n \n \n {data.trader && data.trader && data.trader.fullName\n ? `${data.trader.fullName}`\n : \"-\"}\n \n {}\n {data.status != null ? t(`table.${data.status}`) : \"-\"}\n \n );\n }\n return null\n};\n\nconst Wrapper = styled.div`\n background: white;\n padding: 16px;\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-template-rows: auto auto;\n row-gap: 8px;\n column-gap: 8px;\n\n border-bottom: 1px solid ${Theme.inactiveColor};\n\n ${(props) =>\n props.status === \"cancelled\" &&\n css`\n border-left: 3px solid ${Theme.errorColor};\n background-color: ${Theme.lightColor};\n `}\n\n ${(props) =>\n props.status === \"approved\" &&\n css`\n border-left: 3px solid ${Theme.successColor};\n background-color: ${Theme.lightSuccessColor};\n `}\n\n ${(props) =>\n props.status === \"expired\" &&\n css`\n border-left: 3px solid ${Theme.alertColor};\n background-color: ${Theme.lightAlertColor};\n `}\n`;\n\nconst DateTime = styled.div`\n font-weight: 300;\n grid-column: 2/3;\n grid-row: 1/2;\n text-align: right;\n font-size: 12px;\n color: ${Theme.iconDarkColor};\n`;\nconst User = styled.div`\n grid-column: 1/2;\n grid-row: 2/3;\n font-size: 16px;\n`;\n\nconst Points = styled.p`\n margin: 0;\n font-size: 16px;\n`;\nconst Container = styled.div`\n font-size: 12px;\n grid-column: 1/2;\n grid-row: 1/2;\n font-weight: 700;\n color: ${Theme.iconDarkColor};\n`;\nconst Status = styled.div`\n color: ${Theme.textonSecondary};\n grid-column: 2/3;\n grid-row: 2/3;\n text-align: right;\n font-size: 12px;\n margin: auto 0;\n color: ${(props) => props.color};\n`;\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\";\n\nfunction SvgComponent(props) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n}\n\nexport default SvgComponent;\n","/**\n * Transactions Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic, { INTERVAL_FORM_DEFAULTS } from \"./logic\";\nimport styled from \"styled-components\";\nimport { Theme } from \"globalStyles\";\nimport { columns_admin, columns_trader, columns_costumer } from \"./columns\";\nimport { ADDITIONAL_FEATURES } from \"config\";\n\nimport moment from \"moment\";\nimport { Layout, Card, Loading, Breadcrumb } from \"element-react\";\nimport { withTranslation } from \"react-i18next\";\nimport { Bar } from \"react-chartjs-2\";\n\nimport IntervalPicker from \"containers/IntervalPicker\";\nimport DownloadDropDownContainer from \"containers/DownloadDropDownContainer\";\n\nimport StyledMobileTable from \"containers/StyledMobileTable\";\n\nimport ResponsiveHandler from \"components/ResponsiveHandler\";\nimport ToggleFilter from \"components/ToggleFilter\";\nimport ToggleFilterTitle from \"components/ToggleFilterTitle\";\nimport StyledButton from \"components/StyledButton\";\nimport GraphIndicator from \"components/GraphIndicator\";\nimport StyledTable from \"components/StyledTable\";\nimport StyledSelect from \"components/StyledSelect\";\nimport StyledOption from \"components/StyledOption\";\nimport { getIntervalText } from \"utils\";\nimport TransactionsTemplate from \"components/TransactionsTemplate\";\n\nimport TraderIcon from \"icons/TraderIcon\";\nimport CostumerIcon from \"icons/CostumerIcon\";\n\nconst intervalOptions = [\n {\n value: \"day\",\n label: \"day\",\n },\n {\n value: \"month\",\n label: \"month\",\n },\n {\n value: \"year\",\n label: \"year\",\n },\n];\n\nconst statusOptions = [\n {\n label: \"pending\",\n value: \"pending\",\n },\n {\n label: \"approved\",\n value: \"approved\",\n },\n {\n label: \"cancelled\",\n value: \"cancelled\",\n },\n {\n label: \"expired\",\n value: \"expired\",\n },\n];\n\nclass Transactions extends Component {\n constructor(props) {\n super(props);\n this.state = {\n triggerSet: false,\n filtersWidth: 20,\n inputWidth: \"140px\",\n changedForm: null,\n };\n this.tableRef = React.createRef();\n this.setState = this.setState.bind(this);\n this._costumerAutocompleteRef = null;\n this._traderAutocompleteRef = null;\n\n }\n\n componentDidMount() {\n this.setState({\n changedForm: this.props.filtersForm,\n });\n }\n\n createDropTooltip = (tooltipItem, type) => {\n const { t } = this.props;\n return `${tooltipItem.value} ${t(`graph.${type}`)}`;\n };\n\n createTooltipTile = (tooltipItem, data) => {\n return tooltipItem[0].label;\n };\n\n mapTooltips = (text, data) => {\n return text;\n };\n\n timeIntervalSelect = () => {\n const { filtersForm, t } = this.props;\n const { setFiltersForm, resetFiltersForm, resetFilter, changeFiltersForm } =\n this.actions;\n\n const { triggerSet, changedForm } = this.state;\n\n return (\n \n {changedForm != null && (\n \n this.setState({ triggerSet: false })}\n defaultForm={INTERVAL_FORM_DEFAULTS}\n state={{ changedForm }}\n setState={this.setState}\n />\n \n )}\n \n \n resetFilter()}>\n {t(\"clear_filters\")}\n \n this.setState({ triggerSet: true })}\n >\n {t(\"apply\")}\n \n \n \n \n );\n };\n\n costumerAutoCompleteFetch = (queryString) => {\n if (this._costumerAutocompleteRef) {\n clearTimeout(this._costumerAutocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._costumerAutocompleteRef = setTimeout(function () {\n search(queryString, null, \"costumer\");\n }, 500);\n };\n\n traderAutoCompleteFetch = (queryString) => {\n if (this._traderAutocompleteRef) {\n clearTimeout(this._traderAutocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._traderAutocompleteRef = setTimeout(function () {\n search(queryString, null, \"trader\");\n }, 500);\n };\n\n render() {\n const {\n i18n,\n t,\n responsiveHandlers,\n maintenancesList,\n user,\n dropsLabels,\n drops,\n loadingDrops,\n metrics,\n filter,\n inTraderMode,\n loadingDownload,\n searchCostumerLoading,\n searchCostumerResults,\n searchTraderLoading,\n searchTraderResults\n } = this.props;\n const {\n changeFilter,\n switchCostumerTrader,\n download,\n } = this.actions;\n const { filtersWidth, inputWidth } = this.state;\n\n let columnsToMap = null;\n let mode = null;\n if (user != null) {\n if (user.isAdmin) {\n columnsToMap = columns_admin;\n mode = \"admin\";\n } else if (user.isTrader && inTraderMode) {\n columnsToMap = columns_trader;\n mode = \"trader\";\n } else {\n columnsToMap = columns_costumer;\n mode = \"costumer\";\n }\n } else {\n columnsToMap = [];\n }\n\n return (\n \n \n \n \n \n \n {user != null &&\n user.isTrader &&\n ADDITIONAL_FEATURES.includes(\"trader_switch\") ? (\n \n \n \n !inTraderMode && switchCostumerTrader()\n }\n >\n {t(\"transactions.title_trader\")}\n \n inTraderMode && switchCostumerTrader()}\n >\n {t(\"transactions.title_costumer\")}\n \n \n \n ) : (\n t(\"transactions.title\")\n )}\n \n \n \n \n \n {/* {user != null && user.isTrader && (\n \n \n {}\n \n \n )} */}\n {user != null &&\n ((inTraderMode && user.isTrader) || user.isAdmin) && (\n \n changeFilter(\"search_customer\", event)\n }\n value={filter.search_costumer}\n remoteMethod={this.costumerAutoCompleteFetch}\n options={searchCostumerResults}\n loading={searchCostumerLoading}\n filterable={true}\n remote={true}\n clearable={true}\n >\n )}\n {!inTraderMode && user != null && (\n changeFilter(\"search_trader\", event)}\n value={filter.search_trader}\n remoteMethod={this.traderAutoCompleteFetch}\n options={searchTraderResults}\n loading={searchTraderLoading}\n filterable={true}\n remote={true}\n clearable={true}\n >\n )}\n changeFilter(\"transaction_status\", value)}\n placeholder={t(\"table.transaction_status\")}\n clearable={true}\n options={\n statusOptions != null\n ? statusOptions.map((el) => ({\n ...el,\n label: t(`table.${el.label}`),\n }))\n : []\n }\n >\n {this.timeIntervalSelect()}\n {user != null && user.isAdmin && (\n \n {!loadingDownload ? \"Download\" : }\n \n }\n zIndex={1}\n type={\"button\"}\n loadingDownload={loadingDownload}\n >\n \n \n )}\n \n \n \n \n \n \n \n \n {metrics != null && metrics != null && (\n \n \n {user != null && user.isAdmin && (\n \n \n \n \n \n \n )}\n \n )}\n\n {user != null &&\n !user.isAdmin &&\n metrics != null &&\n metrics.lastTransaction != null && (\n \n \n \n
\n {user.isTrader ? (\n \n {metrics.lastTransaction.costumer != null\n ? metrics.lastTransaction.costumer.fullName\n : \"-\"}\n \n ) : (\n \n {metrics.lastTransaction.trader != null\n ? metrics.lastTransaction.trader.fullName\n : \"-\"}\n \n )}\n
\n \n {t(`table.${metrics.lastTransaction.status}`)}\n \n \n {moment(metrics.lastTransaction.datetime)\n .locale(i18n.language)\n .format(\"DD MMM HH:mm\")}\n \n \n {t(\"transactions.last_transaction\")}\n \n
\n
\n )}\n
\n \n
\n\n {/* BAR GRAPH */}\n \n \n \n {t(\"transactions.graph_title\")}\n \n \n \n \n {!loadingDrops && (\n {\n return this.createTooltipTile(\n tooltipItem,\n data\n );\n },\n label: (tooltipItem, data) => {\n return this.createDropTooltip(\n tooltipItem,\n \"transactions\"\n );\n },\n },\n },\n }}\n />\n )}\n \n \n \n \n \n
\n\n \n \n
\n {columnsToMap != null && (\n \n {t(\"transactions.title\")}\n \n {responsiveHandlers.isMobile ||\n responsiveHandlers.smallDesktop ? (\n ({\n t,\n ...equipment,\n }))\n : []\n }\n template={TransactionsTemplate}\n active={() => false}\n onRowClick={(entrance) => {\n window.scrollTo({\n left: 0,\n top: 0,\n behavior: \"smooth\",\n });\n }}\n mode={mode}\n margin={0}\n />\n ) : (\n ({\n t,\n ...column,\n }))}\n data={\n maintenancesList\n ? maintenancesList.map((equipment) => ({\n t,\n ...equipment,\n }))\n : []\n }\n height={\n responsiveHandlers.height > 768\n ? \"calc(55vh - 4rem - 112px - 40px)\"\n : \"\"\n }\n />\n )}\n \n \n )}\n
\n \n
\n
\n );\n }\n}\n\nexport default withTranslation()(ResponsiveHandler(Logic(Transactions)));\n\nconst Wrapper = styled.div`\n`;\n\nconst BreakcrumbWrapper = styled.div`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.desktop`\n flex-direction: row;\n `}\n`;\n\nconst CustomLayoutSecondaryRow = styled(Layout.Row)`\n margin-left: 0px !important;\n margin-right: 0px !important;\n margin-top: ${(props) => props.marginTop};\n width: 100%;\n`;\n\nconst MapCardsWrapper = styled(CustomLayoutSecondaryRow)`\n display: flex;\n flex-direction: column;\n height: 100%;\n\n ${({ theme }) => theme.smallDesktop`\n\n display: block;\n\n and @media (max-height: 768px) {\n height: 320px;\n }\n `}\n`;\n\nconst LayoutColLessPadding = styled(Layout.Col)`\n padding-left: ${(props) => props.paddingSides + \" !important\"};\n padding-right: ${(props) => props.paddingSides + \" !important\"};\n &:first-child {\n padding-left: 0 !important;\n }\n &:last-child {\n padding-right: 0 !important;\n }\n`;\nconst CardsWrapper = styled(LayoutColLessPadding)`\n &.el-col-4 {\n order: 0;\n width: 100%;\n padding: 0 !important;\n margin-top: 16px;\n\n ${({ theme }) => theme.smallDesktop`\n width: 16.66667%;\n padding-right: 5px !important;\n margin-top: 0;\n\n `}\n }\n &.el-col-20 {\n order: 0;\n width: 100%;\n padding: 0 !important;\n margin-top: 16px;\n\n ${({ theme }) => theme.smallDesktop`\n width: 83.33333%;\n padding-right: 5px !important;\n margin-top: 0;\n\n `}\n }\n\n @media (max-height: 768px) {\n height: 100%;\n }\n`;\n\nconst CustomBreakcrumb = styled(Breadcrumb)`\n.el-breadcrumb__item > span {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n}\n\n.el-breadcrumb__separator {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n}\n`;\n\nconst SelectPositioner = styled.div`\n height: auto;\n padding: 0px 0px 0px 0px;\n display: flex;\n grid-column: span 2;\n`;\n\nconst FlexWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n`;\n\nconst ButtonWrapper = styled(FlexWrapper)`\n display: grid;\n grid-template-columns: 1fr 1fr;\n column-gap: 8px;\n grid-column: span 2;\n width: 100%;\n\n ${({ theme }) => theme.smallDesktop`\n display flex;\n `}\n`;\n\nconst CustomCard = styled(Card)`\n width: ${(props) => props.width};\n margin: ${(props) => props.margin};\n border: ${(props) => props.border + \" !important\"};\n height: ${(props) => props.minHeight};\n\n flex: 0 auto;\n\n & + & {\n margin-top: 8px;\n }\n\n ${({ theme }) => theme.smallDesktop`\n height: ${(props) => props.height};\n\n & + & {\n margin-top: 0;\n margin-left: 16px;\n }\n `}\n\n .el-card__body {\n height: 100%;\n display: flex;\n flex-direction: column;\n flex: 1 auto;\n\n & > div {\n height: 100%;\n @media (max-height: 768px) {\n height: 320px;\n overflow: auto;\n }\n }\n }\n\n @media (max-height: 768px) {\n height: 100%;\n }\n`;\n\nconst CustomCardTransparent = styled(CustomCard)`\n box-shadow: none !important;\n height: auto;\n\n @media (max-height: 768px) {\n min-height: 320px;\n }\n &.el-card {\n background-color: transparent;\n }\n\n ${({ theme }) => theme.smallDesktop`\n height: ${(props) => props.height};\n\n & + & {\n margin-top: 0;\n margin-left: 16px;\n }\n `}\n`;\n\nconst NoPaddingCol = styled(Layout.Col)`\n padding-left: 0px !important;\n padding-right: 0px !important;\n\n padding: ${(props) => props.padding} !important;\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n\n height: 100%;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n\n`;\n\nconst FlexRowNormal = styled.div`\n display: flex;\n flex-direction: row;\n position: relative;\n width: 100%;\n flex: 100%;\n\n flex-direction: column;\n ${({ theme }) => theme.smallDesktop`\n flex-direction: row;\n `}\n`;\n\nconst GraphFlex = styled(FlexRowNormal)`\n .el-card__body && {\n @media (max-height: 768px) {\n height: 280px !important;\n }\n ${({ theme }) => theme.smallDesktop`\n height: calc(100% - 40px);\n `}\n }\n`;\n\nconst GraphWrapper = styled.div`\n position: relative;\n height: 100%;\n width: 100%;\n width: ${(props) => props.width};\n padding: 4px 10px 12px 25px;\n`;\n\nconst GraphTitle = styled.h2`\n color: ${Theme.black};\n font-family: ${Theme.fontFamily};\n font-size: 16px;\n line-height: 22px;\n padding: 17px 15px 0px 15px;\n text-align: center;\n margin: 0;\n padding: ${(props) => props.margin};\n`;\n\nconst CustomLoading = styled(Loading)`\n display: flex !important;\n width: 100%;\n height: 100%;\n width: -webkit-fill-available !important;\n position: relative;\n\n .el-loading-spinner {\n left: 0px !important;\n top: ${(props) => (props.top ? props.top : \"40px\")};\n display: flex !important;\n justify-content: center;\n\n height: 100%;\n top: 0;\n padding: 0;\n align-items: center;\n\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\n\nconst GraphIndicatorsWrapper = styled.div`\n padding: 1.5rem;\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n height: 100%;\n\n @media (max-height: 768px) {\n height: 320px;\n }\n`;\n\nconst Divider = styled.div`\n height: 1px;\n width: 90%;\n background-color: ${Theme.lightInactiveColor};\n margin: 0 auto;\n`;\n\nconst GraphIndicatorWrapper = styled.div`\n padding: 8px;\n display: flex;\n flex-direction: column;\n align-items: center;\n position: relative;\n margin: auto 0;\n`;\n\nconst GraphIndicatorLabel = styled.div`\n color: ${Theme.darkInactiveColor};\n font-family: ${Theme.fontFamily};\n font-weight: 500;\n font-size: 14px;\n line-height: 22px;\n margin: 0;\n text-align: center;\n margin: ${(props) => props.margin};\n`;\n\nconst GraphIndicatorText = styled.p`\n color: ${Theme.black};\n font-weight: 700;\n font-size: 24px;\n line-height: 24px;\n display: flex;\n flex-direction: column;\n text-align: center;\n width: fit-content;\n background: transparent !important;\n`;\n\nconst SelectivePaddingColNoFixedHeight = styled(Layout.Col)`\n display: flex;\n justify-content: ${(props) => props.justifyContent};\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n float: ${(props) => props.float} !important;\n transition: width 0.4s;\n overflow: visible;\n`;\n\nconst BreadcrumbWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-4 {\n width: 100%;\n margin-bottom: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-4{\n margin-bottom: 8px;\n padding: 0 16px 0 0 !important;\n }\n `}\n\n ${({ theme }) => theme.desktop`\n &.el-col-4{\n width: 16.66667%;\n margin-bottom: 0;\n }\n `}\n`;\n\nconst FiltersWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-20 {\n width: 100%;\n display: grid;\n grid-template-columns: repeat(2, minmax(0, 1fr));\n justify-content: left;\n row-gap: 8px;\n column-gap: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-20{\n display: grid;\n }\n `}\n\n ${({ theme }) => theme.desktop`\n &.el-col-20{\n display: flex;\n justify-content: flex-end;\n width: 83.33333%;\n padding-left: 14px !important;\n }\n `}\n`;\n\nconst SwitchWrapper = styled.div`\n padding: 6px 0;\n background-color: ${Theme.textOnPrimary};\n z-index: 100;\n min-width: 150px;\n`;\n\nconst DownloadLoading = styled(Loading)`\n height: 24px;\n width: 24px;\n overflow: hidden;\n\n .el-loading-spinner {\n margin-top: 0;\n top: 0;\n svg {\n height: 24px;\n width: 24px;\n }\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\n\nconst TableName = styled.span`\n color: ${Theme.primaryColor};\n font-size: 1rem;\n font-weight: 800;\n line-height: 22px;\n`;","/**\n * Login Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport { kea } from \"kea\";\n\nimport { put, call } from \"redux-saga/effects\";\n\nimport axios from \"axios\";\nimport PropTypes from \"prop-types\";\nimport mapValues from \"lodash/mapValues\";\nimport * as Check from \"validations\";\nimport { BASE_API_URL } from \"config\";\n\nconst RECOVER_PASSWORD_URL = BASE_API_URL + \"auth/password-reset/\";\n\n// Constants\n\nconst DEFAULT_VALUES = {\n email: {\n value: \"\",\n },\n};\n\nconst VALIDATIONS = {\n email: [Check.isRequired, Check.Email],\n};\n\nexport default kea({\n path: () => [\"scenes\", \"RecoverPassword\"],\n\n connect: {\n actions: [],\n },\n\n actions: () => ({\n change: (field) => ({ field }),\n submit: () => ({}),\n setResponse: (response) => ({ response }),\n setError: (error) => ({ error }),\n setForm: (form) => ({ form }),\n reset: () => true,\n }),\n\n reducers: ({ actions }) => ({\n form: [\n DEFAULT_VALUES,\n PropTypes.object,\n {\n [actions.change]: (state, payload) =>\n Check.setAndCheckValidation(state, payload, VALIDATIONS),\n [actions.setForm]: (state, payload) =>\n Check.checkValidation(payload.form, VALIDATIONS).form,\n [actions.reset]: () => DEFAULT_VALUES,\n },\n ],\n\n submiting: [\n false,\n PropTypes.bool,\n {\n [actions.submit]: () => true,\n [actions.setError]: () => false,\n [actions.setResponse]: () => false,\n [actions.reset]: () => false,\n },\n ],\n\n response: [\n null,\n PropTypes.any,\n {\n [actions.setResponse]: (state, payload) => payload.response,\n [actions.reset]: () => null,\n },\n ],\n\n error: [\n null,\n PropTypes.any,\n {\n [actions.setError]: (state, payload) => payload.error,\n [actions.reset]: () => null,\n },\n ],\n }),\n\n start: function* () {\n const { reset } = this.actions;\n yield put(reset());\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.submit]: workers.submit,\n }),\n\n workers: {\n /**\n * Write something about your form submitons\n * @param {*} action\n */\n *submit(action) {\n const { setError, setForm, setResponse } = this.actions;\n\n const form = yield this.get(\"form\");\n const validation = Check.checkValidation(form, VALIDATIONS);\n\n if (validation.invalid) {\n // try to scroll to first form field error\n yield put(setForm(validation.form));\n yield put(setError([]));\n return false;\n }\n let params = mapValues(form, ({ value }) => value);\n try {\n yield call(axios.post, RECOVER_PASSWORD_URL, params);\n yield put(setResponse(\"success\"));\n } catch (err) {\n console.log({ err });\n yield put(setResponse(\"success\"));\n }\n },\n },\n});\n","/**\n * Login Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic from \"./logic\";\nimport styled from \"styled-components\";\nimport { Input } from \"element-react\";\n// import { lighten } from \"polished\";\nimport { Theme } from \"globalStyles\";\nimport { withTranslation } from \"react-i18next\";\nimport StyledButton from \"components/StyledButton\";\nimport BackArrow from \"icons/BackArrow\";\nimport { Link } from \"react-router-dom\";\n\nclass RecoverPassword extends Component {\n handleEnter = (event) => {\n if (event.key === \"Enter\") {\n const { submit } = this.actions;\n submit();\n }\n };\n\n componentDidUpdate() {}\n\n render() {\n const { email } = this.props.form;\n const { t, submiting, error, response } = this.props;\n const { change, submit } = this.actions;\n\n if (response === \"success\") {\n return (\n \n \n \n \n \n \n {t(\"recover_password\")}\n \n\n {t('recover_success')}\n {t('back_main_page')}\n \n \n );\n }\n\n return (\n \n \n \n \n \n \n {t(\"recover_password\")}\n \n\n {\n change({ email: e });\n }}\n onKeyDown={this.handleEnter}\n error={email.valid === false && email.message != null}\n />\n {email.valid === false && email.message != null && (\n {t(email.message)}\n )}\n\n \n \n {t(\"recover_password\")}\n \n \n\n {error && error.map((error) => t(error))}\n \n \n );\n }\n}\n\nexport default withTranslation()(Logic(RecoverPassword));\n\nconst Wrapper = styled.div`\n height: calc(100vh - 4rem);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n background-color: #f8f8f8;\n margin: -20px;\n`;\n\nconst FlexWrapper = styled.div`\n max-height: 330px;\n background-color: #ffffff;\n box-shadow: 0 0 14px 0 rgba(64, 82, 132, 0.1);\n padding: 32px;\n margin: 2rem;\n ${({ theme }) => theme.smallDesktop`\n width: 410px;\n `}\n`;\n\nconst Error = styled.div`\n width: 100%;\n color: red;\n display: flex;\n justify-content: center;\n margin-top: 10px !important;\n font-size: 12px;\n`;\n\nconst AlignCenter = styled.div`\n display: flex;\n justify-content: center;\n margin-top: 20px !important;\n`;\n\n// const StyledButton = styled(Button)`\n// width: 100%;\n// color: #ffffff !important;\n// height: 40px !important;\n// background-color: ${Theme.primaryColor} !important;\n// box-shadow: 0 0 14px 0 rgba(64, 82, 132, 0.1) !important;\n// transition: background-color 0.6s !important;\n// transition: color 0.3s;\n\n// :focus {\n// color: #8391a5 !important;\n// border-color: #8391a5 !important;\n// color: #ffffff !important;\n// }\n\n// :hover {\n// color: #ffffff !important;\n\n// background-color: ${lighten(0.1, Theme.primaryColor)} !important;\n// }\n// `;\n\nconst StyledInput = styled(Input)`\n margin-bottom: 15px;\n\n .el-input__inner {\n color: #242a3e;\n font-family: ${Theme.fontFamily};\n font-size: 12px;\n line-height: 16px;\n padding: 0px 16px;\n :focus {\n border-color: #8391a5;\n }\n }\n\n input {\n text-align: left !important;\n }\n input:-webkit-autofill {\n -webkit-box-shadow: 0 0 0px 1000px #ffffff inset;\n -webkit-text-fill-color: #1f2d3d !important;\n background-color: #ffffff !important;\n color: #1f2d3d !important;\n }\n margin-bottom: ${(props) => props.error === true && 0};\n`;\n\nconst LoginText = styled.div`\n color: #242a3e;\n font-family: ${Theme.fontFamily};\n font-size: 18px;\n font-weight: bold;\n line-height: 36px;\n`;\n\nconst TitleRow = styled.div`\n display: grid;\n grid-template-columns: 16px 1fr;\n column-gap: 16px;\n margin-bottom: 32px;\n\n align-items: center;\n`;\n\nconst InputError = styled(Error)`\n text-align: left;\n justify-content: flex-start;\n\n margin: 0.5rem 0;\n`;\n\n\nconst SuccessMessage = styled.p`\n font-size: 1rem;\n text-align: center;\n margin: 1.5rem auto;\n line-height: 1.25rem;\n`\n\nconst GoBackLink = styled(Link)`\n width: fit-content;\n\n margin: 1rem auto;\n font-size: 0.875rem;\n text-decoration: underline;\n color: ${Theme.primaryColor};\n transition: opacity 0.3s ease-in-out;\n\n display: flex;\n align-items: center;\n justify-content: center;\n\n &:hover {\n transition: opacity 0.3s ease-in-out;\n opacity: 0.5;\n }\n`","/**\n * Login Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport { kea } from \"kea\";\n\nimport { put, call } from \"redux-saga/effects\";\nimport { findGetParameter } from \"utils\";\n\nimport axios from \"axios\";\nimport PropTypes from \"prop-types\";\nimport mapValues from \"lodash/mapValues\";\nimport * as Check from \"validations\";\nimport { BASE_API_URL } from \"config\";\n// import { setAuthorizationInterceptor } from \"interceptors\";\n// import AppLogic from \"containers/App/logic\";\n\nconst CONFIRM_PASSWORD_URL = BASE_API_URL + \"auth/password_reset/confirm/\";\n\n// Constants\n\nconst DEFAULT_VALUES = {\n password: {\n value: \"\",\n },\n password_confirm: {\n value: \"\",\n },\n};\n\nconst VALIDATIONS = {\n password: [Check.isRequired],\n password_confirm: [Check.isRequired],\n};\n\nexport default kea({\n path: () => [\"scenes\", \"PasswordSet\"],\n\n connect: {\n actions: [],\n },\n\n actions: () => ({\n change: (field) => ({ field }),\n submit: () => ({}),\n setResponse: (response) => ({ response }),\n setError: (error) => ({ error }),\n setForm: (form) => ({ form }),\n reset: () => true,\n }),\n\n reducers: ({ actions }) => ({\n form: [\n DEFAULT_VALUES,\n PropTypes.object,\n {\n [actions.change]: (state, payload) =>\n Check.setAndCheckValidation(state, payload, VALIDATIONS),\n [actions.setForm]: (state, payload) =>\n Check.checkValidation(payload.form, VALIDATIONS).form,\n [actions.reset]: () => DEFAULT_VALUES,\n },\n ],\n\n submiting: [\n false,\n PropTypes.bool,\n {\n [actions.submit]: () => true,\n [actions.setError]: () => false,\n [actions.setResponse]: () => false,\n [actions.reset]: () => false,\n },\n ],\n\n response: [\n null,\n PropTypes.any,\n {\n [actions.setResponse]: (state, payload) => payload.response,\n [actions.reset]: () => null,\n },\n ],\n\n error: [\n null,\n PropTypes.any,\n {\n [actions.setError]: (state, payload) => payload.error,\n [actions.reset]: () => null,\n },\n ],\n }),\n\n start: function* () {\n const { reset } = this.actions;\n yield put(reset());\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.submit]: workers.submit,\n }),\n\n workers: {\n /**\n * Write something about your form submitons\n * @param {*} action\n */\n *submit(action) {\n const { setError, setForm, setResponse } = this.actions;\n\n const form = yield this.get(\"form\");\n const validation = Check.checkValidation(form, VALIDATIONS);\n\n const passwordValidation = Check.passwordsMatch(\n form.password.value,\n form.password_confirm.value\n );\n if (validation.invalid || !passwordValidation.valid) {\n yield put(\n setForm({\n ...validation.form,\n password_confirm: {\n ...validation.form.password_confirm,\n ...passwordValidation,\n },\n })\n );\n yield put(setError([]));\n return false;\n }\n\n try {\n let params = mapValues(form, ({ value }) => value);\n const token = findGetParameter(\"token\");\n\n const response = yield call(axios.post, CONFIRM_PASSWORD_URL, {\n ...params,\n token,\n });\n if (response && response.status >= 200 && response.status < 400) {\n yield put(setResponse(\"success\"));\n } else {\n yield put(setResponse(\"error\"));\n }\n } catch (err) {\n console.log({ err });\n yield put(setResponse(\"error\"));\n }\n },\n },\n});\n","import * as React from 'react'\nimport {Theme} from 'globalStyles'\n\nfunction SvgComponent (props) {\n return (\n \n \n \n \n \n \n )\n}\n\nexport default SvgComponent\n","/**\n * Login Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic from \"./logic\";\nimport styled from \"styled-components\";\nimport { Input, Loading } from \"element-react\";\n// import { lighten } from \"polished\";\nimport { Theme } from \"globalStyles\";\nimport { withTranslation } from \"react-i18next\";\nimport StyledButton from \"components/StyledButton\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport { findGetParameter } from \"utils\";\nimport ErrorIcon from \"icons/ServerErrorIcon\";\nimport BackArrow from \"icons/BackArrow\";\nimport { isMobile } from \"react-device-detect\";\nimport { MOBILE_DEEPLINK } from \"config\";\n\nclass PasswordSet extends Component {\n constructor(props) {\n super(props);\n this.linkRef = React.createRef();\n\n this.state = {\n loading: true,\n };\n }\n componentDidMount() {\n const urlToken = findGetParameter(\"token\");\n const currentURL = window.location.href;\n\n if (urlToken && isMobile && MOBILE_DEEPLINK !== 'pocityf') {\n window.location = currentURL.replace(/^https?/g, MOBILE_DEEPLINK);\n }\n\n setTimeout(() => {\n this.setState({ loading: false });\n }, 5000);\n }\n\n render() {\n const { password, password_confirm } = this.props.form;\n const { t, submiting, error, response } = this.props;\n const { change, submit } = this.actions;\n const urlToken = findGetParameter(\"token\");\n\n if (this.state.loading) {\n return (\n \n \n \n );\n }\n\n if (response === \"success\") {\n return (\n \n \n \n \n \n \n {t(\"set_password.title\")}\n \n\n {t(\"set_password.success\")}\n {t(\"back_main_page\")}\n \n \n );\n }\n\n if (response === \"error\") {\n return (\n \n \n \n {t(\"set_password.error_text\")}\n \n {t(\"set_password.try_again\")}\n \n \n \n );\n }\n\n if (urlToken) {\n return (\n \n \n {t(\"set_password.title\")}\n\n {\n change({ password: e });\n }}\n onKeyDown={this.handleEnter}\n error={password.valid === false && password.message != null}\n />\n {password.valid === false && password.message != null && (\n {password.message}\n )}\n\n {\n change({ password_confirm: e });\n }}\n onKeyDown={this.handleEnter}\n error={\n password_confirm.valid === false &&\n password_confirm.message != null\n }\n />\n {password_confirm.valid === false &&\n password_confirm.message != null && (\n {password_confirm.message}\n )}\n\n \n \n {t(\"set_password.button\")}\n \n \n\n {error && error.map((error) => t(error))}\n \n \n );\n } else {\n return (\n \n \n \n {t(\"set_password.error_text\")}\n \n {t(\"set_password.try_again\")}\n \n \n \n );\n }\n }\n}\n\nexport default withTranslation()(withRouter(Logic(PasswordSet)));\n\nconst Wrapper = styled.div`\n height: calc(100vh - 4rem);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n background-color: #f8f8f8;\n margin: -20px;\n`;\n\nconst FlexWrapper = styled.div`\n max-height: 330px;\n background-color: #ffffff;\n box-shadow: 0 0 14px 0 rgba(64, 82, 132, 0.1);\n padding: 32px;\n margin: 2rem;\n ${({ theme }) => theme.smallDesktop`\n width: 410px;\n `}\n`;\n\nconst Error = styled.div`\n width: 100%;\n color: red;\n display: flex;\n justify-content: center;\n margin-top: 10px !important;\n font-size: 12px;\n`;\n\nconst AlignCenter = styled.div`\n display: flex;\n justify-content: center;\n margin-top: 20px !important;\n`;\n\nconst StyledInput = styled(Input)`\n margin-bottom: 15px;\n\n .el-input__inner {\n color: #242a3e;\n font-family: ${Theme.fontFamily};\n font-size: 12px;\n line-height: 16px;\n padding: 0px 16px;\n :focus {\n border-color: #8391a5;\n }\n }\n\n input {\n text-align: left !important;\n }\n input:-webkit-autofill {\n -webkit-box-shadow: 0 0 0px 1000px #ffffff inset;\n -webkit-text-fill-color: #1f2d3d !important;\n background-color: #ffffff !important;\n color: #1f2d3d !important;\n }\n\n margin-bottom: ${(props) => props.error === true && 0};\n`;\n\nconst LoginText = styled.div`\n height: 36px;\n color: #242a3e;\n font-family: ${Theme.fontFamily};\n font-size: 18px;\n font-weight: bold;\n line-height: 36px;\n`;\n\nconst GoBackLink = styled(Link)`\n width: fit-content;\n\n margin: 1rem auto;\n font-size: 0.875rem;\n text-decoration: underline;\n color: ${Theme.primaryColor};\n transition: opacity 0.3s ease-in-out;\n\n &:hover {\n transition: opacity 0.3s ease-in-out;\n opacity: 0.5;\n }\n\n display: flex;\n`;\n\nconst SuccessWrapper = styled.div`\n background-color: #ffffff;\n box-shadow: 0 0 14px 0 rgba(64, 82, 132, 0.1);\n padding: 32px;\n display: flex;\n flex-direction: column;\n\n margin: auto 0;\n`;\n\nconst SuccessMessage = styled.p`\n font-size: 1rem;\n text-align: center;\n margin: 1.5rem auto;\n line-height: 1.25rem;\n`;\n\nconst InputError = styled(Error)`\n text-align: left;\n justify-content: flex-start;\n\n margin: 0.5rem 0;\n`;\n\nconst TitleRow = styled.div`\n display: grid;\n grid-template-columns: 16px 1fr;\n column-gap: 16px;\n margin-bottom: 32px;\n\n align-items: center;\n`;\n\nconst CustomLoading = styled(Loading)`\n display: flex !important;\n width: -webkit-fill-available !important;\n position: relative;\n width: 100%;\n\n .el-loading-spinner {\n left: 0px !important;\n top: ${(props) => (props.top ? props.top : \"40px\")};\n display: flex !important;\n justify-content: center;\n\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\n","/**\n * DashboardWrapper Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport { kea } from \"kea\";\n\n//import { put } from 'redux-saga/effects'\n//import { delay } from 'redux-saga'\n//import { } from 'config'\n//import { } from 'utils'\n//import { } from './utils'\n\n//import PropTypes from 'prop-types'\n//import * as Check from 'validations'\n\nimport AppLogic from \"containers/App/logic\";\n\nexport default kea({\n path: () => [\"scenes\", \"OccurrencesWrapper\"],\n\n connect: {\n props: [AppLogic, [\"user\", \"loadingUser\"]],\n actions: [AppLogic, [\"logout\"]]\n },\n\n actions: () => ({}),\n\n reducers: ({ actions }) => ({}),\n\n start: function*() {},\n\n takeLatest: ({ actions, workers }) => ({}),\n\n workers: {}\n});\n","/**\n * Areas Container Logic\n * Please write a description\n *\n * @author Your Name \n */\nimport React from 'react';\n\nimport { kea } from 'kea';\n\nimport { put, call } from 'redux-saga/effects';\nimport { delay } from 'redux-saga';\nimport { BASE_API_URL, API_DATE_FORMAT } from 'config';\n\nimport PropTypes from 'prop-types';\nimport axios from 'axios';\nimport moment from 'moment';\nimport { decodeColor } from 'utils';\n\nimport AppLogic from 'containers/App/logic';\nimport { toast } from 'react-toastify';\nimport fileDownload from 'js-file-download';\n\nimport NotificationsWrapper from 'components/NotificationsWrapper';\n\nconst EVENTSURL = BASE_API_URL + 'tickets/';\nconst AREASURL = BASE_API_URL + 'areas/';\nconst EQUIPMENTSSURL = BASE_API_URL + 'containers/';\nconst DOWNLOADURL = BASE_API_URL + 'tickets/export/';\n\nconst getContainerByUUID = (uuid, array) => {\n if (uuid != null && array != null) {\n return array.find((el) => {\n return el.uuid === uuid;\n });\n }\n return null;\n};\n\nconst getAreaByName = (name, array) => {\n if (name != null && array != null) {\n return array.find((el) => {\n return el.name === name;\n });\n }\n return null;\n};\n\nexport const INTERVAL_FORM_DEFAULTS = {\n start: {\n value: moment().startOf('month'),\n },\n end: {\n value: moment(),\n },\n interval: {\n value: 'day',\n },\n};\n\nexport default kea({\n path: () => ['scenes', 'Occurrences'],\n\n connect: {\n props: [AppLogic, ['user']],\n actions: [\n AppLogic,\n ['setWebSocketHanlder', 'changeWatchingEvents', 'watchEvents'],\n ],\n },\n\n actions: () => ({\n changeFiltersForm: (key, value) => ({ key, value }),\n setFiltersForm: (form) => ({ form }),\n resetFiltersForm: () => true,\n setLoadingPlot: () => true,\n\n fetchAreasEquipments: () => true,\n fetchMaintenancesList: () => true,\n setMaintenancesList: (list) => ({ list }),\n setMaintenancesNumber: (number) => ({ number }),\n fetchEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n\n fetchAreasList: () => true,\n setAreasList: (list) => ({ list }),\n setAreasNumber: (number) => ({ number }),\n setLoadingAreas: (loading) => loading,\n\n setLinkedArea: (area) => ({ area, type: 'container', query: '' }),\n setFilteredEquipments: (equipments) => ({ equipments }),\n updateFilteredEquipments: (equipments) => ({ equipments }),\n setFilteredEquipmentsNumber: (number) => ({ number }),\n\n setFilter: (filter) => ({ filter }),\n changeFilter: (key, value) => ({ key, value }),\n resetFilter: () => true,\n filterEntrances: () => true,\n setPagination: (pag) => ({ pag }),\n\n setEquipmentInDetail: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetail: (equipment) => ({\n equipment,\n type: 'container',\n query: '',\n }),\n\n setUsingMonthCalendar: (value) => ({ value }),\n setShowCalendarFilter: (value) => ({ value }),\n\n setDropsListToPlot: (list) => ({ list }),\n fetchDepositsToPlot: () => true,\n\n download: (type) => ({ type }),\n finishDownload: () => true,\n\n setSearchResults: (results) => ({ results }),\n setUserSearchResults: (results) => ({ results }),\n setAreaSearchResults: (results) => ({ results }),\n\n deleteOccurence: (id) => ({ id }),\n setDeleteResponse: (response) => ({ response }),\n }),\n\n reducers: ({ actions }) => ({\n isDeleting: [\n false,\n PropTypes.bool,\n {\n [actions.deleteOccurence]: () => true,\n [actions.setDeleteResponse]: () => false,\n },\n ],\n deleteResponse: [\n null,\n PropTypes.any,\n {\n [actions.setDeleteResponse]: (state, { response }) => response,\n },\n ],\n\n filtersForm: [\n INTERVAL_FORM_DEFAULTS,\n PropTypes.object,\n {\n [actions.changeFiltersForm]: (state, payload) => ({\n ...state,\n [payload.key]: { value: payload.value },\n }),\n [actions.setFiltersForm]: (state, { form }) => ({ ...form }),\n [actions.resetFiltersForm]: (state, payloada) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n [actions.resetFilter]: (state, payloada) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n },\n ],\n\n maintenancesList: [\n [],\n PropTypes.array,\n {\n [actions.setMaintenancesList]: (state, { list }) => list,\n },\n ],\n\n pagination: [\n { page: 1, page_size: 10 },\n PropTypes.object,\n {\n [actions.setPagination]: (state, { pag }) => pag,\n [actions.setFetchedEquipmentInDetail]: () => ({\n page: 1,\n page_size: 10,\n }),\n\n [actions.setFiltersForm]: () => ({ page: 1, page_size: 10 }),\n },\n ],\n\n linkedArea: [\n null,\n PropTypes.object,\n {\n [actions.setLinkedArea]: (state, { area }) => area,\n },\n ],\n\n dropsListToPlot: [\n null,\n PropTypes.array,\n {\n [actions.setDropsListToPlot]: (state, { list }) => list,\n },\n ],\n\n filter: [\n {\n container__area__name: '',\n container__uuid: '',\n search_user: '',\n complete: '',\n },\n PropTypes.object,\n {\n [actions.setFilter]: (state, { filter }) => filter,\n [actions.setLinkedArea]: (state, { area }) => ({\n ...state,\n container__area__name: area != null && area.name ? area.name : '',\n }),\n [actions.setEquipmentInDetail]: (state, { equipment }) => ({\n ...state,\n container__uuid:\n equipment != null && equipment.uuid ? equipment.uuid : '',\n }),\n [actions.changeFilter]: (state, payload) => {\n return Object.assign({}, state, { [payload.key]: payload.value });\n },\n [actions.resetFilter]: () => ({\n container__area__name: '',\n container__uuid: '',\n search_user: '',\n complete: '',\n }),\n },\n ],\n\n areasList: [\n [],\n PropTypes.array,\n {\n [actions.setAreasList]: (state, { list }) => list,\n },\n ],\n\n loadingAreas: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingAreas]: (state, loading) => loading,\n },\n ],\n loadingDownload: [\n false,\n PropTypes.boolean,\n {\n [actions.download]: () => true,\n [actions.finishDownload]: () => false,\n },\n ],\n loadingPlot: [\n true,\n PropTypes.boolean,\n {\n [actions.setLoadingPlot]: (state, loading) => true,\n [actions.fetchDepositsToPlot]: (state, loading) => true,\n [actions.setDropsListToPlot]: (state, loading) => false,\n },\n ],\n\n filteredEquipments: [\n null,\n PropTypes.array,\n {\n [actions.setFilteredEquipments]: (state, { equipments }) => equipments,\n [actions.updateFilteredEquipments]: (state, { equipments }) => [\n ...state,\n ...equipments,\n ],\n [actions.setLinkedArea]: (state, { area }) => {\n return area == null ? null : state;\n },\n },\n ],\n\n filteredEquipmentsNumber: [\n 0,\n PropTypes.number,\n {\n [actions.setFilteredEquipmentsNumber]: (state, { number }) => number,\n },\n ],\n\n equipmentInDetail: [\n null,\n PropTypes.object,\n {\n [actions.setFetchedEquipmentInDetail]: (state, { equipment }) =>\n equipment,\n [actions.setFetchedEquipmentInDetailNoFetchs]: (state, { equipment }) =>\n equipment,\n\n [actions.setLinkedArea]: (state, { area }) => {\n return area == null ? null : state;\n },\n [actions.resetFilter]: () => null,\n },\n ],\n\n usingMonthCalendar: [\n true,\n PropTypes.bool,\n {\n [actions.setUsingMonthCalendar]: (state, { value }) => value,\n },\n ],\n\n showCalendarFilter: [\n false,\n PropTypes.bool,\n {\n [actions.setShowCalendarFilter]: (state, { value }) => value,\n },\n ],\n searchResults: [\n [],\n PropTypes.array,\n {\n [actions.setSearchResults]: (state, { results }) => results,\n },\n ],\n searchLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'container',\n [actions.setSearchResults]: () => false,\n },\n ],\n searchUserResults: [\n [],\n PropTypes.array,\n {\n [actions.setUserSearchResults]: (state, { results }) => results,\n },\n ],\n searchUserLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'username',\n [actions.setUserSearchResults]: () => false,\n },\n ],\n searchAreaResults: [\n [],\n PropTypes.array,\n {\n [actions.setAreaSearchResults]: (state, { results }) => results,\n },\n ],\n searchAreaLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'area',\n [actions.setAreaSearchResults]: () => false,\n },\n ],\n }),\n\n start: function* () {\n const {\n fetchMaintenancesList,\n fetchAreasList,\n setWebSocketHanlder,\n watchEvents,\n fetchAreasEquipments,\n } = this.actions;\n\n yield put(fetchAreasList());\n yield put(fetchMaintenancesList());\n yield put(fetchAreasEquipments());\n\n yield put(setWebSocketHanlder(this.workers.handle));\n\n yield put(watchEvents());\n },\n\n stop: function* () {\n const { changeWatchingEvents } = this.actions;\n yield put(changeWatchingEvents(false));\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.fetchMaintenancesList]: workers.fetchMaintenancesList,\n [actions.fetchAreasList]: workers.fetchAreasList,\n [actions.fetchEquipmentInDetailNoFetchs]:\n workers.fetchEquipmentInDetailNoFetchs,\n [actions.fetchAreasEquipments]: workers.fetchAreasEquipments,\n [actions.setLinkedArea]: [\n workers.showOnlyOneArea,\n workers.fetchMaintenancesList,\n workers.fetchAreasEquipments,\n ],\n [actions.setEquipmentInDetail]: [workers.fetchEquipmentInDetail],\n [actions.setFetchedEquipmentInDetail]: [workers.fetchMaintenancesList],\n [actions.filterEntrances]: [workers.fetchMaintenancesList],\n [actions.resetFilter]: [workers.fetchMaintenancesList],\n [actions.setPagination]: workers.fetchMaintenancesList,\n [actions.setFiltersForm]: [workers.fetchMaintenancesList],\n [actions.download]: workers.download,\n [actions.deleteOccurence]: workers.deleteOccurence,\n }),\n\n workers: {\n *download(action) {\n const { payload } = action;\n const { t } = this.props;\n const { finishDownload } = this.actions;\n const equipmentInDetail = yield this.get('equipmentInDetail');\n const linkedArea = yield this.get('linkedArea');\n\n let filter = yield this.get('filter');\n const filtersForm = yield this.get('filtersForm');\n\n if (payload.type != null) {\n try {\n let params;\n if (equipmentInDetail) {\n params = { ...filter, container__id: equipmentInDetail.id };\n } else if (linkedArea) {\n params = { ...filter, container__area__id: linkedArea.id };\n } else {\n params = { ...filter };\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n const response = yield call(axios.get, DOWNLOADURL, {\n params: {\n type: 'drop',\n file_type: payload.type,\n ...params,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-datetime',\n },\n responseType: 'blob',\n });\n fileDownload(\n new Blob([response.data]),\n `${t('occurrences.download')}.${payload.type}`\n );\n } catch (err) {\n console.log({ err });\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: 'downloadError',\n }\n );\n } finally {\n yield put(finishDownload());\n }\n }\n },\n\n *showOnlyOneArea(action) {\n const { setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n const linkedArea = yield this.get('linkedArea');\n\n if (areasList.length === 1 && linkedArea !== areasList[0]) {\n yield delay(300);\n yield put(setLinkedArea(areasList[0]));\n }\n },\n\n *fetchEquipmentInDetailNoFetchs(action) {\n const { setFetchedEquipmentInDetailNoFetchs } = this.actions;\n\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n yield put(setFetchedEquipmentInDetailNoFetchs(data));\n } catch (error) {\n console.log({ error });\n yield put(setFetchedEquipmentInDetailNoFetchs(null));\n }\n },\n\n *fetchEquipmentInDetail(action) {\n yield delay(300);\n\n const { setFetchedEquipmentInDetail, setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n\n if (action.payload != null && action.payload.equipment != null) {\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n const equipmentArea = areasList.find((el) => el.id === data.area.id);\n\n if (equipmentArea != null) {\n yield put(setLinkedArea(equipmentArea));\n }\n yield put(setFetchedEquipmentInDetail(data));\n } catch (error) {\n console.log({ error });\n yield put(setFetchedEquipmentInDetail(null));\n }\n } else {\n yield put(setFetchedEquipmentInDetail(null));\n }\n },\n\n *fetchMaintenancesList(action) {\n yield delay(500);\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n let filter = yield this.get('filter');\n const filtersForm = yield this.get('filtersForm');\n const pagination = yield this.get('pagination');\n const filteredEquipments = yield this.get('filteredEquipments');\n const areasList = yield this.get('areasList');\n\n const {\n setMaintenancesList,\n setMaintenancesNumber,\n setEquipmentInDetail,\n setLinkedArea,\n } = this.actions;\n\n let params;\n try {\n if (equipmentInDetail) {\n params = { ...filter, container__id: equipmentInDetail.id };\n } else if (linkedArea) {\n params = { ...filter, container__area__id: linkedArea.id };\n } else {\n params = { ...filter };\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let response = yield call(axios.get, EVENTSURL, {\n params: {\n ...params,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-datetime',\n },\n });\n\n if (response.data.results) {\n if (\n filter.container__area__name != null &&\n filter.container__area__name !== ''\n ) {\n if (\n getAreaByName(filter.container__area__name, areasList) != null &&\n (linkedArea == null ||\n (linkedArea != null &&\n linkedArea.name !== filter.container__area__name))\n ) {\n yield put(\n setLinkedArea(\n getAreaByName(filter.container__area__name, areasList)\n )\n );\n }\n }\n if (filter.container__uuid != null && filter.container__uuid !== '') {\n if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) !=\n null &&\n (equipmentInDetail == null ||\n (equipmentInDetail != null &&\n equipmentInDetail.uuid !== filter.container__uuid))\n ) {\n yield put(\n setEquipmentInDetail(\n getContainerByUUID(filter.container__uuid, filteredEquipments)\n )\n );\n } else if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) ==\n null &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n } else if (\n (filter.container__uuid == null || filter.container__uuid === '') &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n\n yield put(setMaintenancesList(response.data.results));\n yield put(setMaintenancesNumber(response.data.results.length));\n } else {\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n } catch (error) {\n console.log({ error });\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n },\n\n *fetchAreasList(action) {\n const {\n setAreasList,\n setAreasNumber,\n setLinkedArea,\n setAreaSearchResults,\n } = this.actions;\n\n try {\n const response = yield call(axios.get, AREASURL);\n const areasRes = response.data.results;\n\n if (areasRes.length) {\n const searchAreaArr = areasRes.map((area) => ({\n value: area.name,\n label: area.name,\n }));\n yield put(setAreaSearchResults(searchAreaArr));\n\n let results = areasRes.map((area) => {\n area.lines = {\n type: 'LineString',\n coordinates: area.polygon.coordinates[0],\n };\n return area;\n });\n yield put(setAreasList(results));\n yield put(setAreasNumber(areasRes.length));\n\n if (results.length === 1) {\n yield delay(300);\n yield put(setLinkedArea(results[0]));\n }\n } else {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n }\n } catch (error) {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n }\n },\n\n *fetchAreasEquipments(action) {\n yield delay(600);\n const linkedArea = yield this.get('linkedArea');\n\n const {\n setFilteredEquipments,\n setFilteredEquipmentsNumber,\n setSearchResults,\n } = this.actions;\n\n const installationStatus = ['assembled', 'installed'];\n\n try {\n let next = 1;\n const commonParams = {\n page_size: 500,\n };\n\n let results = [];\n while (next) {\n let params = {\n ...commonParams,\n page: next,\n };\n\n if (linkedArea !== null)\n params = { ...params, area__id: linkedArea.id };\n\n let containers = [];\n\n const responses = yield installationStatus.map((status) => {\n params = { ...params, installation_status: status };\n return call(axios.get, EQUIPMENTSSURL, { params });\n });\n\n responses.forEach((el) =>\n containers.push.apply(containers, el.data.results)\n );\n\n containers.map((container) => {\n container.color = decodeColor(container.type);\n results.push(container);\n return container;\n });\n\n const equipmentsList = results.map((el) => ({\n value: el.uuid,\n label: el.name,\n }));\n\n next = 0;\n\n yield put(setFilteredEquipments(results));\n yield put(setFilteredEquipmentsNumber(containers.length));\n yield put(setSearchResults(equipmentsList));\n }\n } catch (error) {\n console.log({ error });\n yield put(setFilteredEquipments([]));\n yield put(setFilteredEquipmentsNumber(0));\n }\n },\n\n *deleteOccurence(action) {\n const { payload } = action;\n const { setDeleteResponse, fetchMaintenancesList } = this.actions;\n const { t } = this.props;\n if (payload.id != null) {\n try {\n const response = yield call(\n axios.delete,\n `${EVENTSURL}${payload.id}/`\n );\n if (response) {\n yield put(setDeleteResponse('success'));\n toast.success(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: payload.id ? `deleted_${payload.id}` : null,\n }\n );\n }\n } catch (err) {\n console.log(err);\n yield put(setDeleteResponse('error'));\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: payload.id ? `deleted_${payload.id}` : null,\n }\n );\n } finally {\n yield put(fetchMaintenancesList());\n }\n }\n },\n\n *handle(message) {\n const { fetchMaintenancesList, fetchEquipmentInDetailNoFetchs } =\n this.actions;\n const equipmentInDetail = yield this.get('equipmentInDetail');\n if (message.event_type === 'status') {\n let temp = { ...message };\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n toast.info(temp.message, {\n position: toast.POSITION.TOP_RIGHT,\n delay: 200,\n id: message_id ? `uniqueStatusMessage${message_id}` : null,\n });\n } else if (message.event_type === 'event' && message.content) {\n if (message.event_type === 'event') {\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n if (\n message.content != null &&\n message.content.type === 'drop' &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueDropMessage${message_id}` : null,\n }\n );\n\n yield put(fetchMaintenancesList());\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n } else if (\n message.content != null &&\n (message.content.type === 'pick' ||\n message.content.type === 'maintenance') &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniquePickMessage${message_id}` : null,\n }\n );\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n } else if (\n message.content != null &&\n message.content.type === 'alert'\n ) {\n toast.warn(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueAlertMessage${message_id}` : null,\n }\n );\n } else if (message.content && message.content.type === 'error') {\n if (message.content.status === 'closed') {\n toast.success(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n } else {\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n }\n }\n }\n }\n },\n },\n});\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n )\n}\n\nexport default SvgComponent\n","import React from \"react\";\nimport moment from \"moment\";\nimport styled from \"styled-components\";\nimport Bin from \"icons/Bin\";\nimport OpenInNew from \"icons/OpenInNew\";\n\nexport const columns = [\n {\n label: \"table.id\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"id\",\n render: function (data) {\n return (\n \n {data.id ? data.id : \"-\"}\n \n );\n },\n width: 100,\n },\n {\n label: \"table.date\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"datetime\",\n render: function (data) {\n return (\n \n {moment(data.date).format(\"DD/MM/YYYY HH:mm\")}\n \n );\n },\n minWidth: 180,\n },\n {\n label: \"table.user\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n sortMethod: function (a, b) {\n if (a != null && b != null) {\n if (\n a.user != null &&\n a.user.fullName != null &&\n a.user.fullName !== \"\" &&\n b.user != null &&\n b.user.fullName != null &&\n b.user.fullName !== \"\"\n ) {\n return a.user.fullName >= b.user.fullName;\n }\n return false;\n }\n },\n minWidth: 115,\n render: function (data) {\n if (data) {\n return {data.user};\n }\n return {\"-\"};\n },\n },\n {\n label: \"table.container\",\n renderHeader: function ({ t, ...column }) {\n return {t(column.label)};\n },\n sortable: true,\n sortMethod: function (a, b) {\n if (a.container && a.container.name && b.container && b.container.name) {\n return a.container.name >= b.container.name;\n }\n return false;\n },\n minWidth: 115,\n render: function (data) {\n return (\n \n {data.container ? data.container : \"-\"}\n \n );\n },\n },\n {\n label: \"table.actions\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n render: function ({ t, seeMore, deleteOccurence, ...data }) {\n const { user } = data;\n return (\n \n seeMore(e, data)}>\n \n \n {user != null &&\n data != null &&\n data != null &&\n data.user != null &&\n user.id === data.user.id && (\n deleteOccurence(e, data)}>\n \n \n )}\n \n );\n },\n },\n];\n\nconst EllipsisDiv = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n\nconst Link = styled.span`\n path {\n fill: ${({ theme }) => theme.primaryColor};\n }\n color: ${({ theme }) => theme.primaryColor};\n text-decoration: underline;\n cursor: pointer;\n\n &:hover {\n path {\n fill: ${({ theme }) => theme.darkPrimaryColor};\n }\n }\n\n & + & {\n margin-left: 16px;\n }\n`;\n\nconst CenterDiv = styled.div`\n display: flex;\n align-items: center;\n`;\n","/**\n * MaintenancesTemplate Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled, { css } from \"styled-components\";\nimport { Theme } from \"globalStyles\";\n// import { useTranslation } from \"react-i18next\";\n\nimport moment from \"moment\";\n\nexport default ({ children, ...props }) => {\n const { data } = props;\n // const { t } = useTranslation();\n const getUserName = () => {\n if (data) {\n if (\n data.user != null &&\n data.user.fullName != null &&\n data.user.fullName !== \"\"\n ) {\n return {data.user.fullName};\n }\n }\n return {\"-\"};\n };\n return (\n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm:ss\")}\n {getUserName()}\n \n {data.container && data.container.name ? data.container.name : \"-\"}\n \n \n {data.previousFillLevel != null\n ? ` ${data.previousFillLevel}%`\n : ` 0%`}\n \n \n {data.description\n ? data.description\n : \"-\"}\n \n \n );\n};\n\nconst Wrapper = styled.div`\n background: white;\n padding: 16px;\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-template-rows: auto auto;\n row-gap: 8px;\n column-gap: 8px;\n\n border-bottom: 1px solid ${Theme.inactiveColor};\n\n ${(props) =>\n props.error &&\n css`\n border-left: 3px solid ${Theme.errorColor};\n background-color: ${Theme.lightColor};\n `}\n\n ${(props) =>\n props.active &&\n css`\n background-color: ${Theme.activeRowColor};\n background-color: ${Theme.activeRowColor};\n `}\n`;\n\nconst DateTime = styled.div`\n font-weight: 300;\n grid-column: 2/3;\n grid-row: 1/2;\n text-align: right;\n font-size: 12px;\n color: ${Theme.iconDarkColor};\n`;\nconst User = styled.div`\n grid-column: 1/2;\n grid-row: 2/3;\n font-size: 16px;\n`;\nconst Container = styled.div`\n font-size: 12px;\n grid-column: 1/2;\n grid-row: 1/2;\n font-weight: 700;\n color: ${Theme.iconDarkColor};\n`;\nconst Status = styled.div`\n color: ${Theme.textonSecondary};\n grid-column: 2/3;\n grid-row: 2/3;\n text-align: right;\n font-size: 12px;\n margin: auto 0;\n position: relative;\n z-index: 100;\n font-weight: bold;\n\n &::before {\n z-index: -1;\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n border-radius: 4px;\n width: ${(props) => (props.percentage ? `${props.percentage}%` : 0)};\n background-color: ${Theme.secondaryColor};\n }\n`;\n\nconst EllipsisDiv = styled.div`\n font-size: 12px;\n rid-column: 1/3;\n grid-row: 3/4;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n\nconst EllipsisDivName = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n","/**\n * Occurrences Scene\n * Please write a description\n *\n * @author Your Name \n */\n\nimport React, { Component } from 'react';\nimport ReactDOM from 'react-dom';\nimport Logic, { INTERVAL_FORM_DEFAULTS } from './logic';\nimport styled from 'styled-components';\nimport { Theme } from 'globalStyles';\nimport { Layout, Breadcrumb, Loading } from 'element-react';\nimport { withTranslation } from 'react-i18next';\n\nimport { columns } from './columns';\n\nimport ContainerMapMaintenances from 'containers/ContainerMapMaintenances';\nimport IntervalPicker from 'containers/IntervalPicker';\nimport StyledMobileTable from 'containers/StyledMobileTable';\nimport DownloadDropDownContainer from 'containers/DownloadDropDownContainer';\n\nimport StyledTable from 'components/StyledTable';\nimport StyledButton from 'components/StyledButton';\nimport ToggleFilter from 'components/ToggleFilter';\nimport ResponsiveHandler from 'components/ResponsiveHandler';\nimport OccurrencesTemplate from 'components/OccurrencesTemplate';\nimport StyledSelect from 'components/StyledSelect';\nimport Dialog from 'components/Dialog';\nimport moment from 'moment';\n\nimport { getIntervalText } from 'utils';\n\nconst getUserName = (data) => {\n if (data) {\n return data.user;\n }\n return '-';\n};\n\nconst intervalOptions = [\n {\n value: 'day',\n label: 'day',\n },\n {\n value: 'month',\n label: 'month',\n },\n {\n value: 'year',\n label: 'year',\n },\n];\n\nconst depositCompleteOptions = [\n {\n label: 'closed',\n value: 'True',\n },\n {\n label: 'open',\n value: 'False',\n },\n];\n\nclass Occurrences extends Component {\n constructor(props) {\n super(props);\n this.state = {\n focusedInput: null,\n transitionEnded: false,\n filtersWidth: 20,\n inputWidth: '140px',\n triggerSet: false,\n changedForm: null,\n completeOptions: depositCompleteOptions,\n dialogOpen: false,\n dialogContainer: null,\n deleteOpen: false,\n deleteContainer: null,\n };\n this.tableRef = React.createRef();\n this.setState = this.setState.bind(this);\n this._autocompleteRef = null;\n this._userAutocompleteRef = null;\n this._areaAutocompleteRef = null;\n }\n\n _mapContainer = React.createRef();\n\n onFocusChange = (focusedInput) => {\n this.setState({ focusedInput });\n };\n\n componentDidMount() {\n ReactDOM.findDOMNode(this._mapContainer).addEventListener(\n 'transitionend',\n () => {\n this.setState({ transitionEnded: true });\n }\n );\n this.setState({\n changedForm: this.props.filtersForm,\n });\n }\n\n handleEnter = (event) => {\n if (event.key === 'Enter') {\n const { filterEntrances } = this.actions;\n filterEntrances();\n }\n };\n\n autoCompleteFetch = (queryString) => {\n if (this._autocompleteRef) {\n clearTimeout(this._autocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._autocompleteRef = setTimeout(function () {\n search(queryString, null, 'container');\n }, 500);\n };\n\n userAutoCompleteFetch = (queryString) => {\n if (this._userAutocompleteRef) {\n clearTimeout(this._userAutocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._userAutocompleteRef = setTimeout(function () {\n search(queryString, null, 'username');\n }, 500);\n };\n\n areaAutoCompleteFetch = (queryString) => {\n if (this._areaAutocompleteRef) {\n clearTimeout(this._areaAutocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._areaAutocompleteRef = setTimeout(function () {\n search(queryString, null, 'area');\n }, 500);\n };\n\n seeMore = (event, row) => {\n event.stopPropagation();\n this.setState({ dialogOpen: true, dialogContainer: row });\n };\n\n setDeleteOccurence = (event, row) => {\n event.stopPropagation();\n this.setState({ deleteOpen: true, deleteContainer: row });\n };\n\n componentDidUpdate(prevProps, prevState) {\n if (\n this.props.deleteResponse !== prevProps.deleteResponse &&\n this.props.deleteResponse === 'success' &&\n this.state.deleteOpen === true\n ) {\n this.setState({\n deleteOpen: false,\n deleteContainer: null,\n });\n const { setDeleteResponse } = this.actions;\n setDeleteResponse(null);\n }\n }\n\n shouldRevealImage(container) {\n const hasArticles = container.articles.length > 0;\n const hasAttachment =\n hasArticles && container.articles.at(-1).attachments.length > 0;\n const imgRegex =\n /^(https?|ftp):\\/\\/[^\\s/$.?#]+\\.[^\\s]*\\.(jpg|jpeg|png|gif|bmp|svg|webp)(\\?[^\\s]*)?$/;\n const isAttachmentImage =\n hasAttachment &&\n new RegExp(imgRegex).test(\n container.articles.at(-1).attachments.at(-1).file\n );\n\n return isAttachmentImage;\n }\n\n render() {\n const {\n setLinkedArea,\n setEquipmentInDetail,\n resetFilter,\n changeFilter,\n setFiltersForm,\n resetFiltersForm,\n download,\n deleteOccurence,\n } = this.actions;\n\n const {\n areasList,\n linkedArea,\n filteredEquipments,\n equipmentInDetail,\n maintenancesList,\n filter,\n t,\n filtersForm,\n responsiveHandlers,\n loadingDownload,\n filteredEquipmentsNumber,\n searchUserResults,\n searchUserLoading,\n searchAreaResults,\n searchAreaLoading,\n user,\n isDeleting,\n } = this.props;\n\n const {\n transitionEnded,\n filtersWidth,\n inputWidth,\n triggerSet,\n changedForm,\n dialogOpen,\n dialogContainer,\n deleteOpen,\n deleteContainer,\n } = this.state;\n const columnsToMap = columns;\n\n const areaEquipments = filteredEquipments\n ? filteredEquipments.reduce(\n (x, y) => (x.findIndex((e) => e.id === y.id) < 0 ? [...x, y] : x),\n []\n )\n : filteredEquipments;\n\n return (\n \n \n \n \n \n \n {\n setLinkedArea(null);\n }}\n >\n {t('occurrences.title')}\n \n \n {linkedArea && (\n \n setEquipmentInDetail(null)}>\n {linkedArea.name}\n \n \n )}\n {equipmentInDetail && (\n {equipmentInDetail.name}\n )}\n \n \n \n {user != null && user.isAdmin && (\n \n \n changeFilter('container__area__name', event)\n }\n remoteMethod={this.areaAutoCompleteFetch}\n options={searchAreaResults}\n loading={searchAreaLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea != null}\n >\n\n changeFilter('search_user', event)}\n remoteMethod={this.userAutoCompleteFetch}\n value={filter.search_user}\n options={searchUserResults}\n loading={searchUserLoading}\n filterable={true}\n remote={true}\n clearable={true}\n >\n \n )}\n {changedForm != null && (\n \n this.setState({ triggerSet: false })}\n state={{ changedForm }}\n setState={this.setState}\n />\n \n )}\n\n \n {\n resetFilter();\n setLinkedArea(null);\n }}\n >\n {t('clear_filters')}\n \n this.setState({ triggerSet: true })}\n >\n {t('apply')}\n \n {user != null && user.isAdmin && (\n \n {!loadingDownload ? 'Download' : }\n \n }\n type={'button'}\n loadingDownload={loadingDownload}\n >\n \n \n )}\n \n \n \n \n\n \n (this._mapContainer = elem)}\n span={'24'}\n >\n setLinkedArea(area)}\n areaEquipments={areaEquipments}\n globalNumberOfContainers={filteredEquipmentsNumber}\n equipmentInDetail={equipmentInDetail}\n setEquipmentInDetail={(equipment) => {\n this.setState({\n transitionEnded: false,\n });\n setEquipmentInDetail(equipment);\n }}\n transitionEnded={transitionEnded}\n />\n \n \n\n \n
\n \n {t('occurrences.title')}\n {responsiveHandlers.isMobile || responsiveHandlers.isTablet ? (\n ({ ...equipment }))\n : []\n }\n template={OccurrencesTemplate}\n user={user}\n active={(row) =>\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id\n }\n onRowClick={(entrance) => {\n window.scrollTo({\n left: 0,\n top: 0,\n behavior: 'smooth',\n });\n this.setState({\n transitionEnded: false,\n });\n\n setEquipmentInDetail(entrance.container);\n }}\n />\n ) : (\n 768\n ? 'calc(55vh - 64px - 36px - 48px - 4rem - 42px - 1px )'\n : ''\n }\n defaultSort={{ prop: 'startDate', order: 'descending' }}\n columns={columnsToMap.map((column) => ({ t, ...column }))}\n data={\n maintenancesList\n ? maintenancesList.map((equipment) => ({\n t,\n user,\n seeMore: this.seeMore,\n deleteOccurence: this.setDeleteOccurence,\n ...equipment,\n }))\n : []\n }\n rowClassName={(row) => {\n let toReturn = '';\n if (\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id\n ) {\n toReturn += ' active';\n }\n if (row.status === 'open') {\n toReturn += ' error';\n }\n return toReturn;\n }}\n onRowClick={(entrance) => {\n this.setState({\n transitionEnded: false,\n });\n\n setEquipmentInDetail(entrance.container);\n }}\n />\n )}\n \n
\n \n\n {deleteOpen && deleteContainer != null && (\n {\n this.setState({\n deleteOpen: false,\n deleteContainer: null,\n });\n }}\n size={'medium'}\n title={t('occurrences.delete_title')}\n >\n {t('occurrences.delete_description')}\n \n \n this.setState({\n deleteOpen: false,\n deleteContainer: null,\n })\n }\n disabled={isDeleting}\n type='seconday'\n >\n {t('cancel')}\n \n deleteOccurence(deleteContainer.id)}\n >\n {t('delete')}\n \n \n \n )}\n\n {dialogOpen && dialogContainer != null && (\n {\n this.setState({\n dialogOpen: false,\n dialogContainer: null,\n });\n }}\n title={``}\n size={'large'}\n >\n \n \n {`${t('table.occurrence')} #${\n dialogContainer.id\n }`}\n \n \n {t('created_by')}{' '}\n {dialogContainer.email ? dialogContainer.email : '-'}\n \n \n {moment(dialogContainer.createdAt).format(\n 'DD/MM/YYYY HH:mm:ss'\n )}\n \n \n \n {t('table.container')}\n \n {dialogContainer.container\n ? dialogContainer.container\n : '-'}\n \n \n \n {t('table.title')}\n {dialogContainer.title}\n \n {dialogContainer.articles.length > 0 && (\n \n {t('table.description')}\n \n {dialogContainer.articles.at(-1).message}\n \n \n )}\n \n {this.shouldRevealImage(dialogContainer) && (\n \n )}\n \n \n )}\n
\n );\n }\n}\n\nexport default withTranslation()(ResponsiveHandler(Logic(Occurrences)));\n\nconst Wrapper = styled.div``;\n\nconst CustomLayoutSecondaryRow = styled(Layout.Row)`\n margin-left: 0px !important;\n margin-right: 0px !important;\n margin-top: ${(props) => props.marginTop};\n height: ${(props) => props.height};\n min-height: ${(props) => props.minHeight};\n & > div {\n ${({ theme }) => theme.smallDesktop`\n height: 100%;\n `}\n }\n`;\n\nconst FlexWrapper = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n`;\n\nconst BreakcrumbWrapper = styled.div`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.desktop`\n flex-direction: row;\n `}\n`;\n\nconst SelectivePaddingColNoFixedHeight = styled(Layout.Col)`\n display: flex;\n justify-content: ${(props) => props.justifyContent};\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n float: ${(props) => props.float} !important;\n transition: width 0.4s;\n overflow: visible;\n`;\n\nconst BreadcrumbWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-4 {\n width: 100%;\n margin-bottom: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-4{\n margin-bottom: 8px;\n padding: 0 16px 0 0 !important;\n }\n `}\n`;\nconst FiltersWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-20 {\n width: 100%;\n display: grid;\n grid-template-columns: repeat(2, minmax(0, 1fr));\n justify-content: left;\n row-gap: 8px;\n column-gap: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n\n `}\n\n ${({ theme }) => theme.desktop`\n &.el-col-20{\n display: flex;\n justify-content: flex-end;\n width: 83.33333%;\n padding-left: 14px !important;\n }\n `}\n`;\n\nconst SelectivePaddingColNoFixedHeightWithBoxShadow = styled(\n SelectivePaddingColNoFixedHeight\n)`\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);\n`;\n\nconst NoPaddingCol = styled(Layout.Col)`\n padding-left: 0px !important;\n padding-right: 0px !important;\n\n padding: ${(props) => props.padding} !important;\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n\n &.el-col-12 {\n width: 100%;\n padding: 0 !important;\n height: calc(100% - 3rem);\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-12{\n width: 50%;\n padding: ${(props) => props.padding} !important;\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n }\n `}\n`;\n\nconst CustomBreakcrumb = styled(Breadcrumb)`\n .el-breadcrumb__item > span {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n\n .el-breadcrumb__separator {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n`;\n\nconst ButtonWrapper = styled(FlexWrapper)`\n display: grid;\n grid-template-columns: 1fr 1fr;\n column-gap: 8px;\n row-gap: 8px;\n grid-column: span 2;\n justify-content: flex-end;\n\n ${({ theme }) => theme.desktop`\n display flex;\n `}\n`;\n\nconst FirstRow = styled(CustomLayoutSecondaryRow)`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.smallDesktop`\n flex-direction: row;\n `}\n`;\n\nconst MapWrapper = styled(SelectivePaddingColNoFixedHeightWithBoxShadow)`\n &.el-col-22 {\n width: 100%;\n }\n ${({ theme }) => theme.smallDesktop`\n &.el-col-22{\n width: 83.33333%;\n }\n `}\n ${({ theme }) => theme.desktop`\n &.el-col-22{\n width: 91.66667%;\n }\n `}\n`;\n\nconst DownloadLoading = styled(Loading)`\n height: 24px;\n width: 24px;\n overflow: hidden;\n\n .el-loading-spinner {\n margin-top: 0;\n top: 0;\n svg {\n height: 24px;\n width: 24px;\n }\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\nconst DialogBodyWrapper = styled.div`\n display: flex;\n flex-wrap: wrap;\n column-gap: 40px;\n row-gap: 30px;\n`;\n\nconst DialogDetails = styled.div`\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n flex-basis: 200px;\n row-gap: 24px;\n`;\n\nconst DialogImage = styled.img`\n height: auto;\n width: min(100%, 400px);\n object-fit: contain;\n margin: 0 auto;\n`;\n\nconst DialogTitle = styled.h4`\n margin: 0;\n\n font-size: 24px;\n font-weight: 700;\n line-height: 32px;\n grid-row: 1/2;\n grid-column: 1/2;\n\n color: ${Theme.textonSecondary};\n font-family: ${Theme.fontFamily};\n`;\n\nconst DialogItem = styled.div`\n display: grid;\n grid-template-rows: auto auto;\n row-gap: 8px;\n grid-row: span 1;\n grid-column: 1/2;\n\n ${(props) =>\n props.hasDate &&\n `\n row-gap: 6px;\n `}\n`;\n\nconst DialogLabel = styled.label`\n margin: 0;\n\n font-weight: 700;\n font-size: 16px;\n line-height: 24px;\n\n color: ${Theme.textonSecondary};\n font-family: ${Theme.fontFamily};\n\n b {\n color: ${Theme.primaryColor};\n }\n`;\n\nconst DialogDescription = styled.p`\n margin: 0;\n font-size: 16px;\n line-height: 24px;\n color: ${Theme.textonSecondary};\n font-family: ${Theme.fontFamily};\n\n ${(props) =>\n props.isDate &&\n `\n font-size: 14px;\n line-hegith: 20px;\n color: ${Theme.darkPrimaryColorOpacity}\n `};\n`;\n\nconst DialogActions = styled.div`\n margin-top: 24px;\n display: grid;\n grid-template-columns: minmax(200px, 1fr) minmax(200px, 1fr);\n column-gap: 16px;\n`;\n\nconst TableName = styled.span`\n color: ${Theme.primaryColor};\n font-size: 1rem;\n font-weight: 800;\n line-height: 22px;\n`;\n","/**\n * Areas Container Logic\n * Please write a description\n *\n * @author Your Name \n */\nimport React from 'react';\n\nimport { kea } from 'kea';\n\nimport { put, call } from 'redux-saga/effects';\nimport { delay } from 'redux-saga';\nimport { BASE_API_URL, API_DATE_FORMAT } from 'config';\n//import { } from 'utils'\n//import { } from './utils'\n\nimport PropTypes from 'prop-types';\n//import * as Check from 'validations'\nimport axios from 'axios';\nimport moment from 'moment';\nimport { decodeColor } from 'utils';\n\nimport AppLogic from 'containers/App/logic';\nimport { toast } from 'react-toastify';\n\nimport NotificationsWrapper from 'components/NotificationsWrapper';\n\nconst EVENTSURL = BASE_API_URL + 'tickets/';\nconst EQUIPMENTSSURL = BASE_API_URL + 'min-containers/';\n\nexport const INTERVAL_FORM_DEFAULTS = {\n start: {\n value: moment().startOf('month'),\n },\n end: {\n value: moment(),\n },\n interval: {\n value: 'day',\n },\n};\n\nexport default kea({\n path: () => ['scenes', 'ClientOccurrences'],\n\n connect: {\n props: [AppLogic, ['user']],\n actions: [\n AppLogic,\n ['setWebSocketHanlder', 'changeWatchingEvents', 'watchEvents'],\n ],\n },\n\n actions: () => ({\n changeFiltersForm: (key, value) => ({ key, value }),\n setFiltersForm: (form) => ({ form }),\n resetFiltersForm: () => true,\n setLoadingPlot: () => true,\n\n fetchAreasEquipments: () => true,\n fetchMaintenancesList: () => true,\n setMaintenancesList: (list) => ({ list }),\n setMaintenancesNumber: (number) => ({ number }),\n fetchEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n\n search: (query, cb, type) => ({ query, cb, type }),\n\n fetchAreasList: () => true,\n setAreasList: (list) => ({ list }),\n setAreasNumber: (number) => ({ number }),\n setLoadingAreas: (loading) => loading,\n\n setLinkedArea: (area) => ({ area, type: 'container', query: '' }),\n setFilteredEquipments: (equipments) => ({ equipments }),\n updateFilteredEquipments: (equipments) => ({ equipments }),\n setFilteredEquipmentsNumber: (number) => ({ number }),\n\n setFilter: (filter) => ({ filter }),\n changeFilter: (key, value) => ({ key, value }),\n resetFilter: () => true,\n filterEntrances: () => true,\n setPagination: (pag) => ({ pag }),\n\n setEquipmentInDetail: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetail: (equipment) => ({\n equipment,\n type: 'container',\n query: '',\n }),\n\n setUsingMonthCalendar: (value) => ({ value }),\n setShowCalendarFilter: (value) => ({ value }),\n\n setDropsListToPlot: (list) => ({ list }),\n fetchDepositsToPlot: () => true,\n\n download: (type) => ({ type }),\n finishDownload: () => true,\n\n setSearchResults: (results) => ({ results }),\n setUserSearchResults: (results) => ({ results }),\n setAreaSearchResults: (results) => ({ results }),\n\n deleteOccurence: (id) => ({ id }),\n setDeleteResponse: (response) => ({ response }),\n\n reset: () => true,\n }),\n\n reducers: ({ actions }) => ({\n isDeleting: [\n false,\n PropTypes.bool,\n {\n [actions.deleteOccurence]: () => true,\n [actions.setDeleteResponse]: () => false,\n },\n ],\n deleteResponse: [\n null,\n PropTypes.any,\n {\n [actions.setDeleteResponse]: (state, { response }) => response,\n },\n ],\n\n filtersForm: [\n INTERVAL_FORM_DEFAULTS,\n PropTypes.object,\n {\n [actions.changeFiltersForm]: (state, payload) => ({\n ...state,\n [payload.key]: { value: payload.value },\n }),\n [actions.setFiltersForm]: (state, { form }) => ({ ...form }),\n [actions.resetFiltersForm]: (state, payloada) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n [actions.resetFilter]: (state, payloada) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n },\n ],\n\n maintenancesList: [\n [],\n PropTypes.array,\n {\n [actions.setMaintenancesList]: (state, { list }) => list,\n [actions.reset]: () => [],\n },\n ],\n\n pagination: [\n { offset: 1, limit: 10 },\n PropTypes.object,\n {\n [actions.setPagination]: (state, { pag }) => pag,\n [actions.setFiltersForm]: (state) => ({ ...state, offset: 1 }),\n [actions.setEquipmentInDetail]: (state) => ({ ...state, offset: 1 }),\n [actions.reset]: () => ({ offset: 1, limit: 10 }),\n },\n ],\n\n linkedArea: [\n null,\n PropTypes.object,\n {\n [actions.setLinkedArea]: (state, { area }) => area,\n [actions.reset]: () => null,\n },\n ],\n\n dropsListToPlot: [\n null,\n PropTypes.array,\n {\n [actions.setDropsListToPlot]: (state, { list }) => list,\n [actions.reset]: () => null,\n },\n ],\n\n areasList: [\n [],\n PropTypes.array,\n {\n [actions.setAreasList]: (state, { list }) => list,\n [actions.reset]: () => [],\n },\n ],\n\n loadingAreas: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingAreas]: (state, loading) => loading,\n [actions.reset]: () => false,\n },\n ],\n loadingDownload: [\n false,\n PropTypes.boolean,\n {\n [actions.download]: () => true,\n [actions.finishDownload]: () => false,\n [actions.reset]: () => false,\n },\n ],\n loadingPlot: [\n true,\n PropTypes.boolean,\n {\n [actions.setLoadingPlot]: (state, loading) => true,\n [actions.fetchDepositsToPlot]: (state, loading) => true,\n [actions.setDropsListToPlot]: (state, loading) => false,\n [actions.reset]: () => true,\n },\n ],\n\n filteredEquipments: [\n null,\n PropTypes.array,\n {\n [actions.setFilteredEquipments]: (state, { equipments }) => equipments,\n [actions.updateFilteredEquipments]: (state, { equipments }) => [\n ...state,\n ...equipments,\n ],\n [actions.setLinkedArea]: (state, { area }) => {\n return area == null ? null : state;\n },\n [actions.reset]: () => null,\n },\n ],\n\n filteredEquipmentsNumber: [\n 0,\n PropTypes.number,\n {\n [actions.setFilteredEquipmentsNumber]: (state, { number }) => number,\n [actions.reset]: () => 0,\n },\n ],\n\n equipmentInDetail: [\n null,\n PropTypes.object,\n {\n [actions.setEquipmentInDetail]: (state, { equipment }) => equipment,\n [actions.setFetchedEquipmentInDetailNoFetchs]: (state, { equipment }) =>\n equipment,\n [actions.setLinkedArea]: (state, { area }) => {\n return area === null ? null : state;\n },\n [actions.resetFiltersForm]: () => null,\n [actions.reset]: () => null,\n },\n ],\n\n usingMonthCalendar: [\n true,\n PropTypes.bool,\n {\n [actions.setUsingMonthCalendar]: (state, { value }) => value,\n },\n ],\n\n showCalendarFilter: [\n false,\n PropTypes.bool,\n {\n [actions.setShowCalendarFilter]: (state, { value }) => value,\n },\n ],\n searchResults: [\n [],\n PropTypes.array,\n {\n [actions.setSearchResults]: (state, { results }) => results,\n },\n ],\n searchLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'container',\n [actions.setSearchResults]: () => false,\n },\n ],\n searchUserResults: [\n [],\n PropTypes.array,\n {\n [actions.setUserSearchResults]: (state, { results }) => results,\n },\n ],\n searchUserLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'username',\n [actions.setUserSearchResults]: () => false,\n },\n ],\n searchAreaResults: [\n [],\n PropTypes.array,\n {\n [actions.setAreaSearchResults]: (state, { results }) => results,\n },\n ],\n searchAreaLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'area',\n [actions.setAreaSearchResults]: () => false,\n },\n ],\n }),\n\n start: function* () {\n const {\n fetchMaintenancesList,\n fetchAreasEquipments,\n reset,\n watchEvents,\n setWebSocketHanlder,\n } = this.actions;\n\n yield put(reset());\n\n yield put(fetchMaintenancesList());\n yield put(fetchAreasEquipments());\n yield put(setWebSocketHanlder(this.workers.handle));\n yield put(watchEvents());\n },\n\n stop: function* () {\n const { changeWatchingEvents } = this.actions;\n yield put(changeWatchingEvents(false));\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.fetchMaintenancesList]: workers.fetchMaintenancesList,\n [actions.fetchAreasEquipments]: workers.fetchAreasEquipments,\n\n [actions.fetchEquipmentInDetailNoFetchs]:\n workers.fetchEquipmentInDetailNoFetchs,\n [actions.setPagination]: workers.fetchMaintenancesList,\n\n [actions.setEquipmentInDetail]: [\n workers.fetchEquipmentInDetailNoFetchs,\n workers.fetchMaintenancesList,\n ],\n\n [actions.setFiltersForm]: [workers.fetchMaintenancesList],\n [actions.resetFiltersForm]: [workers.fetchMaintenancesList],\n [actions.deleteOccurence]: workers.deleteOccurence,\n }),\n\n workers: {\n *fetchMaintenancesList(action) {\n yield delay(500);\n const equipmentInDetail = yield this.get('equipmentInDetail');\n const filtersForm = yield this.get('filtersForm');\n\n const {\n setMaintenancesList,\n setMaintenancesNumber,\n setEquipmentInDetail,\n } = this.actions;\n\n let params;\n try {\n if (equipmentInDetail) {\n params = { container__id: equipmentInDetail.id };\n } else {\n params = {};\n }\n\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n console.log('params', params);\n\n let response = yield call(axios.get, EVENTSURL, {\n params: {\n ...params,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-datetime',\n },\n });\n\n if (response.data.results) {\n yield put(setMaintenancesList(response.data.results));\n yield put(setMaintenancesNumber(response.data.count));\n } else {\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n } catch (error) {\n console.log({ error });\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n },\n\n *handle(message) {\n const { triggerFetch, fetchEquipmentInDetailNoFetchs } = this.actions;\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n if (message.event_type === 'event' && message.content) {\n if (message.event_type === 'event') {\n if (\n (message.content.type === 'alert' ||\n message.content.type === 'pick' ||\n message.content.type === 'drop') &&\n message.type === 'new'\n ) {\n yield put(triggerFetch());\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n } else if (\n message.sender &&\n message.sender === 'transaction' &&\n message.type === 'new'\n ) {\n yield put(triggerFetch());\n }\n }\n }\n },\n\n *deleteOccurence(action) {\n const { payload } = action;\n const { setDeleteResponse, fetchMaintenancesList } = this.actions;\n const { t } = this.props;\n if (payload.id != null) {\n try {\n const response = yield call(\n axios.delete,\n `${EVENTSURL}${payload.id}/`\n );\n if (response) {\n yield put(setDeleteResponse('success'));\n toast.success(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: payload.id ? `deleted_${payload.id}` : null,\n }\n );\n yield put(fetchMaintenancesList());\n }\n } catch (err) {\n console.log(err);\n yield put(setDeleteResponse('error'));\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: payload.id ? `deleted_${payload.id}` : null,\n }\n );\n }\n }\n },\n\n *fetchAreasEquipments(action) {\n yield delay(600);\n const { setFilteredEquipments, setFilteredEquipmentsNumber } =\n this.actions;\n\n try {\n let next = 1;\n let number = 0;\n\n while (next) {\n let params = {\n limit: 500,\n offset: (next - 1) * 500,\n };\n\n let results = [];\n const { data } = yield call(axios.get, EQUIPMENTSSURL, {\n params,\n });\n\n if (data.results && data.results.length) {\n number = number + data.results.length;\n\n data.results.map((container) => {\n container.color = decodeColor(container.type);\n results.push(container);\n return container;\n });\n }\n next = data.next ? next + 1 : 0;\n\n yield put(setFilteredEquipments(results));\n yield put(setFilteredEquipmentsNumber(number));\n }\n } catch (error) {\n console.log({ error });\n yield put(setFilteredEquipments([]));\n yield put(setFilteredEquipmentsNumber(0));\n }\n },\n\n *fetchEquipmentInDetailNoFetchs(action) {\n const { setFetchedEquipmentInDetailNoFetchs } = this.actions;\n\n try {\n if (\n action != null &&\n action.payload != null &&\n action.payload.equipment != null &&\n action.payload.equipment.id != null\n ) {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n yield put(setFetchedEquipmentInDetailNoFetchs(data));\n }\n } catch (error) {\n console.log({ error });\n yield put(setFetchedEquipmentInDetailNoFetchs(null));\n }\n },\n },\n});\n","import React from \"react\";\nimport moment from \"moment\";\n// import StyledProgressBar from \"components/StyledProgressBar\";\nimport styled from \"styled-components\";\nimport decodeType from \"utils/decodeType\";\nimport Bin from \"icons/Bin\";\nimport OpenInNew from \"icons/OpenInNew\";\n\nexport const columns = [\n {\n label: \"table.id\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"id\",\n render: function (data) {\n return (\n \n {data.id ? data.id : \"-\"}\n \n );\n },\n minWidth: 70,\n },\n {\n label: \"table.date\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"datetime\",\n render: function (data) {\n return (\n \n {moment(data.datetime).format(\"DD/MM/YYYY HH:mm:ss\")}\n \n );\n },\n minWidth: 180,\n },\n {\n label: \"table.container\",\n renderHeader: function ({ t, ...column }) {\n return {t(column.label)};\n },\n sortable: true,\n sortMethod: function (a, b) {\n if (a.container && a.container.name && b.container && b.container.name) {\n return a.container.name >= b.container.name;\n }\n return false;\n },\n minWidth: 115,\n render: function (data) {\n return (\n \n {data.container && data.container.name ? data.container.name : \"-\"}\n \n );\n },\n },\n {\n label: \"table.type\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data, { t }) {\n return (\n \n {data.container && data.container.type\n ? t(`table.${decodeType(data.container.type)}`)\n : \"-\"}\n \n );\n },\n },\n {\n label: \"table.actions\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n render: function ({ t, seeMore, deleteOccurence, user, ...data }) {\n return (\n \n seeMore(e, data)}>\n \n \n {user != null &&\n data != null &&\n data.tag != null &&\n data.tag.user != null &&\n user.id === data.tag.user.id && (\n deleteOccurence(e, data)}>\n \n \n )}\n \n );\n },\n },\n];\n\nconst EllipsisDiv = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n\nconst Link = styled.span`\n path {\n fill: ${({ theme }) => theme.primaryColor};\n }\n color: ${({ theme }) => theme.primaryColor};\n text-decoration: underline;\n cursor: pointer;\n\n &:hover {\n path {\n fill: ${({ theme }) => theme.darkPrimaryColor};\n }\n }\n\n & + & {\n margin-left: 16px;\n }\n`;\n\nconst CenterDiv = styled.div`\n display: flex;\n align-items: center;\n`;\n","/**\n * Occurrences Scene\n * Please write a description\n *\n * @author Your Name \n */\n\nimport React, { Component } from 'react';\nimport ReactDOM from 'react-dom';\nimport Logic, { INTERVAL_FORM_DEFAULTS } from './logic';\nimport styled from 'styled-components';\nimport { Theme } from 'globalStyles';\nimport { Layout, Breadcrumb, Loading } from 'element-react';\nimport { withTranslation } from 'react-i18next';\n\nimport { columns } from './columns';\n\nimport ContainerMapMaintenances from 'containers/ContainerMapMaintenances';\nimport IntervalPicker from 'containers/IntervalPicker';\nimport StyledMobileTable from 'containers/StyledMobileTable';\nimport DownloadDropDownContainer from 'containers/DownloadDropDownContainer';\n\nimport StyledTable from 'components/StyledTable';\nimport StyledButton from 'components/StyledButton';\nimport ToggleFilter from 'components/ToggleFilter';\nimport ResponsiveHandler from 'components/ResponsiveHandler';\nimport OccurrencesTemplate from 'components/OccurrencesTemplate';\nimport StyledSelect from 'components/StyledSelect';\nimport Dialog from 'components/Dialog';\nimport moment from 'moment';\n\nimport { getIntervalText } from 'utils';\n\nconst getUserName = (data) => {\n if (data) {\n return data.user;\n }\n return '-';\n};\n\nconst intervalOptions = [\n {\n value: 'day',\n label: 'day',\n },\n {\n value: 'month',\n label: 'month',\n },\n {\n value: 'year',\n label: 'year',\n },\n];\n\nconst depositCompleteOptions = [\n {\n label: 'closed',\n value: 'True',\n },\n {\n label: 'open',\n value: 'False',\n },\n];\n\nclass Occurrences extends Component {\n constructor(props) {\n super(props);\n this.state = {\n focusedInput: null,\n transitionEnded: false,\n filtersWidth: 20,\n inputWidth: '140px',\n triggerSet: false,\n changedForm: null,\n completeOptions: depositCompleteOptions,\n dialogOpen: false,\n dialogContainer: null,\n deleteOpen: false,\n deleteContainer: null,\n };\n this.tableRef = React.createRef();\n this.setState = this.setState.bind(this);\n this._autocompleteRef = null;\n this._userAutocompleteRef = null;\n this._areaAutocompleteRef = null;\n }\n\n _mapContainer = React.createRef();\n\n onFocusChange = (focusedInput) => {\n this.setState({ focusedInput });\n };\n\n componentDidMount() {\n ReactDOM.findDOMNode(this._mapContainer).addEventListener(\n 'transitionend',\n () => {\n this.setState({ transitionEnded: true });\n }\n );\n this.setState({\n changedForm: this.props.filtersForm,\n });\n }\n\n handleEnter = (event) => {\n if (event.key === 'Enter') {\n const { filterEntrances } = this.actions;\n filterEntrances();\n }\n };\n\n autoCompleteFetch = (queryString) => {\n if (this._autocompleteRef) {\n clearTimeout(this._autocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._autocompleteRef = setTimeout(function () {\n search(queryString, null, 'container');\n }, 500);\n };\n\n userAutoCompleteFetch = (queryString) => {\n if (this._userAutocompleteRef) {\n clearTimeout(this._userAutocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._userAutocompleteRef = setTimeout(function () {\n search(queryString, null, 'username');\n }, 500);\n };\n\n areaAutoCompleteFetch = (queryString) => {\n if (this._areaAutocompleteRef) {\n clearTimeout(this._areaAutocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._areaAutocompleteRef = setTimeout(function () {\n search(queryString, null, 'area');\n }, 500);\n };\n\n seeMore = (event, row) => {\n event.stopPropagation();\n this.setState({ dialogOpen: true, dialogContainer: row });\n };\n\n setDeleteOccurence = (event, row) => {\n event.stopPropagation();\n this.setState({ deleteOpen: true, deleteContainer: row });\n };\n\n componentDidUpdate(prevProps, prevState) {\n if (\n this.props.deleteResponse !== prevProps.deleteResponse &&\n this.props.deleteResponse === 'success' &&\n this.state.deleteOpen === true\n ) {\n this.setState({\n deleteOpen: false,\n deleteContainer: null,\n });\n const { setDeleteResponse } = this.actions;\n setDeleteResponse(null);\n }\n }\n\n shouldRevealImage(container) {\n const hasArticles = container.articles.length > 0;\n const hasAttachment =\n hasArticles && container.articles.at(-1).attachments.length > 0;\n const imgRegex =\n /^(https?|ftp):\\/\\/[^\\s/$.?#]+\\.[^\\s]*\\.(jpg|jpeg|png|gif|bmp|svg|webp)(\\?[^\\s]*)?$/;\n const isAttachmentImage =\n hasAttachment &&\n new RegExp(imgRegex).test(\n container.articles.at(-1).attachments.at(-1).file\n );\n\n return isAttachmentImage;\n }\n\n render() {\n const {\n setLinkedArea,\n setEquipmentInDetail,\n resetFilter,\n changeFilter,\n setFiltersForm,\n resetFiltersForm,\n download,\n deleteOccurence,\n } = this.actions;\n\n const {\n areasList,\n linkedArea,\n filteredEquipments,\n equipmentInDetail,\n maintenancesList,\n filter,\n t,\n filtersForm,\n responsiveHandlers,\n loadingDownload,\n filteredEquipmentsNumber,\n searchUserResults,\n searchUserLoading,\n searchAreaResults,\n searchAreaLoading,\n user,\n isDeleting,\n } = this.props;\n\n const {\n transitionEnded,\n filtersWidth,\n inputWidth,\n triggerSet,\n changedForm,\n dialogOpen,\n dialogContainer,\n deleteOpen,\n deleteContainer,\n } = this.state;\n const columnsToMap = columns;\n\n const areaEquipments = filteredEquipments\n ? filteredEquipments.reduce(\n (x, y) => (x.findIndex((e) => e.id === y.id) < 0 ? [...x, y] : x),\n []\n )\n : filteredEquipments;\n\n return (\n \n \n \n \n \n \n {\n setLinkedArea(null);\n }}\n >\n {t('occurrences.title')}\n \n \n {linkedArea && (\n \n setEquipmentInDetail(null)}>\n {linkedArea.name}\n \n \n )}\n {equipmentInDetail && (\n {equipmentInDetail.name}\n )}\n \n \n \n {user != null && user.isAdmin && (\n \n \n changeFilter('container__area__name', event)\n }\n remoteMethod={this.areaAutoCompleteFetch}\n options={searchAreaResults}\n loading={searchAreaLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea != null}\n >\n\n changeFilter('search_user', event)}\n remoteMethod={this.userAutoCompleteFetch}\n value={filter.search_user}\n options={searchUserResults}\n loading={searchUserLoading}\n filterable={true}\n remote={true}\n clearable={true}\n >\n \n )}\n {changedForm != null && (\n \n this.setState({ triggerSet: false })}\n state={{ changedForm }}\n setState={this.setState}\n />\n \n )}\n\n \n {\n resetFilter();\n setLinkedArea(null);\n }}\n >\n {t('clear_filters')}\n \n this.setState({ triggerSet: true })}\n >\n {t('apply')}\n \n {user != null && user.isAdmin && (\n \n {!loadingDownload ? 'Download' : }\n \n }\n type={'button'}\n loadingDownload={loadingDownload}\n >\n \n \n )}\n \n \n \n \n\n \n (this._mapContainer = elem)}\n span={'24'}\n >\n setLinkedArea(area)}\n areaEquipments={areaEquipments}\n globalNumberOfContainers={filteredEquipmentsNumber}\n equipmentInDetail={equipmentInDetail}\n setEquipmentInDetail={(equipment) => {\n this.setState({\n transitionEnded: false,\n });\n setEquipmentInDetail(equipment);\n }}\n transitionEnded={transitionEnded}\n />\n \n \n\n \n
\n \n {t('occurrences.title')}\n {responsiveHandlers.isMobile || responsiveHandlers.isTablet ? (\n ({ ...equipment }))\n : []\n }\n template={OccurrencesTemplate}\n user={user}\n active={(row) =>\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id\n }\n onRowClick={(entrance) => {\n window.scrollTo({\n left: 0,\n top: 0,\n behavior: 'smooth',\n });\n this.setState({\n transitionEnded: false,\n });\n\n setEquipmentInDetail(entrance.container);\n }}\n />\n ) : (\n 768\n ? 'calc(55vh - 64px - 36px - 48px - 4rem - 42px - 1px )'\n : ''\n }\n defaultSort={{ prop: 'startDate', order: 'descending' }}\n columns={columnsToMap.map((column) => ({ t, ...column }))}\n data={\n maintenancesList\n ? maintenancesList.map((equipment) => ({\n t,\n user,\n seeMore: this.seeMore,\n deleteOccurence: this.setDeleteOccurence,\n ...equipment,\n }))\n : []\n }\n rowClassName={(row) => {\n let toReturn = '';\n if (\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id\n ) {\n toReturn += ' active';\n }\n if (row.status === 'open') {\n toReturn += ' error';\n }\n return toReturn;\n }}\n onRowClick={(entrance) => {\n this.setState({\n transitionEnded: false,\n });\n\n setEquipmentInDetail(entrance.container);\n }}\n />\n )}\n \n
\n \n\n {deleteOpen && deleteContainer != null && (\n {\n this.setState({\n deleteOpen: false,\n deleteContainer: null,\n });\n }}\n size={'medium'}\n title={t('occurrences.delete_title')}\n >\n {t('occurrences.delete_description')}\n \n \n this.setState({\n deleteOpen: false,\n deleteContainer: null,\n })\n }\n disabled={isDeleting}\n type='seconday'\n >\n {t('cancel')}\n \n deleteOccurence(deleteContainer.id)}\n >\n {t('delete')}\n \n \n \n )}\n\n {dialogOpen && dialogContainer != null && (\n {\n this.setState({\n dialogOpen: false,\n dialogContainer: null,\n });\n }}\n title={``}\n size={'large'}\n >\n \n \n {`${t('table.occurrence')} #${\n dialogContainer.id\n }`}\n \n \n {t('created_by')}{' '}\n {dialogContainer.email ? dialogContainer.email : '-'}\n \n \n {moment(dialogContainer.createdAt).format(\n 'DD/MM/YYYY HH:mm:ss'\n )}\n \n \n \n {t('table.container')}\n \n {dialogContainer.container\n ? dialogContainer.container\n : '-'}\n \n \n \n {t('table.title')}\n {dialogContainer.title}\n \n {dialogContainer.articles.length > 0 && (\n \n {t('table.description')}\n \n {dialogContainer.articles.at(-1).message}\n \n \n )}\n \n {this.shouldRevealImage(dialogContainer) && (\n \n )}\n \n \n )}\n
\n );\n }\n}\n\nexport default withTranslation()(ResponsiveHandler(Logic(Occurrences)));\n\nconst Wrapper = styled.div``;\n\nconst CustomLayoutSecondaryRow = styled(Layout.Row)`\n margin-left: 0px !important;\n margin-right: 0px !important;\n margin-top: ${(props) => props.marginTop};\n height: ${(props) => props.height};\n min-height: ${(props) => props.minHeight};\n & > div {\n ${({ theme }) => theme.smallDesktop`\n height: 100%;\n `}\n }\n`;\n\nconst FlexWrapper = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n`;\n\nconst BreakcrumbWrapper = styled.div`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.desktop`\n flex-direction: row;\n `}\n`;\n\nconst SelectivePaddingColNoFixedHeight = styled(Layout.Col)`\n display: flex;\n justify-content: ${(props) => props.justifyContent};\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n float: ${(props) => props.float} !important;\n transition: width 0.4s;\n overflow: visible;\n`;\n\nconst BreadcrumbWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-4 {\n width: 100%;\n margin-bottom: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-4{\n margin-bottom: 8px;\n padding: 0 16px 0 0 !important;\n }\n `}\n`;\nconst FiltersWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-20 {\n width: 100%;\n display: grid;\n grid-template-columns: repeat(2, minmax(0, 1fr));\n justify-content: left;\n row-gap: 8px;\n column-gap: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n\n `}\n\n ${({ theme }) => theme.desktop`\n &.el-col-20{\n display: flex;\n justify-content: flex-end;\n width: 83.33333%;\n padding-left: 14px !important;\n }\n `}\n`;\n\nconst SelectivePaddingColNoFixedHeightWithBoxShadow = styled(\n SelectivePaddingColNoFixedHeight\n)`\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);\n`;\n\nconst NoPaddingCol = styled(Layout.Col)`\n padding-left: 0px !important;\n padding-right: 0px !important;\n\n padding: ${(props) => props.padding} !important;\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n\n &.el-col-12 {\n width: 100%;\n padding: 0 !important;\n height: calc(100% - 3rem);\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-12{\n width: 50%;\n padding: ${(props) => props.padding} !important;\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n }\n `}\n`;\n\nconst CustomBreakcrumb = styled(Breadcrumb)`\n .el-breadcrumb__item > span {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n\n .el-breadcrumb__separator {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n`;\n\nconst ButtonWrapper = styled(FlexWrapper)`\n display: grid;\n grid-template-columns: 1fr 1fr;\n column-gap: 8px;\n row-gap: 8px;\n grid-column: span 2;\n justify-content: flex-end;\n\n ${({ theme }) => theme.desktop`\n display flex;\n `}\n`;\n\nconst FirstRow = styled(CustomLayoutSecondaryRow)`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.smallDesktop`\n flex-direction: row;\n `}\n`;\n\nconst MapWrapper = styled(SelectivePaddingColNoFixedHeightWithBoxShadow)`\n &.el-col-22 {\n width: 100%;\n }\n ${({ theme }) => theme.smallDesktop`\n &.el-col-22{\n width: 83.33333%;\n }\n `}\n ${({ theme }) => theme.desktop`\n &.el-col-22{\n width: 91.66667%;\n }\n `}\n`;\n\nconst DownloadLoading = styled(Loading)`\n height: 24px;\n width: 24px;\n overflow: hidden;\n\n .el-loading-spinner {\n margin-top: 0;\n top: 0;\n svg {\n height: 24px;\n width: 24px;\n }\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\nconst DialogBodyWrapper = styled.div`\n display: flex;\n flex-wrap: wrap;\n column-gap: 40px;\n row-gap: 30px;\n`;\n\nconst DialogDetails = styled.div`\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n flex-basis: 200px;\n row-gap: 24px;\n`;\n\nconst DialogImage = styled.img`\n height: auto;\n width: min(100%, 400px);\n object-fit: contain;\n margin: 0 auto;\n`;\n\nconst DialogTitle = styled.h4`\n margin: 0;\n\n font-size: 24px;\n font-weight: 700;\n line-height: 32px;\n grid-row: 1/2;\n grid-column: 1/2;\n\n color: ${Theme.textonSecondary};\n font-family: ${Theme.fontFamily};\n`;\n\nconst DialogItem = styled.div`\n display: grid;\n grid-template-rows: auto auto;\n row-gap: 8px;\n grid-row: span 1;\n grid-column: 1/2;\n\n ${(props) =>\n props.hasDate &&\n `\n row-gap: 6px;\n `}\n`;\n\nconst DialogLabel = styled.label`\n margin: 0;\n\n font-weight: 700;\n font-size: 16px;\n line-height: 24px;\n\n color: ${Theme.textonSecondary};\n font-family: ${Theme.fontFamily};\n\n b {\n color: ${Theme.primaryColor};\n }\n`;\n\nconst DialogDescription = styled.p`\n margin: 0;\n font-size: 16px;\n line-height: 24px;\n color: ${Theme.textonSecondary};\n font-family: ${Theme.fontFamily};\n\n ${(props) =>\n props.isDate &&\n `\n font-size: 14px;\n line-hegith: 20px;\n color: ${Theme.darkPrimaryColorOpacity}\n `};\n`;\n\nconst DialogActions = styled.div`\n margin-top: 24px;\n display: grid;\n grid-template-columns: minmax(200px, 1fr) minmax(200px, 1fr);\n column-gap: 16px;\n`;\n\nconst TableName = styled.span`\n color: ${Theme.primaryColor};\n font-size: 1rem;\n font-weight: 800;\n line-height: 22px;\n`;\n","/**\n * DashboardWrapper Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic from \"./logic\";\nimport Occurrences from \"../Occurrences\";\nimport ClientOccurrences from \"../ClientOccurrences\";\nimport { Redirect } from \"react-router\";\nimport { Loading } from \"element-react\";\n\nclass DashboardWrapper extends Component {\n render() {\n const { user, loadingUser } = this.props;\n if (loadingUser) {\n return ;\n }\n if (user != null) {\n if (user.isAdmin) {\n return ;\n } else {\n return ;\n }\n }\n return ;\n }\n}\n\nexport default Logic(DashboardWrapper);\n","import React from 'react';\nimport { kea } from 'kea';\nimport { put, call } from 'redux-saga/effects';\nimport { delay } from 'redux-saga';\nimport { BASE_API_URL, API_DATE_FORMAT } from 'config';\nimport PropTypes from 'prop-types';\nimport axios from 'axios';\nimport moment from 'moment';\nimport { decodeColor } from 'utils';\nimport { toast } from 'react-toastify';\nimport NotificationsWrapper from 'components/NotificationsWrapper';\nimport AppLogic from 'containers/App/logic';\n\nconst EVENTSURL = BASE_API_URL + 'events/';\nconst MAINTENANCESURL = BASE_API_URL + 'containers/maintenances/';\nconst AREASURL = BASE_API_URL + 'areas/';\nconst EQUIPMENTSSURL = BASE_API_URL + 'containers/';\n\nconst getContainerByUUID = (uuid, array) => {\n if (uuid != null && array != null) {\n return array.find((el) => {\n return el.uuid === uuid;\n });\n }\n return null;\n};\n\nconst getAreaByName = (name, array) => {\n if (name != null && array != null) {\n return array.find((el) => {\n return el.name === name;\n });\n }\n return null;\n};\n\nexport const INTERVAL_FORM_DEFAULTS = {\n start: {\n value: moment().startOf('month'),\n },\n end: {\n value: moment(),\n },\n interval: {\n value: 'day',\n },\n};\n\nexport default kea({\n path: () => ['scenes', 'Containers'],\n\n connect: {\n props: [],\n actions: [\n AppLogic,\n ['watchEvents', 'changeWatchingEvents', 'setWebSocketHanlder'],\n ],\n },\n\n actions: () => ({\n changeFiltersForm: (key, value) => ({ key, value }),\n setFiltersForm: (form) => ({ form }),\n resetFiltersForm: () => true,\n fetchAreasEquipments: () => true,\n\n setHistoryList: (list) => ({ list }),\n setHistoryNumber: (number) => ({ number }),\n\n fetchEvents: () => true,\n setEventsList: (list) => ({ list }),\n setEventsNumber: (number) => ({ number }),\n\n fetchMaintenances: () => true,\n setMaintenancesList: (list) => ({ list }),\n setMaintenancesNumber: (number) => ({ number }),\n\n fetchOccurrences: () => true,\n setOccurrencesList: (list) => ({ list }),\n setOccurrencesNumber: (number) => ({ number }),\n\n fetchEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetailNoFetchs: (equipment) => ({ equipment }),\n\n fetchAreasList: () => true,\n setAreasList: (list) => ({ list }),\n setAreasNumber: (number) => ({ number }),\n setLoadingAreas: (loading) => loading,\n\n setLinkedArea: (area) => ({ area, type: 'container', query: '' }),\n setFilteredEquipments: (equipments) => ({ equipments }),\n updateFilteredEquipments: (equipments) => ({ equipments }),\n setFilteredEquipmentsNumber: (number) => ({ number }),\n\n setFilter: (filter) => ({ filter }),\n changeFilter: (key, value) => ({ key, value }),\n resetFilter: () => true,\n filterEntrances: () => true,\n setPagination: (pag) => ({ pag }),\n\n setEquipmentInDetail: (equipment) => ({ equipment }),\n setFetchedEquipmentInDetail: (equipment) => ({\n equipment,\n type: 'container',\n query: '',\n }),\n\n setUsingMonthCalendar: (value) => ({ value }),\n setShowCalendarFilter: (value) => ({ value }),\n\n setSearchResults: (results) => ({ results }),\n setAreaSearchResults: (results) => ({ results }),\n\n reset: () => true,\n }),\n\n reducers: ({ actions }) => ({\n filtersForm: [\n INTERVAL_FORM_DEFAULTS,\n PropTypes.object,\n {\n [actions.changeFiltersForm]: (state, payload) => ({\n ...state,\n [payload.key]: { value: payload.value },\n }),\n [actions.setFiltersForm]: (state, { form }) => ({ ...form }),\n [actions.resetFiltersForm]: (state, payload) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n [actions.resetFilter]: (state, payload) => ({\n ...INTERVAL_FORM_DEFAULTS,\n }),\n },\n ],\n\n historyList: [\n [],\n PropTypes.array,\n {\n [actions.setHistoryList]: (state, { list }) => list,\n [actions.resetFilter]: () => null,\n },\n ],\n\n historyCount: [\n 0,\n PropTypes.number,\n {\n [actions.setHitoryNumber]: (state, { number }) => number,\n },\n ],\n\n eventsList: [\n [],\n PropTypes.array,\n {\n [actions.setEventsList]: (state, { list }) => list,\n },\n ],\n\n eventsCount: [\n 0,\n PropTypes.number,\n {\n [actions.setDepositsNumber]: (state, { number }) => number,\n },\n ],\n\n maintenancesList: [\n [],\n PropTypes.array,\n {\n [actions.setMaintenancesList]: (state, { list }) => list,\n },\n ],\n\n occurrencesList: [\n [],\n PropTypes.array,\n {\n [actions.setOccurrencesList]: (state, { list }) => list,\n },\n ],\n\n occurrencesCount: [\n 0,\n PropTypes.number,\n {\n [actions.setOccurrencesNumber]: (state, { number }) => number,\n },\n ],\n\n pagination: [\n { page: 1, page_size: 10 },\n PropTypes.object,\n {\n [actions.setPagination]: (state, { pag }) => pag,\n [actions.setFetchedEquipmentInDetail]: () => ({\n page: 1,\n page_size: 10,\n }),\n [actions.setFiltersForm]: () => ({ page: 1, page_size: 10 }),\n },\n ],\n\n linkedArea: [\n null,\n PropTypes.object,\n {\n [actions.setLinkedArea]: (state, { area }) => area,\n },\n ],\n\n filter: [\n {\n container__area__name: '',\n container__uuid: '',\n fill_level: '',\n complete: '',\n },\n PropTypes.object,\n {\n [actions.setFilter]: (state, { filter }) => filter,\n [actions.changeFilter]: (state, payload) => {\n return Object.assign({}, state, { [payload.key]: payload.value });\n },\n [actions.setLinkedArea]: (state, { area }) => ({\n ...state,\n container__area__name: area != null && area.name ? area.name : '',\n }),\n [actions.setEquipmentInDetail]: (state, { equipment }) => ({\n ...state,\n container__uuid:\n equipment != null && equipment.uuid ? equipment.uuid : '',\n }),\n [actions.resetFilter]: () => ({\n container__area__name: '',\n container__uuid: '',\n fill_level: '',\n complete: '',\n }),\n },\n ],\n\n fillLevelFilterOptions: [\n [\n {\n value: 'less',\n label: 'x < 25%',\n },\n {\n value: 'between',\n label: '25% < x < 50%',\n },\n {\n value: 'between_2',\n label: '50% < x < 75%',\n },\n {\n value: 'greater',\n label: '75% < x',\n },\n ],\n PropTypes.array,\n {},\n ],\n\n areasList: [\n [],\n PropTypes.array,\n {\n [actions.setAreasList]: (state, { list }) => list,\n },\n ],\n\n loadingAreas: [\n false,\n PropTypes.boolean,\n {\n [actions.setLoadingAreas]: (state, loading) => loading,\n },\n ],\n\n filteredEquipments: [\n null,\n PropTypes.array,\n {\n [actions.setFilteredEquipments]: (state, { equipments }) => equipments,\n [actions.updateFilteredEquipments]: (state, { equipments }) => [\n ...state,\n ...equipments,\n ],\n [actions.setLinkedArea]: (state, { area }) => {\n return area === null ? null : state;\n },\n },\n ],\n\n filteredEquipmentsNumber: [\n 0,\n PropTypes.number,\n {\n [actions.setFilteredEquipmentsNumber]: (state, { number }) => number,\n },\n ],\n\n equipmentInDetail: [\n null,\n PropTypes.object,\n {\n [actions.setFetchedEquipmentInDetail]: (state, { equipment }) =>\n equipment,\n [actions.setFetchedEquipmentInDetailNoFetchs]: (state, { equipment }) =>\n equipment,\n [actions.setLinkedArea]: (state, { area }) => {\n return area === null ? null : state;\n },\n [actions.resetFilter]: () => null,\n },\n ],\n\n usingMonthCalendar: [\n true,\n PropTypes.bool,\n {\n [actions.setUsingMonthCalendar]: (state, { value }) => value,\n },\n ],\n\n showCalendarFilter: [\n false,\n PropTypes.bool,\n {\n [actions.setShowCalendarFilter]: (state, { value }) => value,\n },\n ],\n\n searchResults: [\n [],\n PropTypes.array,\n {\n [actions.setSearchResults]: (state, { results }) => results,\n },\n ],\n\n searchLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'container',\n [actions.setSearchResults]: () => false,\n },\n ],\n\n searchAreaResults: [\n [],\n PropTypes.array,\n {\n [actions.setAreaSearchResults]: (state, { results }) => results,\n },\n ],\n\n searchAreaLoading: [\n false,\n PropTypes.bool,\n {\n [actions.search]: (state, { query, cb, type }) => type === 'area',\n [actions.setAreaSearchResults]: () => false,\n },\n ],\n }),\n\n start: function* () {\n const {\n fetchAreasList,\n fetchAreasEquipments,\n setWebSocketHanlder,\n watchEvents,\n } = this.actions;\n\n yield put(fetchAreasList());\n yield put(fetchAreasEquipments());\n\n yield put(setWebSocketHanlder(this.workers.handle));\n\n yield put(watchEvents());\n },\n\n stop: function* () {\n const { changeWatchingEvents } = this.actions;\n yield put(changeWatchingEvents(false));\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.fetchEquipmentInDetailNoFetchs]:\n workers.fetchEquipmentInDetailNoFetchs,\n\n [actions.fetchAreasList]: workers.fetchAreasList,\n\n [actions.fetchAreasEquipments]: workers.fetchAreasEquipments,\n\n [actions.setLinkedArea]: [\n workers.showOnlyOneArea,\n workers.fetchAreasEquipments,\n ],\n\n [actions.setEquipmentInDetail]: [\n workers.fetchEquipmentInDetail,\n workers.fetchEvents,\n workers.fetchMaintenances,\n workers.fetchOccurrences,\n ],\n [actions.setFetchedEquipmentInDetail]: [\n workers.fetchEvents,\n workers.fetchMaintenances,\n ],\n\n [actions.setEventsList]: workers.fetchHistory,\n\n [actions.setMaintenancesList]: workers.fetchHistory,\n\n [actions.filterEntrances]: [workers.fetchEvents, workers.fetchMaintenances],\n\n [actions.resetFilter]: [workers.fetchEvents, workers.fetchMaintenances],\n\n [actions.setFiltersForm]: [\n workers.fetchEvents,\n workers.fetchMaintenances,\n workers.fetchAreasEquipments,\n ],\n }),\n\n workers: {\n *showOnlyOneArea(action) {\n const { setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n const linkedArea = yield this.get('linkedArea');\n if (areasList.length === 1 && linkedArea !== areasList[0]) {\n yield delay(300);\n yield put(setLinkedArea(areasList[0]));\n }\n },\n\n *fetchAreasList(action) {\n const {\n setAreasList,\n setLinkedArea,\n setAreaSearchResults,\n setAreasNumber,\n } = this.actions;\n\n try {\n const response = yield call(axios.get, AREASURL);\n const areasRes = response.data.results;\n\n if (areasRes.length) {\n // add data to area filter\n const searchAreaArr = areasRes.map((area) => ({\n value: area.name,\n label: area.name,\n }));\n yield put(setAreaSearchResults(searchAreaArr));\n\n // set up areas and prepare polygons\n let results = areasRes.map((area) => {\n area.lines = {\n type: 'LineString',\n coordinates: area.polygon.coordinates[0],\n };\n return area;\n });\n yield put(setAreasList(results));\n yield put(setAreasNumber(areasRes.length));\n\n // if there is only one area, focus it\n if (results.length === 1) {\n yield delay(300);\n yield put(setLinkedArea(results[0]));\n }\n } else {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n }\n } catch (error) {\n yield put(setAreasList([]));\n yield put(setAreasNumber(0));\n yield put(setAreaSearchResults([]));\n }\n },\n\n *fetchAreasEquipments() {\n yield delay(600);\n const linkedArea = yield this.get('linkedArea');\n const filter = yield this.get('filter');\n\n const {\n setFilteredEquipments,\n setSearchResults,\n setFilteredEquipmentsNumber,\n } = this.actions;\n\n const installationStatus = ['assembled', 'installed'];\n\n let fillLevel;\n\n switch (filter.fill_level) {\n case 'less':\n fillLevel = {\n fill_level__lte: 25,\n };\n break;\n case 'between':\n fillLevel = {\n fill_level__gte: 25,\n fill_level__lte: 50,\n };\n break;\n case 'between_2':\n fillLevel = {\n fill_level__gte: 50,\n fill_level__lte: 75,\n };\n break;\n case 'greater':\n fillLevel = {\n fill_level__gte: 75,\n };\n break;\n default:\n fillLevel = {};\n }\n\n try {\n let next = 1;\n const commonParams = {\n ...fillLevel,\n page_size: 500,\n };\n\n let results = [];\n while (next) {\n let params = {\n ...commonParams,\n page: next,\n };\n\n if (linkedArea) params = { ...params, area__id: linkedArea.id };\n\n let containers = [];\n\n const responses = yield installationStatus.map((status) => {\n params = { ...params, installation_status: status };\n return call(axios.get, EQUIPMENTSSURL, { params });\n });\n\n responses.forEach((el) =>\n containers.push.apply(containers, el.data.results)\n );\n\n containers.map((container) => {\n container.color = decodeColor(container.type);\n results.push(container);\n return container;\n });\n\n const equipmentsList = results.map((el) => ({\n value: el.uuid,\n label: el.name,\n }));\n\n next = 0;\n\n yield put(setFilteredEquipments(results));\n yield put(setFilteredEquipmentsNumber(results.length));\n yield put(setSearchResults(equipmentsList));\n }\n } catch (error) {\n yield put(setFilteredEquipments([]));\n yield put(setFilteredEquipmentsNumber(0));\n yield put(setSearchResults([]));\n }\n },\n\n *fetchEquipmentInDetailNoFetchs(action) {\n const { setFetchedEquipmentInDetailNoFetchs } = this.actions;\n\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n yield put(setFetchedEquipmentInDetailNoFetchs(data));\n } catch (error) {\n yield put(setFetchedEquipmentInDetailNoFetchs(null));\n }\n },\n\n *fetchEquipmentInDetail(action) {\n yield delay(300);\n\n const { setFetchedEquipmentInDetail, setLinkedArea } = this.actions;\n const areasList = yield this.get('areasList');\n\n if (\n action.payload &&\n action.payload.equipment &&\n action.payload.equipment.id\n ) {\n try {\n const { data } = yield call(\n axios.get,\n EQUIPMENTSSURL + `${action.payload.equipment.id}/`\n );\n data.color = decodeColor(data.type);\n const equipmentArea = areasList.find((el) => el.id === data.area.id);\n\n if (equipmentArea != null) {\n yield put(setLinkedArea(equipmentArea));\n }\n yield put(setFetchedEquipmentInDetail(data));\n } catch (error) {\n yield put(setFetchedEquipmentInDetail(null));\n }\n } else {\n yield put(setFetchedEquipmentInDetail(null));\n }\n },\n\n *fetchHistory() {\n yield delay(500);\n const equipmentInDetail = yield this.get('equipmentInDetail');\n const events = yield this.get('eventsList');\n const maintenances = yield this.get('maintenancesList');\n\n const { setHistoryList, setHistoryNumber } = this.actions;\n\n if (events && maintenances) {\n let historyList = [];\n\n for (let event of events) {\n let aux = {\n address: equipmentInDetail.address,\n type: event.type,\n fillLevel:\n event.type === 'pick'\n ? event.previousFillLevel\n : event.containerFillLevel,\n date: event.datetime,\n user: event.tag.user\n ? event.tag.user.fullName\n ? event.tag.user.fullName\n : '-'\n : '-',\n };\n\n historyList.push(aux);\n }\n\n for (let maintenance of maintenances) {\n let aux = {\n address: equipmentInDetail.address,\n type: 'maintenance',\n fillLevel: maintenance.container.fillLevel,\n date: maintenance.datetime,\n user: maintenance.maintainer\n ? maintenance.maintainer.fullName\n ? maintenance.maintainer.fullName\n : '-'\n : '-',\n };\n\n historyList.push(aux);\n }\n\n let sortedArr = historyList.sort(\n (a, b) => new Date(b.date) - new Date(a.date)\n );\n\n yield put(setHistoryList(sortedArr));\n yield put(setHistoryNumber(historyList.length));\n } else {\n yield put(setHistoryList(null));\n yield put(setHistoryNumber(0));\n }\n },\n\n *fetchEvents() {\n yield delay(500);\n const equipmentInDetail = yield this.get('equipmentInDetail');\n const linkedArea = yield this.get('linkedArea');\n const areasList = yield this.get('areasList');\n\n let filter = yield this.get('filter');\n const filtersForm = yield this.get('filtersForm');\n const filteredEquipments = yield this.get('filteredEquipments');\n\n const {\n setEventsList,\n setEventsNumber,\n setEquipmentInDetail,\n setLinkedArea,\n } = this.actions;\n\n if (\n filter.container__area__name != null &&\n filter.container__area__name !== ''\n ) {\n if (\n getAreaByName(filter.container__area__name, areasList) != null &&\n (linkedArea == null ||\n (linkedArea != null &&\n linkedArea.name !== filter.container__area__name))\n ) {\n yield put(\n setLinkedArea(\n getAreaByName(filter.container__area__name, areasList)\n )\n );\n }\n }\n\n if (filter.container__uuid != null && filter.container__uuid !== '') {\n if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) !=\n null &&\n (equipmentInDetail == null ||\n (equipmentInDetail != null &&\n equipmentInDetail.uuid !== filter.container__uuid))\n ) {\n yield put(\n setEquipmentInDetail(\n getContainerByUUID(filter.container__uuid, filteredEquipments)\n )\n );\n } else if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) ==\n null &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n } else if (\n (filter.container__uuid == null || filter.container__uuid === '') &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n\n if (equipmentInDetail) {\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n let fillLevel;\n\n switch (filter.fill_level) {\n case 'less':\n fillLevel = {\n container__fill_level__lte: 25,\n };\n break;\n case 'between':\n fillLevel = {\n container__fill_level__gte: 25,\n container__fill_level__lte: 50,\n };\n break;\n case 'between_2':\n fillLevel = {\n container__fill_level__gte: 50,\n container__fill_level__lte: 75,\n };\n break;\n case 'greater':\n fillLevel = {\n container__fill_level__gte: 75,\n };\n break;\n default:\n fillLevel = {};\n }\n\n const commonParams = {\n ...filter,\n ...fillLevel,\n container: equipmentInDetail.id,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-datetime',\n };\n\n let eventsRes = yield call(axios.get, EVENTSURL, {\n params: commonParams,\n });\n const events = eventsRes.data.results;\n\n yield put(setEventsList(events));\n yield put(setEventsNumber(events.length));\n } catch (error) {\n console.log({ error });\n yield put(setEventsList([]));\n yield put(setEventsNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n } else {\n yield put(setEventsList(null));\n yield put(setEventsNumber(0));\n }\n },\n\n *fetchMaintenances() {\n yield delay(500);\n const linkedArea = yield this.get('linkedArea');\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n let filter = yield this.get('filter');\n const filtersForm = yield this.get('filtersForm');\n const areasList = yield this.get('areasList');\n const filteredEquipments = yield this.get('filteredEquipments');\n\n const {\n setMaintenancesList,\n setMaintenancesNumber,\n setEquipmentInDetail,\n setLinkedArea,\n } = this.actions;\n\n if (\n filter.container__area__name != null &&\n filter.container__area__name !== ''\n ) {\n if (\n getAreaByName(filter.container__area__name, areasList) != null &&\n (linkedArea == null ||\n (linkedArea != null &&\n linkedArea.name !== filter.container__area__name))\n ) {\n yield put(\n setLinkedArea(\n getAreaByName(filter.container__area__name, areasList)\n )\n );\n }\n }\n\n if (filter.container__uuid != null && filter.container__uuid !== '') {\n if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) !=\n null &&\n (equipmentInDetail == null ||\n (equipmentInDetail != null &&\n equipmentInDetail.uuid !== filter.container__uuid))\n ) {\n yield put(\n setEquipmentInDetail(\n getContainerByUUID(filter.container__uuid, filteredEquipments)\n )\n );\n } else if (\n getContainerByUUID(filter.container__uuid, filteredEquipments) ==\n null &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n } else if (\n (filter.container__uuid == null || filter.container__uuid === '') &&\n equipmentInDetail != null\n ) {\n yield put(setEquipmentInDetail(null));\n }\n\n if (equipmentInDetail) {\n try {\n const date_after = filtersForm.start.value.format(API_DATE_FORMAT);\n const date_before = filtersForm.end.value.format(API_DATE_FORMAT);\n\n const commonParams = {\n ...filter,\n container__id: equipmentInDetail.id,\n date_after: moment(date_after).toISOString(),\n date_before: moment(date_before).endOf('day').toISOString(),\n ordering: '-datetime',\n };\n\n let maintenancesRes = yield call(axios.get, MAINTENANCESURL, {\n params: commonParams,\n });\n const maintenances = maintenancesRes.data.results;\n\n yield put(setMaintenancesList(maintenances));\n yield put(setMaintenancesNumber(maintenances.length));\n } catch (error) {\n console.log(error);\n yield put(setMaintenancesList([]));\n yield put(setMaintenancesNumber(0));\n yield put(setEquipmentInDetail(null));\n }\n } else {\n yield put(setMaintenancesList(null));\n yield put(setMaintenancesNumber(0));\n }\n },\n\n *fetchOccurrences() {},\n\n *handle(message) {\n const { fetchMaintenancesList, fetchEquipmentInDetailNoFetchs } =\n this.actions;\n const equipmentInDetail = yield this.get('equipmentInDetail');\n\n if (message.event_type === 'status') {\n let temp = { ...message };\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n toast.info(temp.message, {\n position: toast.POSITION.TOP_RIGHT,\n delay: 200,\n id: message_id ? `uniqueStatusMessage${message_id}` : null,\n });\n } else if (message.event_type === 'event' && message.content) {\n if (message.event_type === 'event') {\n const message_id =\n message.content && message.content.id ? message.content.id : null;\n\n if (\n message.content != null &&\n (message.content.type === 'drop' ||\n message.content.type === 'maintenance') &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueDropMessage${message_id}` : null,\n }\n );\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n } else if (\n message.content &&\n message.content.type === 'pick' &&\n message.type === 'new'\n ) {\n toast.info(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniquePickMessage${message_id}` : null,\n }\n );\n\n yield put(fetchMaintenancesList());\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n if (\n equipmentInDetail != null &&\n message.content.container != null &&\n equipmentInDetail.id === message.content.container.id\n ) {\n yield put(fetchEquipmentInDetailNoFetchs(equipmentInDetail));\n }\n } else if (message.content && message.content.type === 'alert') {\n toast.warn(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id ? `uniqueAlertMessage${message_id}` : null,\n }\n );\n } else if (message.content && message.content.type === 'error') {\n if (message.content.status === 'closed') {\n toast.success(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n } else {\n toast.error(\n ,\n {\n position: toast.POSITION.TOP_RIGHT,\n toastId: message_id\n ? `uniqueErrorMessage${message_id}`\n : null,\n }\n );\n }\n }\n }\n }\n },\n },\n});\n","import React from \"react\";\nimport moment from \"moment\";\nimport StyledProgressBar from \"components/StyledProgressBar\";\nimport styled from \"styled-components\";\n\nexport const columns = [\n {\n label: \"map.address\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"address\",\n render: function (data) {\n return (\n \n {data.address ? data.address : \"-\"}\n \n );\n },\n minWidth: \"400px\",\n },\n {\n label: \"table.event\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"type\",\n render: function (data, { t }) {\n return (\n {t(`notification.${data.type}`)}\n );\n },\n width: 180,\n },\n {\n label: \"table.fill_level\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"fillLevel\",\n render: function (data) {\n return (\n
\n \n
\n );\n },\n width: 220,\n },\n {\n label: \"table.date\",\n\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n prop: \"date\",\n render: function (data) {\n return (\n \n {moment(data.date).format(\"DD/MM/YY HH:mm\")}\n \n );\n },\n width: 200,\n },\n {\n label: \"table.user\",\n renderHeader: function ({ t, ...column }) {\n return t(column.label);\n },\n sortable: true,\n render: function (data) {\n return {data.user};\n },\n width: 180\n },\n];\n\nconst EllipsisDiv = styled.div`\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;","/**\n * Clients Scene\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic, { INTERVAL_FORM_DEFAULTS } from \"./logic\";\nimport styled from \"styled-components\";\nimport { Layout, Breadcrumb } from \"element-react\";\nimport ContainerMapMaintenances from \"containers/ContainerMapMaintenances\";\nimport { columns } from \"./columns\";\nimport { withTranslation } from \"react-i18next\";\nimport { Theme } from \"globalStyles\";\n\nimport StyledTable from \"components/StyledTable\";\nimport StyledButton from \"components/StyledButton\";\nimport ToggleFilter from \"components/ToggleFilter\";\nimport ResponsiveHandler from \"components/ResponsiveHandler\";\nimport StyledSelect from \"components/StyledSelect\";\n\nimport IntervalPicker from \"containers/IntervalPicker\";\nimport { getIntervalText } from \"utils\";\n\nconst intervalOptions = [\n {\n value: \"day\",\n label: \"day\",\n },\n {\n value: \"month\",\n label: \"month\",\n },\n {\n value: \"year\",\n label: \"year\",\n },\n];\n\nclass Containers extends Component {\n constructor(props) {\n super(props);\n // https://stackoverflow.com/a/61346857/15423901\n this.setState = this.setState.bind(this);\n this._autocompleteRef = null;\n this._areaAutocompleteRef = null;\n }\n\n state = {\n focusedInput: null,\n filtersWidth: 20,\n inputWidth: \"140px\",\n triggerSet: false,\n changedForm: null,\n };\n\n componentDidMount() {\n this.setState({\n changedForm: this.props.filtersForm,\n });\n }\n\n autoCompleteFetch = (queryString) => {\n if (this._autocompleteRef) {\n clearTimeout(this._autocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._autocompleteRef = setTimeout(function () {\n search(queryString, null, \"container\");\n }, 500);\n };\n\n areaAutoCompleteFetch = (queryString) => {\n if (this._areaAutocompleteRef) {\n clearTimeout(this._areaAutocompleteRef);\n }\n\n const self = this;\n const { search } = self.actions;\n this._areaAutocompleteRef = setTimeout(function () {\n search(queryString, null, \"area\");\n }, 500);\n };\n\n render() {\n const {\n setLinkedArea,\n setEquipmentInDetail,\n resetFilter,\n changeFilter,\n setFiltersForm,\n resetFiltersForm,\n } = this.actions;\n\n const {\n areasList,\n linkedArea,\n filteredEquipments,\n equipmentInDetail,\n historyList,\n filter,\n filtersForm,\n t,\n responsiveHandlers,\n filteredEquipmentsNumber,\n searchResults,\n searchLoading,\n fillLevelFilterOptions,\n searchAreaResults,\n searchAreaLoading,\n } = this.props;\n\n const { filtersWidth, inputWidth, triggerSet, changedForm } = this.state;\n\n const areaEquipments = filteredEquipments ? filteredEquipments.reduce(\n (x, y) => (x.findIndex((e) => e.id === y.id) < 0 ? [...x, y] : x),\n []\n ) : filteredEquipments;\n\n return (\n \n \n \n \n \n \n {\n setLinkedArea(null);\n setEquipmentInDetail(null);\n }}\n >\n {t(\"containers.title\")}\n \n \n {linkedArea && (\n \n {\n setEquipmentInDetail(null);\n }}\n >\n {linkedArea.name}\n \n \n )}\n {equipmentInDetail && (\n {equipmentInDetail.name}\n )}\n \n \n \n \n \n changeFilter(\"container__area__name\", event)\n }\n remoteMethod={this.areaAutoCompleteFetch}\n options={searchAreaResults}\n loading={searchAreaLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea != null}\n >\n changeFilter(\"container__uuid\", event)}\n value={filter.container__uuid}\n remoteMethod={this.autoCompleteFetch}\n triggerOnFocus={false}\n options={searchResults}\n loading={searchLoading}\n remote={true}\n clearable={true}\n disabled={linkedArea == null}\n >\n changeFilter(\"fill_level\", event)}\n remoteMethod={this.userAutoCompleteFetch}\n value={filter.fill_level}\n options={fillLevelFilterOptions}\n remote={true}\n clearable={true}\n >\n \n {changedForm != null && (\n \n this.setState({ triggerSet: false })}\n state={{ changedForm }}\n setState={this.setState}\n />\n \n )}\n\n \n {\n resetFilter();\n setLinkedArea(null);\n }}\n >\n {t(\"clear_filters\")}\n \n this.setState({ triggerSet: true })}\n >\n {t(\"apply\")}\n \n \n \n \n \n\n \n \n setLinkedArea(area)}\n areaEquipments={areaEquipments}\n globalNumberOfContainers={filteredEquipmentsNumber}\n equipmentInDetail={equipmentInDetail}\n setEquipmentInDetail={(equipment) => {\n setEquipmentInDetail(equipment);\n }}\n />\n \n \n\n \n \n \n {t(\"containers.history\")}\n 768\n ? \"calc(55vh - 64px - 36px - 48px - 4rem - 42px - 1px )\"\n : \"\"\n }\n columns={columns.map((column) => ({ t, ...column }))}\n data={\n historyList\n ? historyList.map((equipment) => ({ ...equipment }))\n : []\n }\n rowClassName={(row) =>\n equipmentInDetail &&\n row.container &&\n equipmentInDetail.id === row.container.id &&\n \"active\"\n }\n emptyText={\n !equipmentInDetail ? t(\"select_container\") : t(\"no_data\")\n }\n />\n \n \n \n \n );\n }\n}\n\nexport default withTranslation()(ResponsiveHandler(Logic(Containers)));\n\nconst Wrapper = styled.div``;\n\nconst CustomLayoutSecondaryRow = styled(Layout.Row)`\n margin-left: 0px !important;\n margin-right: 0px !important;\n margin-top: ${(props) => props.marginTop};\n min-height: ${(props) => props.minHeight};\n`;\n\nconst FlexWrapper = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n`;\n\nconst SelectivePaddingColNoFixedHeight = styled(Layout.Col)`\n display: flex;\n justify-content: ${(props) => props.justifyContent};\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n float: ${(props) => props.float} !important;\n`;\n\nconst SelectivePaddingColNoFixedHeightWithBoxShadow = styled(\n SelectivePaddingColNoFixedHeight\n)`\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04);\n`;\n\nconst NoPaddingCol = styled(Layout.Col)`\n padding-left: 0px !important;\n padding-right: 0px !important;\n\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n\n &.el-col-24 {\n padding: 0 !important;\n height: calc(100% - 3rem);\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-24{\n padding: ${(props) => props.padding} !important;\n padding-left: ${(props) => props.paddingLeft} !important;\n padding-right: ${(props) => props.paddingRight} !important;\n }\n `}\n`;\n\nconst SecondRowWrapper = styled.div`\n width: 100%;\n display: flex;\n gap: 1rem;\n justify-content: center;\n`;\n\nconst CustomBreakcrumb = styled(Breadcrumb)`\n .el-breadcrumb__item > span {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n\n .el-breadcrumb__separator {\n font-size: 20px !important;\n line-height: 20px !important;\n font-weight: 700 !important;\n }\n`;\n\nconst ButtonWrapper = styled(FlexWrapper)`\n display: grid;\n grid-template-columns: 1fr 1fr;\n column-gap: 8px;\n row-gap: 8px;\n grid-column: span 2;\n\n ${({ theme }) => theme.desktop`\n display flex;\n `}\n`;\n\nconst BreakcrumbWrapper = styled.div`\n display: flex;\n flex-direction: column;\n ${({ theme }) => theme.desktop`\n flex-direction: row;\n `}\n`;\n\nconst BreadcrumbWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-4 {\n width: 100%;\n margin-bottom: 8px;\n padding: 0 !important;\n }\n\n ${({ theme }) => theme.smallDesktop`\n &.el-col-4{\n margin-bottom: 8px;\n padding: 0 16px 0 0 !important;\n\n }\n `}\n`;\nconst FiltersWrapper = styled(SelectivePaddingColNoFixedHeight)`\n &.el-col-20 {\n width: 100%;\n display: grid;\n grid-template-columns: repeat(2, minmax(0, 1fr));\n justify-content: left;\n row-gap: 8px;\n column-gap: 8px;\n padding: 0 !important;\n }\n ${({ theme }) => theme.smallDesktop`\n &.el-col-20{\n display: grid;\n }\n `}\n\n ${({ theme }) => theme.desktop`\n &.el-col-20{\n display: flex;\n justify-content: flex-end;\n width: 83.33333%;\n padding-left: 14px !important;\n }\n `}\n`;\n\nconst TableName = styled.span`\n color: ${Theme.primaryColor};\n font-size: 1rem;\n font-weight: 800;\n line-height: 22px;\n`;","/**\n * Router\n * Add new routes here\n */\nimport toArray from 'lodash/toArray'\n\n// Import page components bellow here\n// Keep them organized as the routes object\nimport NotFound from 'scenes/NotFound'\n// import Equipments from 'scenes/Equipments'\n// import Clients from 'scenes/Clients'\nimport Login from 'scenes/Login'\nimport Deposits from 'scenes/Deposits'\nimport Maintenances from 'scenes/Maintenances'\nimport Collects from 'scenes/Collects'\nimport DashboardWrapper from 'scenes/DashboardWrapper'\nimport Alerts from 'scenes/Alerts'\nimport Tickets from 'scenes/Tickets'\nimport Transactions from 'scenes/Transactions'\nimport RecoverPassword from 'scenes/RecoverPassword'\nimport PasswordSet from 'scenes/PasswordSet'\nimport OccurrencesWrapper from 'scenes/OccurrencesWrapper'\nimport Containers from './scenes/Containers'\n\n// Define routes here\nexport const Routes = {\n Login: {\n key: 'login',\n name: 'login',\n path: '/login/',\n component: Login,\n exact: true,\n admin_only: false\n },\n\n RecoverPassword: {\n key: 'recoverpassword',\n name: 'recoverpassword',\n path: '/password/reset/',\n component: RecoverPassword,\n exact: true,\n admin_only: false\n },\n\n passwordSet: {\n key: 'passwordset',\n name: 'passwordset',\n path: '/password/set/',\n component: PasswordSet,\n exact: true,\n admin_only: false\n },\n\n containers: {\n key: 'containers',\n name: 'containers',\n path: '/containers/',\n component: Containers,\n exact: true,\n admin_only: true\n },\n\n deposits: {\n key: 'deposits',\n name: 'deposits',\n path: '/deposits/',\n component: Deposits,\n exact: true,\n admin_only: true\n },\n\n collects: {\n key: 'collects',\n name: 'collects',\n path: '/collects/',\n component: Collects,\n exact: true,\n admin_only: true\n\n },\n\n maintenances: {\n key: 'maintenances',\n name: 'maintenances',\n path: '/maintenances/',\n component: Maintenances,\n exact: true,\n admin_only: true\n\n },\n\n alerts: {\n key: 'alerts',\n name: 'alerts',\n path: '/alerts/',\n component: Alerts,\n exact: true,\n admin_only: true\n\n },\n\n tickets: {\n key: 'errors',\n name: 'errors',\n path: '/errors/',\n component: Tickets,\n exact: true,\n admin_only: true\n\n },\n\n DashboardWrapper: {\n key: 'dashboard',\n name: 'dashboard',\n path: '/',\n component: DashboardWrapper,\n exact: true,\n admin_only: false\n\n },\n\n Transactions: {\n key: 'transactions',\n name: 'transactions',\n path: '/transactions/',\n component: Transactions,\n exact: true,\n admin_only: false\n\n },\n\n Occurrences: {\n key: 'occurrences',\n name: 'occurrences',\n path: '/occurrences/',\n component: OccurrencesWrapper,\n crumb: ['inicio']\n },\n\n notfound: {\n key: 'notfound',\n name: 'Página não encontrada',\n path: '*',\n component: NotFound,\n admin_only: false\n\n }\n}\n\n// Maps don't work on object convert it to an array\nexport default toArray(Routes)\n","/**\n * Container Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport { ADDITIONAL_FEATURES } from \"config\";\nimport styled from \"styled-components\";\n\nexport default ({ children, ...props }) => (\n {children}\n);\n\nconst Wrapper = styled.div`\n margin: 0 auto;\n padding: 32px 16px;\n \n ${ADDITIONAL_FEATURES.includes(\"funding_footer\") && 'margin-bottom: 4rem'}\n`;\n","/**\n * CloseButton Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React from \"react\";\nimport styled from \"styled-components\";\nimport { Theme } from \"globalStyles\";\nimport CrossIcon from \"icons/CrossIcon\";\n\nexport default ({ children, ...props }) => (\n \n
\n \n);\n\nconst Wrapper = styled.div`\n position: absolute;\n top: 0.5rem;\n right: 0.5rem;\n`;\n","/**\n * Sidebar Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport { kea } from 'kea'\n//import { put } from 'redux-saga/effects'\n//import { delay } from 'redux-saga'\n//import { } from 'config'\n//import { } from 'utils'\n//import { } from './utils'\n\n//import PropTypes from 'prop-types'\n//import * as Check from 'validations'\n\n\nexport default kea({\n path: () => ['scenes', 'containers', 'Sidebar'],\n\n actions: () => ({\n\n }),\n\n reducers: ({ actions }) => ({\n\n }),\n\n takeLatest: ({ actions, workers }) => ({\n\n }),\n\n workers: {\n\n }\n\n})\n\n","/**\n * SidebarSection Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport { kea } from 'kea'\n//import { put } from 'redux-saga/effects'\n//import { delay } from 'redux-saga'\n//import { } from 'config'\n//import { } from 'utils'\n//import { } from './utils'\n\n//import PropTypes from 'prop-types'\n//import * as Check from 'validations'\n\n\nexport default kea({\n path: () => ['scenes', 'containers', 'SidebarSection'],\n\n actions: () => ({\n\n }),\n\n reducers: ({ actions }) => ({\n\n }),\n\n takeLatest: ({ actions, workers }) => ({\n\n }),\n\n workers: {\n\n }\n\n})\n\n","/**\n * Brand Component\n *\n * @author Gonçalo Santos \n */\nimport React from 'react'\nimport styled from 'styled-components'\n\n\nconst Arrow = props => ({\n render() {\n return (\n \n \n < path d=\"M121.3 34.6c-1.6-1.6-4.2-1.6-5.8 0l-51 51.1-51.1-51.1c-1.6-1.6-4.2-1.6-5.8 0-1.6 1.6-1.6 4.2 0 5.8l53.9 53.9c.8.8 1.8 1.2 2.9 1.2 1 0 2.1-.4 2.9-1.2l53.9-53.9c1.7-1.6 1.7-4.2.1-5.8z\" />\n \n \n\n )\n }\n})\n\n\nexport default Arrow\n\nconst Wrapper = styled.div`\n margin:0px auto 0px auto;\n margin:${props => props.margin};\n margin-left:${props => props.marginleft};\n`\n\n","/**\n * Sidebarsection Container\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic from \"./logic\";\nimport styled from \"styled-components\";\nimport posed from \"react-pose\";\nimport Arrow from \"icons/Arrow\";\nimport { Theme } from \"globalStyles\";\nimport { withTranslation } from \"react-i18next\";\n\nclass SidebarSection extends Component {\n render() {\n const { active, path, name, subsections, procClick, icon, t } = this.props;\n const Icon = icon;\n return (\n \n {\n if (subsections) {\n procClick(active ? \"\" : name);\n } else {\n procClick(name);\n this.props.history.push(path);\n }\n }}\n justifyContent={subsections ? \"space-between\" : \"center\"}\n active={active}\n pose={active ? \"active\" : \"notActive\"}\n >\n \n \n {icon && }\n \n {t(name)}\n \n {subsections && (\n \n )}\n \n \n );\n }\n}\n\nexport default withTranslation()(Logic(SidebarSection));\n\nconst Wrapper = styled.div``;\n\nconst ClickArea = styled.div`\n height: 3rem;\n\n overflow: hidden;\n justify-content: ${(props) => props.justifyContent};\n cursor: pointer;\n display: flex;\n flex-direction: row;\n padding: 10px 15px;\n align-items: center;\n justify-content: flex-start;\n`;\n\nconst ClickAreaText = styled.div`\n text-align: center;\n color: ${Theme.textOnPrimary};\n font-size: 16px;\n line-height: 16px;\n font-weight: 700;\n text-align: left;\n white-space: nowrap;\n`;\n\nconst ClickAreaPosed = posed(ClickArea)({\n hoverable: true,\n hover: {\n background: Theme.darkPrimaryColor,\n },\n active: {\n background: Theme.darkPrimaryColor,\n transition: { duration: 300 },\n },\n notActive: {\n background: Theme.primaryColor,\n transition: { duration: 300 },\n },\n});\n\nconst MarginDiv = styled.div`\n display: flex;\n align-items: center;\n flex-direction: row;\n min-width: 3rem;\n height: 3rem;\n justify-content: flex-start;\n`;\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n )\n}\n\nexport default SvgComponent\n","// import User from 'icons/User'\nimport ContainerIcon from './icons/ContainerIcon'\nimport Deposit from './icons/Deposit'\nimport Pick from './icons/Pick'\nimport Maintenance from './icons/Maintenance'\nimport Alert from './icons/Alert'\nimport ErrorIcon from './icons/ErrorIcon'\nimport Dashboard from './icons/Dashboard'\nimport HistoryIcon from './icons/HistoryIcon'\nimport Occurrences from './icons/Occurrences'\n\nconst SECTIONS = [\n {\n name: 'dashboard.title',\n key: 'dashboard',\n icon: Dashboard,\n path: '/',\n admin_only: false\n },\n {\n name: 'containers.title',\n key: 'containers',\n icon: ContainerIcon,\n path: '/containers/',\n admin_only: true\n },\n {\n name: 'deposits.title',\n key: 'deposits',\n icon: Deposit,\n path: '/deposits/',\n admin_only: true\n },\n {\n name: 'collects.title',\n key: 'collects',\n icon: Pick,\n path: '/collects/',\n admin_only: true\n },\n {\n name: 'maintenances.title',\n key: 'maintenances',\n icon: Maintenance,\n path: '/maintenances/',\n admin_only: true\n },\n {\n name: 'transactions.title',\n key: 'transactions',\n icon: HistoryIcon,\n path: '/transactions/',\n admin_only: false\n },\n {\n name: 'alerts.title',\n key: 'alerts',\n icon: Alert,\n path: '/alerts/',\n admin_only: true\n },\n {\n name: 'errors.title',\n key: 'errors',\n icon: ErrorIcon,\n path: '/errors/',\n admin_only: true\n },\n {\n name: 'occurrences.title',\n key: 'occurrences',\n icon: Occurrences,\n path: '/occurrences/',\n admin_only: false\n }\n]\n\nexport default SECTIONS\n","import * as React from \"react\";\n\nfunction SvgComponent(props) {\n return (\n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n )\n}\n\nexport default SvgComponent\n","/**\n * Sidebar Container\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic from \"./logic\";\nimport styled from \"styled-components\";\nimport SidebarSection from \"containers/SidebarSection\";\n\nimport SECTIONS from \"sections\";\nimport { withRouter } from \"react-router-dom\";\nimport posed from \"react-pose\";\nimport { Theme } from \"globalStyles\";\n\nimport { isMobile } from \"react-device-detect\";\n\nimport { ADDITIONAL_FEATURES } from \"config\";\n\nclass Sidebar extends Component {\n state = {\n activeSection: \"\",\n open: false,\n };\n\n myRef = React.createRef();\n\n procClick = (name) => {\n this.setState({ activeSection: name });\n };\n\n componentDidMount() {\n document.addEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n componentWillUnmount() {\n document.removeEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n componentDidUpdate(prevProps, prevState, snapshot) {\n if (prevState.activeSection !== this.state.activeSection) {\n this.setState({ open: false });\n }\n }\n\n setWrapperRef = (node) => {\n this.wrapperRef = node;\n };\n\n handleClick = () => {\n this.setState({ open: !this.state.open });\n };\n\n handleClickOutside = (event) => {\n if (this.wrapperRef && !this.wrapperRef.contains(event.target)) {\n this.setState({ open: false });\n }\n };\n\n render() {\n const { open } = this.state;\n\n \n return (\n !isMobile && this.setState({ open: true })}\n onMouseLeave={() => !isMobile && this.setState({ open: false })}\n onClick={() => isMobile && this.handleClick()}\n pose={open ? \"open\" : \"closed\"}\n ref={this.setWrapperRef}\n >\n \n \n {SECTIONS.filter((sec) => {\n if (\n !ADDITIONAL_FEATURES.includes(\"trader_switch\") &&\n this.props.user.isTrader && sec.key !== \"transactions\"\n ) {\n return null;\n }\n if(!ADDITIONAL_FEATURES.includes(sec.key)){\n return null\n }\n\n if (\n ADDITIONAL_FEATURES.includes(sec.key) && \n sec.admin_only &&\n this.props.user &&\n !this.props.user.isAdmin\n ) {\n return null;\n }\n\n return sec;\n }).map((section, index) => (\n \n ))}\n \n \n \n );\n }\n}\n\nexport default withRouter(Logic(Sidebar));\n\nconst Wrapper = styled.div`\n width: calc(3rem + 15px);\n height: calc(100% - 4rem);\n position: fixed;\n bottom: 0;\n background: ${Theme.primaryColor};\n z-index: 10000001;\n overflow: hidden;\n box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 0.5rem;\n`;\n\nconst WrapperPosed = posed(Wrapper)({\n open: {\n width: \"256px\", //atrofia com max-content,\n transition: { duration: 225 },\n },\n closed: {\n width: \"calc(3rem + 15px)\",\n transition: { duration: 225 },\n },\n});\n\nconst SectionsWrapper = styled.div`\n transition: all 0.5s;\n`;\nconst FlexColumns = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n height: 100%;\n`;\n","/**\n * Navbar Container Logic\n * Please write a description\n *\n * @author Your Name \n */\n\nimport { kea } from \"kea\";\nimport { put, call } from \"redux-saga/effects\";\nimport { BASE_API_URL } from \"config\";\nimport axios from \"axios\";\nimport { toast } from \"react-toastify\";\n\n//import { delay } from 'redux-saga'\n//import { } from 'config'\n//import { } from 'utils'\n//import { } from './utils'\nimport AppLogic from \"containers/App/logic\";\n\nimport PropTypes from \"prop-types\";\n//import * as Check from 'validations'\nconst NOTIFICATIONSURL = BASE_API_URL + \"users/notifications/\";\nconst USERINFOURL = BASE_API_URL + \"users/me/myinfo/\";\n\nexport default kea({\n path: () => [\"scenes\", \"containers\", \"Navbar\"],\n\n connect: {\n props: [AppLogic, [\"user\"]],\n actions: [],\n },\n\n actions: () => ({\n getNotifications: () => true,\n setNotifications: (notifications) => ({ notifications }),\n setNotificationsTotal: (total) => ({ total }),\n markAsRead: (id) => ({ id }),\n markAllAsRead: () => true,\n getUserInformation: () => true,\n finishUserInfo: () => true,\n\n setPagination: (pag) => ({ pag }),\n reset: () => true,\n }),\n\n reducers: ({ actions }) => ({\n notifications: [\n [],\n PropTypes.array,\n {\n [actions.setNotifications]: (state, { notifications }) => notifications,\n [actions.reset]: () => [],\n },\n ],\n notificationsTotal: [\n 0,\n PropTypes.number,\n {\n [actions.setNotificationsTotal]: (state, { total }) => total,\n [actions.reset]: () => 0,\n },\n ],\n pagination: [\n { page: 1, limit: 5 },\n PropTypes.object,\n {\n [actions.setPagination]: (state, { pag }) => pag,\n [actions.getNotifications]: () => ({ page: 1, limit: 5 }),\n [actions.reset]: () => ({ page: 1, limit: 5 }),\n },\n ],\n gettingUserInformation: [\n false,\n PropTypes.bool,\n {\n [actions.getUserInformation]: () => true,\n [actions.finishUserInfo]: () => false,\n [actions.reset]: () => false,\n },\n ],\n }),\n\n selectors: ({ selectors }) => ({\n unreadNotifications: [\n () => [selectors.notifications],\n (notifications) => notifications.filter((el) => el.read === false),\n PropTypes.array,\n ],\n }),\n\n start: function* () {\n const { getNotifications } = this.actions;\n yield put(getNotifications());\n },\n\n takeLatest: ({ actions, workers }) => ({\n [actions.getNotifications]: workers.getNotifications,\n [actions.setPagination]: workers.getNotifications,\n [actions.markAllAsRead]: workers.markAllAsRead,\n [actions.markAsRead]: workers.markAsRead,\n [actions.getUserInformation]: workers.getUserInformation,\n }),\n\n workers: {\n *getUserInformation() {\n const { finishUserInfo } = this.actions;\n const { t } = this.props;\n try {\n const response = yield call(axios.get, USERINFOURL);\n if (response) {\n toast.success(t(\"user_information.success\"), {\n position: toast.POSITION.TOP_RIGHT,\n });\n }\n } catch (err) {\n console.log({ err });\n if (\n err != null && \n err.response != null &&\n err.response.data != null &&\n err.response.data.message != null\n ) {\n toast.error(err.response.data.message, {\n position: toast.POSITION.TOP_RIGHT,\n });\n } else {\n toast.error(t(\"user_information.error\"), {\n position: toast.POSITION.TOP_RIGHT,\n });\n }\n } finally {\n yield put(finishUserInfo());\n }\n },\n\n *getNotifications() {\n const user = yield this.get(\"user\");\n const pagination = yield this.get(\"pagination\");\n\n const { setNotifications, setNotificationsTotal } = this.actions;\n if (user != null) {\n try {\n const response = yield call(axios.get, NOTIFICATIONSURL, {\n params: {\n page: pagination.page,\n page_size: pagination.limit,\n ordering: \"-created_at\",\n user__id: user.id\n },\n });\n\n if (response && response.data && response.data.results) {\n if (pagination.page > 1) {\n const notifications = yield this.get(\"notifications\");\n yield put(\n setNotifications([...notifications, ...response.data.results])\n );\n } else {\n yield put(setNotifications(response.data.results));\n }\n yield put(setNotificationsTotal(response.data.results.length));\n } else {\n yield put(setNotifications([]));\n yield put(setNotificationsTotal(0));\n }\n } catch (err) {\n console.log({ err });\n yield put(setNotifications([]));\n yield put(setNotificationsTotal(0));\n }\n }\n },\n\n *markAllAsRead() {\n const notifications = yield this.get(\"notifications\");\n const { setNotifications } = this.actions;\n try {\n const copy = JSON.parse(JSON.stringify(notifications));\n copy.map((el) => ({ ...el, read: true }));\n yield put(setNotifications(copy));\n yield call(axios.get, `${NOTIFICATIONSURL}mark-all-as-read/`);\n } catch (err) {\n console.log(err);\n }\n },\n\n *markAsRead(action) {\n const notifications = yield this.get(\"notifications\");\n const { payload } = action;\n const { setNotifications } = this.actions;\n if (payload.id != null) {\n try {\n var foundIndex = notifications.findIndex(\n (el) => payload.id === el.id\n );\n\n const copy = JSON.parse(JSON.stringify(notifications));\n copy[foundIndex].read = true;\n yield put(setNotifications(copy));\n yield call(\n axios.get,\n `${NOTIFICATIONSURL}${payload.id}/mark-as-read/`\n );\n } catch (err) {\n console.log(err);\n }\n }\n },\n },\n});\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n )\n}\n\nexport default SvgComponent\n","/**\n * LanguageSwitch Component\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { useState, useEffect } from \"react\";\nimport styled from \"styled-components\";\nimport { useTranslation } from \"react-i18next\";\n\nimport PortugalIcon from \"icons/PortugalIcon\";\nimport UKIcon from \"icons/UKIcon\";\nexport default ({ children, ...props }) => {\n const { i18n } = useTranslation();\n const [isVisible, setIsVisible] = useState(false);\n\n const handleLanguage = (lng) => {\n i18n.changeLanguage(lng);\n localStorage.setItem(\"language\", lng)\n }\n\n useEffect(() => {\n if (isVisible) {\n document.body.style.overflow = \"hidden\";\n } else {\n document.body.style.overflow = \"\";\n }\n\n return () => {\n document.body.style.overflow = \"\";\n };\n }, [isVisible]);\n\n const renderFlags = () => {\n if (i18n.language === \"pt\") {\n return (\n \n handleLanguage(\"pt\")}>\n \n \n handleLanguage(\"en\")}>\n \n \n \n );\n } else {\n return (\n \n handleLanguage(\"en\")}>\n \n \n handleLanguage(\"pt\")}>\n \n \n \n );\n }\n };\n return (\n setIsVisible(!isVisible)}>\n {i18n.language === \"pt\" && }\n {i18n.language === \"en\" && }\n \n \n {renderFlags()}\n \n \n );\n};\n\nexport const Switch = styled.div`\n position: absolute;\n top: -5px;\n right: -5px;\n z-index: 150;\n\n opacity: ${({ isVisible }) => (isVisible ? 1 : 0)};\n visibility: ${({ isVisible }) => (isVisible ? \"visible\" : \"hidden\")};\n\n transition: all 0.2s;\n\n height: 100px;\n`;\n\nexport const SwitchContent = styled.div`\n height: ${({ isOpen }) => (isOpen ? 'auto' : '60px')};\n overflow: hidden;\n z-index: 10;\n\n display: flex;\n flex-direction: column;\n\n padding: 8px;\n border-radius: 40px;\n\n background-color: ${({ theme, isOpen }) =>\n isOpen ? theme.white : \"transparent\"};\n box-shadow: ${({ isOpen }) =>\n isOpen ? \"0 20px 24px 0 rgba(0, 0, 0, 0.1)\" : \"none\"};\n\n transition: all 200ms ease-in;\n`;\n\nexport const SwitchButton = styled.div`\n display: block;\n cursor: pointer;\n\n & > svg {\n display: block;\n }\n\n &:not(:first-child) {\n &::before {\n content: \"\";\n display: block;\n\n max-width: 100%;\n height: 1px;\n margin: 12px 4px;\n\n background: ${({ theme }) => theme.inactiveColor};\n opacity: 0.2;\n }\n }\n`;\n\nexport const BackgroundOverlay = styled.div`\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(17, 17, 17, 0.2);\n z-index: 30;\n\n opacity: ${({ isOpen }) => (isOpen ? 1 : 0)};\n visibility: ${({ isOpen }) => (isOpen ? \"visible\" : \"hidden\")};\n\n transition: all 100ms ease-in;\n`;\n\nconst IconWrapper = styled.div`\n cursor: pointer;\n margin-left: 1rem;\n\n height: 2rem;\n width: 2rem;\n\n display: flex;\n justify-content: center;\n align-items: center;\n\n position: relative;\n`;\n","/**\n * NotificationsDialog Component\n * Please write a description\n *\n * @author Your Name \n */\n import React from \"react\";\n import styled from \"styled-components\";\n import { Dialog } from \"element-react\";\n \n export default ({ children, ...props }) => (\n \n {children}\n \n );\n \n const Wrapper = styled(Dialog)`\n &.el-dialog--small {\n top: 80px !important;\n bottom: auto;\n \n margin-left: auto;\n width: 100%;\n max-width: calc(100vw - 4rem);\n\n left: 0;\n right: 0;\n margin: 0 auto;\n transform: translate(0, 0);\n\n ${({ theme }) => theme.smallDesktop`\n width: 400px;\n\n margin: 0;\n left: auto;\n right: 16px;\n transform: none;\n `}\n }\n .el-dialog__header {\n padding: 20px;\n }\n \n .el-dialog__body {\n \n padding: 0 20px 20px;\n\n overflow: scroll;\n min-height: 200px;\n\n max-height: calc(100vh - 80px - 64px - 200px);\n\n\n ${({ theme }) => theme.smallDesktop`\n max-height: 464px;\n `}\n }\n `;\n ","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\"\nimport { Theme } from \"globalStyles\";\n\nfunction SvgComponent(props) {\n return (\n \n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n \n \n \n )\n}\n\nexport default SvgComponent\n","import * as React from \"react\"\n\nfunction SvgComponent(props) {\n return (\n \n \n \n \n \n \n )\n}\n\nexport default SvgComponent\n","/**\n * Navbar Container\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport Logic from \"./logic\";\nimport styled, { css } from \"styled-components\";\nimport { Theme } from \"globalStyles\";\nimport { withTranslation } from \"react-i18next\";\nimport posed from \"react-pose\";\nimport SECTIONS from \"sections\";\nimport { SIMPLE_FEATURES, ADDITIONAL_FEATURES } from \"config\";\n\nimport { Link, withRouter } from \"react-router-dom\";\n\nimport { Loading } from \"element-react\";\n\nimport ResponsiveHandler from \"components/ResponsiveHandler\";\nimport LanguageSwitch from \"components/LanguageSwitch\";\nimport Dialog from \"components/Dialog\";\nimport StyledButton from \"components/StyledButton\";\nimport NotificationsDialog from \"components/NotificationsDialog\";\nimport { AnimatedArrow } from \"components/AnimatedArrow\";\n\nimport PortugalIcon from \"icons/PortugalIcon\";\nimport UKIcon from \"icons/UKIcon\";\nimport NotificationsIcon from \"icons/Notifications\";\nimport NotificationsNewIcon from \"icons/NotificationsNew\";\nimport Logo from \"icons/Logo\";\nimport LogoRayt from \"icons/LogoRayt\";\n\nimport moment from \"moment\";\n\nclass Navbar extends Component {\n state = {\n open: false,\n notificationsDialog: false,\n openSwitch: false,\n burgerOpen: false,\n userInformationOpen: false,\n };\n\n onPtFlagClick = () => {\n const { i18n } = this.props;\n i18n.changeLanguage(\"pt\");\n localStorage.setItem(\"language\", \"pt\");\n this.setState({ burgerOpen: false });\n };\n onEnFlagClick = () => {\n const { i18n } = this.props;\n i18n.changeLanguage(\"en\");\n localStorage.setItem(\"language\", \"en\");\n this.setState({ burgerOpen: false });\n };\n\n sectionsGenerator = () => {\n const { t } = this.props;\n\n return SECTIONS.filter((sec) => {\n if (\n !ADDITIONAL_FEATURES.includes(\"trader_switch\") &&\n this.props.user.isTrader &&\n sec.key !== \"transactions\"\n ) {\n return null;\n }\n if (!ADDITIONAL_FEATURES.includes(sec.key)) {\n return null;\n }\n\n if (\n ADDITIONAL_FEATURES.includes(sec.key) &&\n sec.admin_only &&\n this.props.user &&\n !this.props.user.isAdmin\n ) {\n return null;\n }\n\n return sec;\n }).map((section, index) => {\n const Icon = section.icon;\n return (\n {\n this.setState({ burgerOpen: false });\n this.props.history.push(section.path);\n }}\n >\n \n {t(section.name)}\n \n );\n });\n };\n\n componentDidUpdate(prevProps, prevState) {\n if (this.props.location.pathname === \"/login/\" && this.state.burgerOpen) {\n this.setState({ burgerOpen: false });\n }\n if (this.props.location !== prevProps.location && this.props.user != null) {\n const { getNotifications } = this.actions;\n getNotifications();\n }\n if (\n this.props.gettingUserInformation !== prevProps.gettingUserInformation &&\n this.props.gettingUserInformation === false\n ) {\n this.setState({\n userInformationOpen: false,\n });\n }\n }\n\n render() {\n const {\n t,\n i18n,\n user,\n logout,\n responsiveHandlers,\n unreadNotifications,\n notifications,\n pagination,\n notificationsTotal,\n gettingUserInformation,\n } = this.props;\n const { markAsRead, markAllAsRead, setPagination, getUserInformation } =\n this.actions;\n const { burgerOpen, open, notificationsDialog, userInformationOpen } =\n this.state;\n return (\n \n \n \n \n {SIMPLE_FEATURES ? (\n \n ) : (\n \n )}\n \n \n {/* https://github.com/jonsuh/hamburgers */}\n {responsiveHandlers.isMobile || responsiveHandlers.isTablet ? (\n user != null ? (\n \n \n this.setState({ notificationsDialog: true })\n }\n >\n {unreadNotifications.length > 0 ? (\n \n ) : (\n \n )}\n \n this.setState({ burgerOpen: !burgerOpen })}\n >\n \n
\n
\n
\n \n \n
\n ) : (\n \n )\n ) : (\n \n {user != null && (\n this.setState({ open: true })}\n onMouseLeave={() => this.setState({ open: false })}\n >\n \n {user && user.fullName\n ? `${user.fullName}`\n : user && user.username}\n \n \n \n {!user.isAdmin && !user.isTrader && (\n {\n this.setState({ userInformationOpen: true });\n }}\n >\n \n {t(\"user_information.button\")}\n \n \n )}\n {\n logout();\n }}\n >\n {t(\"logout\")}\n \n \n \n )}\n {user != null && (\n \n this.setState({ notificationsDialog: true })\n }\n >\n {unreadNotifications.length > 0 ? (\n \n ) : (\n \n )}\n \n )}\n \n \n )}\n
\n
\n {(responsiveHandlers.isMobile || responsiveHandlers.isTablet) &&\n burgerOpen &&\n user != null && (\n \n \n \n {user && user.fullName\n ? `${user.fullName}`\n : user && user.username}\n \n \n {user != null && this.sectionsGenerator()}\n \n {t(\"logout\")}\n \n \n \n \n \n\n \n \n \n \n \n )}\n {user != null && notifications != null && notificationsDialog && (\n {\n this.setState({\n notificationsDialog: false,\n });\n markAllAsRead();\n }}\n title={\n \n \n {t(\"notifications.title\")}\n \n {unreadNotifications.length > 0 && (\n \n {t(\"notifications.mark_all\")}\n \n )}\n \n }\n >\n {notifications.map((el) => (\n el.read === false && markAsRead(el.id)}\n >\n \n {el.title ? el.title : t(\"notification.title\")}\n \n \n {el.createdAt != null && moment(el.createdAt).isValid()\n ? moment(el.createdAt).format(\"DD/MM/YY HH:mm\")\n : \"\"}\n \n \n {el.message != null ? el.message : \"\"}\n \n \n ))}\n {notifications.length === 0 && (\n \n \n {t(\"notifications.no_notifications\")}\n \n \n )}\n {notificationsTotal > notifications.length && (\n \n \n setPagination({\n ...pagination,\n page: pagination.page + 1,\n })\n }\n >\n {t(\"notifications.load_more\")}\n \n \n )}\n \n )}\n \n {userInformationOpen && (\n {\n this.setState({\n userInformationOpen: false,\n });\n }}\n size={\"medium\"}\n title={t(\"user_information.title\")}\n >\n {!gettingUserInformation && (\n \n {t(\"user_information.description\")}\n \n \n this.setState({\n userInformationOpen: false,\n })\n }\n type=\"seconday\"\n disabled={gettingUserInformation}\n >\n {t(\"cancel\")}\n \n \n {t(\"user_information.confirm\")}\n \n \n \n )}\n {gettingUserInformation && }\n \n )}\n
\n );\n }\n}\n\nexport default withTranslation()(ResponsiveHandler(withRouter(Logic(Navbar))));\n\nconst LanguageIconWrapper = styled.div`\n position: relative;\n ${(props) =>\n props.active &&\n css`\n &::after {\n content: \"\";\n width: 80%;\n height: 2px;\n position: absolute;\n bottom: -8px;\n right: 0;\n left: 0;\n margin: 0 auto;\n background-color: ${Theme.primaryColor};\n }\n `}\n`;\n\nconst ProfileName = styled.p`\n color: inherit;\n font-size: 16px;\n line-height: 16px;\n font-weight: 700;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n margin-left: 1rem;\n\n ${({ theme }) => theme.smallDesktop`\n margin-left: 0;\n margin-right: 1rem;\n `}\n`;\n\nconst MobileWrapper = styled.div`\n margin: auto;\n height: calc(100vh - 5rem);\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n`;\n\nconst FlexDiv = styled.div`\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0.5rem 0;\n border-bottom: 1px solid ${Theme.lightInactiveColor};\n width: 100%;\n cursor: pointer;\n`;\n\nconst LanguageMobileWrapper = styled(FlexDiv)`\n margin-top: auto;\n border-bottom: none;\n & > * {\n margin: 0.5rem;\n }\n`;\n\nconst MenuItem = styled.div`\n display: flex;\n justify-content: space-between;\n width: 100%;\n align-items: center;\n padding: 0 0.5rem;\n cursor: pointer;\n color: ${Theme.textonSecondary};\n background-color: ${Theme.white};\n\n & path {\n fill: ${Theme.textonSecondary};\n }\n\n &:hover,\n &:active,\n &:focus {\n background-color: ${Theme.secondaryColor};\n color: ${Theme.white};\n\n & path {\n fill: ${Theme.white};\n }\n }\n`;\n\nconst ProfileMenu = styled.div`\n background-color: ${Theme.white};\n padding: 0.5rem 0;\n min-width: 200px;\n\n top: 2.5rem;\n right: -0.75rem;\n\n display: none;\n position: absolute;\n box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);\n z-index: 1;\n`;\n\nconst ProfileWapper = styled.div`\n display: flex;\n align-items: center;\n position: relative;\n color: ${Theme.textonSecondary};\n\n &:hover ${ProfileMenu} {\n display: block;\n }\n`;\n\nconst FlexWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 0.5rem 15px;\n min-height: 64px;\n`;\n\nconst Wrapper = styled.div`\n width: 100vw;\n height: 64px;\n background-color: ${Theme.white};\n box-shadow: rgba(36, 42, 62, 0.2) 0px -1px 0px 0px inset,\n rgba(64, 82, 132, 0.2) 0px 0px 2px 0px;\n position: fixed;\n z-index: 10000;\n\n .v-modal {\n margin-top: 4rem;\n ${({ theme }) => theme.smallDesktop`\n margin-left: calc(4rem - 1px);\n `}\n }\n`;\n\nconst WrapperPosed = posed(Wrapper)({\n open: {\n height: \"100vh\", //atrofia com max-content,\n transition: { duration: 225 },\n },\n closed: {\n height: \"64px\",\n transition: { duration: 225 },\n },\n});\n\nconst LogoLink = styled(Link)`\n display:flex;\n align-items: center\n`;\n\nconst RightWrapper = styled.div`\n display: flex;\n align-items: center;\n justify-content: flex-end;\n`;\n\nconst BurgerMenu = styled.div`\n margin-left: 1rem;\n height: 24px;\n .hamburger {\n height: 24px;\n\n display: inline-block;\n cursor: pointer;\n transition-property: opacity, filter;\n transition-duration: 0.15s;\n transition-timing-function: linear;\n font: inherit;\n color: inherit;\n text-transform: none;\n background-color: transparent;\n border: 0;\n margin: 0;\n overflow: visible;\n\n ${({ theme }) => theme.smallDesktop`\n padding: 15px 15px;\n\n `}\n }\n .hamburger:hover {\n opacity: 1;\n }\n .hamburger.is-active:hover {\n opacity: 1;\n }\n .hamburger.is-active .hamburger-inner,\n .hamburger.is-active .hamburger-inner::before,\n .hamburger.is-active .hamburger-inner::after {\n background-color: ${Theme.primaryColor};\n }\n\n .hamburger-box {\n width: 24px;\n height: 24px;\n display: inline-block;\n position: relative;\n }\n\n .hamburger-inner {\n display: block;\n top: 50%;\n margin-top: -2px;\n }\n .hamburger-inner,\n .hamburger-inner::before,\n .hamburger-inner::after {\n width: 24px;\n height: 3px;\n background-color: ${Theme.primaryColor};\n border-radius: 4px;\n position: absolute;\n transition-property: transform;\n transition-duration: 0.15s;\n transition-timing-function: ease;\n }\n .hamburger-inner::before,\n .hamburger-inner::after {\n content: \"\";\n display: block;\n }\n .hamburger-inner::before {\n top: -6px;\n }\n .hamburger-inner::after {\n bottom: -6px;\n }\n\n .hamburger--squeeze .hamburger-inner {\n transition-duration: 0.075s;\n transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n .hamburger--squeeze .hamburger-inner::before {\n transition: top 0.075s 0.12s ease, opacity 0.075s ease;\n }\n .hamburger--squeeze .hamburger-inner::after {\n transition: bottom 0.075s 0.12s ease,\n transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n\n .hamburger--squeeze.is-active .hamburger-inner {\n transform: rotate(45deg);\n transition-delay: 0.12s;\n transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n .hamburger--squeeze.is-active .hamburger-inner::before {\n top: 0;\n opacity: 0;\n transition: top 0.075s ease, opacity 0.075s 0.12s ease;\n }\n .hamburger--squeeze.is-active .hamburger-inner::after {\n bottom: 0;\n transform: rotate(-90deg);\n transition: bottom 0.075s ease,\n transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n`;\n\nconst NotificationIconWrapper = styled.div`\n margin-left: 1rem;\n height: 24px;\n cursor: pointer;\n`;\n\nconst NotificationWrapper = styled.div`\n margin: 0;\n padding: 1rem 0.75rem;\n background: ${Theme.white};\n color: ${Theme.black};\n\n display: grid;\n grid-template-columns: auto auto;\n grid-template-rows: 20px auto;\n row-gap: 4px;\n\n opacity: ${(props) => (props.read === true ? 0.5 : 1)};\n position: relative;\n cursor: ${(props) => (props.read === true ? \"auto\" : \"pointer\")};\n\n & + & {\n border-top: 1px solid #eeeeee;\n }\n\n .Toastify__toast--success {\n background: ${Theme.white};\n\n border-left: 5px solid ${Theme.successColor};\n }\n .Toastify__toast--info {\n background: ${Theme.white};\n\n border-left: 5px solid ${Theme.primaryColor};\n }\n .Toastify__toast--warning {\n background: ${Theme.white};\n\n border-left: 5px solid ${Theme.alertColor};\n }\n .Toastify__toast--error {\n background: ${Theme.white};\n\n border-left: 5px solid ${Theme.errorColor};\n }\n`;\n\nconst NotificationsTitleWrapper = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n column-gap: 8px;\n`;\n\nconst NotificationsMarkAll = styled.span`\n font-weight: 700;\n font-size: 14px;\n line-height: 20px;\n text-align: right;\n\n font-family: ${Theme.fontFamily};\n color: ${Theme.primaryColor};\n\n cursor: pointer;\n\n transition: text-decoration 0.3s ease-in-out;\n\n &:hover {\n text-decoration: underline;\n }\n`;\n\nconst NotificationsTitle = styled.h4`\n font-size: 20px;\n line-height: 24px;\n font-weight: 700;\n margin: 0;\n font-family: ${Theme.fontFamily};\n color: ${Theme.textonSecondary};\n`;\n\nconst NotificationTitle = styled.h5`\n font-size: 16px;\n font-weight: 700;\n line-height: 1em;\n margin: 0;\n font-family: ${Theme.fontFamily};\n color: ${Theme.textonSecondary};\n grid-column: 1/2;\n grid-row: 1/2;\n`;\n\nconst NotificationDate = styled.p`\n color: ${Theme.textonSecondary};\n font-family: ${Theme.fontFamily};\n font-size: 10px;\n line-height: 14px;\n\n text-align: right;\n grid-column: 2/3;\n grid-row: 1/2;\n margin: 0;\n`;\n\nconst NotificationBody = styled.div`\n grid-column: 1/3;\n grid-row: 2/3;\n font-size: 14px;\n line-height: 1em;\n color: ${Theme.textonSecondary};\n font-family: ${Theme.fontFamily};\n\n > span {\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n }\n`;\n\nconst LoadMoreLink = styled.span`\n font-weight: bold;\n font-size: 16px;\n line-height: 24px;\n\n font-family: ${Theme.fontFamily};\n color: ${Theme.primaryColor};\n\n cursor: pointer;\n\n transition: text-decoration 0.3s ease-in-out;\n\n &:hover {\n text-decoration: underline;\n }\n`;\n\nconst LoadMoreWrapper = styled.div`\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 1.5rem;\n`;\n\nconst NoNotifications = styled.p`\n color: ${Theme.textonSecondary};\n font-family: ${Theme.fontFamily};\n font-size: 14px;\n line-height: 16px;\n`;\nconst NoNotificationsWrapper = styled.div`\n height: 176px;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst DialogActions = styled.div`\n margin-top: 24px;\n display: grid;\n grid-template-columns: minmax(200px, 1fr) minmax(200px, 1fr);\n column-gap: 16px;\n`;\n\nconst CustomLoading = styled(Loading)`\n height: 24px;\n width: 24px;\n overflow: hidden;\n\n .el-loading-spinner {\n margin-top: 0;\n top: 0;\n svg {\n height: 24px;\n width: 24px;\n }\n .path {\n stroke: ${Theme.primaryColor};\n }\n }\n`;\n\nconst LoadingWrapper = styled.div`\n display: flex;\n align-items: center;\n justify-content: center;\n\n padding: 24px 32px;\n width: 100%;\n height: 100%;\n`;\n","/**\n * -----------------------------------------------------------------------------\n * Copyright (C) Ubiwhere, LDA\n * 2012-2018\n *\n *\n * The reproduction, transmission or use of this document or its contents is not\n * permitted without express written authorization. All rights, including rights\n * created by patent grant or registration of a utility model or design, are\n * reserved. Modifications made to this document are restricted to authorized\n * personnel only. Technical specifications and features are binding only when\n * specifically and expressly agreed upon in a written contract.\n * -----------------------------------------------------------------------------\n *\n * FundingFooter Container Utils\n *\n * @author Ricardo Leite \n */\n\n// SC: used to dynamic import of LOGOS from assets\nexport const getLogos = async (logos, common_logos) => {\n let images = [];\n return new Promise((resolve, reject) => {\n try {\n logos.forEach(async (element) => {\n let response = await import(`../../images/${element}`);\n images.push(response);\n if (images.length === logos.length + common_logos.length) resolve(images);\n });\n common_logos.forEach(async (element) => {\n let response = await import(`../../images/common_logos/${element}`);\n images.push(response);\n if (images.length === logos.length + common_logos.length) resolve(images);\n });\n } catch (err) {\n reject(new Error('Error fetching logos'));\n }\n });\n }\n ","/**\n * -----------------------------------------------------------------------------\n * Copyright (C) Ubiwhere, LDA\n * 2012-2018\n *\n *\n * The reproduction, transmission or use of this document or its contents is not\n * permitted without express written authorization. All rights, including rights\n * created by patent grant or registration of a utility model or design, are\n * reserved. Modifications made to this document are restricted to authorized\n * personnel only. Technical specifications and features are binding only when\n * specifically and expressly agreed upon in a written contract.\n * -----------------------------------------------------------------------------\n *\n * FundingFooter Container\n *\n * @author Ricardo Leite \n */\nimport React, { Component } from \"react\";\nimport styled from \"styled-components\";\nimport { FUNDING_FOOTER_LOGOS, COMMON_FUNDING_FOOTER_LOGOS } from \"config\";\nimport { getLogos } from \"./utils\";\n\nclass FundingFooter extends Component {\n state = {\n logos: [],\n };\n\n componentDidMount() {\n this.handleLogos();\n }\n\n async handleLogos() {\n let images = [];\n images = await getLogos(FUNDING_FOOTER_LOGOS, COMMON_FUNDING_FOOTER_LOGOS);\n this.setState({ ...this.state, logos: images });\n }\n\n render() {\n const { logos } = this.state;\n\n return (\n \n {logos && (\n \n {logos.map((val, index) => (\n \n ))}\n \n )}\n \n );\n }\n}\n\nexport default FundingFooter;\n\nconst FlexWrapper = styled.div`\n width: 100%;\n height: 4rem;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n background-color: #fff;\n`;\nconst LogoWrapper = styled.div`\n height: 100%;\n display: flex;\n align-items: center;\n gap: 2rem;\n margin-right: 1rem;\n padding: 0.5rem 0;\n`;\n\nconst Logo = styled.img`\n height: 1.5rem;\n object-fit: contain;\n\n @media only screen and (min-width: 768px) {\n height: 2rem;\n }\n`;\n","/**\n * Main APP Container\n * Please write a description\n *\n * @author Your Name \n */\nimport React, { Component } from \"react\";\nimport styled from \"styled-components\";\nimport { ThemeProvider } from \"styled-components\";\nimport { Helmet } from \"react-helmet\";\n\nimport Logic from \"./logic\";\nimport {\n setAuthorizationInterceptor,\n setResponseInterceptor,\n} from \"interceptors\";\n\nimport Routes from \"routes\";\nimport { withTranslation } from \"react-i18next\";\nimport { Theme, media } from \"globalStyles\";\nimport { Switch, Route, matchPath, withRouter } from \"react-router\";\nimport \"moment/locale/en-gb\";\nimport \"moment/locale/pt\";\nimport { ToastContainer } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.min.css\";\n\nimport Container from \"components/Container\";\nimport CloseButton from \"components/CloseButton\";\nimport Sidebar from \"containers/Sidebar\";\nimport Navbar from \"containers/Navbar\";\nimport FundingFooter from \"containers/FundingFooter\";\nimport ResponsiveHandler from \"components/ResponsiveHandler\";\n\nimport { SIMPLE_FEATURES, ADDITIONAL_FEATURES } from \"config\";\nimport moment from \"moment\";\n\nclass App extends Component {\n constructor() {\n super();\n setAuthorizationInterceptor();\n }\n\n componentWillUnmount() {\n const { i18n } = this.props;\n i18n.off(\"languageChanged\", this.refreshContent);\n }\n\n refreshContent = (event) => {\n const { setCurrentLanguage } = this.actions;\n setCurrentLanguage(event);\n moment.locale(event);\n };\n\n componentDidMount() {\n const { t } = this.props;\n Chart.defaults.scale.gridLines.display = false;\n Chart.plugins.register({\n afterDraw: function (chart) {\n if (chart.data.datasets.length === 0) {\n // No data is present\n let ctx = chart.chart.ctx;\n let width = chart.chart.width;\n let height = chart.chart.height;\n chart.clear();\n ctx.save();\n ctx.textAlign = \"center\";\n ctx.textBaseline = \"middle\";\n ctx.fontColor = \"#4A5B6D\";\n ctx.fillStyle = \"#4A5B6D\";\n ctx.font = \"12px 'Nunito Sans', 'Roboto', sans-serif\";\n ctx.fillText(t(\"no_data\"), width / 2, height / 2);\n ctx.restore();\n return;\n } else {\n for (\n let datasetNumber = 0;\n datasetNumber < chart.data.datasets.length;\n datasetNumber++\n ) {\n for (\n let i = 0;\n i < chart.data.datasets[datasetNumber].data.length;\n i++\n ) {\n if (\n chart.data.datasets[datasetNumber].data[i] &&\n chart.data.datasets[datasetNumber].data[i] !== \"0\"\n ) {\n return;\n }\n }\n }\n // No data is present\n let ctx = chart.chart.ctx;\n let width = chart.chart.width;\n let height = chart.chart.height;\n chart.clear();\n ctx.save();\n ctx.textAlign = \"center\";\n ctx.textBaseline = \"middle\";\n ctx.fontColor = \"#4A5B6D\";\n ctx.fillStyle = \"#4A5B6D\";\n ctx.font = \"12px 'Nunito Sans', 'Roboto', sans-serif\";\n ctx.fillText(t(\"no_data\"), width / 2, height / 2);\n ctx.restore();\n }\n },\n });\n const { i18n } = this.props;\n i18n.on(\"languageChanged\", this.refreshContent);\n }\n\n isOutsideApp = (currentPath) => {\n const outsideRoutes = [\"/login/\", \"/password/reset/\", \"/password/set/\"];\n return (\n outsideRoutes.filter((el) => {\n const match = matchPath(currentPath, el);\n return match != null && match.isExact === true;\n }).length > 0\n );\n };\n\n componentDidUpdate(prevProps) {\n const { checkUserAuthentication } = this.actions;\n\n const { shouldLogin, shouldBypassLogin } = this.props;\n\n if (shouldLogin) {\n const { setShouldLogin, logout } = this.actions;\n logout();\n setShouldLogin(false);\n if (!this.isOutsideApp(this.props.history.location.pathname)) {\n this.props.history.push(\"/login/\");\n }\n } else if (shouldBypassLogin) {\n const { setShouldBypassLogin } = this.actions;\n setResponseInterceptor(this.props.history, checkUserAuthentication);\n setShouldBypassLogin(false);\n\n if (this.props.history.location.pathname === \"/login/\") {\n this.props.history.push(\"/\");\n }\n }\n }\n\n render() {\n const { loading, user, responsiveHandlers } = this.props;\n const { logout, setShouldLogin } = this.actions;\n\n let routes = [];\n\n const allowedRoutes = [\n \"login\",\n \"notfound\",\n \"dashboard\",\n \"recoverpassword\",\n \"passwordset\",\n ];\n\n if (!loading) {\n routes = Routes.map((sec) => {\n if (\n !ADDITIONAL_FEATURES.includes(sec.key) &&\n !allowedRoutes.includes(sec.key)\n ) {\n return null;\n }\n\n if (\n ADDITIONAL_FEATURES.includes(sec.key) &&\n sec.admin_only &&\n user != null &&\n !user.isAdmin\n ) {\n return null;\n }\n\n return (\n \n );\n });\n }\n\n let showNavbar = false;\n let showSidebar = false;\n if (this.props.location.pathname !== \"/unavailable\") {\n showNavbar = true;\n if (\n !(responsiveHandlers.isMobile || responsiveHandlers.isTablet) &&\n user != null\n ) {\n showSidebar = true;\n }\n }\n return (\n \n \n {SIMPLE_FEATURES ? \"smartPayt\" : \"smartRayt\"}\n\n \n \n \n \n \n \n \n \n \n
\n {!loading && (\n \n {showNavbar && (\n {\n logout();\n setShouldLogin(false);\n if (\n !this.isOutsideApp(this.props.history.location.pathname)\n ) {\n this.props.history.push(\"/login/\");\n }\n }}\n />\n )}\n {showSidebar && }\n \n \n {routes}\n \n {ADDITIONAL_FEATURES.includes(\"funding_footer\") && (\n \n \n \n )}\n \n\n }\n />\n \n )}\n
\n
\n
\n );\n }\n}\n\nexport default withTranslation()(\n ResponsiveHandler(withRouter(Logic(App)))\n);\n\nconst Main = styled.main`\n width: 100%;\n display: flex;\n flex-direction: column;\n overflow-x: hidden;\n`;\n\nconst SceneWrapper = styled.div`\n width: ${(props) => props.width};\n margin-left: ${(props) => props.margin};\n min-height: calc(100vh - 4rem);\n min-height: ${(props) => props.height};\n margin-top: 4rem;\n`;\n\nconst FooterWrapper = styled.div`\n position: fixed;\n bottom: 0;\n right: 0;\n width: 100%;\n z-index: 700;\n`","/**\n * Index where the application begins\n * Where we configure the Hot Reloading\n */\nimport React from 'react'\nimport ReactDOM from 'react-dom'\nimport { SENTRY_URL, VERSION } from 'config'\nimport * as Sentry from '@sentry/react'\nimport { Integrations } from '@sentry/tracing'\nimport { Provider } from 'react-redux'\nimport { BrowserRouter } from 'react-router-dom'\nimport { Store } from './store'\nimport { GlobalStyles } from './globalStyles'\nimport 'react-dates/initialize'\nimport 'react-dates/lib/css/_datepicker.css'\nimport 'translations/i18n'\nimport { i18n } from 'element-react'\nimport localePT from 'element-react/src/locale/lang/pt'\n\n// Stylings\nimport 'element-theme-default'\n\n// App Root\nimport App from './containers/App'\nimport LogRocket from 'logrocket'\n\n// Where the app is rendered\nconst app = document.getElementById('root')\ni18n.use(localePT)\n\nconst localVersion = window.localStorage.getItem('version')\nconst localIsTheLast = VERSION === localVersion\n\nif (!localIsTheLast) {\n window.localStorage.setItem('version', VERSION)\n}\n\n// Sentry\n/* istanbul ignore if */\nif (process.env.NODE_ENV !== 'development') {\n LogRocket.init('0sjxyd/smartpayt-cantanhede')\n Sentry.init({\n dsn: SENTRY_URL,\n integrations: [\n new Integrations.BrowserTracing()\n ],\n // We recommend adjusting this value in production, or using tracesSampler\n // for finer control\n tracesSampleRate: 1.0\n })\n}\n\nReactDOM.render(\n \n \n \n \n \n \n \n ,\n app\n)\n"],"sourceRoot":""}