47 lines
1.2 KiB
TypeScript
47 lines
1.2 KiB
TypeScript
// src/blocks/KanbanColor/config.ts
|
|
import type { Block } from 'payload'
|
|
|
|
export const KanbanColorBlock: Block = {
|
|
slug: 'kanbanColor',
|
|
labels: { singular: 'Kanban (Color)', plural: 'Kanbans (Color)' },
|
|
fields: [
|
|
{
|
|
name: 'columns',
|
|
type: 'array',
|
|
label: 'Columns',
|
|
minRows: 1,
|
|
fields: [
|
|
{
|
|
name: 'title',
|
|
type: 'text',
|
|
label: 'Column title',
|
|
required: true,
|
|
},
|
|
{
|
|
name: 'color',
|
|
type: 'select',
|
|
label: 'Accent color',
|
|
defaultValue: 'gray',
|
|
options: [
|
|
{ label: 'Gray', value: 'gray' },
|
|
{ label: 'Blue', value: 'blue' },
|
|
{ label: 'Green', value: 'green' },
|
|
{ label: 'Amber', value: 'amber' },
|
|
{ label: 'Red', value: 'red' },
|
|
{ label: 'Purple', value: 'purple' },
|
|
{ label: 'Teal', value: 'teal' },
|
|
],
|
|
},
|
|
{
|
|
name: 'cards',
|
|
type: 'array',
|
|
label: 'Cards',
|
|
fields: [
|
|
{ name: 'title', type: 'text', label: 'Title', required: true },
|
|
{ name: 'subtitle', type: 'text', label: 'Subtitle / Category' },
|
|
],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
}
|