UNPKG

gatsby-source-tilda

Version:

Gatsby source plugin for building websites using the tilda.cc CMS as a data source

45 lines (40 loc) 970 B
import type { Reporter } from 'gatsby'; import type { PluginSettings } from './plugin-options'; export interface FetchPagesProps { pluginConfig: PluginSettings; reporter: Reporter; } export interface FetchPageInfoProps { pageId: string; pluginConfig: PluginSettings; reporter: Reporter; } export const fetchPages = async ({ pluginConfig, reporter, }: FetchPagesProps) => { try { const { projectId } = pluginConfig; const pages = await pluginConfig.api.fetchProjectPages(projectId); return pages; } catch (e) { reporter.panicOnBuild(`Fetch Tilda Pages failed`, e as Error); return []; } }; export const fetchPageInfo = async ({ pageId, pluginConfig, reporter, }: FetchPageInfoProps) => { try { const pageInfo = await pluginConfig.api.fetchPage(pageId); return pageInfo; } catch (e) { reporter.panicOnBuild( `Couldn't get Tilda Page (id: ${pageId}) Info`, e as Error ); throw e; } };