import { _ } from "@/lib/translation"
import { serverClient } from "@/lib/trpc/server"
import { request } from "@/lib/graphql/request"
import { GetAccountPage } from "@/lib/graphql/Query/AccountPage.graphql"

import MaxWidth from "@/components/MaxWidth"
import Overview from "@/components/MyPages/Blocks/Overview"
import UpcomingStays from "@/components/MyPages/Blocks/Overview/UpcomingStays"
import Shortcuts from "@/components/MyPages/Blocks/Shortcuts"

import styles from "./page.module.css"

import { GetAccountPageData } from "@/types/requests/myPages/accountpage"
import type { LangParams, PageArgs } from "@/types/params"

export default async function MyPageOverview({ params }: PageArgs<LangParams>) {
  const user = await serverClient().user.get()
<<<<<<< HEAD
=======
  const response = await request<GetAccountPageData>(
    GetAccountPage,
    {
      locale: params.lang,
      url: "/my-pages/overview",
    },
    {
      tags: [`'/my-pages/overview',-en`],
    }
  )

  if (!response.data?.all_account_page?.total) {
    console.log("#### DATA ####")
    console.log(response.data)
    throw new Error("Not found")
  }

  const pageData = response.data.all_account_page.items[0]
>>>>>>> 13b5550 (feat: add Account Page query)

  return (
    <MaxWidth className={styles.blocks} tag="main">
      <Overview user={user} />
      <UpcomingStays lang={params.lang} />
      <Shortcuts
        shortcuts={user.shortcuts}
        subtitle={_("The community at your fingertips")}
        title={_("Handy Shortcuts")}
      />
    </MaxWidth>
  )
}
