34 lines
870 B
TypeScript
34 lines
870 B
TypeScript
import type { PageDataValue } from '#layers/types/api/pageData'
|
|
|
|
export const usePageDataStore = defineStore('pageData', () => {
|
|
const pageData = ref<PageDataValue | null>(null)
|
|
const pageLayoutType = ref<'default' | 'promotion' | null>(null)
|
|
const pageName = ref<string | null>(null)
|
|
const pageNameEn = ref<string | null>(null)
|
|
|
|
const setPageData = (response: PageDataValue) => {
|
|
clearPageData()
|
|
|
|
pageData.value = response
|
|
pageLayoutType.value = getLayoutType(pageData.value)
|
|
pageName.value = pageData.value?.page_name
|
|
pageNameEn.value = pageData.value?.page_name_en
|
|
}
|
|
|
|
const clearPageData = () => {
|
|
pageData.value = null
|
|
pageLayoutType.value = null
|
|
pageName.value = null
|
|
pageNameEn.value = null
|
|
}
|
|
|
|
return {
|
|
pageData,
|
|
pageLayoutType,
|
|
pageName,
|
|
pageNameEn,
|
|
setPageData,
|
|
clearPageData,
|
|
}
|
|
})
|