feat(admin): 分组能力按类型收口(应用可分组,海报/图文平铺)

- 只有应用类分区显示分组管理与卡片预览分组;海报/图文保持平铺
- 后端 create_group 拒绝非应用分区;海报/图文读取时把历史分组条目一并平铺
- 侧栏不再显示非应用分组与空分组
- 类型 应用 ↔ 海报 切换时分组入口和侧栏子项随之出现/消失
- 测试 59 passed
This commit is contained in:
2026-10-30 19:55:45 +08:00
parent 1a4a6a3655
commit 261d202ce0
4 changed files with 111 additions and 39 deletions
@@ -38,9 +38,11 @@ export function CategoryNav({
const items: MenuItem[] = [
{ key: HOME_KEY, label: '首页' },
...categories.map((category) => {
// 分组已由 App 按 /admin 的侧栏设置过滤、排序(含 show_in_sidebar 覆盖);
// 应用 / 海报 / 图文都支持分组
const groups = category.groups
// 只有应用类有分组;空分组不出现在侧栏(后台仍保留)
const groups =
category.kind === 'apps'
? category.groups.filter((group) => group.items.length > 0)
: []
return {
key: categoryKey(category.id),