name: content
uploadPath: ../media/page

meta:
    label: Inhalt
    muiIcon: tableOfContents
    allowExportAll: true
    backup:
        active: true
        collectionName: backups
    defaultSort:
        field: sort
        order: MANUALLY
    views:
        - type: simpleList
          selectionPriority: 0
          primaryText: pageTitle
          secondaryText: path
          mediaQuery: "(min-width: 0px)"
          tertiaryText: type
        - type: table
          selectionPriority: 1
          mediaQuery: "(min-width: 700px)"
          columns:
              - source: type
                name: Typ
                filter: true
              - source: path
                name: Pfad
                filter: true
              - source: pageTitle
                name: Titel
                filter: true
              - source: active
                name: Aktiv
                filter: true

    tablist:
        activeTab: general
        tabs:
            - name: general
              label: Allgemein
              subFields:
                  - source: path
                  - source: pageTitle
                  - source: type
                  - source: active
                  - source: sort

            - name: teaser
              label: Homepage Seitenteaser
              subFields:
                  - source: teaser

            - name: site
              label: Seite
              subFields:
                  - source: rows

            - name: meta
              label: Meta
              subFields:
                  - source: meta

    subNavigation:
        - name: seite
          label:
              de: Seiten
              en: pages
          muiIcon: book-open-page-variant
          defaultSort:
              field: "sort"
              order: "MANUALLY"
          setDefault:
              field: type
              value: page

          views:
              - type: table
                columns:
                    - source: path
                      name: Pfad
                      filter: true
                    - source: pageTitle
                      name: Titel
                      filter: true
                    - source: active
                      name: Aktiv
                      filter: true
          filter:
              type: page

permissions:
    public:
        methods:
            get: true
            post: false
            put: false
            delete: false
    user:
        methods:
            get: true
            post: true
            put: true
            delete: true

hooks:
    post:
        return:
            type: javascript
            file: hooks/clear_cache.js
    put:
        return:
            type: javascript
            file: hooks/clear_cache.js

projections:
    navigation:
        select:
            path: 1

fields:
    - type: string
      name: path
      meta:
          label:
              de: Pfad
              en: Path
          helperText:
              de: "Ein Pfad sollte mit einem / starten und ohne eins enden."
              en: "A path should start with a / and end without one."
          containerProps:
              layout:
                  size:
                      default: "col-6"
                      small: "col-12"
                      large: "col-6"

    - !include fields/active.yml
    - !include fields/contentType.yml

    - !include fields/pageTitle.yml
    - !include fields/rows.yml

    - name: meta
      type: object
      meta:
          label:
              de: Meta Agaben
              en: Meta Data
          dependsOn:
              eval: $.type == "page"
      subFields: !include fieldLists/meta.yml

    - !include fields/manualSort.yml
