mirror of
https://github.com/lux-tel/websites.git
synced 2026-10-30 20:31:36 +00:00
28 lines
783 B
TypeScript
28 lines
783 B
TypeScript
import { groq } from 'next-sanity';
|
|
import type { SessionSanityClient } from '../lib/client';
|
|
import logger from '../lib/logger';
|
|
import type { SiteSchemaType } from '../schemas/site';
|
|
|
|
export const QUERY_GET_SITE_SETTINGS = groq`*[_type == 'site']{ ..., landingPage->{ label, slug } }`;
|
|
export type QUERY_GET_SITE_SETTINGS_RETURN_TYPE = Array<SiteSchemaType>;
|
|
|
|
export async function getSiteSettings({ client }: { client: SessionSanityClient }) {
|
|
const [err, result] = await client.nextFetch<QUERY_GET_SITE_SETTINGS_RETURN_TYPE>({
|
|
query: QUERY_GET_SITE_SETTINGS,
|
|
});
|
|
|
|
if (err) {
|
|
logger.error(err);
|
|
return null;
|
|
}
|
|
|
|
const siteSettings = result[0];
|
|
|
|
if (!siteSettings) {
|
|
logger.info('Site settings not found');
|
|
return null;
|
|
}
|
|
|
|
return siteSettings;
|
|
}
|