UNPKG

@prismicio/mock

Version:

Generate mock Prismic documents, fields, Slices, and models for development and testing environments

38 lines (37 loc) 1.34 kB
import * as prismic from "@prismicio/client"; import { capitalCase, sentenceCase } from "../lib/changeCase.js"; import { createFaker } from "../lib/createFaker.js"; const richText = (config) => { const faker = config.faker || createFaker(config.seed); const blockTypes = faker.randomElements([ prismic.RichTextNodeType.heading1, prismic.RichTextNodeType.heading2, prismic.RichTextNodeType.heading3, prismic.RichTextNodeType.heading4, prismic.RichTextNodeType.heading5, prismic.RichTextNodeType.heading6, prismic.RichTextNodeType.paragraph, prismic.RichTextNodeType.preformatted, prismic.RichTextNodeType.strong, prismic.RichTextNodeType.em, prismic.RichTextNodeType.listItem, prismic.RichTextNodeType.oListItem, prismic.RichTextNodeType.image, prismic.RichTextNodeType.embed, prismic.RichTextNodeType.hyperlink ]).join(","); const blockTypeConfig = config.withMultipleBlocks ?? faker.boolean() ? { multi: blockTypes } : { single: blockTypes }; return { type: prismic.CustomTypeModelFieldType.StructuredText, config: { label: capitalCase(faker.word()), placeholder: sentenceCase(faker.words(3)), allowTargetBlank: faker.boolean() ? true : void 0, ...blockTypeConfig } }; }; export { richText }; //# sourceMappingURL=richText.js.map