import {useContext} from 'react'; import { AdConfig, SiteConfigContext, } from '../../core/settings/site-config-context'; import {Form} from '../../ui/forms/form'; import {useForm} from 'react-hook-form'; import {FormTextField} from '../../ui/forms/input-field/text-field/text-field'; import {Trans} from '../../i18n/trans'; import {Button} from '../../ui/buttons/button'; import {FormSwitch} from '../../ui/forms/toggle/switch'; import {useAdminSettings} from '../settings/requests/use-admin-settings'; import {ProgressCircle} from '../../ui/progress/progress-circle'; import {Settings} from '../../core/settings/settings'; import { AdminSettingsWithFiles, useUpdateAdminSettings, } from '../settings/requests/update-admin-settings'; import {DialogTrigger} from '../../ui/overlays/dialog/dialog-trigger'; import {ImageZoomDialog} from '../../ui/overlays/dialog/image-zoom-dialog'; import {StaticPageTitle} from '../../seo/static-page-title'; export function AdsPage() { const query = useAdminSettings(); return (

{query.isLoading ? ( ) : ( )}
); } interface AdsFormProps { defaultValues: Settings['ads']; } function AdsForm({defaultValues}: AdsFormProps) { const { admin: {ads}, } = useContext(SiteConfigContext); const form = useForm({ defaultValues: {client: {ads: defaultValues}}, }); const updateSettings = useUpdateAdminSettings(form); return (
{ updateSettings.mutate(value); }} > {ads.map(ad => { return ; })} } > ); } interface AdSectionProps { adConfig: AdConfig; } function AdSection({adConfig}: AdSectionProps) { return (
} />
); }