fix: worktime table input fix

This commit is contained in:
2025-03-04 12:38:18 +04:00
parent 20a6c3cfcc
commit be666c5158

View File

@@ -36,13 +36,13 @@ const useWorkTableColumns = ({
setSelectedCells, setSelectedCells,
selectedBoundaries, selectedBoundaries,
range, range,
}: Props) => { }: Props) => {
const totalAmount = useMemo(() => { const totalAmount = useMemo(() => {
return data.reduce((acc, value) => { return data.reduce((acc, value) => {
if (value.data) { if (value.data) {
const sum = value.data.reduce( const sum = value.data.reduce(
(innerAcc, item) => innerAcc + item.amount, (innerAcc, item) => innerAcc + item.amount,
0 0,
); );
return acc + sum; return acc + sum;
} }
@@ -111,7 +111,7 @@ const useWorkTableColumns = ({
onClick: () => { onClick: () => {
const result = processSelectedCells( const result = processSelectedCells(
selectedCells, selectedCells,
cell.id cell.id,
); );
setSelectedCells(result); setSelectedCells(result);
}, },
@@ -119,21 +119,27 @@ const useWorkTableColumns = ({
// eslint-disable-next-line @typescript-eslint/ban-ts-comment // eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-expect-error // @ts-expect-error
Cell: ({ cell, row }) => { Cell: ({ cell, row }) => {
return ( let prevValue = formatValue(cell.renderValue());
<Flex direction={"column"}>
<Input const onAccept = (value: string) => {
component={IMaskInput} if (value === prevValue) return;
mask="00:00" prevValue = value;
onAccept={value => {
return /^\d\d:\d\d$/.test(value) && return /^\d\d:\d\d$/.test(value) &&
onUpdate( onUpdate(
date.toDate(), date.toDate(),
row.original.userId, row.original.userId,
value, value,
); );
}} }
return (
<Flex direction={"column"}>
<Input
component={IMaskInput}
mask="00:00"
onAccept={onAccept}
styles={{ input: { textAlign: "center" } }} styles={{ input: { textAlign: "center" } }}
defaultValue={formatValue(cell.renderValue())} value={formatValue(cell.renderValue())}
/> />
</Flex> </Flex>
); );