UNPKG

gatsby-source-prismic

Version:

Gatsby source plugin for building websites using Prismic as a data source

24 lines (20 loc) 713 B
import * as RTE from "fp-ts/ReaderTaskEither"; import { pipe, constVoid } from "fp-ts/function"; import { Dependencies, Mutable } from "../types"; import { createGloballyUniqueNodes } from "./createGloballyUniqueNodes"; import { normalizeDocuments } from "./normalizeDocuments"; import { queryAllDocuments } from "./queryAllDocuments"; /** * Queries all documents from the environment's Prismic repository and creates * nodes for each document. */ export const sourceNodesForAllDocuments: RTE.ReaderTaskEither< Dependencies, Error, void > = pipe( queryAllDocuments, RTE.chainW(normalizeDocuments), RTE.chainW((docs) => createGloballyUniqueNodes(docs as Mutable<typeof docs>)), RTE.map(constVoid), );