backend:
  name: github
  repo: adiniculae/adiniculae-site
  branch: main
  base_url: https://adiniculae.cc
  auth_endpoint: api/decap/auth
  auth_scope: repo
  site_domain: adiniculae.cc
  use_graphql: true
  cms_label_prefix: editor/

publish_mode: editorial_workflow
site_url: https://adiniculae.cc
display_url: https://adiniculae.cc
logo_url: /images/af-project.svg
locale: ro
show_preview_links: true
search: true

slug:
  encoding: ascii
  clean_accents: true
  sanitize_replacement: "-"

media_folder: public/uploads/images
public_folder: /uploads/images

collections:
  - name: siteSettings
    label: Setări site
    files:
      - name: authors
        label: Autori și avatare
        file: src/data/authors.json
        format: json
        fields:
          - label: Autori
            name: authors
            widget: list
            collapsed: false
            summary: "{{fields.name}}"
            fields:
              - label: Nume afișat
                name: name
                widget: string
                hint: "Trebuie să coincidă cu numele folosit în câmpul Autor al articolului."
              - label: Avatar
                name: avatar
                widget: image
                required: false
                media_folder: /public/uploads/images/authors
                public_folder: /uploads/images/authors
              - label: Descriere avatar
                name: avatarAlt
                widget: string
                required: false
              - label: Inițiale de rezervă
                name: initials
                widget: string
                required: false
                hint: "Sunt afișate când autorul nu are avatar."
      - name: siteCopy
        label: Texte pagini și categorii
        file: src/data/site-copy.json
        format: json
        fields:
          - label: Texte generale
            name: global
            widget: object
            collapsed: true
            fields:
              - { label: Subtitlu site, name: tagline, widget: string }
              - { label: Text footer, name: footer, widget: string }
          - label: Pagina Acasă
            name: home
            widget: object
            collapsed: true
            summary: "{{fields.title}}"
            fields:
              - {
                  label: Etichetă deasupra titlului,
                  name: eyebrow,
                  widget: string,
                }
              - { label: Titlu principal, name: title, widget: string }
              - { label: Introducere, name: intro, widget: text }
              - {
                  label: Titlu ultimele texte,
                  name: latestPostsTitle,
                  widget: string,
                }
              - {
                  label: Titlu proiecte muzicale,
                  name: projectsTitle,
                  widget: string,
                }
              - { label: Titlu categorii, name: categoriesTitle, widget: string }
              - { label: Titlu ani, name: yearsTitle, widget: string }
              - { label: Titlu arhivă, name: archiveTitle, widget: string }
          - label: Pagina Blog
            name: blog
            widget: object
            collapsed: true
            summary: "{{fields.title}}"
            fields:
              - { label: Titlu, name: title, widget: string }
              - { label: Introducere, name: intro, widget: text }
          - label: Pagina Song of the Day
            name: songOfTheDay
            widget: object
            collapsed: true
            summary: "{{fields.title}}"
            fields:
              - { label: Titlu, name: title, widget: string }
              - { label: Introducere, name: intro, widget: text }
              - {
                  label: Text buton playlist,
                  name: playlistButton,
                  widget: string,
                }
          - label: Pagina Playlist
            name: playlist
            widget: object
            collapsed: true
            summary: "{{fields.title}}"
            fields:
              - { label: Titlu, name: title, widget: string }
              - label: Text după numărul pieselor
                name: intro
                widget: text
                hint: "Numărul pieselor este adăugat automat înaintea acestui text."
              - { label: Etichetă căutare, name: searchLabel, widget: string }
              - {
                  label: Exemplu căutare,
                  name: searchPlaceholder,
                  widget: string,
                }
          - label: Pagina Lirice
            name: lirice
            widget: object
            collapsed: true
            summary: "{{fields.title}}"
            fields:
              - { label: Titlu, name: title, widget: string }
              - { label: Introducere, name: intro, widget: text }
              - {
                  label: Titlu cele mai recente,
                  name: latestTitle,
                  widget: string,
                }
              - label: Rime de mine
                name: rimeDeMine
                widget: object
                collapsed: true
                summary: "{{fields.title}}"
                fields:
                  - { label: Titlu, name: title, widget: string }
                  - { label: Etichetă, name: label, widget: string }
                  - { label: Descriere, name: description, widget: text }
              - label: Rime de bine
                name: rimeDeBine
                widget: object
                collapsed: true
                summary: "{{fields.title}}"
                fields:
                  - { label: Titlu, name: title, widget: string }
                  - { label: Etichetă, name: label, widget: string }
                  - { label: Descriere, name: description, widget: text }
          - label: Pagina Proiecte muzicale
            name: projects
            widget: object
            collapsed: true
            summary: "{{fields.title}}"
            fields:
              - { label: Titlu, name: title, widget: string }
              - { label: Introducere, name: intro, widget: text }
          - label: Categorii Blog
            name: categories
            widget: object
            collapsed: true
            fields:
              - label: Gânduri în rânduri
                name: ganduriInRanduri
                widget: object
                collapsed: true
                summary: "{{fields.name}}"
                fields:
                  - { label: Nume, name: name, widget: string }
                  - { label: Descriere, name: description, widget: text }
              - label: Backstage
                name: backstage
                widget: object
                collapsed: true
                summary: "{{fields.name}}"
                fields:
                  - { label: Nume, name: name, widget: string }
                  - { label: Descriere, name: description, widget: text }
              - label: Feelin’ the blanks
                name: feelinTheBlanks
                widget: object
                collapsed: true
                summary: "{{fields.name}}"
                fields:
                  - { label: Nume, name: name, widget: string }
                  - { label: Descriere, name: description, widget: text }
              - label: Filme și seriale
                name: filmeSiSeriale
                widget: object
                collapsed: true
                summary: "{{fields.name}}"
                fields:
                  - { label: Nume, name: name, widget: string }
                  - { label: Descriere, name: description, widget: text }
  - name: projectEntries
    label: Povești proiecte muzicale
    label_singular: Material de proiect
    folder: src/content/project-entries
    create: true
    delete: true
    extension: md
    format: yaml-frontmatter
    identifier_field: title
    slug: "{{fields.slug}}"
    preview_path: "proiecte-muzicale/{{fields.project}}/{{fields.slug}}/"
    summary: "{{publicationDate}} · {{project}} · {{title}}"
    thumbnail: cardImage
    sortable_fields:
      fields: [publicationDate, title, author, legacyPostId]
      default:
        field: publicationDate
        direction: descending
    editor:
      preview: false
    fields:
      - label: Titlu
        name: title
        widget: string
      - label: Adresă scurtă
        name: slug
        widget: string
        hint: "Fără spații sau diacritice, de exemplu: povestea-inceputului"
        pattern:
          - "^[a-z0-9]+(?:-[a-z0-9]+)*$"
          - "Folosește doar litere mici, cifre și cratime."
      - label: Proiect
        name: project
        widget: select
        options:
          - label: A.F. Project
            value: af-project
          - label: ABSOLUT
            value: absolut
          - label: JinX
            value: jinx
          - label: Bear in Motion
            value: bear-in-motion
      - label: Tip material
        name: entryType
        widget: select
        options:
          - label: Poveste
            value: poveste
          - label: Concert / eveniment
            value: concert-eveniment
          - label: Arhivă vizuală
            value: arhiva-vizuala
          - label: Echipament
            value: echipament
          - label: Piesă / înregistrare
            value: piesa-inregistrare
          - label: Notițe de proiect
            value: notite-de-proiect
      - label: Data publicării
        name: publicationDate
        widget: datetime
        time_format: false
        format: YYYY-MM-DD
        date_format: DD.MM.YYYY
      - label: Data ultimei revizuiri
        name: updatedDate
        widget: datetime
        required: false
        time_format: false
        format: YYYY-MM-DD
        date_format: DD.MM.YYYY
      - label: Autor
        name: author
        widget: string
        default: Adi Niculae
      - label: Introducere scurtă
        name: excerpt
        widget: text
        hint: "Textul afișat pe cardul materialului și în descrierea paginii."
      - label: Imagine card
        name: cardImage
        widget: image
        required: false
        hint: "Imagine dominantă în listă. Pregătește exact 1632 × 800 px, raportul vechi 510:250. Este afișată integral, fără crop sau zoom."
        media_folder: /public/uploads/images/cards
        public_folder: /uploads/images/cards
        media_library:
          config:
            max_file_size: 8000000
      - label: Descriere imagine card
        name: cardImageAlt
        widget: string
        required: false
      - label: Imagine principală în articol (opțional)
        name: featuredImage
        widget: image
        required: false
        hint: "Nu este imaginea cardului. Adaug-o numai când fotografia trebuie să apară efectiv în articol; se afișează integral."
        media_folder: /public/uploads/images/covers
        public_folder: /uploads/images/covers
        media_library:
          config:
            max_file_size: 12000000
      - label: Descriere imagine principală
        name: featuredImageAlt
        widget: string
        required: false
      - label: Galerie
        name: gallery
        widget: list
        required: false
        collapsed: true
        summary: "{{fields.caption}}"
        fields:
          - label: Imagine
            name: src
            widget: image
            media_folder: /public/uploads/images/galleries
            public_folder: /uploads/images/galleries
            media_library:
              config:
                max_file_size: 12000000
          - label: Text alternativ
            name: alt
            widget: string
          - label: Legendă
            name: caption
            widget: string
            required: false
      - label: Înregistrări audio
        name: audioFiles
        widget: list
        required: false
        collapsed: true
        summary: "{{fields.title}}"
        fields:
          - label: Titlu
            name: title
            widget: string
          - label: Fișier audio
            name: src
            widget: file
            multiple: false
            choose_url: true
            media_folder: /public/uploads/audio
            public_folder: /uploads/audio
          - label: Notă
            name: caption
            widget: text
            required: false
      - label: ID YouTube
        name: youtubeId
        widget: string
        required: false
        hint: "Doar ID-ul de după v=, nu adresa completă."
      - label: Linkuri video suplimentare
        name: videoLinks
        widget: list
        required: false
        collapsed: true
        fields:
          - label: Etichetă
            name: label
            widget: string
          - label: URL
            name: url
            widget: string
      - label: Linkuri audio suplimentare
        name: audioLinks
        widget: list
        required: false
        collapsed: true
        fields:
          - label: Etichetă
            name: label
            widget: string
          - label: URL
            name: url
            widget: string
      - label: Serie
        name: series
        widget: string
        required: false
        hint: "Aceeași valoare grupează mai multe capitole."
      - label: Număr în serie
        name: seriesOrder
        widget: number
        required: false
        value_type: int
        min: 1
      - label: Poezie asociată
        name: relatedLyric
        widget: string
        required: false
        hint: "Slugul textului din secțiunea Lirice."
      - label: Ascuns din site
        name: draft
        widget: boolean
        default: false
      - label: Evidențiat
        name: featured
        widget: boolean
        default: false
      - label: URL vechi
        name: legacyUrl
        widget: hidden
        required: false
      - label: ID WordPress
        name: legacyPostId
        widget: hidden
        required: false
      - label: Data migrării
        name: migratedAt
        widget: hidden
        required: false
      - label: Conținut
        name: body
        widget: markdown
        buttons:
          - bold
          - italic
          - code
          - link
          - heading-two
          - heading-three
          - quote
          - bulleted-list
          - numbered-list
        editor_components:
          - image
          - code-block

  - name: posts
    label: Blog
    label_singular: Articol
    folder: src/content/posts
    create: true
    delete: true
    extension: md
    format: yaml-frontmatter
    identifier_field: title
    slug: "{{slug}}"
    preview_path: "blog/{{slug}}/"
    summary: "{{publicationDate}} · {{title}}"
    thumbnail: featuredImage
    sortable_fields:
      fields: [publicationDate, title, author, legacyPostId]
      default:
        field: publicationDate
        direction: descending
    editor:
      preview: false
    fields:
      - { label: Titlu, name: title, widget: string }
      - label: Adresă istorică
        name: slug
        widget: hidden
        default: ""
      - label: Data publicării
        name: publicationDate
        widget: datetime
        time_format: false
        format: YYYY-MM-DD
        date_format: DD.MM.YYYY
      - label: Data ultimei revizuiri
        name: updatedDate
        widget: datetime
        required: false
        time_format: false
        format: YYYY-MM-DD
        date_format: DD.MM.YYYY
      - label: Format articol
        name: articleFormat
        widget: select
        default: standard
        options:
          - { label: Articol normal, value: standard }
          - { label: Teleportat direct din Facebook, value: facebook-teleport }
      - label: Data originală Facebook
        name: facebookOriginalDate
        widget: datetime
        required: false
        time_format: false
        format: YYYY-MM-DD
        date_format: DD.MM.YYYY
      - label: Ora originală Facebook
        name: facebookOriginalTime
        widget: string
        required: false
        hint: "Format HH:mm. Se folosește numai pentru articolele teleportate."
      - label: Linkul postării originale
        name: facebookOriginalUrl
        widget: string
        required: false
      - label: Locația postării originale
        name: facebookLocation
        widget: string
        required: false
      - label: Textul original de pe Facebook
        name: facebookOriginalText
        widget: text
        required: false
      - label: Data teleportării pe blog
        name: facebookTeleportedDate
        widget: datetime
        required: false
        time_format: false
        format: YYYY-MM-DD
        date_format: DD.MM.YYYY
      - { label: Autor, name: author, widget: string, default: Adi Niculae }
      - label: Categorii
        name: categories
        widget: relation
        collection: blogCategories
        search_fields: [name, slug]
        value_field: slug
        display_fields: [name]
        multiple: true
        min: 1
      - { label: Introducere scurtă, name: excerpt, widget: text }
      - { label: Conținut, name: body, widget: markdown }
      - label: Imagine card (obligatorie, raport 510:250)
        name: featuredImage
        widget: image
        hint: "Imaginea curentă este afișată ca thumbnail în lista Adminului, inclusiv când provine din arhiva veche. Pregătește exact 1632 × 800 px pentru înlocuire."
        media_folder: /public/uploads/images/blog
        public_folder: /uploads/images/blog
      - { label: Descriere imagine card, name: featuredImageAlt, widget: string }
      - label: Imagine principală în articol (opțional)
        name: articleImage
        widget: image
        required: false
        hint: "Adaug-o numai când imaginea trebuie să apară efectiv în articol. Se afișează integral, fără crop."
        media_folder: /public/uploads/images/blog/articles
        public_folder: /uploads/images/blog/articles
      - { label: Descriere imagine principală, name: articleImageAlt, widget: string, required: false }
      - label: Galerie
        name: gallery
        widget: list
        required: false
        collapsed: true
        fields:
          - { label: Imagine, name: src, widget: image }
          - { label: Text alternativ, name: alt, widget: string }
          - { label: Legendă, name: caption, widget: string, required: false }
      - label: Actualizări ulterioare
        name: editorialUpdates
        widget: list
        required: false
        collapsed: true
        minimize_collapsed: true
        summary: "{{fields.addedAt}} · {{fields.title}}"
        hint: "Adaugă note noi fără să modifici textul original al articolului."
        fields:
          - label: Data și ora notei
            name: addedAt
            widget: datetime
            default: "{{now}}"
            date_format: DD.MM.YYYY
            time_format: HH:mm
            format: YYYY-MM-DDTHH:mm:ssZ
            picker_utc: false
          - label: Titlu
            name: title
            widget: string
            required: false
            hint: "De exemplu: Zece ani mai târziu"
          - label: Text
            name: body
            widget: text
          - label: Fotografie
            name: image
            widget: image
            required: false
            media_folder: /public/uploads/images/blog/updates
            public_folder: /uploads/images/blog/updates
          - label: Descriere fotografie
            name: imageAlt
            widget: string
            required: false
          - label: Link sau piesă
            name: linkUrl
            widget: string
            required: false
          - label: Etichetă link
            name: linkLabel
            widget: string
            required: false
          - label: Păstrează nota ca draft
            name: draft
            widget: boolean
            default: false
      - { label: ID YouTube, name: youtubeId, widget: string, required: false }
      - label: Permite comentarii noi
        name: commentsEnabled
        widget: boolean
        default: true
        hint: "Comentariile intră în moderare și nu necesită cont pe site."
      - label: Distribuire pe Facebook
        name: facebookMode
        widget: select
        required: false
        default: manual
        options:
          - { label: Nu distribui, value: none }
          - { label: Manual — folosesc butonul Postează acum, value: manual }
          - { label: Automat după publicarea pe site, value: auto }
      - label: Text Facebook
        name: facebookMessage
        widget: text
        required: false
        hint: "Opțional. Dacă rămâne gol, se folosește titlul articolului."
      - { label: Ascuns din site, name: draft, widget: boolean, default: false }
      - { label: Evidențiat, name: featured, widget: boolean, default: false }
      - { label: URL vechi, name: legacyUrl, widget: hidden, required: false }
      - {
          label: ID WordPress,
          name: legacyPostId,
          widget: hidden,
          required: false,
        }
      - {
          label: Data migrării,
          name: migratedAt,
          widget: hidden,
          required: false,
        }

  - name: blogCategories
    label: Categorii Blog
    label_singular: Categorie Blog
    folder: src/content/blog-categories
    create: true
    delete: false
    extension: json
    format: json
    identifier_field: name
    slug: "{{fields.slug}}"
    summary: "{{fields.sortOrder}} · {{fields.name}}"
    editor:
      preview: false
    fields:
      - { label: Nume, name: name, widget: string }
      - label: Adresă scurtă
        name: slug
        widget: string
        pattern:
          - "^[a-z0-9]+(?:-[a-z0-9]+)*$"
          - "Folosește doar litere mici, cifre și cratime. Nu modifica adresa unei categorii deja folosite."
      - {
          label: Descriere,
          name: description,
          widget: text,
          required: false,
          default: "",
        }
      - { label: Activă pe site, name: active, widget: boolean, default: true }
      - {
          label: Ordine,
          name: sortOrder,
          widget: number,
          value_type: int,
          min: 0,
          default: 100,
        }

  - name: songOfTheDay
    label: Song of the Day
    label_singular: Piesă
    folder: src/content/song-of-the-day
    create: true
    delete: true
    extension: md
    format: yaml-frontmatter
    identifier_field: title
    slug: "{{fields.slug}}"
    preview_path: "song-of-the-day/{{fields.slug}}/"
    summary: "{{publicationDate}} · #{{legacyPostId}} · {{author}} · {{artist}} — {{songTitle}}"
    thumbnail: featuredImage
    sortable_fields:
      fields: [publicationDate, title, author, lyricsStatus, legacyPostId]
      default:
        field: publicationDate
        direction: descending
    view_filters:
      - label: Cu versuri complete
        field: lyricsStatus
        pattern: "^full$"
      - label: Cu fragment de versuri
        field: lyricsStatus
        pattern: "^excerpt$"
      - label: Cu orice versuri
        field: lyricsStatus
        pattern: "^(full|excerpt)$"
      - label: "Adi"
        field: author
        pattern: "^Adi$"
      - label: "Adi Niculae"
        field: author
        pattern: "^Adi Niculae$"
      - label: "Alexandra"
        field: author
        pattern: "^Alexandra$"
      - label: "Anca"
        field: author
        pattern: "^Anca$"
      - label: "Capone"
        field: author
        pattern: "^Capone$"
      - label: "Flavia"
        field: author
        pattern: "^Flavia$"
      - label: "Gabri"
        field: author
        pattern: "^Gabri$"
      - label: "Hades"
        field: author
        pattern: "^Hades$"
      - label: "Issa May"
        field: author
        pattern: "^Issa May$"
      - label: "Joanna"
        field: author
        pattern: "^Joanna$"
      - label: "Julie"
        field: author
        pattern: "^Julie$"
      - label: "Kilya"
        field: author
        pattern: "^Kilya$"
      - label: "Leave Ya"
        field: author
        pattern: "^Leave Ya$"
      - label: "Marcel Necrutatoru"
        field: author
        pattern: "^Marcel Necrutatoru$"
      - label: "Mari"
        field: author
        pattern: "^Mari$"
      - label: "Marina"
        field: author
        pattern: "^Marina$"
      - label: "Raluca"
        field: author
        pattern: "^Raluca$"
      - label: "Rose"
        field: author
        pattern: "^Rose$"
      - label: "Roxy Foxy"
        field: author
        pattern: "^Roxy Foxy$"
      - label: "Simona"
        field: author
        pattern: "^Simona$"
      - label: "Spiță"
        field: author
        pattern: "^Spiță$"
    editor:
      preview: false
    fields:
      - { label: Titlu editorial, name: title, widget: string }
      - label: Adresă scurtă
        name: slug
        widget: string
        pattern:
          - "^[a-z0-9]+(?:-[a-z0-9]+)*$"
          - "Folosește doar litere mici, cifre și cratime."
      - label: Data publicării
        name: publicationDate
        widget: datetime
        time_format: false
        format: YYYY-MM-DD
        date_format: DD.MM.YYYY
      - { label: Autor, name: author, widget: string, default: Adi Niculae }
      - { label: Artist, name: artist, widget: string }
      - { label: Titlul piesei, name: songTitle, widget: string }
      - {
          label: Notă personală,
          name: personalNote,
          widget: text,
          required: false,
        }
      - label: Versuri în articol
        name: lyricsStatus
        widget: select
        required: false
        default: none
        hint: "Rezultatul auditului conținutului articolului, nu disponibilitatea versurilor în altă parte."
        options:
          - label: Fără versuri în articol
            value: none
          - label: Fragment de versuri
            value: excerpt
          - label: Versuri complete
            value: full
          - label: De verificat
            value: uncertain
      - label: Link sau ID YouTube
        name: youtubeId
        widget: string
        required: false
        hint: "Poți lipi adresa YouTube completă sau doar ID-ul videoclipului."
      - {
          label: Link Spotify,
          name: spotifyUrl,
          widget: string,
          required: false,
        }
      - label: Distribuire pe Facebook
        name: facebookMode
        widget: select
        required: false
        default: manual
        options:
          - { label: Nu distribui, value: none }
          - { label: Manual — folosesc butonul Postează acum, value: manual }
          - { label: Automat după publicarea pe site, value: auto }
      - label: Text Facebook
        name: facebookMessage
        widget: text
        required: false
        hint: "Opțional. Dacă rămâne gol, se folosește titlul editorial."
      - label: Imagine card (obligatorie, raport 510:250)
        name: featuredImage
        widget: image
        hint: "Imaginea curentă este afișată ca thumbnail în lista Adminului. Este folosită numai în liste și nu apare automat în articol."
        media_folder: /public/uploads/images/song-of-the-day
        public_folder: /uploads/images/song-of-the-day
      - { label: Descriere imagine card, name: featuredImageAlt, widget: string }
      - label: Imagine în articol (opțional)
        name: articleImage
        widget: image
        required: false
        hint: "În mod normal se lasă gol: articolul conține textul și piesa. Folosește-l numai când imaginea face parte din articol."
        media_folder: /public/uploads/images/song-of-the-day/articles
        public_folder: /uploads/images/song-of-the-day/articles
      - { label: Descriere imagine în articol, name: articleImageAlt, widget: string, required: false }
      - { label: Ascuns din site, name: draft, widget: boolean, default: false }
      - { label: Evidențiat, name: featured, widget: boolean, default: false }
      - { label: URL vechi, name: legacyUrl, widget: hidden, required: false }
      - {
          label: ID WordPress,
          name: legacyPostId,
          widget: hidden,
          required: false,
        }
      - {
          label: Data migrării,
          name: migratedAt,
          widget: hidden,
          required: false,
        }
      - { label: Conținut, name: body, widget: markdown, required: false }

  - name: lyricalEntries
    label: Lirice
    label_singular: Text liric
    folder: src/content/lyrical-entries
    create: true
    delete: true
    extension: md
    format: yaml-frontmatter
    identifier_field: title
    slug: "{{fields.slug}}"
    preview_path: "lirice/{{fields.slug}}/"
    summary: "{{publicationDate}} · {{entryType}} · {{title}}"
    thumbnail: featuredImage
    sortable_fields:
      fields: [publicationDate, title, textAuthor, entryType]
      default:
        field: publicationDate
        direction: descending
    editor:
      preview: false
    fields:
      - { label: Titlu, name: title, widget: string }
      - label: Adresă scurtă
        name: slug
        widget: string
        pattern:
          - "^[a-z0-9]+(?:-[a-z0-9]+)*$"
          - "Folosește doar litere mici, cifre și cratime."
      - label: Data publicării
        name: publicationDate
        widget: datetime
        time_format: false
        format: YYYY-MM-DD
        date_format: DD.MM.YYYY
      - label: Secțiune
        name: entryType
        widget: select
        options:
          - label: Rime de mine
            value: rime-de-mine
          - label: Rime de bine
            value: rime-de-bine
      - { label: Autorul textului, name: textAuthor, widget: string }
      - {
          label: Introducere,
          name: introduction,
          widget: text,
          required: false,
        }
      - label: Imagine card (raport 510:250)
        name: featuredImage
        widget: image
        required: false
        hint: "Imaginea curentă este afișată ca thumbnail în lista Adminului. Pregătește exact 1632 × 800 px pentru înlocuire."
        media_folder: /public/uploads/images/lirice
        public_folder: /uploads/images/lirice
      - {
          label: Descriere imagine card,
          name: featuredImageAlt,
          widget: string,
          required: false,
        }
      - label: Imagine în pagina textului (opțional)
        name: articleImage
        widget: image
        required: false
        hint: "Adaug-o numai când imaginea trebuie să facă parte din pagina textului; se păstrează integral."
        media_folder: /public/uploads/images/lirice/articles
        public_folder: /uploads/images/lirice/articles
      - { label: Descriere imagine în pagină, name: articleImageAlt, widget: string, required: false }
      - {
          label: Material de proiect asociat,
          name: relatedProjectEntry,
          widget: string,
          required: false,
        }
      - {
          label: Sursa textului,
          name: sourceUrl,
          widget: string,
          required: false,
        }
      - { label: Ascuns din site, name: draft, widget: boolean, default: false }
      - { label: Evidențiat, name: featured, widget: boolean, default: false }
      - { label: URL vechi, name: legacyUrl, widget: hidden, required: false }
      - {
          label: Data migrării,
          name: migratedAt,
          widget: hidden,
          required: false,
        }
      - { label: Text, name: body, widget: markdown }

  - name: musicProjects
    label: Profiluri proiecte muzicale
    label_singular: Proiect muzical
    folder: src/content/music-projects
    create: false
    delete: false
    extension: md
    format: yaml-frontmatter
    identifier_field: name
    summary: "{{periodLabel}} · {{name}}"
    thumbnail: featuredImage
    sortable_fields:
      fields: [startYear, name, status]
      default:
        field: startYear
        direction: ascending
    editor:
      preview: false
    fields:
      - { label: Nume, name: name, widget: string }
      - { label: Slug, name: slug, widget: hidden }
      - { label: An început, name: startYear, widget: number, value_type: int }
      - {
          label: An final,
          name: endYear,
          widget: number,
          value_type: int,
          required: false,
        }
      - { label: Perioadă afișată, name: periodLabel, widget: string }
      - label: Statut
        name: status
        widget: select
        options:
          - { label: Activ, value: active }
          - { label: Inactiv, value: inactive }
          - { label: Neterminat, value: unfinished }
          - { label: Arhivă, value: archival }
      - { label: Descriere scurtă, name: shortDescription, widget: text }
      - { label: Poveste scurtă, name: story, widget: text }
      - label: Imagine principală profil
        name: featuredImage
        widget: image
        hint: "Recomandat: 1800 × 1000 px. Este imaginea de identitate a profilului proiectului, nu un card editorial."
        media_folder: /public/uploads/images/projects
        public_folder: /uploads/images/projects
      - { label: Descriere imagine, name: featuredImageAlt, widget: string }
      - { label: Membri, name: members, widget: list, required: false }
      - { label: Piese, name: songs, widget: list, required: false }
      - { label: Discografie, name: discography, widget: list, required: false }
      - label: Galerie
        name: gallery
        widget: list
        required: false
        collapsed: true
        fields:
          - { label: Imagine, name: src, widget: image }
          - { label: Text alternativ, name: alt, widget: string }
          - { label: Legendă, name: caption, widget: string, required: false }
      - label: Linkuri video
        name: videoLinks
        widget: list
        required: false
        collapsed: true
        fields:
          - { label: Etichetă, name: label, widget: string }
          - { label: URL, name: url, widget: string }
      - label: Linkuri audio
        name: audioLinks
        widget: list
        required: false
        collapsed: true
        fields:
          - { label: Etichetă, name: label, widget: string }
          - { label: URL, name: url, widget: string }
      - {
          label: Notă de continuitate,
          name: continuityNote,
          widget: text,
          required: false,
        }
      - {
          label: Proiecte asociate,
          name: relatedProjects,
          widget: list,
          required: false,
        }
      - { label: Evidențiat, name: featured, widget: boolean, default: false }
      - { label: Poveste extinsă, name: body, widget: markdown }

  - name: homepage
    label: Pagina principală
    files:
      - name: nowAtHome
        label: Ce-mi mai trece prin cap...
        file: src/data/now-at-home.json
        format: json
        fields:
          - label: Afișează blocul pe site
            name: enabled
            widget: boolean
            default: false
          - label: Data ultimei actualizări
            name: updatedAt
            widget: datetime
            required: false
            time_format: false
            format: YYYY-MM-DD
            date_format: DD.MM.YYYY
          - label: Ascult
            name: listening
            widget: string
            required: false
          - label: Lucrez la
            name: workingOn
            widget: string
            required: false
          - label: Mă gândesc la
            name: thinkingAbout
            widget: text
            required: false
