Proyectos de Subversion LeadersLinked - SPA

Rev

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

import { useMemo } from 'react';

import { useApi, useAlert } from '@shared/hooks';
import { getKnowledgeMetadata } from '@knowledges/services';

export const useKnowledgeMetadata = () => {
  const { showError } = useAlert();

  const { data, loading } = useApi(getKnowledgeMetadata, {
    onError: (error) => {
      showError(error.message);
    }
  });

  const categories = useMemo(() => {
    if (!data) return [];
    return data.categories.map((category) => ({
      label: category.name,
      value: category.uuid
    }));
  }, [data]);

  const categoriesWithEdition = useMemo(() => {
    if (!data) return [];
    return data.categories
      .filter((category) => data.categories_with_edition.includes(category.uuid))
      .map((category) => ({
        label: category.name,
        value: category.uuid
      }));
  }, [data]);

  return {
    loading,
    categories,
    categoriesWithEdition,
    addUrl: data?.link_add,
    imageSize: data?.image_size ?? '100x100'
  };
};