Files
twenty/front/src/components/table/editable-cell/EditableDate.tsx
T
Charles Bochet 406e1dc02e Enable Date edition on People view (#105)
* Enable Date edition on People view

* Fix linter
2023-05-05 18:52:04 +02:00

48 lines
1.1 KiB
TypeScript

import styled from '@emotion/styled';
import { useState } from 'react';
import EditableCellWrapper from './EditableCellWrapper';
import DatePicker from '../../form/DatePicker';
export type EditableDateProps = {
value: Date;
changeHandler: (date: Date) => void;
shouldAlignRight?: boolean;
};
const StyledContainer = styled.div`
display: flex;
align-items: center;
`;
function EditableDate({
value,
changeHandler,
shouldAlignRight,
}: EditableDateProps) {
const [inputValue, setInputValue] = useState(value);
const [isEditMode, setIsEditMode] = useState(false);
const onEditModeChange = (isEditMode: boolean) => {
setIsEditMode(isEditMode);
};
return (
<EditableCellWrapper
onEditModeChange={onEditModeChange}
shouldAlignRight={shouldAlignRight}
>
<StyledContainer>
<DatePicker
isOpen={isEditMode}
date={inputValue}
onChangeHandler={(date: Date) => {
changeHandler(date);
setInputValue(date);
}}
/>
</StyledContainer>
</EditableCellWrapper>
);
}
export default EditableDate;