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