import { gql } from 'graphql-request'
import fetchAPI from '@/lib/api/fetchAPI'
import { MATERIALS_FRAGMENT } from './fragments'
import { MATERIALS_MENU_FRAGMENT } from './fragments'

/**
 * Query a Materials Page by uri
 */
export async function getMaterialsPage() {
  const data = await fetchAPI(
    gql`
      ${MATERIALS_FRAGMENT}
      ${MATERIALS_MENU_FRAGMENT}
      query GetMaterials {
        page(id: "materials-finishes", idType: URI) {
          ...MaterialsPageFragment
        }
        menu(id: "210", idType: DATABASE_ID) {
          ...MaterialsMenuFragment
        }
      }
    `
  )

  return data
}

/**
 * Query a Decorating Finishes Page by uri
 */
export async function getDecoratingFinishesPage() {
  const data = await fetchAPI(
    gql`
      ${MATERIALS_FRAGMENT}
      ${MATERIALS_MENU_FRAGMENT}
      query GetMaterials {
        page(id: "decorating-finishes", idType: URI) {
          ...MaterialsPageFragment
        }
        menu(id: "210", idType: DATABASE_ID) {
          ...MaterialsMenuFragment
        }
      }
    `
  )

  return data
}

/**
 * Query a Accessories Page by uri
 */
export async function getAccessoriesPage() {
  const data = await fetchAPI(
    gql`
      ${MATERIALS_FRAGMENT}
      ${MATERIALS_MENU_FRAGMENT}
      query GetMaterials {
        page(id: "accessories", idType: URI) {
          ...MaterialsPageFragment
        }
        menu(id: "210", idType: DATABASE_ID) {
          ...MaterialsMenuFragment
        }
      }
    `
  )

  return data
}
