import { ErrorPage } from 'components/error.page'
import { LoadingPage } from 'components/loading.page'
import { NextPage } from 'next'
import { useRouter } from 'next/router'
import React, { useEffect } from 'react'
import { useTranslation } from 'react-i18next'
import { CardLayout } from '../../../components/form/layouts/card'
import { SliderLayout } from '../../../components/form/layouts/slider'
import { useSubmission } from '../../../components/use.submission'
import { useFormPublicQuery } from '../../../graphql/query/form.public.query'
const Index: NextPage = () => {
const { t, i18n } = useTranslation()
const router = useRouter()
const submission = useSubmission(router.query.id as string)
const { loading, data, error } = useFormPublicQuery({
variables: {
id: router.query.id as string,
},
})
useEffect(() => {
// check form language to switch to!
if (!data) {
return
}
if (i18n.language !== data.form.language) {
// TODO prompt for language change if is not a match!
i18n
.changeLanguage(data.form.language)
.catch((e: Error) => console.error('failed to change language', e))
}
}, [data])
if (loading) {
return
}
if (error) {
return
}
switch (data.form.design.layout) {
case 'card':
return
case 'slider':
default:
return
}
}
export default Index