import { defineField, defineType } from 'sanity' export const categoryType = defineType({ name: 'category', title: 'Категория', type: 'document', icon: () => '📁', fields: [ defineField({ name: 'title', title: 'Название', type: 'string', validation: (Rule) => Rule.required().min(2).max(50), }), defineField({ name: 'slug', title: 'Slug', type: 'slug', options: { source: 'title', maxLength: 96, }, validation: (Rule) => Rule.required(), }), defineField({ name: 'description', title: 'Описание', type: 'text', rows: 3, }), defineField({ name: 'color', title: 'Цвет', type: 'string', description: 'HEX цвет для бейджа (например: #FFD700)', validation: (Rule) => Rule.regex(/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/, { name: 'hex color', invert: false, }).warning('Используйте HEX формат: #RRGGBB'), }), ], preview: { select: { title: 'title', subtitle: 'description', }, prepare({ title, subtitle }) { return { title, subtitle: subtitle ? subtitle.slice(0, 50) + '...' : '', } }, }, })