@@ -2,18 +2,22 @@ import React, { useCallback, useMemo, useState } from 'react';
22import { observer } from 'mobx-react' ;
33import { Slider } from 'antd' ;
44import { isSameDay } from 'date-fns' ;
5+ import { createUseStyles } from 'react-jss' ;
56
67import rootStore from '../../modules/RootStore' ;
78import { useInterval } from '../../hooks/UseInterval' ;
89import { getStartWorkingTime , getTimeItems } from '../../helpers/TaskHelper' ;
910import TaskTimeService from '../../services/TaskTimeService' ;
11+ import { toTimeFormat } from '../../helpers/DateTime' ;
1012
1113const { tasksStore, settingsStore } = rootStore ;
1214
1315function ProgressBar ( ) {
1416 const { settings } = settingsStore ;
1517 const workingHoursMs = settings . numberOfWorkingHours ;
1618
19+ const style = useStyle ( ) ;
20+
1721 const [ dayUpdateEveryDay , setDayUpdateEveryDay ] = useState ( new Date ( ) ) ;
1822 const [ timer , setTimer ] = useState ( new Date ( ) ) ;
1923
@@ -26,7 +30,7 @@ function ProgressBar() {
2630 } , [ dayUpdateEveryDay ] ) ;
2731
2832 useInterval ( shouldDayUpdate ) ;
29-
33+ 1 + 1 ;
3034 const tasks = useMemo ( ( ) => tasksStore . getTasksByDate ( dayUpdateEveryDay ) , [
3135 tasksStore . tasks ,
3236 dayUpdateEveryDay ,
@@ -45,7 +49,7 @@ function ProgressBar() {
4549 timeItems ,
4650 ] ) ;
4751
48- const progress = useMemo (
52+ const { estimatedWorkingTimeEnd , progress } = useMemo (
4953 ( ) =>
5054 TaskTimeService . getDayProgress (
5155 timeRangeItems ,
@@ -55,9 +59,25 @@ function ProgressBar() {
5559 [ timer , timeRangeItems , workingTimeStart , workingHoursMs ]
5660 ) ;
5761
58- console . log ( progress ) ;
62+ const marks = useMemo (
63+ ( ) => ( {
64+ 0 : toTimeFormat ( workingTimeStart ) ,
65+ 100 : toTimeFormat ( estimatedWorkingTimeEnd ) ,
66+ } ) ,
67+ [ timer , workingTimeStart , estimatedWorkingTimeEnd ]
68+ ) ;
5969
60- return < Slider value = { progress } /> ;
70+ return < Slider marks = { marks } value = { progress } className = { style . slider } /> ;
6171}
6272
73+ const useStyle = createUseStyles ( {
74+ slider : {
75+ '& .ant-slider-mark' : {
76+ '& .ant-slider-mark-text' : {
77+ color : 'white' ,
78+ } ,
79+ } ,
80+ } ,
81+ } ) ;
82+
6383export default observer ( ProgressBar ) ;
0 commit comments