import type { CollectionConfig } from 'payload'
import { anyone, isEditorOrAdmin } from '../access/roles'
import { loc } from '../fields/localized'

export const CityScenes: CollectionConfig = {
  slug: 'cityScenes',
  admin: { useAsTitle: 'label', group: '3PL', defaultColumns: ['order', 'label'] },
  access: { read: anyone, create: isEditorOrAdmin, update: isEditorOrAdmin, delete: isEditorOrAdmin },
  versions: { drafts: true },
  defaultSort: 'order',
  fields: [
    { name: 'order', type: 'number', required: true, defaultValue: 0 },
    { name: 'sceneId', type: 'text', required: true, admin: { description: 'Stable id, e.g. city-rush' } },
    { name: 'label', type: 'text', required: true, ...loc },
    { name: 'image', type: 'upload', relationTo: 'media', admin: { description: 'Upload to replace the placeholder.' } },
    {
      name: 'fallbackImg', type: 'text',
      admin: { description: 'Path used until a real image is uploaded (keeps the site intact). Do not delete.' },
    },
  ],
}
