'use client'
import Link from 'next/link'
import { useGetCategoriesQuery, useGetSlidersQuery } from '@/store/services'
import { useTitle, useUrlQuery } from '@/hooks'
import { ResponsiveImage, EmptyCustomList, PageContainer, TableSkeleton } from '@/components'
const SlidersPage = () => {
const query = useUrlQuery()
const category_id = query?.category_id
const category_name = query?.category_name
//? Queries
//* Get Categories
const { categories, isLoading: isLoading_get_categories } = useGetCategoriesQuery(undefined, {
selectFromResult: ({ data, isLoading }) => ({
categories: data?.data?.categories
.filter(category => category.level < 2)
.sort((a, b) => a.level - b.level),
isLoading,
skip: !!category_id,
}),
})
//* Get Sliders
const { data: sliders, isLoading: isLoadingGetSliders } = useGetSlidersQuery(
{ category: category_id },
{ skip: !!!category_id }
)
//? Render(s)
const title = category_name ? `分类滑块管理 - ${category_name}` : '滑块管理'
useTitle(title)
const renderContent = () => {
if (isLoading_get_categories || isLoadingGetSliders) {
return (
|
|
)
}
if (categories && !category_id) {
return categories.map(category => (
| {category.name} |
子集
|
))
}
if (sliders && sliders.data && sliders.data.length > 0) {
return sliders.data.map(slider => (
|
|
{slider.title} |
编辑
|
))
} else
return (
|
|
)
}
return (
{category_id && (
添加新滑块
)}
{category_name && | 图片 | }
{category_name ? '标题' : '分类名称'}
|
操作 |
{renderContent()}
)
}
export default SlidersPage