backend:
  name: github
  repo: theEdgeHq/edge-website
  branch: main # Branch to update (optional; defaults to master)

# This line should *not* be indented
media_folder: 'src/assets/images/uploads' # Media files will be stored in the repo under images/uploads
public_folder: '../../assets/images/uploads' # HACk to make image references work inside content folder

collections:
  - name: 'projects_config'
    label: 'Projects Config'
    folder: 'src/content/projectsConfig'
    create: false
    delete: false
    identifier_field: title
    fields:
      - { label: 'Title', name: 'title', widget: 'hidden', default: 'Config' }
      - {
          label: 'Featured Project',
          name: 'featured_project',
          widget: 'relation',
          collection: 'projects',
          value_field: 'id',
          display_fields: ['title'],
          search_fields: ['title'],
        }
      - label: 'Categories'
        name: 'categories'
        widget: list
        fields:
          - { label: 'Title', name: 'title', widget: 'string' }
          - { label: 'ID', name: 'id', widget: 'uuid' }
      - label: 'Tags'
        name: 'tags'
        widget: list
        fields:
          - { label: 'Title', name: 'title', widget: 'string' }
          - { label: 'ID', name: 'id', widget: 'uuid' }

  - name: 'projects' # Used in routes, e.g., /admin/collections/blog
    label: 'Projects' # Used in the UI
    label_singular: 'Project'
    folder: 'src/content/projects' # The path to the folder where the documents are stored
    create: true # Allow users to create new documents in this collection
    slug: '{{year}}-{{month}}-{{day}}-{{slug}}' # Filename template, e.g., YYYY-MM-DD-title.md
    fields: # The fields for each document, usually in front matter
      - { label: 'ID', name: 'id', widget: 'uuid' }
      - { label: 'Title', name: 'title', widget: 'string' }
      - { label: 'Summary', name: 'summary', widget: 'string' }
      - { label: 'Cover Image', name: 'poster', widget: 'image' }
      # - { label: 'Featured?', name: 'featured', widget: 'boolean', default: false }
      - {
          label: 'Category',
          name: 'category',
          widget: 'relation',
          collection: 'projects_config',
          value_field: 'categories.*.id',
          display_fields: ['categories.*.title'],
          search_fields: ['categories.*.title'],
        }
      - {
          label: 'Tags',
          name: 'tags',
          widget: 'relation',
          collection: 'projects_config',
          value_field: 'tags.*.id',
          display_fields: ['tags.*.title'],
          search_fields: ['tags.*.title'],
          multiple: true,
          min: 1,
          max: 5,
        }
      - { label: 'Publish Date', name: 'date', widget: 'datetime' }
      - { label: 'Body', name: 'body', widget: 'markdown' }

  - name: 'siteconfig'
    label: 'Site Config'
    folder: 'src/content/site'
    create: false
    delete: false
    identifier_field: title
    fields:
      - { label: 'Title', name: 'title', widget: 'hidden', default: 'Config' }
      - { label: 'Logo Image', name: 'logo', widget: 'image' }
      - {
          label: 'Navigation',
          name: 'nav_links',
          widget: list,
          fields:
            [
              { label: 'Link Text', name: 'label', widget: 'string' },
              { label: 'Relative URL', name: 'url', widget: 'string' },
            ],
        }
      - label: 'SEO Config'
        name: 'seo'
        widget: 'object'
        collapsed: false
        fields:
          - { label: 'Site Title', name: 'title', widget: 'string', default: EDGE }
          - { label: 'Description', name: 'description', widget: 'string' }
          - { label: 'Twitter Handle (with @)', name: 'twHandle', widget: 'string', required: false }
          - { label: 'OG Image', name: 'ogImage', widget: 'image' }

  - name: 'workPage'
    label: 'Work Page'
    folder: 'src/content/workPage'
    create: false
    delete: false
    identifier_field: title
    fields:
      - { label: 'Title', name: 'title', widget: 'hidden', default: 'Work Page' }
      - { label: 'Hero Text', name: 'heroText', widget: 'string', default: 'Our Work' }
      - { label: 'Hero Subtext', name: 'heroSubtext', widget: 'string' }

  - name: 'contact'
    label: 'Contact Page'
    folder: 'src/content/contactPage'
    create: false
    delete: false
    identifier_field: title
    fields:
      - { label: 'Title', name: 'title', widget: 'hidden', default: 'Contact Us' }
      - { label: 'Hero Text', name: 'heroText', widget: 'string', default: 'Nice to Meet You!' }
      - { label: 'Hero Subtext', name: 'heroSubtext', widget: 'string', default: 'We would love to hear from you.' }
      - { label: 'Hero Image', name: 'heroImage', widget: 'image' }
      - { label: 'Email', name: 'email', widget: 'string' }
      - { label: 'Email subtext', name: 'emailSubtext', widget: 'string' }
      - { label: 'Address', name: 'address', widget: 'string' }
      - { label: 'Address subtext', name: 'addressSubtext', widget: 'string' }
      - { label: 'Address link', name: 'addressLink', widget: 'string' }
      - { label: 'Phone', name: 'phone', widget: 'string' }
      - { label: 'Phone subtext', name: 'phoneSubtext', widget: 'string' }

  - name: 'team_members'
    label: 'Team/Team Members'
    label_singular: 'Team Member'
    folder: 'src/content/teamMembers'
    create: true
    identifier_field: memberName
    fields:
      - { label: 'Name', name: 'memberName', widget: 'string' }
      - { label: 'Functional Vertical', name: 'memeberFunctionalVertical', widget: 'string' }
      - { label: 'About', name: 'aboutMember', widget: 'string' }
      - { label: 'X Profile', name: 'memberXProfile', widget: 'string', required: false }
      - { label: 'LinkedIn Profile', name: 'memberLinkedInProfile', widget: 'string', required: false }
      - { label: 'Profile Image', name: 'memberProfileImage', widget: 'image' }

  - name: 'advisors'
    label: 'Team/Advisors'
    label_singular: 'Advisor'
    folder: 'src/content/advisors'
    create: true
    identifier_field: advisorName
    fields:
      - { label: 'Name', name: 'advisorName', widget: 'string' }
      - { label: 'Functional Vertical', name: 'advisorFunctionalVertical', widget: 'string' }
      - { label: 'About', name: 'aboutAdvisor', widget: 'string' }
      - { label: 'X Profile', name: 'advisorXProfile', widget: 'string', required: false }
      - { label: 'LinkedIn Profile', name: 'advisorLinkedInProfile', widget: 'string', required: false }
      - { label: 'Profile Image', name: 'advisorProfileImage', widget: 'image' }

  - name: 'team_page_config'
    label: 'Team Page Config'
    folder: 'src/content/teamPageConfig'
    create: false
    delete: false
    fields:
      - { label: 'Title', name: 'title', widget: 'string' }
      - { label: 'Team Member Hero Text', name: 'memberHeroText', widget: 'string' }
      - { label: 'Team Member Subtext', name: 'memberSubtext', widget: 'string' }
      - { label: 'Advisor Hero Text', name: 'advisorHeroText', widget: 'string' }
      - { lable: 'Advisor Subtext', name: 'advisorSubtext', widget: 'string' }

  - name: 'partners'
    label: 'Partners List'
    label_singular: 'Partner'
    folder: 'src/content/partners'
    identifier_field: partnerName
    create: true
    fields:
      - { label: 'ID', name: 'id', widget: 'uuid' }
      - { label: 'Partner Name', name: 'partnerName', widget: 'string' }
      # - { label: 'Is Featured Partner?', name: 'isFeatured', widget: 'boolean', default: false }
      - { label: 'Partner Logo', name: 'partnerLogo', widget: 'image' }

  - name: 'home_page_hero_section_config'
    label: 'Home/Hero Section'
    folder: 'src/content/heroSection'
    create: false
    delete: false
    identifier_field: title
    fields:
      - { label: 'Title', name: 'title', widget: 'hidden', default: 'Hero Section' }
      - { label: 'Hero Text', name: 'heroText', widget: 'string' }
      - label: 'Hero Button'
        name: 'heroButton'
        widget: 'object'
        collapsed: false
        fields:
          - { label: 'Label', name: 'label', widget: 'string' }
          - { label: 'Link', name: 'link', widget: 'string' }

  - name: 'home_page_partner_section_config'
    label: 'Home/Partner Section'
    folder: 'src/content/partnerSection'
    create: false
    delete: false
    identifier_field: title
    fields:
      - { label: 'Title', name: 'title', widget: 'hidden', default: 'Partner Section' }
      - { label: 'Partner Hero Text', name: 'partnerHeroText', widget: 'string' }
      - {
          label: 'Featured Partners',
          name: 'featuredPartners',
          widget: 'relation',
          collection: 'partners',
          value_field: 'id',
          display_fields: ['partnerName'],
          search_fields: ['partnerName'],
          multiple: true,
        }

  - name: 'home_page_project_section_config'
    label: 'Home/Projects Section'
    folder: 'src/content/projectSection'
    create: false
    delete: false
    identifier_field: title
    fields:
      - { label: 'Title', name: 'title', widget: 'hidden', default: 'Projects Section' }
      - { label: 'Hero Text', name: 'heroText', widget: 'string' }
      - { label: 'Subtext', name: 'subText', widget: 'string' }
      - { label: 'Button Text', name: 'buttonText', widget: 'string' }

  - name: 'values_section_config'
    label: 'Home/Values Section'
    folder: 'src/content/valuesSection'
    create: false
    delete: false
    identifier_field: title
    fields:
      - { label: 'Title', name: 'title', widget: 'hidden', default: 'Values Section' }
      - { label: 'Featured Text', name: 'featuredText', widget: 'string' }
      - { label: 'Hero Text', name: 'heroText', widget: 'string' }
      - { label: 'Subtext', name: 'subText', widget: 'string' }
      - label: 'Values'
        name: 'values'
        widget: list
        fields:
          - { label: 'Value', name: 'value', widget: 'string' }
          - { label: 'Explanation', name: 'explanation', widget: 'string' }
          - { label: 'Value Icon', name: 'valueIcon', widget: 'image' }

  - name: 'metrics_section_config'
    label: 'Home/Metrics Section'
    folder: 'src/content/metricSection'
    create: false
    delete: false
    identifier_field: title
    fields:
      - { label: 'Title', name: 'title', widget: 'hidden', default: 'Metrics Section' }
      - { label: 'Hero Text', name: 'heroText', widget: 'string' }
      - { label: 'Subtext', name: 'subText', widget: 'string' }
      - label: 'Metrics'
        name: 'metrics'
        widget: list
        fields:
          - { label: 'Metric Label', name: 'metricLabel', widget: 'string' }
          - { label: 'Metric', name: 'metric', widget: 'string' }

  - name: 'testimonials'
    label: 'Home/Testimonials Section'
    label_singular: 'Testimonial'
    folder: 'src/content/testimonials'
    create: true
    identifier_field: author
    fields:
      - { label: 'Author', name: 'author', widget: 'string' }
      - { label: 'Author Bio', name: 'authorBio', widget: 'string' }
      - { label: 'Testimonial', name: 'testimonial', widget: 'string' }
      - { label: 'Organization Logo', name: 'organizationLogo', widget: 'image' }
      - { label: "Author's Picture", name: 'authorPic', widget: 'image' }

  - name: 'techweuse_section_config'
    label: 'Home/TechWeUse Section'
    folder: 'src/content/techWeUseSection'
    create: false
    delete: false
    identifier_field: title
    fields:
      - { label: 'Title', name: 'title', widget: 'hidden', default: 'TechWeUse Section' }
      - { label: 'Hero Text', name: 'heroText', widget: 'string' }
      - { label: 'Subtext', name: 'subText', widget: 'string' }
      - label: 'Technologies'
        name: 'technologies'
        widget: list
        fields:
          - { label: 'Tech Name', name: 'techName', widget: 'string' }
          - { label: 'Tech Description', name: 'techDescription', widget: 'string' }
          - { label: 'Tech Icon', name: 'techIcon', widget: 'image' }

  - name: 'get_in_touch_config'
    label: 'GetInTouch Section'
    folder: 'src/content/getInTouch'
    create: false
    delete: false
    identifier_field: title
    fields:
      - { label: 'Title', name: 'title', widget: 'hidden', default: 'GetInTouch Section' }
      - { label: 'Hero Text', name: 'heroText', widget: 'string' }
      - { label: 'SubText', name: 'subText', widget: 'string' }
      - { label: 'Button Text', name: 'buttonText', widget: 'string' }
