summaryrefslogtreecommitdiff
path: root/src/Entry.jsx
blob: c48668009f72276fb14832931ffbb3d6568a6d00 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import {useState} from "react";
import {DatePicker, LocalizationProvider, TimePicker} from '@mui/x-date-pickers';
import {AdapterDayjs} from '@mui/x-date-pickers/AdapterDayjs';
import 'dayjs/locale/id';


function Entry({propId, propDate, propStart, propFinish, handleEntryChange}) {
    const [date, setDate] = useState(propDate);
    const [start, setStart] = useState(propStart);
    const [finish, setFinish] = useState(propFinish);

    return (
        <LocalizationProvider dateAdapter={AdapterDayjs} adapterLocale='id'>
            <div style={{display: 'flex', gap: '5px'}}>
                <DatePicker label="Tanggal Lembur"
                            value={date}
                            onAccept={(newDate) => {
                                setDate(newDate);
                                handleEntryChange({id: propId, date: newDate}, 'date')
                            }}
                />
                <TimePicker label="Mulai"
                            ampm={false}
                            value={start}
                            maxTime={finish}
                            onAccept={(newStart) => {
                                setStart(newStart);
                                handleEntryChange({id: propId, start: newStart}, 'start')
                            }}
                />
                <TimePicker label="Selesai"
                            ampm={false}
                            value={finish}
                            minTime={start}
                            onAccept={(newFinish) => {
                                setFinish(newFinish);
                                handleEntryChange({id: propId, finish: newFinish}, 'finish')
                            }}
                />
            </div>
        </LocalizationProvider>
    )
}

export default Entry;