This repository has no description
Something went wrong. Try again.
1.4 kB · 50 lines
TypeScript
at main
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051import type { CollectionConfig } from 'payload'import { bodyEditor } from '@/lib/lexical-editor'
export const Posts: CollectionConfig = { slug: 'posts', admin: { useAsTitle: 'title', defaultColumns: ['title', 'slug', 'publishDate', '_status'], }, versions: { drafts: true }, access: { read: () => true, }, fields: [ { name: 'title', type: 'text', required: true }, { name: 'slug', type: 'text', required: true, unique: true, index: true }, { name: 'subtitle', type: 'text' }, { name: 'excerpt', type: 'textarea' }, { name: 'publishDate', type: 'date', required: true, index: true }, { name: 'updatedDate', type: 'date' }, { name: 'isFeatured', type: 'checkbox', defaultValue: false }, { name: 'tags', type: 'relationship', relationTo: 'tags', hasMany: true, index: true, }, { name: 'coverImage', type: 'upload', relationTo: 'media' }, { name: 'seo', type: 'group', fields: [ { name: 'title', type: 'text' }, { name: 'description', type: 'textarea' }, { name: 'pageType', type: 'select', options: ['website', 'article'], defaultValue: 'article', }, { name: 'image', type: 'upload', relationTo: 'media' }, ], }, { name: 'body', type: 'richText', editor: bodyEditor }, ], indexes: [ { fields: ['publishDate', '_status'] }, ],}