Proje: Okul B2B App · Hub: Okul B2B App — Domain

İçerik Medya Yapısı (SchoolContentMedia)

Duyuru/etkinlik/başarı içeriklerinde her tipin farklı medya yapısı var.

SchoolContentItem Medya Alanları

interface SchoolContentItem {
  media: SchoolContentMedia | null;     // Tekil (duyurular: 1 görsel)
  medias: SchoolContentMedia[];         // Çoklu (etkinlik/başarı: 10 görsel)
  ...
}

Medya Role ID’leri

TürmediaRoleId
Duyurular (announcements)11
Etkinlikler (events)18
Başarılar (achievements)17

Görsel Limitler

TürmaxMediaCount
Duyurular1
Etkinlikler10
Başarılar10

SchoolContentMediaSpec

Her medya nesnesinde specs alanı farklı boyutlardaki versiyonları içerir:

specs: Record<string, SchoolContentMediaSpec> = {
  "thumbnail": { name, width: 150, height: 150, url },
  "medium":    { name, width: 600, height: 400, url },
  "large":     { name, width: 1200, height: 800, url },
}

API Includes

Liste için: listIncludes = ['schools', 'announcementMedia'] (duyurular) Detay için: showIncludes = ['schools', 'announcementMedia'] (duyurular) / ['schools', 'eventMedias'] (etkinlik)