@prismicio/mock
Version:
Generate mock Prismic documents, fields, Slices, and models for development and testing environments
52 lines (51 loc) • 1.47 kB
JavaScript
import { boolean } from "./boolean.js";
import { color } from "./color.js";
import { contentRelationship } from "./contentRelationship.js";
import { date } from "./date.js";
import { embed } from "./embed.js";
import { geoPoint } from "./geoPoint.js";
import { image } from "./image.js";
import { integration } from "./integration.js";
import { keyText } from "./keyText.js";
import { link } from "./link.js";
import { linkToMedia } from "./linkToMedia.js";
import { number } from "./number.js";
import { richText } from "./richText.js";
import { select } from "./select.js";
import { timestamp } from "./timestamp.js";
import { title } from "./title.js";
import { createFaker } from "../lib/createFaker.js";
import { generateFieldId } from "../lib/generateFieldId.js";
const mockModelFns = {
boolean,
color,
contentRelationship,
date,
embed,
geoPoint,
image,
integration,
keyText,
link,
linkToMedia,
number,
richText,
select,
timestamp,
title
};
const buildMockGroupFieldMap = (config) => {
const faker = config.faker || createFaker(config.seed);
const fields = {};
const fieldTypes = faker.randomElements(Object.keys(mockModelFns));
for (const fieldType of fieldTypes) {
const fieldId = generateFieldId({ faker });
const mockModelFn = mockModelFns[fieldType];
fields[fieldId] = mockModelFn({ faker });
}
return fields;
};
export {
buildMockGroupFieldMap
};
//# sourceMappingURL=buildMockGroupFieldMap.js.map