1
0
Fork 0
mirror of https://github.com/muerwre/vault-frontend.git synced 2025-04-25 12:56:41 +07:00

removed messages reducer

This commit is contained in:
Fedor Katurov 2022-01-08 16:40:48 +07:00
parent 82308d2a91
commit 5849e68258
61 changed files with 314 additions and 898 deletions

29
src/api/messages/index.ts Normal file
View file

@ -0,0 +1,29 @@
import { api, cleanResult } from '~/utils/api';
import { API } from '~/constants/api';
import {
ApiDeleteMessageRequest,
ApiDeleteMessageResult,
ApiGetUserMessagesRequest,
ApiGetUserMessagesResponse,
ApiSendMessageRequest,
ApiSendMessageResult,
} from '~/api/messages/types';
export const apiGetUserMessages = ({ username, after, before }: ApiGetUserMessagesRequest) =>
api
.get<ApiGetUserMessagesResponse>(API.USER.MESSAGES(username), {
params: { after, before },
})
.then(cleanResult);
export const apiSendMessage = ({ username, message }: ApiSendMessageRequest) =>
api
.post<ApiSendMessageResult>(API.USER.MESSAGE_SEND(username), { message })
.then(cleanResult);
export const apiDeleteMessage = ({ username, id, is_locked }: ApiDeleteMessageRequest) =>
api
.delete<ApiDeleteMessageResult>(API.USER.MESSAGE_DELETE(username, id), {
params: { is_locked },
})
.then(cleanResult);

26
src/api/messages/types.ts Normal file
View file

@ -0,0 +1,26 @@
import { IMessage } from '~/redux/types';
export type ApiGetUserMessagesRequest = {
username: string;
after?: string;
before?: string;
};
export type ApiGetUserMessagesResponse = { messages: IMessage[] };
export type ApiSendMessageRequest = {
username: string;
message: Partial<IMessage>;
};
export type ApiSendMessageResult = {
message: IMessage;
};
export type ApiDeleteMessageRequest = {
username: string;
id: number;
is_locked: boolean;
};
export type ApiDeleteMessageResult = {
message: IMessage;
};