import type { Bilingual } from '../types.js'

export type ResourceType = 'wiki' | 'map'

export interface DownloadResource {
  id: string
  type: ResourceType
  name: Bilingual
  description: Bilingual
  /** Tiesioginė atsisiuntimo nuoroda (viešas šaltinis). */
  url: string
  /** Failo pavadinimas lokalioje saugykloje. */
  filename: string
  /** Apytikslis dydis baitais (rodymui prieš atsisiunčiant). */
  sizeBytes: number
  /** Ar tai naudotojo pridėtas (custom) išteklius — galima šalinti. */
  custom?: boolean
}

/**
 * Atsisiunčiamo turinio katalogas. URL yra realūs, vieši ir patikrinti
 * (HEAD 200). Maži ištekliai skirti greitai demonstracijai; planetos
 * žemėlapis — realiam dydžiui parodyti.
 *
 * Pastaba: Kiwix ZIM failai rotuojami pagal datą — kartkartėmis URL gali
 * reikėti atnaujinti (žr. https://download.kiwix.org/zim/).
 */
export const CATALOG: DownloadResource[] = [
  {
    id: 'wiki-en-mini',
    type: 'wiki',
    name: { lt: 'Vikipedija (mini, EN)', en: 'Wikipedia (mini, EN)' },
    description: {
      lt: 'Kompaktiškas Vikipedijos rinkinys (~100 straipsnių) demonstracijai. Kiwix ZIM.',
      en: 'Compact Wikipedia set (~100 articles) for demo. Kiwix ZIM.',
    },
    url: 'https://download.kiwix.org/zim/wikipedia/wikipedia_en_100_mini_2026-04.zim',
    filename: 'wikipedia_en_100_mini_2026-04.zim',
    sizeBytes: 4_567_108,
  },
  {
    id: 'wiki-climate-mini',
    type: 'wiki',
    name: { lt: 'Klimatas (mini, EN)', en: 'Climate (mini, EN)' },
    description: {
      lt: 'Klimato ir aplinkos temų ZIM rinkinys (mini). Kiwix.',
      en: 'Climate and environment ZIM set (mini). Kiwix.',
    },
    url: 'https://download.kiwix.org/zim/wikipedia/wikipedia_en_climate_mini_2026-04.zim',
    filename: 'wikipedia_en_climate_mini_2026-04.zim',
    sizeBytes: 8_000_000,
  },
  {
    id: 'map-firenze',
    type: 'map',
    name: { lt: 'Žemėlapio pavyzdys (Firence)', en: 'Map sample (Florence)' },
    description: {
      lt: 'Vektorinis PMTiles žemėlapio pavyzdys orientavimuisi. Protomaps (ODbL).',
      en: 'Vector PMTiles map sample for orientation. Protomaps (ODbL).',
    },
    url: 'https://pmtiles.io/protomaps(vector)ODbL_firenze.pmtiles',
    filename: 'protomaps_firenze.pmtiles',
    sizeBytes: 6_601_156,
  },
  {
    id: 'map-planet',
    type: 'map',
    name: { lt: 'Pasaulio žemėlapis (OSM)', en: 'World map (OSM)' },
    description: {
      lt: 'Pilnas planetos OpenStreetMap PMTiles paketas. DIDELIS — tik su pakankama vieta ir laiku.',
      en: 'Full planet OpenStreetMap PMTiles. LARGE — only with enough space and time.',
    },
    url: 'https://data.source.coop/protomaps/openstreetmap/tiles/v3.pmtiles',
    filename: 'osm_planet_v3.pmtiles',
    sizeBytes: 123_545_745_644,
  },
]
