import { MetaAttribute110, Tagozat } from '@/types/Category';

export const convertFromPrettyKey = (prettyKey: string) => {
  for (let i = 0; i < metaAttributes110.length; i++)
    if (metaAttributes110[i].prettyKey === prettyKey) {
      return metaAttributes110[i].key;
    }

  return null;
};

export const convertToPrettyKey = (key: string) => {
  for (let i = 0; i < metaAttributes110.length; i++) {
    if (metaAttributes110[i].key === key) {
      return metaAttributes110[i].prettyKey;
    }
  }

  return null;
};

export const getMetaAttribute110ByKey = (key: string) => {
  return metaAttributes110.find((cat) => cat.key === key) || null;
};

export const getCategoryPrettyKeyByTagozat = (tagozat: Tagozat) => {
  return metaAttributes110.find((cat) => cat.tagozat === tagozat)?.prettyKey;
};

export const getCategoryLabelKeyByTagozat = (tagozat: Tagozat) => {
  return metaAttributes110.find((cat) => cat.tagozat === tagozat)?.labelKey;
};

export const getPrettyKeyByMetaId = (metaGroup: 110 | 107, metaId: number) => {
  if (metaGroup === 110) {
    return metaAttributes110.find((cat) => cat.id === metaId)?.prettyKey || null;
  }

  return null;
};

export const getMetaId = (metaGroup: 110 | 107, prettyKey: string) => {
  if (metaGroup === 110) {
    return metaAttributes110.find((cat) => cat.prettyKey === prettyKey)?.id || null;
  }

  return null;
};

export const metaAttributes110: MetaAttribute110[] = [
  {
    key: 'architecture',
    prettyKey: 'epitomuveszet',
    labelKey: 'architecture',
    icon: 'architectural.svg',
    dataChunks: 2,
    tagozat: 'Építőművészeti Tagozat',
    id: 110001,
    name: 'Építőművészet',
  },
  {
    key: 'film',
    prettyKey: 'filmmuveszet',
    labelKey: 'film',
    icon: 'film.svg',
    dataChunks: 2,
    tagozat: 'Film- és Fotóművészeti Tagozat',
    id: 110002,
    name: 'Filmművészet',
  },
  {
    key: 'photo',
    prettyKey: 'fotomuveszet',
    labelKey: 'photo',
    icon: 'photo.svg',
    dataChunks: 1,
    tagozat: 'Iparművészeti és Tervezőművészeti Tagozat',
    id: 110003,
    name: 'Fotóművészet',
  },
  {
    key: 'industrial',
    prettyKey: 'iparmuveszet',
    labelKey: 'industrial',
    icon: 'industrial.svg',
    dataChunks: 2,
    tagozat: 'Iparművészeti és Tervezőművészeti Tagozat',
    id: 110004,
    name: 'Iparművészet és tervezőművészet',
  },
  {
    key: 'literature',
    prettyKey: 'irodalom',
    labelKey: 'literature',
    icon: 'literature.svg',
    dataChunks: 2,
    tagozat: 'Irodalmi Tagozat',
    id: 110005,
    name: 'Irodalom',
  },
  {
    key: 'fine',
    prettyKey: 'kepzomuveszet',
    labelKey: 'fine',
    icon: 'fine.svg',
    dataChunks: 4,
    tagozat: 'Képzőművészeti Tagozat',
    id: 110006,
    name: 'Képzőművészet',
  },
  {
    key: 'theory',
    prettyKey: 'muveszetelmelet',
    labelKey: 'theory',
    icon: 'theory.svg',
    dataChunks: 1,
    tagozat: 'Művészetelméleti Tagozat',
    id: 110007,
    name: 'Művészetelmélet',
  },
  {
    key: 'folk',
    prettyKey: 'nepmuveszet',
    labelKey: 'folk',
    icon: 'folk.svg',
    dataChunks: 1,
    tagozat: 'Népművészeti Tagozat',
    id: 110008,
    name: 'Népművészet',
  },
  {
    key: 'theater',
    prettyKey: 'szinhazmuveszet',
    labelKey: 'theater',
    icon: 'theater.svg',
    dataChunks: 2,
    tagozat: 'Színházművészeti Tagozat',
    id: 110009,
    name: 'Színházművészet',
  },
  {
    key: 'music',
    prettyKey: 'zenemuveszet',
    labelKey: 'music',
    icon: 'music.svg',
    dataChunks: 3,
    tagozat: 'Zeneművészeti Tagozat',
    id: 110010,
    name: 'Zeneművészet',
  },
];
