/
effective_wiki
/
web-client
Обзор
Документация
Войти
/
effective_wiki
/
web-client
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
master
src/api/pages.ts
56 строк
1 KB
Andrey Lila
feat: add deletion database logic when database page is deleted
18 дек 2025, 11:21
18 дек 2025, 11:21
c38b2d3
Код
Авторство
О чём код?
import { CreatePageRequest, CreatePageResponse, GetPagesRequest, Page, PagesListResponse, UpdatePageRequest, UpdatePageResponse, } from "@/types/page-types"; import { apiPost, apiDelete, apiPut, apiGet } from "./utils"; export async function getPages(data: GetPagesRequest): Promise<PagesListResponse> { return apiPost<PagesListResponse>("/api/pages/list", data); } export async function getPage(id: string): Promise<Page> { return apiGet<Page>(`/api/pages/${id}`); } export async function createPage(data: CreatePageRequest): Promise<CreatePageResponse> { return apiPost<CreatePageResponse>("/api/pages", data); } export async function createNestedPage( data: Omit<CreatePageRequest, "parent"> & { parentPageId: string } ): Promise<CreatePageResponse> { const { parentPageId, ...rest } = data; const requestPayload: CreatePageRequest = { ...rest, parent: { type: "page_id", page_id: parentPageId, }, }; return apiPost<CreatePageResponse>("/api/pages", requestPayload); } export async function deletePage(pageId: string): Promise<void> { return apiDelete(`/api/pages/${pageId}`); } export async function updatePage( pageId: string, data: UpdatePageRequest ): Promise<UpdatePageResponse> { return apiPut<UpdatePageResponse>(`/api/pages/${pageId}`, data); } export async function duplicatePage( pageId: string, data: { createdBy: string } ): Promise<CreatePageResponse> { return apiPost<CreatePageResponse>(`/api/pages/${pageId}/copy`, data); }