import * as datoApi from "./dato-api";
import * as mdxApi from "./mdx-api";

/**
 * Pages
 * ===================================================================
 */

export async function getPageBySlug(slug: string, includeDrafts?: boolean) {
  return mdxApi.getSerializedMDXPage(slug, { by: "slug", includeDrafts });
}

export async function getAllPages(includeDrafts?: boolean) {
  return mdxApi.getAllSerializedMDXPages({ includeDrafts });
}

export async function getAllPagesSlugs(includeDrafts?: boolean) {
  return mdxApi.getAllMDXPagesSlugs({ includeDrafts });
}

/**
 * Sections
 * ===================================================================
 */

export async function getSectionById(id: string, includeDrafts?: boolean) {
  return mdxApi.getSerializedMDXSection(id, { includeDrafts });
}

export async function getAllSections(includeDrafts?: boolean) {
  return mdxApi.getAllSerializedMDXSections({ includeDrafts });
}

/**
 * Articles
 * ===================================================================
 */

export async function getAllPosts(includeDrafts?: boolean) {
  //console.log(datoApi.getAllPosts({ includeDrafts }));
  return datoApi.getAllPosts({ includeDrafts });
}

export async function getAllPostsSlugs(includeDrafts?: boolean) {
  return datoApi.getAllPostsSlugs({ includeDrafts });
}

export async function getPostBySlug(slug: string, includeDrafts?: boolean) {
  return datoApi.getPostBySlug(slug, { includeDrafts });
}

export async function getAllNews(includeDrafts?: boolean) {
  return datoApi.getAllNews({ includeDrafts });
}

// - Banners
export async function getAllBanners(includeDrafts?: boolean) {
  return datoApi.getAllBanners({ includeDrafts });
}
