사이트 설정 관리 추가
This commit is contained in:
16
server/utils/admin-site-settings-input.js
Normal file
16
server/utils/admin-site-settings-input.js
Normal file
@@ -0,0 +1,16 @@
|
||||
import { z } from 'zod'
|
||||
|
||||
export const adminSiteSettingsInputSchema = z.object({
|
||||
title: z.string().trim().min(1),
|
||||
description: z.string().trim().default(''),
|
||||
siteUrl: z.string().trim().url(),
|
||||
logoText: z.string().trim().min(1).max(8),
|
||||
copyrightText: z.string().trim().min(1)
|
||||
})
|
||||
|
||||
/**
|
||||
* 관리자 사이트 설정 입력값 정리
|
||||
* @param {unknown} body - 요청 본문
|
||||
* @returns {import('zod').SafeParseReturnType<unknown, Object>} 검증 결과
|
||||
*/
|
||||
export const parseAdminSiteSettingsInput = (body) => adminSiteSettingsInputSchema.safeParse(body)
|
||||
17
server/utils/site-settings.js
Normal file
17
server/utils/site-settings.js
Normal file
@@ -0,0 +1,17 @@
|
||||
/**
|
||||
* 기본 사이트 설정 반환
|
||||
* @returns {Object} 기본 사이트 설정
|
||||
*/
|
||||
export const getDefaultSiteSettings = () => {
|
||||
const config = useRuntimeConfig()
|
||||
const title = config.public.siteTitle || 'sori.studio'
|
||||
|
||||
return {
|
||||
title,
|
||||
description: 'sori.studio 개인 블로그',
|
||||
siteUrl: config.public.siteUrl || 'https://sori.studio',
|
||||
logoText: '井',
|
||||
copyrightText: `©${new Date().getFullYear()} ${title}`,
|
||||
updatedAt: null
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user