import filter from "lodash/filter";

export const filterPosts = (filters, allItems) => {
  const predicate = {};

  if (filters.flags === "active") {
    predicate.archived = false;
  }
  if (filters.flags === "archived") {
    predicate.archived = true;
  }

  if (filters.type === "proposalsOnly") {
    predicate.type = "procedure-proposal";
  }
  if (filters.type === "discussionOnly") {
    predicate.type = "post";
  }

  let filteredItems = filter(allItems, predicate);

  if (filters.sort === "byDate") {
    return filteredItems.sort((a, b) => b.datetime - a.datetime);
  }

  return filteredItems.sort((a, b) => b.ranking.score - a.ranking.score);
};