35 lines
1.0 KiB
JavaScript
35 lines
1.0 KiB
JavaScript
import { DEFAULT_BRAND_COLOR } from '~/lib/brand-color.js'
|
|
|
|
/**
|
|
* 공개 사이트 설정 기본값을 만든다.
|
|
* @returns {Object} 공개 사이트 설정 기본값
|
|
*/
|
|
export const createDefaultPublicSiteSettings = () => ({
|
|
title: 'sori.studio',
|
|
description: 'sori.studio 개인 블로그',
|
|
faviconUrl: '',
|
|
logoUrl: '',
|
|
logoText: '井',
|
|
brandColor: DEFAULT_BRAND_COLOR,
|
|
socialLinks: [],
|
|
adSidebarCode: '',
|
|
adPostSidebarCode: '',
|
|
copyrightText: '©2026 sori.studio',
|
|
announcementEnabled: false,
|
|
announcementText: '',
|
|
announcementUrl: '',
|
|
announcementBackgroundColor: '#15171a',
|
|
announcementAlignment: 'center',
|
|
updatedAt: null,
|
|
signupBlockedUsernames: []
|
|
})
|
|
|
|
/**
|
|
* 공개 사이트 설정을 공통 key와 옵션으로 조회한다.
|
|
* @returns {Promise<import('nuxt/app').AsyncData<Object, Error | null>>} 사이트 설정 async data
|
|
*/
|
|
export const usePublicSiteSettings = () => useFetch('/api/site-settings', {
|
|
key: 'site-settings-public',
|
|
default: createDefaultPublicSiteSettings
|
|
})
|