import { PayloadCollectionConfig } from '../../src/collections/config/types'; import { Block } from '../../src/fields/config/types'; const RichTextBlock: Block = { slug: 'richTextBlock', labels: { singular: 'Rich Text Block', plural: 'Rich Text Blocks', }, fields: [ { name: 'content', localized: true, type: 'richText', admin: { hideGutter: true, }, }, ], }; const LocalizedPosts: PayloadCollectionConfig = { slug: 'localized-posts', labels: { singular: 'Localized Post', plural: 'Localized Posts', }, admin: { useAsTitle: 'title', defaultColumns: [ 'title', 'priority', 'createdAt', ], enableRichTextRelationship: true, }, access: { read: () => true, }, fields: [ { name: 'title', label: 'Title', type: 'text', maxLength: 100, required: true, unique: true, localized: true, }, { name: 'summary', label: 'Summary', type: 'text', index: true, }, { name: 'description', label: 'Description', type: 'textarea', required: true, localized: true, }, { type: 'richText', name: 'richText', label: 'Rich Text', }, { name: 'priority', label: 'Priority', type: 'number', required: true, localized: true, }, { name: 'localizedGroup', label: 'Localized Group', type: 'group', localized: true, fields: [ { type: 'text', name: 'text', label: 'Text', }, ], }, { name: 'nonLocalizedGroup', label: 'Non-Localized Group', type: 'group', fields: [ { type: 'text', name: 'text', label: 'Text', localized: true, }, ], }, { type: 'array', label: 'Non-Localized Array', name: 'nonLocalizedArray', maxRows: 3, fields: [ { type: 'text', name: 'localizedEmbeddedText', label: 'Localized Embedded Text', localized: true, }, ], }, { label: 'Blocks', name: 'richTextBlocks', type: 'blocks', blocks: [ RichTextBlock, ], }, ], timestamps: true, }; export default LocalizedPosts;