backend:
  name: github
  branch: main
  repo: d1sc0/robyn-mackenzie-com

media_folder: 'public/images'
public_folder: '/images'

collections:
  - name: 'posts'
    label: 'Blog Posts'
    folder: 'src/content/posts'
    create: true
    slug: '{{slug}}'
    extension: 'mdx'
    format: 'yaml-frontmatter'
    media_folder_relative: true
    sortable_fields: ['title', 'pubDate']
    default_sort:
      - { field: pubDate, direction: descending }
    fields:
      - { label: 'Title', name: 'title', widget: 'string' }
      - { label: 'Date', name: 'pubDate', widget: 'datetime' }
      - { label: 'Description', name: 'description', widget: 'text' }
      - { label: 'Draft', name: 'draft', widget: 'boolean', default: false, required: false }
      - { label: 'Category', name: 'category', widget: 'string', default: 'Thoughts', required: false }
      - { label: 'Feature Image', name: 'featureImage', widget: 'image', required: false }
      - { label: 'Tags', name: 'tags', widget: 'list', required: false }
      - { label: 'Body', name: 'body', widget: 'markdown' }

  - name: 'work'
    label: 'Portfolio / Work'
    folder: 'src/content/work'
    create: true
    slug: '{{slug}}'
    extension: 'md'
    format: 'yaml-frontmatter'
    media_folder_relative: true
    sortable_fields: ['order', 'title', 'pubDate']
    default_sort:
      - { field: order, direction: ascending }
    fields:
      - { label: 'Title', name: 'title', widget: 'string' }
      - { label: 'Date', name: 'pubDate', widget: 'datetime', required: false }
      - { label: 'Featured on Homepage', name: 'featured', widget: 'boolean', default: true }
      - { label: 'Display Order', name: 'order', widget: 'number', default: 1 }
      - { label: 'Client', name: 'client', widget: 'string', required: false }
      - { label: 'Industry / Type', name: 'industry', widget: 'string', required: false }
      - { label: 'Year', name: 'year', widget: 'string', required: false }
      - { label: 'Role / Discipline', name: 'role', widget: 'string', required: false }
      - { label: 'Cover / Feature Image', name: 'featureImage', widget: 'image', required: false }
      - { label: 'Summary Description', name: 'description', widget: 'text' }
      - { label: 'The Challenge', name: 'challenge', widget: 'markdown', required: false }
      - { label: 'The Result', name: 'result', widget: 'markdown', required: false }
      - { label: 'Tags', name: 'tags', widget: 'list', required: false }
      - { label: 'Full Case Study Body', name: 'body', widget: 'markdown' }

  - name: 'pages'
    label: 'Pages'
    folder: 'src/content/pages'
    create: true
    slug: '{{slug}}'
    extension: 'mdx'
    format: 'yaml-frontmatter'
    media_folder_relative: true
    fields:
      - { label: 'Title', name: 'title', widget: 'string' }
      - { label: 'Description', name: 'description', widget: 'text', required: false }
      - { label: 'Feature Image', name: 'featureImage', widget: 'image', required: false }
      - { label: 'Body', name: 'body', widget: 'markdown' }

  - name: 'galleries'
    label: 'Image Galleries'
    files:
      - file: 'src/content/galleries.yaml'
        label: 'Galleries Data'
        name: 'galleries_data'
        fields:
          - label: 'Galleries'
            name: 'galleries'
            widget: 'list'
            summary: '{{fields.title}} ({{fields.id}})'
            fields:
              - { label: 'Gallery ID', name: 'id', widget: 'string' }
              - { label: 'Title', name: 'title', widget: 'string' }
              - { label: 'Description', name: 'description', widget: 'string', required: false }
              - label: 'Images'
                name: 'images'
                widget: 'list'
                fields:
                  - { label: 'Image', name: 'src', widget: 'image' }
                  - { label: 'Alt Text', name: 'alt', widget: 'string', required: false }
                  - { label: 'Caption', name: 'caption', widget: 'string', required: false }

  - name: 'navigation_main'
    label: 'Main Site Menu'
    files:
      - file: 'src/content/main-nav.json'
        label: 'Main Site Menu'
        name: 'main_menu'
        fields:
          - label: 'Links'
            name: 'links'
            widget: 'list'
            fields:
              - { label: 'Label', name: 'label', widget: 'string' }
              - { label: 'URL', name: 'url', widget: 'string' }
              - { label: 'Icon (optional)', name: 'icon', widget: 'string', required: false }

  - name: 'navigation_footer'
    label: 'Footer Menu'
    files:
      - file: 'src/content/footer-nav.json'
        label: 'Footer Menu'
        name: 'footer_menu'
        fields:
          - label: 'Links'
            name: 'links'
            widget: 'list'
            fields:
              - { label: 'Label', name: 'label', widget: 'string' }
              - { label: 'URL', name: 'url', widget: 'string' }

  - name: 'social_links'
    label: 'Social Links'
    files:
      - file: 'src/content/social-links.json'
        label: 'Social Links'
        name: 'social_links'
        fields:
          - label: 'Links'
            name: 'links'
            widget: 'list'
            fields:
              - { label: 'Label', name: 'label', widget: 'string' }
              - { label: 'URL', name: 'url', widget: 'string' }
              - { label: 'Icon', name: 'icon', widget: 'string' }
              - { label: 'Aria Label', name: 'aria', widget: 'string' }
