@prismicio/mock
Version:
Generate mock Prismic documents, fields, Slices, and models for development and testing environments
30 lines (24 loc) • 861 B
text/typescript
import * as prismic from "@prismicio/client"
import { buildImageFieldImage } from "../../lib/buildImageFieldImage"
import { createFaker } from "../../lib/createFaker"
import { getMockImageData } from "../../lib/getMockImageData"
import type { MockRichTextValueConfig } from "../../types"
type MockRichTextImageValueConfig = MockRichTextValueConfig
export const image = (config: MockRichTextImageValueConfig): prismic.RTImageNode | undefined => {
const faker = config.faker || createFaker(config.seed)
const imageData = getMockImageData({ faker })
const imageField = buildImageFieldImage({
faker,
imageData,
state: "filled",
})
return {
id: faker.hash(7),
type: prismic.RichTextNodeType.image,
alt: imageField.alt,
url: imageField.url,
copyright: imageField.copyright,
dimensions: imageField.dimensions,
edit: imageField.edit,
}
}