WuYongJie d1c6efc79d
Some checks failed
CI Check / check (push) Has been cancelled
feat: NAS 部署与 Harbor 推送流程
2025-12-03 14:39:06 +08:00

32 lines
1.0 KiB
TypeScript

import { NextResponse } from 'next/server'
import { formatFieldOptionValues, getFieldPoolRecords, syncFieldPoolFromTemplates } from '@/lib/field-pool'
type FieldPoolRecord = {
key: string
label: string
filterDisplayName?: string | null
options: Array<{ value: string }>
isFilterEnabled?: boolean
filterOrder?: number | null
}
export async function GET() {
try {
await syncFieldPoolFromTemplates()
const fields = (await getFieldPoolRecords()) as FieldPoolRecord[]
const enabledFields = fields.filter((field) => field.isFilterEnabled)
const payload = enabledFields.map((field: FieldPoolRecord) => ({
fieldKey: field.key,
fieldLabel: field.filterDisplayName || field.label,
fieldDefaultLabel: field.label,
filterOrder: field.filterOrder ?? 0,
options: formatFieldOptionValues(field.options),
}))
return NextResponse.json(payload)
} catch (error) {
console.error('Error fetching template categories:', error)
return NextResponse.json({ error: '获取模板分类失败' }, { status: 500 })
}
}