Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 3661 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
3661 stevensc 1
import { useMemo } from 'react';
2
 
3
import { useApi, useAlert } from '@shared/hooks';
4
import { getKnowledgeMetadata } from '@knowledges/services';
5
 
6
export const useKnowledgeMetadata = () => {
7
  const { showError } = useAlert();
8
 
9
  const { data, loading } = useApi(getKnowledgeMetadata, {
3662 stevensc 10
    autoFetch: true,
3661 stevensc 11
    onError: (error) => {
12
      showError(error.message);
13
    }
14
  });
15
 
16
  const categories = useMemo(() => {
17
    if (!data) return [];
18
    return data.categories.map((category) => ({
19
      label: category.name,
20
      value: category.uuid
21
    }));
22
  }, [data]);
23
 
24
  const categoriesWithEdition = useMemo(() => {
25
    if (!data) return [];
26
    return data.categories
27
      .filter((category) => data.categories_with_edition.includes(category.uuid))
28
      .map((category) => ({
29
        label: category.name,
30
        value: category.uuid
31
      }));
32
  }, [data]);
33
 
34
  return {
35
    loading,
36
    categories,
37
    categoriesWithEdition,
38
    addUrl: data?.link_add,
39
    imageSize: data?.image_size ?? '100x100'
40
  };
41
};