Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 3367 | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |

import { useEffect, useState } from 'react';

import { useHabitsUrls } from '@hooks';

export function useDailyLogCategories() {
  const [categories, setCategories] = useState([]);

  const { categories: defaultCategories, emojis } = useHabitsUrls();

  const selectEmoji = (categoryUuid, emojiCode) => {
    const newCategories = categories.map((category) => {
      if (category.uuid !== categoryUuid) return category;

      return {
        ...category,
        emojis: category.emojis.filter((e) => e.code === emojiCode)
      };
    });

    setCategories(newCategories);
  };

  useEffect(() => {
    const categoriesWithEmojis = defaultCategories.map((c) => ({
      ...c,
      emojis
    }));
    setCategories(categoriesWithEmojis);
  }, [defaultCategories, emojis]);

  return {
    categories,
    selectEmoji
  };
}