diff options
Diffstat (limited to 'lib/approval-template')
| -rw-r--r-- | lib/approval-template/service.ts | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/approval-template/service.ts b/lib/approval-template/service.ts index 5dc989d9..cb687c4f 100644 --- a/lib/approval-template/service.ts +++ b/lib/approval-template/service.ts @@ -1,6 +1,7 @@ 'use server'; import db from '@/db/db'; +import { revalidateI18nPaths } from '@/lib/revalidate'; import { and, asc, @@ -28,6 +29,13 @@ export type ApprovalTemplateVariable = typeof approvalTemplateVariables.$inferSelect; export type ApprovalTemplateHistory = typeof approvalTemplateHistory.$inferSelect; +// --------------------------------------------- +// Revalidation helpers +// --------------------------------------------- +async function revalidateApprovalTemplatesPaths() { + await revalidateI18nPaths('/evcp/approval/template'); +} + export interface ApprovalTemplateWithVariables extends ApprovalTemplate { variables: ApprovalTemplateVariable[]; @@ -209,6 +217,7 @@ export async function createApprovalTemplate(data: CreateInput): Promise<Approva const result = await getApprovalTemplate(newTemplate.id); if (!result) throw new Error('생성된 템플릿을 조회할 수 없습니다.'); + await revalidateApprovalTemplatesPaths(); return result; } @@ -262,6 +271,7 @@ export async function updateApprovalTemplate(id: string, data: UpdateInput): Pro const result = await getApprovalTemplate(id); if (!result) throw new Error('업데이트된 템플릿을 조회할 수 없습니다.'); + await revalidateApprovalTemplatesPaths(); return result; } @@ -320,6 +330,7 @@ export async function duplicateApprovalTemplate( export async function deleteApprovalTemplate(id: string): Promise<{ success: boolean; error?: string }> { try { await db.delete(approvalTemplates).where(eq(approvalTemplates.id, id)); + await revalidateApprovalTemplatesPaths(); return { success: true }; } catch (error) { return { |
