Skip to content

Commit 5754155

Browse files
committed
[DOP-25282] Add slug field to Queue
1 parent 1216ace commit 5754155

8 files changed

Lines changed: 20 additions & 2 deletions

File tree

src/entities/queue/api/types.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ export interface Queue {
44
id: number;
55
group_id: number;
66
name: string;
7+
slug: string;
78
description: string;
89
}
910

src/features/queue/QueueDetailInfo/index.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ export const QueueDetailInfo = ({ queue, group, ...props }: QueueDetailInfoProps
1616
<Descriptions.Item label={t('name')} span={3}>
1717
{queue.name}
1818
</Descriptions.Item>
19+
<Descriptions.Item label={t('slug')} span={3}>
20+
{queue.slug}
21+
</Descriptions.Item>
1922
<Descriptions.Item label={t('description')} span={3}>
2023
{queue.description}
2124
</Descriptions.Item>

src/features/queue/QueueList/utils/getQueueListColumns/index.tsx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,10 @@ export const getQueueListColumns = (t: TFunction) => {
1818
render: (name, record) => <Link to={`/queues/${record.id}`}>{name}</Link>,
1919
width: 400,
2020
},
21+
{
22+
title: t('slug'),
23+
dataIndex: 'slug',
24+
},
2125
{
2226
title: t('description'),
2327
dataIndex: 'description',

src/features/queue/UpdateQueue/index.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ export const UpdateQueue = ({ queue, group }: UpdateQueueProps) => {
1313
const navigate = useNavigate();
1414

1515
const handleUpdateQueue = (values: UpdateQueueForm) => {
16-
return queueService.updateQueue({ ...values, id: queue.id });
16+
return queueService.updateQueue({ name: values.name, description: values.description, id: queue.id });
1717
};
1818

1919
const onSuccess = (response: Queue) => {
@@ -39,6 +39,10 @@ export const UpdateQueue = ({ queue, group }: UpdateQueueProps) => {
3939
<FormCurrentGroupDescription groupName={group.name} />
4040

4141
<Form.Item label={t('name')} name="name" rules={[{ required: true, pattern: QUEUE_NAME_REGEXP }]}>
42+
<Input size="large" />
43+
</Form.Item>
44+
45+
<Form.Item label={t('slug')} name="slug">
4246
<Input size="large" disabled />
4347
</Form.Item>
4448

src/features/queue/UpdateQueue/types.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
import { GroupData } from '@entities/group';
22
import { Queue, UpdateQueueRequest } from '@entities/queue';
33

4-
export interface UpdateQueueForm extends Omit<UpdateQueueRequest, 'id'> {}
4+
export interface UpdateQueueForm extends Omit<UpdateQueueRequest, 'id'> {
5+
// Slug is shown, but cannot be changed by user
6+
slug: string;
7+
}
58

69
export interface UpdateQueueProps {
710
queue: Queue;

src/features/queue/UpdateQueue/utils/getUpdateQueueInitialValues/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import { UpdateQueueForm } from '../../types';
66
export const getUpdateQueueInitialValues = (queue: Queue): UpdateQueueForm => {
77
return {
88
name: queue.name,
9+
slug: queue.slug,
910
description: queue.description,
1011
};
1112
};

src/shared/config/i18n/translations/en.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,7 @@
263263
"delete": "Delete",
264264
"id": "Id",
265265
"name": "Name",
266+
"slug": "Slug",
266267
"description": "Description",
267268
"type": "Type",
268269
"required": "required",

src/shared/config/i18n/translations/ru.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,7 @@
257257
"delete": "Удалить",
258258
"id": "Идентификатор",
259259
"name": "Название",
260+
"slug": "Краткое имя",
260261
"description": "Описание",
261262
"type": "Тип",
262263
"required": "обязательный",

0 commit comments

Comments
 (0)