Merge pull request 'feat: Add a color scheme for the status of orders (#56)' (#57) from feat/colors-status into main
All checks were successful
it-academy/dry-wash-pl/pipeline/head This commit looks good
All checks were successful
it-academy/dry-wash-pl/pipeline/head This commit looks good
Reviewed-on: #57 Reviewed-by: Primakov Alexandr Alexandrovich <primakovpro@gmail.com>
This commit is contained in:
commit
fc699e7890
@ -3,7 +3,7 @@ import { Td, Tr, Link, Select } from '@chakra-ui/react';
|
|||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import dayjs from 'dayjs';
|
import dayjs from 'dayjs';
|
||||||
|
|
||||||
import { getTimeSlot } from '../../lib/date-helpers';
|
import { getTimeSlot } from '../../lib';
|
||||||
|
|
||||||
const statuses = [
|
const statuses = [
|
||||||
'pending' as const,
|
'pending' as const,
|
||||||
@ -26,6 +26,16 @@ export type OrderProps = {
|
|||||||
location?: string;
|
location?: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
type Status = (typeof statuses)[number];
|
||||||
|
|
||||||
|
const statusColors: Record<Status, string> = {
|
||||||
|
pending: 'yellow.100',
|
||||||
|
progress: 'blue.100',
|
||||||
|
working: 'orange.100',
|
||||||
|
canceled: 'red.100',
|
||||||
|
complete: 'green.100',
|
||||||
|
};
|
||||||
|
|
||||||
const OrderItem = ({
|
const OrderItem = ({
|
||||||
carNumber,
|
carNumber,
|
||||||
startWashTime,
|
startWashTime,
|
||||||
@ -40,6 +50,7 @@ const OrderItem = ({
|
|||||||
});
|
});
|
||||||
|
|
||||||
const [statusSelect, setStatus] = useState(status);
|
const [statusSelect, setStatus] = useState(status);
|
||||||
|
const bgColor = statusColors[statusSelect];
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Tr>
|
<Tr>
|
||||||
@ -51,6 +62,7 @@ const OrderItem = ({
|
|||||||
value={statusSelect}
|
value={statusSelect}
|
||||||
onChange={(e) => setStatus(e.target.value as OrderProps['status'])}
|
onChange={(e) => setStatus(e.target.value as OrderProps['status'])}
|
||||||
placeholder={t(`status.placeholder`)}
|
placeholder={t(`status.placeholder`)}
|
||||||
|
bg={bgColor}
|
||||||
>
|
>
|
||||||
{statuses.map((status) => (
|
{statuses.map((status) => (
|
||||||
<option key={status} value={status}>
|
<option key={status} value={status}>
|
||||||
|
Loading…
Reference in New Issue
Block a user