UNPKG

@prismicio/mock

Version:

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

20 lines (15 loc) 640 B
import type * as prismic from "@prismicio/client" import { snakeCase } from "../lib/changeCase" import { createFaker } from "../lib/createFaker" import type { MockValueConfig } from "../types" export type MockUIDValueConfig< Model extends prismic.CustomTypeModelUIDField = prismic.CustomTypeModelUIDField, > = MockValueConfig<Model> export const uid = < Model extends prismic.CustomTypeModelUIDField = prismic.CustomTypeModelUIDField, >( config: MockUIDValueConfig<Model>, ): NonNullable<prismic.PrismicDocument["uid"]> => { const faker = config.faker || createFaker(config.seed) return snakeCase(faker.words(faker.range(1, 3))) }