backend:
  name: github
  repo: netlify/netlify-cms
  squash_merges: true
  open_authoring: true

local_backend: true

site_url: https://www.netlifycms.org

publish_mode: editorial_workflow

media_folder: website/static/img
public_folder: /img

docs_collection: &docs_collection
  folder: website/content/docs
  create: true
  summary: '{{weight}} - {{title}}'
  preview_path: 'docs/{{slug}}'
  sortableFields: ['weight', 'title', 'group']
  fields:
    - label: Section
      name: group
      widget: relation
      collection: settings
      file: docs_sections
      searchFields: ["menu.docs.*.name", "menu.docs.*.title"]
      displayFields: ["menu.docs.*.title"]
      valueField: "menu.docs.*.name"
    - { label: 'Order', name: weight, widget: number }
    - { label: Title, name: title }
    - { label: Body, name: body, widget: markdown }

word_list: &word_list
  fields:
    - label: Extends
      name: extends
      widget: hidden
      default: "existence"
    - label: Output message
      name: message
      widget: string
    - label: Ignore Case
      name: ignorecase
      widget: boolean
      default: true
      required: false
    - label: Notification Level
      name: level
      widget: select
      default: suggestion
      options:
        - {label: "Suggestion", value: "suggestion"}
        - {label: "Warning", value: "warning"}
        - {label: "Error", value: "error"}
    - label: Entries
      name: tokens
      widget: list

collections:
  - label: Settings
    name: settings
    hide: true
    files:
      - label: Docs Sections
        name: docs_sections
        file: website/site.yml
        fields:
            - label: menu
              name: menu
              widget: object
              fields:
              - label: Sections
                label_singular: Section
                name: docs
                widget: list
                summary: '{{title}} ({{name}})'
                fields:
                  - { label: 'Full Name', name: 'title', widget: 'string' }
                  - { label: 'Summary Name', name: 'name', widget: 'string' }
  - label: Style & Usage Options
    name: linter
    hide: false
    files:
        - <<: *word_list
          label: Acronyms
          name: acronyms
          file: website/src/writing-guide/styles/Avoid/Acronyms.yml
        - <<: *word_list
          label: Adverbs
          name: adverbs
          file: website/src/writing-guide/styles/Avoid/Adverbs.yml
        - <<: *word_list
          label: Archaisms
          name: archaisms
          file: website/src/writing-guide/styles/Avoid/Archaisms.yml
        - <<: *word_list
          label: Cliches
          name: cliches
          file: website/src/writing-guide/styles/Avoid/Cliches.yml
        - <<: *word_list
          label: Hyperbole
          name: hyperbole
          file: website/src/writing-guide/styles/Avoid/Hyperbole.yml
        - <<: *word_list
          label: Indirect Language
          name: indirect
          file: website/src/writing-guide/styles/Avoid/Indirect.yml
        - <<: *word_list
          label: Jargon
          name: jargon
          file: website/src/writing-guide/styles/Avoid/Jargon.yml
        - <<: *word_list
          label: Passive
          name: passive
          file: website/src/writing-guide/styles/Avoid/Passive.yml
        - <<: *word_list
          label: Simplify
          name: simplify
          file: website/src/writing-guide/styles/Avoid/Simplify.yml

  - <<: *docs_collection
    name: docs_intro
    label: 'Docs: Intro'
    filter:
      field: group
      value: Intro
  - <<: *docs_collection
    name: docs_accounts
    label: 'Docs: Account'
    filter:
      field: group
      value: Accounts
  - <<: *docs_collection
    name: docs_configuration
    label: 'Docs: Configuration'
    filter:
      field: group
      value: Configuration
  - <<: *docs_collection
    name: docs_media
    label: 'Docs: Media'
    filter:
      field: group
      value: Media
  - <<: *docs_collection
    name: docs_workflow
    label: 'Docs: Workflow'
    filter:
      field: group
      value: Workflow
  - <<: *docs_collection
    name: docs_collections
    label: 'Docs: Collections'
    filter:
      field: group
      value: Collections
  - <<: *docs_collection
    name: docs_fields
    label: 'Docs: Fields'
    filter:
      field: group
      value: Fields
  - <<: *docs_collection
    name: docs_guides
    label: 'Docs: Guides'
    filter:
      field: group
      value: Guides
  - <<: *docs_collection
    name: docs_customization
    label: 'Docs: Customization'
    filter:
      field: group
      value: Customization
  - <<: *docs_collection
    name: docs_contributing
    label: 'Docs: Contributing'
    filter:
      field: group
      value: Contributing
  - name: widget_docs
    label: 'Docs: Widgets'
    folder: website/content/docs/widgets
    preview_path: 'docs/widgets/{{title}}'
    create: true
    fields:
      - { label: Name, name: title }
      - { label: Label, name: label }
      - { label: Body, name: body, widget: markdown }
  - name: blog
    label: Blog
    label_singular: Post
    folder: website/content/blog
    preview_path: 'blog/{{year}}/{{month}}/{{title}}'
    create: true
    fields:
      - { label: Title, name: title }
      - { label: Author, name: author }
      - { label: Description (for blog list), name: description, widget: text }
      - {
          label: Meta Description (defaults to Description),
          name: meta_description,
          widget: text,
          required: false,
        }
      - { label: Twitter Image, name: twitter_image, widget: image }
      - { label: Date, name: date, widget: date }
      - { label: Body, name: body, widget: markdown }
  - name: community
    label: Community
    files:
      - name: community
        label: Community
        file: website/content/pages/community.md
        preview_path: community
        fields:
          - { label: Title, name: title }
          - { label: Headline, name: headline }
          - { label: Subheading, name: subhead }
          - label: Sections
            name: sections
            widget: list
            fields:
              - { name: title, label: Title }
              - name: channels
                label: Channels
                widget: list
                fields:
                  - { name: title, label: Title }
                  - { name: url, label: URL }
                  - { name: description, label: Description }
  - name: updates
    label: Updates
    files:
      - name: releases
        label: Releases
        file: website/data/updates.yml
        fields:
          - name: updates
            label: Releases
            widget: list
            fields:
              - { name: version, label: Version }
              - { name: date, label: Date, widget: date }
              - { name: description, label: Description }
              - { name: url, label: Url, required: false }
      - name: notifications
        label: Notifications
        file: website/data/notifications.yml
        description: Site-top notifications - publish one at a time
        fields:
          - name: notifications
            label: Notifications
            widget: list
            fields:
              - { label: Title, name: title }
              - { label: Published, name: published, widget: boolean }
              - { label: Loud, name: loud, widget: boolean }
              - { label: Message, name: message, widget: text }
              - { label: URL, name: url }